Chargeback AI · Analyst Playbook

The complete guide to winning disputes with AI.

The complete guide to fighting chargebacks with Chargeback AI in Claude Code. Screenshots, spreadsheets, pasted text. No API access required.

No API required

You do NOT need Stripe API access to use any of this.

Everything in this playbook works with screenshots, spreadsheets, pasted text, and files from your computer. Stripe MCP is an optional bonus, not a requirement.

01 Getting started

How to share dispute info with Claude

Works for everyone

@ a File

Type @ and pick any file. Works with CSV, Excel, screenshots, PDFs, Word docs, images.

@disputes.csv — triage these
@screenshot.png — respond to this
@template.docx — improve this
Works for everyone

Paste a Screenshot

Screenshot your Stripe dashboard or dispute portal. Paste or drag into chat.

[paste image]
What code is this? Should I fight?
Works for everyone

Type or Paste Text

Type details, paste from emails, copy from dashboards. Any format works.

Visa 13.1, order #1234,
$149, shipped 3/10 FedEx
Optional, needs MCP setup

Stripe / Shopify MCP

If connected by your admin, Claude pulls details by dispute ID.

Pull dispute dp_XXXXX
and generate a response
02 Files & Formats

What files work?

Short answer: whatever you have. Claude reads your file and figures out the columns, layout, and format automatically. You do not need to prepare a special template.

Spreadsheets & CSV exports

Basic export: enough for triaging

Triage only
idamountreasonstatuscreated
dp_1abc...$349.00product_not_receivedneeds_response2026-03-15
dp_2def...$89.00fraudulentneeds_response2026-03-18
dp_3ghi...$215.00duplicateunder_review2026-03-20

Enough for fight/accept decisions, deadline sorting, and reason code lookups. Not enough for full responses. Claude will ask you for evidence details per dispute.

Detailed tracker: enough for full responses

Triage + Respond
idamountreasonordercustomertrackingevidence_notes
dp_1abc...$349not_received#8742J. MartinezFedEx 7946...Signed delivery 2/21
dp_2def...$89fraudulent#9103A. Chenn/a3DS auth, AVS match

With order numbers, tracking, and evidence notes, Claude can generate complete response packages directly from the spreadsheet. No follow-up questions needed.

Don’t have a detailed tracker? That’s fine. Use a basic export for triaging, then when you pick a dispute to fight, share the extra details via screenshot, paste, or additional files. Claude will tell you exactly what it needs.

Where to get it

  • Stripe Dashboard → Disputes → Export
  • Your acquirer’s dispute portal
  • Your team’s own Excel/Google Sheet tracker

What columns?

  • Any columns work. Claude reads the headers
  • For triage: reason code, amount, date, status
  • For responses: add order #, tracking, evidence

Formats accepted

  • .csv .xlsx .xls
  • .tsv .numbers
  • Or just paste rows directly into chat

Screenshots & images

Dispute portals

Screenshot the dispute detail page from Stripe, PayPal, Adyen, or your acquirer. Claude reads the text from the image.

Evidence images

Delivery photos, signed receipts, tracking confirmations, chat logs. Use as exhibits in your response.

How to share

@screenshot.png to pick a file, or just paste/drag the image directly into chat.

Documents

Rebuttal templates

.docx .doc .txt. Your team’s existing templates. Claude improves them per reason code.

Customer emails

.pdf .txt .eml or paste the text. Useful for understanding the customer’s claim.

Evidence PDFs

Shipping manifests, signed contracts, terms of service. @file.pdf and Claude extracts what it needs.

03 Commands

Every way to use them

/chargeback-ai:lookup Look Up a Reason Code

Get evidence requirements, deadlines, strategy tips, and common mistakes for any code or category.

By code
/chargeback-ai:lookup Visa 13.1
/chargeback-ai:lookup MC 4853
/chargeback-ai:lookup Amex C08
By keyword
/chargeback-ai:lookup fraud
/chargeback-ai:lookup "not received"
/chargeback-ai:lookup "subscription"
From screenshot
@dispute.png
What code is this? Look it up
Bulk lookup
Look up Visa 13.1, 13.2,
10.4, MC 4837, 4853
Compare codes
Difference between
Visa 10.4 and MC 4837?
Natural language
What evidence do I need
for a Visa fraud dispute?
/chargeback-ai:analyze Fight or Accept?

