Skip to main content
RESOURCES

Stripe Dispute Evidence Templates

Field-by-field templates for every Stripe dispute reason code. Copy, customize, and submit evidence that actually wins chargebacks.

What Stripe Expects in Each Evidence Field

Stripe's dispute evidence system accepts up to 28 structured fields plus file uploads. Each field has a specific purpose and format expectation. Bank analysts reviewing your case use these fields to quickly assess whether your evidence contradicts the cardholder's claim. The most common mistake is treating the evidence submission as a free-text comment box. It is not. Each field should contain exactly the type of information Stripe expects.

The uncategorized_text field is your primary narrative. This is where you present your defense in plain language. Keep it factual, structured, and under 1,500 characters. The remaining fields provide supporting data: IP addresses, tracking numbers, policy URLs, timestamps, and documentation. Together, these build a complete evidence package that a bank analyst can evaluate in under two minutes.

Below are ready-to-use templates for the five most common dispute reason codes on Stripe. Each template shows you exactly which fields to populate and what to put in them. Replace the bracketed placeholders with your actual data.

F

Fraud Dispute Template

Reason codes: fraudulent, unrecognized

Fraud disputes are the most common type on Stripe, making up roughly 60% of all chargebacks. The cardholder claims they did not authorize the transaction. Your goal is to prove the legitimate cardholder made the purchase. The strongest evidence is 3D Secure authentication, which shifts liability to the issuing bank. Without 3DS, focus on AVS/CVC match, IP address consistency, device fingerprint data, and any customer interaction after the purchase.

If you have prior undisputed transactions from the same customer with matching IP or device data, you may qualify for Visa Compelling Evidence 3.0 (CE 3.0), which dramatically increases your win rate. Include this data in the enhanced_evidence field if available.

Evidence Fields

uncategorized_text:
The charge of [AMOUNT] on [DATE] was authorized by the cardholder.
The transaction was authenticated via [3D Secure / AVS + CVC match].
The customer's IP address [IP_ADDRESS] geolocates to [CITY, STATE],
consistent with the billing address on file. The payment was made
using [BROWSER/DEVICE] and the customer subsequently [logged into
their account / contacted support / used the service] on [DATE],
confirming access to the account associated with this purchase.

customer_purchase_ip: [IP_ADDRESS]
customer_email_address: [EMAIL]
customer_name: [FULL_NAME]
billing_address: [STREET, CITY, STATE, ZIP, COUNTRY]
product_description: [DESCRIPTION_OF_PRODUCT_OR_SERVICE]
service_date: [YYYY-MM-DD]

# If physical product was shipped:
shipping_tracking_number: [TRACKING_NUMBER]
shipping_carrier: [CARRIER_NAME]
shipping_date: [YYYY-MM-DD]
shipping_address: [DELIVERY_ADDRESS]

# If digital product:
access_activity_log: Customer accessed the product/service on
[DATE1], [DATE2], and [DATE3] from IP [IP_ADDRESS].

Key points for fraud disputes

  • • 3D Secure authentication is the strongest possible evidence. If the transaction was 3DS-authenticated, lead with that.
  • • AVS and CVC match results show the customer had physical possession of the card.
  • • IP address geolocation matching the billing address undermines "I didn't do it" claims.
  • • Post-purchase activity (logins, downloads, support requests) proves the cardholder engaged with the product.
  • • Never accuse the customer of lying. Present evidence and let the data speak.
P

Product Not Received Template

Reason code: product_not_received

The cardholder claims they never received the product they paid for. Your defense centers entirely on delivery proof. The strongest evidence is a carrier-confirmed delivery with a signature, timestamp, and GPS coordinates. Without delivery confirmation, these disputes are extremely difficult to win. For digital products, access logs and download records serve as your delivery proof.

Make sure the shipping address in your evidence matches the address the customer provided at checkout. If the customer provided a different shipping address than their billing address, note this explicitly. Carriers like UPS, FedEx, and USPS provide delivery confirmation that includes the recipient name and delivery timestamp. Include all of this.

Evidence Fields

uncategorized_text:
Order [ORDER_ID] for [PRODUCT_NAME] was placed on [ORDER_DATE]
and shipped on [SHIP_DATE] via [CARRIER] with tracking number
[TRACKING_NUMBER]. The package was delivered on [DELIVERY_DATE]
to [DELIVERY_ADDRESS]. Delivery was confirmed by [CARRIER] with
[signature confirmation / photo proof of delivery / GPS
coordinates]. The delivery address matches the shipping address
provided by the customer at checkout.

shipping_tracking_number: [TRACKING_NUMBER]
shipping_carrier: [CARRIER_NAME]
shipping_date: [YYYY-MM-DD]
shipping_address: [DELIVERY_ADDRESS]
product_description: [PRODUCT_NAME_AND_DETAILS]
service_date: [YYYY-MM-DD]
customer_email_address: [EMAIL]
customer_name: [FULL_NAME]

