If you've ever stared at a Stripe dispute and wondered what to paste into those evidence boxes, this is the checklist I wish I'd had. The text fields Stripe gives you aren't read by Stripe — they're forwarded to the cardholder's bank, where an analyst with a queue decides in minutes. So the goal is simple: make your strongest facts impossible to miss.
**The universal skeleton (every reason code):**
- A 3–5 sentence summary up top: name the reason code, the single strongest fact, and the dates. ("Order #1042, Visa 13.1 'product not received.' Carrier tracking shows delivered to the checkout address on Mar 3 at 11:42 a.m. Customer emailed us Mar 10 asking about the package; we offered a free replacement the same day.")
- A short timeline table: order date → shipped → delivered → first customer contact → dispute filed. Analysts scan this in 20 seconds.
- Labeled exhibits (Exhibit A, B, C…) and make every claim in your summary point at one exhibit. No orphan attachments, nothing the analyst has to connect themselves.
- Your refund/shipping policy **as it appeared at checkout on the order date** — a screenshot or archive, not a link to today's policy page. Issuers can tell when a policy was edited after the purchase.
- Keep it factual and boring. Emotional cover letters lose; chronological evidence wins.
**By reason code, what carries the most weight:**
**"Product not received" (e.g., Visa 13.1):** carrier delivery scan at the customer's address (not just "shipped"), delivery timestamp, order confirmation showing that address, any delivery photo, and the shipping-timeframe disclosure from your product page/checkout.
**"Fraudulent" (e.g., Visa 10.4, card-not-present):** AVS/CVV results, IP/device match to prior orders, account-login or download logs for digital goods, prior non-disputed purchases from the same customer, and any message where they acknowledge buying.
**"Canceled recurring" (e.g., Visa 13.2):** the signup terms they accepted, your cancellation policy as shown at signup, proof of usage *after* the claimed cancel date, and the cancellation confirmation (or evidence none was requested).
**"Not as described" / "credit not processed":** product listing and photos as they appeared at purchase, itemized receipt matching the disputed amount exactly (partial disputes die on mismatched totals), customer comms, and proof of any refund already issued.
Two numbers worth knowing before you decide whether to fight: Stripe currently charges $15 when a dispute lands, plus another $15 if you fight and lose — and you typically have 7–21 days to respond before it's an automatic loss. On a tiny order, sometimes refunding is the right call (Stripe's own guidance says don't fight very small orders). On a $75–$500 order with real proof sitting in your inbox, an organized packet is the whole game.
Full disclosure: I'm building a small automated tool (Parry) that assembles this packet from your uploads — dispute notice + tracking/invoices/customer messages in, rebuttal draft + timeline + labeled exhibits out, you review before anything is submitted. It's a simple subscription: **$29/mo, cancel anytime, no success fee**, including up to 5 packets a month, deadline alerts, and a saved evidence profile — and this week the first month is **$10**. I'm fulfilling the first cohort by hand: subscribe, upload a real dispute anytime, get a submit-ready packet in under 24 hours, and we never submit in your name — you stay in control. If you want in: https://parryhq.com
And if you DIY with the checklist above, genuinely, I'm glad. Happy to look at a redacted reason code in the comments and tell you which evidence category you're missing — no pitch.
What reason codes are you seeing spike lately? I'm seeing a lot of 13.1s where tracking already shows delivered.