> ## Documentation Index
> Fetch the complete documentation index at: https://docs.shoply.gg/llms.txt
> Use this file to discover all available pages before exploring further.

# Disputes

> Answer a buyer's chargeback or claim with what Shoply recorded about their order

When a buyer disputes a payment with their bank or their payment provider, the provider tells Shoply. The dispute is listed under **Fraud Shield**, **Disputes**, with what it is for, what the buyer says, and how long you have to answer.

## Which payment methods report them

| Payment method | Where it is answered |
| - | - |
| Stripe | From Shoply |
| Revolut Business | From Shoply |
| Adyen | From Shoply |
| PayPal | From Shoply, where PayPal is connected with API keys. With **Email Only**, PayPal's Resolution Center |
| Whop | Your Whop dashboard |
| Shopify | Your Shopify admin |

A payment method that is switched off or disconnected is answered in its own dashboard instead.

Mollie, Shopify, Mercado Pago, Pandabase and Skinloop report a chargeback once the bank has decided it, so there is nothing to answer: it is listed as lost, or won where it was reversed. Crypto is never charged back. A dispute on a payment you took outside Shoply is not listed.

## The list

Four figures head it, over the last 90 days:

| Figure | What it counts |
| - | - |
| Needs Response | Disputes waiting for your answer, and how many are due within 3 days |
| Money at Risk | What the open ones are for, in your store's currency |
| Win Rate | Of the disputes that ended, how many you won |
| Dispute Rate | Orders disputed, out of the orders that took money |

Card networks look closer at a store whose dispute rate passes about 0.75%, and a provider may hold payouts or close the account.

The disputes that need an answer come first, the soonest deadline first. **Export CSV** makes a spreadsheet of what the list shows.

A dispute reads as one of these:

| Status | Meaning |
| - | - |
| Needs Response | The provider is waiting for your answer. Without one by the deadline, it is lost |
| Under Review | Your answer is in, or the provider is deciding |
| Won | Decided in your favour. The money stays with you |
| Lost | Decided in the buyer's favour |
| Accepted | You accepted it rather than fight it |
| Closed | Ended with no chargeback: an inquiry the bank closed, or one settled before it became a chargeback |

Beside it is its stage: an **Inquiry** (the bank asks before deciding whether to charge back, and a good answer often stops it there), a **Chargeback**, a **PayPal Claim** (opened with PayPal, not the bank), or **Pre-arbitration** and **Arbitration**, a second round after the first decision, which asks for an answer again.

## What Shoply recorded

A dispute's page shows what Shoply knows about its order, in four parts:

* **The Buyer**: their email, name and billing address, and the IP address, country and browser they paid from.
* **The Order**: when it was placed, that they agreed to your terms at checkout, when it was paid, and what was delivered.
* **After Delivery**: when the receipt was emailed, and every time the buyer opened their order or downloaded a file, with where from.
* **History**: their earlier orders and whether any was disputed, their review, and the policies you have written in Settings.

An order opened again from the same IP address it was paid from is marked as the strongest sign the buyer got what they paid for. Shoply records a buyer opening their order on the checkout's page or in the customer panel, and downloading a file, from October 21, 2026. Visits from the addresses you sign in to the dashboard from are left out.

License keys, files and a dynamic delivery's answer are never in any of it: what is said is how many keys were delivered and which files, never what they were.

## Answering from Shoply

Open the dispute from the list, or with **Open Dispute** on its order's page. Under **Your Response**:

1. **Fight It** or **Accept It**. Accepting means the buyer keeps the money, which is right when they have a point.
2. Answer the two questions only you can: whether the buyer contacted you before disputing, and whether they used what they bought.
3. Change **In Your Own Words**, which starts as a sentence written from the record.
4. Add files if you have them: a chat with the buyer, a receipt, or something else. A PDF, PNG or JPEG, one of each kind, up to 4 MB together.

For an Adyen dispute, a file is a PDF of up to 2 MB or a JPEG: Adyen takes no PNG.

Your answer is saved as you type, and nothing reaches the payment provider until you press **Submit**. It takes one answer and cannot be changed after.

### Stripe

Stripe hands the answer to the buyer's bank at once. The bank usually decides within 60 to 75 days. What goes to Stripe:

| Stripe's field | From |
| - | - |
| Customer email, name, purchase IP, billing address | The order |
| Product description, service date | What was delivered, and when it was paid |
| Access activity log | Every time the buyer opened their order or downloaded a file |
| Refund policy disclosure | That they agreed to your terms at checkout |
| Uncategorized text | Your words, your two answers, and what Shoply recorded |
| Uncategorized file | Shoply's PDF of all of it, with your refund policy and terms |
| Customer communication, receipt, service documentation | Your files |