# For digital products, replace shipping fields with:
access_activity_log: Product delivered digitally on [DATE].
Customer accessed/downloaded the product on [DATE1] from
IP [IP_ADDRESS]. Additional access recorded on [DATE2]
and [DATE3].

Key points for product not received disputes

  • • Delivery confirmation from the carrier is required. Internal records alone are insufficient.
  • • Signature confirmation is the gold standard. If you ship high-value items, always require signature.
  • • If the product was shipped to a freight forwarder or PO Box, note this. Liability may shift after delivery to the forwarder.
  • • For digital products, server-side access logs with timestamps and IP addresses serve as delivery proof.
Q

Product Quality / Unacceptable Template

Reason code: product_unacceptable

The cardholder claims the product was not as described, defective, or otherwise unacceptable. Your defense should demonstrate that the product matched its description at checkout, that your refund/return policy was clearly disclosed, and that the customer either did not attempt to resolve the issue with you before filing a dispute, or that you offered a reasonable resolution that they declined.

Stripe's guidance is clear: if the customer did not contact you before filing the dispute, that fact itself is evidence in your favor. Card networks expect customers to attempt resolution with the merchant first. Include your refund policy URL and note whether the customer reached out to you.

Evidence Fields

uncategorized_text:
The customer purchased [PRODUCT_NAME] on [DATE] for [AMOUNT].
The product was delivered as described on the product page. Our
product listing clearly states [KEY_PRODUCT_SPECIFICATIONS]. The
customer [did not contact us before filing this dispute / contacted
us on DATE and we offered RESOLUTION]. Our refund policy, available
at [POLICY_URL], states [SUMMARY_OF_POLICY]. [The customer did not
request a return within the eligible window / The customer was
offered a full refund but did not respond].

refund_policy: [URL_TO_REFUND_POLICY]
refund_policy_disclosure: Our refund policy is displayed at checkout,
in the order confirmation email, and at [URL]. The policy allows
returns within [X] days of delivery.
refund_refusal_explanation: [If refund was refused, explain why.
Example: The customer contacted us 45 days after delivery, outside
our 30-day return window.]
product_description: [DETAILED_PRODUCT_DESCRIPTION_AS_SHOWN_AT_CHECKOUT]
customer_communication: [PASTE_RELEVANT_EMAIL_OR_CHAT_TRANSCRIPT]
customer_email_address: [EMAIL]
service_date: [YYYY-MM-DD]

Key points for product quality disputes

  • • Always include your refund policy URL. The refund_policy field accepts a URL that the bank analyst can verify.
  • • If the customer did not contact you before disputing, say so explicitly. This works in your favor.
  • • Include the product description exactly as it appeared at checkout to show accuracy.
  • • If you offered a refund or replacement and the customer declined, include that communication.
S

Subscription / Recurring Charge Template

Reason code: subscription_canceled

The cardholder claims they canceled their subscription but were still charged, or that they did not agree to recurring billing. Your defense must prove that the customer signed up for a recurring plan, that your cancellation policy was clearly communicated, and that either the customer did not cancel before the disputed charge or continued using the service after the charge date.

Usage logs are your most powerful evidence here. If the customer logged in, used features, or consumed resources after the disputed charge, it proves they were aware of the active subscription. Include access timestamps, feature usage, and any account activity after the charge date.

Evidence Fields

uncategorized_text:
The customer subscribed to [PLAN_NAME] on [SIGNUP_DATE] for
[AMOUNT/PERIOD]. Our cancellation policy, available at
[CANCELLATION_POLICY_URL], requires cancellation [X days] before
the next billing cycle. [The customer did not cancel before the
disputed charge on CHARGE_DATE / The customer canceled on
CANCEL_DATE, which was after the billing cycle on CHARGE_DATE].
The customer continued to use the service after the disputed
charge, with activity recorded on [DATE1], [DATE2], and [DATE3].

cancellation_policy: [URL_TO_CANCELLATION_POLICY]
cancellation_policy_disclosure: Cancellation terms are presented
during signup, included in the welcome email, and available in
the account settings at [URL]. Customers can cancel at any time
through their account dashboard.
cancellation_rebuttal: The customer [did not cancel / canceled on
DATE, after the billing date of CHARGE_DATE]. Account activity
shows continued usage on [DATES_WITH_DETAILS].
access_activity_log: [DATE1] - Logged in, used [FEATURE]
[DATE2] - Logged in, [ACTION]
[DATE3] - Logged in, [ACTION]
[Include timestamps and specific actions]
customer_email_address: [EMAIL]
service_date: [YYYY-MM-DD]
product_description: [PLAN_NAME] - [MONTHLY/ANNUAL] subscription
providing [DESCRIPTION_OF_SERVICE]