Get a fight/accept recommendation with win-rate estimate and cost-benefit analysis.

Type details
/chargeback-ai:analyze Visa
10.4, $250, no AVS match
From screenshot
@stripe-dispute.png
Should I fight or accept?
Batch from CSV
@disputes.csv — triage all,
tell me which to fight
From email
@customer-email.txt
They filed a dispute. Fight?
Natural language
$300 fraud dispute, have
3DS + AVS. Worth fighting?
With Stripe MCP
Analyze dp_XXXXX —
should I fight it?
/chargeback-ai:respond Generate Response Package

Full package: rebuttal letter, evidence checklist, organization guide, submission tips. Download the rebuttal letter for submission or the full working copy for your records.

Type details
/chargeback-ai:respond Visa
13.1, order #5678, $149
From screenshot
@dispute.png — generate
a full response package
From spreadsheet
@disputes-to-fight.csv
Respond to all of these
Multiple evidence files
@dispute.png @tracking.png
@emails.txt — respond
Review a draft
@my-draft.docx — review
my rebuttal for Visa 13.1
With Stripe MCP
/chargeback-ai:respond
dispute dp_XXXXXXXXXXXXX

Two PDF downloads: After generating the response, you get a page with two buttons:

  • Download Rebuttal Letter: clean letter ready to submit to your processor
  • Download Full Working Copy: includes evidence checklist, org guide, and notes for your records

Have your own submission template? Use @your-template.docx and ask Claude to fill it in instead.

No syntax required

You don't always need slash commands. You can just talk naturally: I have a Visa fraud dispute for $300, here's what happened.... Claude figures out which command to run.

04 Recipes

Workflow recipes

Step-by-step workflows for common analyst tasks. Each card shows what access level is needed.

No Stripe needed

Single Dispute from Screenshot

  1. 01 Paste or @ your dispute screenshot
  2. 02 Ask: Should I fight or accept?
  3. 03 If yes: /chargeback-ai:respond
  4. 04 Click "Download PDF" in the generated page
No Stripe needed

Single Dispute, Typed

  1. 01 /chargeback-ai:lookup Visa 13.1
  2. 02 /chargeback-ai:analyze with your details
  3. 03 /chargeback-ai:respond with full info
  4. 04 Download PDF and submit
No Stripe needed

Batch Triage from Spreadsheet

  1. 01 @disputes.csv — triage all of these
  2. 02 Claude recommends fight/accept per row
  3. 03 Ask for responses for the fighters
  4. 04 Download PDFs for each
No Stripe needed

Multiple Screenshots Triage

  1. 01 @dispute1.png @dispute2.png @dispute3.png
  2. 02 Ask: Triage all three
  3. 03 Get fight/accept for each
  4. 04 Generate responses for winners
No Stripe needed

Multi-Evidence Response

  1. 01 @dispute.png — dispute details
  2. 02 @tracking.png — delivery proof
  3. 03 @emails.txt — customer comms
  4. 04 Ask for combined response package
No Stripe needed

Improve Rebuttal Templates

  1. 01 @fraud-template.docx
  2. 02 Ask: Improve for Visa 10.4
  3. 03 Claude adds missing evidence points
  4. 04 Strengthens tone and structure
No Stripe needed

Review Your Own Draft

  1. 01 @my-response-draft.docx
  2. 02 Ask: Review for Visa 13.1
  3. 03 Claude flags gaps and weak points
  4. 04 Suggests improvements
No Stripe needed

Deadline Check

  1. 01 @disputes.csv
  2. 02 Ask: Which expire in 7 days?
  3. 03 Get priority-sorted list
  4. 04 Fight the urgent ones first
With Stripe MCP

Single Dispute by ID

  1. 01 Analyze dp_XXXXX
  2. 02 Claude pulls all details from Stripe
  3. 03 /chargeback-ai:respond dp_XXXXX
  4. 04 Download PDF and submit
With Stripe MCP

Template + Real Case Context

  1. 01 @template.docx + dispute ID
  2. 02 Claude pulls case details from Stripe
  3. 03 Tailors template to actual evidence
  4. 04 Download improved version