If your Stripe key was made with restricted permissions, it needs write access to **Disputes** and **Files** to submit. Without it, Shoply says so, and you can download the PDF and answer in Stripe's own dashboard instead.

### Revolut Business

Shoply's PDF and your files are uploaded to the dispute, and it is challenged:

| Revolut's field | From |
| - | - |
| Reason | **Refund already issued** where the order was refunded, **Product already delivered** where Shoply recorded a delivery, and **Disagree with customer's claim** otherwise |
| Comment | The start of your own words, up to Revolut's 250 characters |
| Evidences | Shoply's PDF, with everything recorded and your full statement, and your files |

### PayPal

Shoply asks PayPal what the dispute takes now and sends that: evidence where PayPal asks for it, an appeal of a decision, or supporting information on a chargeback. Your words, your two answers and what Shoply recorded go as its notes, up to PayPal's 2,000 characters, with Shoply's PDF and your files beside them. For an item not received the evidence is proof of fulfilment; for any other reason it is **Other**. If PayPal is not taking an answer at that moment, Shoply says so and you can answer in the Resolution Center.

Your PayPal app needs **Customer Disputes** ticked, under **Features** in the PayPal Developer Dashboard. It is ticked to start.

### Adyen

Adyen takes documents and a reason, and no written statement, so your words are in Shoply's PDF. Shoply asks Adyen which defense reasons the dispute allows, picks the one for goods that were provided (or the closest Adyen offers), uploads Shoply's PDF as each document that reason requires and your files as the others it takes, then defends it.

Your Adyen API credential needs the **API dispute management** role, beside the roles payments use.

An Adyen chargeback can be defended until its defense period ends, which the dispute's deadline shows. Adyen says when the defense is in, and how it ended.

### Accepting

**Accept Dispute** concedes it in the payment provider: Stripe closes it, Revolut and Adyen accept it, and PayPal accepts the claim and refunds the buyer from your PayPal account. The order becomes a chargeback, and it cannot be undone.

If the provider refuses your key or app for disputes, Shoply says which permission it needs, and you can download the PDF and answer in its own dashboard instead.

## Answering in a provider's own dashboard

Whop and Shopify take an answer in their own dashboards, which Shoply cannot send to, and so do PayPal connected by email alone and a payment method that is switched off. The dispute's page has everything to send there: each part of the record with a copy button, your answer, and **Download PDF**, Shoply's PDF to upload as your supporting document. Once you have sent it, press **Mark as Submitted**, and the dispute reads as under review.

## After a chargeback

**After a Chargeback** on the dispute's page says what was done, and what can still be:

* **Blacklist Buyer** puts their email and the addresses they ordered from on your blacklist, where your settings did not already.
* **Hide Now** hides their keys, files and instructions on their order's page, in the customer panel and at their download links. What was emailed cannot be taken back. **Show Again** undoes it.
* An affiliate's commission on the order is taken back when it is lost, as for a refund.

A lost dispute makes its order a chargeback: it no longer counts as a sale.

## Settings

Under **Fraud Shield**, **Disputes**, then **Settings**. Each change is saved as you make it.

| Setting | What it does |
| - | - |
| Blacklist the Buyer | When one opens, their email and the addresses they ordered from cannot buy again. On to start |
| Take Back Access | When one opens, their keys and files are hidden from them, and shown again if you win |
| Accept Small Ones | A dispute answered from Shoply under your amount, that you have not started an answer for, is accepted rather than fought: the fee for fighting can be more than the order |
| Submit Before the Deadline | With a day left on a dispute answered from Shoply, your answer is sent as it stands. With none started, only where the buyer opened their order from the address they paid from |
| Ask Me First Above | Nothing over this amount is sent or accepted by itself |

Answering by itself and accepting are for disputes answered from Shoply, and each is tried once a dispute. One that the provider refuses is left for you, saying why.

Being told of a dispute is set with your other alerts, in **Settings**, **Notifications**: **Email Me When a Dispute Opens**, with the deadline, and **Email Me How a Dispute Ended** (both on to start, and with no alerts address they go to your account's email), and **Disputes** among what is posted to your Discord. See [Settings](/guides/settings.md#notifications).

## Limits

A store sends 20 answers or acceptances every 10 minutes, and adds 30 files every 10 minutes.

## For developers

Every dispute raises `dispute.opened`, then `dispute.updated` as it changes, and `dispute.won`, `dispute.lost` or `dispute.closed` as it ends: see [Webhook events](/api-reference/webhook-events.md). A key with **Read Disputes** lists and reads them, and one with **Answer Disputes** saves, submits, accepts and marks them: see [List disputes](/api-reference/disputes/list-disputes.md).


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.