What it means
The cardholder says they were charged more than once for the same thing. On Stripe the dispute shows the reason Duplicate, with codes such as Visa 12.6.1 (Duplicate Processing), Visa 12.6.2 (Paid by Other Means), Mastercard 4834 or American Express P08.
"Paid by other means" is a variant: the customer says they paid for the same purchase another way, such as by bank transfer or with a different card.
Why software, course and membership customers file it
- Two plans, or a plan and an add-on. A monthly subscription and a separate one-off purchase look alike on a statement.
- An upgrade. A prorated charge plus the new plan's charge in the same month.
- A failed payment retried. The customer saw a pending authorisation and a completed charge.
- A real double charge, such as a double-click at checkout. If so, refund it promptly.
What wins it
Show that each payment was for something different, or that you already refunded the duplicate:
| Evidence | Stripe field |
|---|---|
| The ID of the other payment the customer thinks this duplicates | duplicate_charge_id |
| What's different between the two payments | duplicate_charge_explanation |
| Separate receipts or invoices for each payment | duplicate_charge_documentation |
| Messages with the customer, or a note that they never contacted you | customer_communication |
| A refund already made, with its date and amount | uncategorized_text, uncategorized_file |
For subscription businesses, the explanation usually decides it:
- Name what each charge was for. "Payment 1: Growth plan, monthly, 1 to 30 September. Payment 2: one-off template pack." Two invoices with different line items make it obvious.
- Show prorations. For an upgrade, show the old plan, the new plan, and how the prorated amount was calculated.
- Show the refund. If you already refunded the duplicate, the date and amount usually end the dispute.
What doesn't work, and when to accept
- Two identical receipts with no explanation. If they look the same, the bank will assume they are.
If it really was charged twice and you haven't refunded it, accept the dispute. Refunding as well would pay the customer twice.
How Flatfight handles it
Flatfight checks the customer's payments in Stripe for another unrefunded payment of the same amount in the 7 days before the disputed one. If there is one, it warns you that this may be a real duplicate, so you can decide before spending the counter fee. If there isn't, the response says so, and adds the invoice and billing period the payment covers and any refund already issued.
FAQ
What if there is no other payment?
Then the claim has no basis. Say so plainly, and show the payment history for that customer. In the Stripe form, you can leave the duplicate charge ID empty when no duplicate exists.
I refunded one of the charges after the dispute arrived. Does that help?
Not usually. The bank has already returned the disputed amount, so refunding again pays the customer twice. Answer the dispute instead.