Any access level

Bulk Code Reference

  1. 01 Paste a list of codes from your queue
  2. 02 Ask for deadlines + evidence summary
  3. 03 Get a cheat sheet for your shift
Any access level

New Analyst Onboarding

  1. 01 /chargeback-ai:lookup fraud
  2. 02 /chargeback-ai:lookup "subscription"
  3. 03 Ask follow-up questions freely
  4. 04 Build knowledge by category
Any access level

Prevention Advice

  1. 01 Tell Claude which codes you keep losing
  2. 02 Ask: How do I prevent Visa 10.4?
  3. 03 Get actionable checkout/process changes
Any access level

Understand a Customer Claim

  1. 01 Paste the customer's email or complaint
  2. 02 Ask: What code is this likely filed under?
  3. 03 Get evidence requirements preemptively
No Stripe needed

Analyze Lost Disputes

  1. 01 @lost-disputes.csv — export of disputes you lost
  2. 02 Ask: What patterns do you see? Why did we lose?
  3. 03 Get a breakdown of evidence gaps by reason code
  4. 04 Ask for process changes to win next time
05 Reference

Quick reference

What you haveWhat to doAccess needed
Reason code from queue/chargeback-ai:lookup then /chargeback-ai:analyzeNone:type it in
Screenshot of disputePaste or @ it → analyze → respondNone:screenshot only
Multiple screenshots@ all of them → batch triageNone:screenshots only
CSV/Excel export@ file → triage + batch responsesNone:dashboard export
Rebuttal template@ file → improve for specific codeNone:your template file
Multiple evidence files@ each file → combined responseNone:your files
Draft response to review@ draft → ask Claude to reviewNone:your draft
Customer email/complaintPaste it → predict code + evidence needsNone:paste text
Deadline questionAsk with code + date, or @ spreadsheetNone:type or file
Prevention questionAsk about patterns you're seeingNone:just ask
Want a submission-ready PDF"Download Rebuttal Letter" for submission, "Full Working Copy" for recordsNone:auto-generated
Stripe dispute IDPass ID to any commandStripe MCP
Shopify order IDPass ID to any commandShopify MCP
VisaMastercardAmexDiscoverACH
06 Optional

Connecting Stripe or Shopify (optional)

This is completely optional. Everything above works without it. But if your admin can grant read-only API access, Claude can pull dispute details by ID instead of you screenshotting or exporting.

Stripe MCP Setup
01

Create a restricted API key in Stripe

Go to Stripe Dashboard → Developers → API keys → Create restricted key

Required permissions (all read-only)

Disputes Read
Charges Read
PaymentIntents Read
Customers Read

No write permissions needed. Chargeback AI only reads data.

02

Add Stripe MCP to Claude Code

$ claude mcp add stripe -- npx -y @stripe/mcp \
  --tools=all --api-key=rk_live_YOUR_KEY

Use rk_live_ (restricted key), not sk_live_ (secret key).

03

Allow Claude to use the tools

When Claude tries to read from Stripe, it will ask for permission. Choose “Allow always” to stop being asked every time, or pre-allow:

$ claude mcp add-permission stripe "stripe:*"
Shopify MCP Setup
01

Create a custom app in Shopify

Go to Shopify Admin → Settings → Apps and sales channels → Develop apps

Required scopes (all read-only)

Orders read_orders
Customers read_customers
Fulfillments read_fulfillments
Shipping read_shipping

No write scopes needed. Chargeback AI only reads data.

02

Add Shopify MCP to Claude Code

$ claude mcp add shopify -- npx -y @shopify/mcp \
  --store=your-store.myshopify.com \
  --access-token=shpat_YOUR_TOKEN
03

Allow Claude to use the tools

$ claude mcp add-permission shopify "shopify:*"
FAQ

Who needs to do this? Usually a team lead or admin with access to your Stripe/Shopify developer settings. Analysts don’t need to set this up themselves. Once it’s configured, everyone on the team can use it. If your admin can’t or won’t grant API access, that’s fine. Use screenshots, spreadsheet exports, and pasted text instead.

Get started

Need help?
Let's chat.

We are experts at understanding Stripe data and solving complex risk problems. Tell us what you are seeing and we will tell you what is worth fixing first.