Key points for subscription disputes

  • • The cancellation_rebuttal field is specifically designed for this dispute type. Always fill it.
  • • Post-charge usage is your strongest evidence. If the customer used the service after the charge, they knew about it.
  • • Include the original signup confirmation showing the customer agreed to recurring billing.
  • • Billing reminder emails sent before each charge are powerful evidence of notification.
D

Duplicate Charge Template

Reason code: duplicate

The cardholder claims they were charged more than once for the same product or service. Your defense must show that each charge corresponds to a separate, legitimate transaction. If the charges are genuinely for different items, present the unique order IDs, different product details, and separate receipts. If one of the charges was indeed a duplicate, show that it has already been refunded.

Evidence Fields

uncategorized_text:
The customer placed two separate orders:

Order 1: [ORDER_ID_1] on [DATE_1] for [PRODUCT_1] - [AMOUNT_1]
Order 2: [ORDER_ID_2] on [DATE_2] for [PRODUCT_2] - [AMOUNT_2]

These are distinct transactions for different [products / services
/ billing periods]. Each order has a unique order ID, different
product details, and was confirmed in a separate order confirmation
email sent to [EMAIL].

[If one charge was a genuine duplicate:]
The duplicate charge [CHARGE_ID] was refunded on [REFUND_DATE]
via refund [REFUND_ID]. The remaining charge of [AMOUNT] is for
the legitimate order [ORDER_ID].

duplicate_charge_id: [CHARGE_ID_OF_THE_LEGITIMATE_OTHER_CHARGE]
duplicate_charge_explanation: The two charges are for separate
orders. Order [ID1] was for [PRODUCT1] and Order [ID2] was for
[PRODUCT2]. Each order has a unique confirmation number and was
shipped separately.
duplicate_charge_documentation: [UPLOAD_RECEIPTS_FOR_BOTH_ORDERS]
product_description: [PRODUCT_DETAILS]
customer_email_address: [EMAIL]
service_date: [YYYY-MM-DD]

Key points for duplicate charge disputes

  • • The duplicate_charge_id field should reference the other legitimate charge that the customer may be confusing with the disputed one.
  • • Show that each charge has a unique order ID, timestamp, and product details.
  • • If the charges were for different billing periods of a subscription, clarify the billing dates.
  • • If a genuine duplicate was already refunded, provide the refund ID and date.

Evidence Formatting: Do's and Don'ts

Do

  • Use specific dates, times, and amounts. "January 15, 2026 at 2:34 PM UTC" is better than "last month."
  • Reference the cardholder's specific claim and directly address it with evidence.
  • Keep your narrative under 1,500 characters. Bank analysts scan, they do not read novels.
  • Upload supporting documents as PDFs with clear formatting and headers.
  • Fill in every relevant evidence field, not just uncategorized_text.
  • Highlight contradictions in the cardholder's claim factually and concisely.

Don't

  • Write emotional or accusatory statements. "This customer is a fraudster" loses credibility.
  • Submit screenshots of your database. Use structured text and formatted documents instead.
  • Leave fields empty when you have the data. Empty fields suggest you lack evidence.
  • Submit the same boilerplate response for different dispute types.
  • Include irrelevant information. A bank analyst does not care about your company history.
  • Wait until the last day to submit. Technical issues happen. Submit as early as possible.

Why AI Narratives Outperform Templates

Templates give you a starting point, but every dispute is unique. The specific transaction details, the customer's history, the evidence you have available, and the card network's current policies all affect what constitutes a winning response. A template cannot account for these variables.

AI-powered narrative generation analyzes the specific details of each dispute: the transaction amount, the customer's purchase history, the available evidence (3DS, AVS, CVC, delivery tracking, device data), and the dispute reason code. It then generates a tailored defense narrative that presents your strongest evidence first, highlights contradictions in the cardholder's claim, and references the relevant card network regulations.

The result is a defense that reads like it was written by a chargeback specialist, not copied from a template. Bank analysts can tell the difference. A thoughtful, specific response that addresses the exact dispute scenario signals to the reviewer that you have strong evidence and take the dispute process seriously.

This is why automated dispute defense tools with AI narrative generation consistently achieve win rates 3-5x higher than merchants using manual templates. The combination of instant evidence gathering, AI-powered narratives, and automated submission within minutes of the dispute being filed creates a defense that manual processes simply cannot match.

Skip the Templates. Automate Your Defense.

CertNode Reflex generates AI-powered evidence packages tailored to each dispute in seconds. It fills every relevant Stripe evidence field, crafts compelling narratives, and submits automatically. No templates needed.

Related Resources