How reason codes work on Stripe
Every card network has its own list of dispute reason codes. Visa uses numbers like 10.4 and 13.2, Mastercard uses four digits like 4837, and American Express uses codes like F29 and C28. There are hundreds of them.
Stripe groups them into a handful of dispute reasons, the label you see on the dispute in your Dashboard, such as Fraudulent or Subscription canceled. The network's own code is still on the dispute: it's in the details as the network reason code, and in the API as payment_method_details.card.network_reason_code.
The Stripe reason tells you what kind of evidence to send. The network code adds detail, for example whether a Visa fraud dispute qualifies for Compelling Evidence 3.0 (only code 10.4 does).
What every dispute has in common
- The deadline is short. You usually have 7 to 21 days, depending on the network. Stripe shows the exact date on the dispute, and a dispute with no response is lost.
- You get one submission. Stripe forwards it to the cardholder's bank straight away, and you can't add to it later.
- The bank decides, not Stripe. It can take up to three months.
- Banks don't open links. Everything has to be in the documents you upload, within Stripe's 4.5 MB limit (and 19 pages for Mastercard).
- Countering costs a fee. Stripe refunds the counter fee if you win; the dispute fee itself isn't returned.
For the evidence fields themselves, file limits and Visa Compelling Evidence 3.0, see the Stripe dispute evidence guide.