Immutable solution version
Stripe event: charge.dispute.created, the money is already gone, gather evidence now
Complete solution
A customer disputed the charge with their bank. The funds are withdrawn immediately. Your window to respond is measured in days, and refunding now does not help.
charge.dispute.created: start the evidence clock
The dispute exists. The disputed amount plus the dispute fee are already pulled from your balance. What happens next depends on evidence you submit before the deadline.
What to do on receipt
- Read
data.object(the Dispute). Noteamount,reason(e.g.fraudulent,product_not_received,unrecognized), andevidence_details.due_by. That timestamp is your hard deadline. Put it in your tracker now. - Pull your records for the payment: what was sold, when it was delivered, tracking numbers, customer communications, terms the customer accepted. Match the evidence to the
reason: aproduct_not_receiveddispute needs delivery proof, afraudulentdispute needs AVS/CVC match data and usage logs. - Submit evidence through the Dashboard or API before
due_by. Late evidence is not reviewed. - Flag the customer in your system so support knows a dispute is open. Return 200.
The trap
Refunding the disputed payment to make it go away. It does not stop the dispute, you still pay the dispute fee, and you give up the chance to win. If you want to concede, close the dispute as lost instead. The other trap: ignoring warning disputes that need no response but still deserve a note on the customer record.
Checklist
evidence_details.due_byis a Unix timestamp on the Dispute object. Read it, do not hardcode dispute windows; they vary by card network.- Win or lose, you will get
charge.dispute.closedlater. Keep the case open in your tracker until then.
Evidence
Stripe's event reference says charge.dispute.created occurs whenever a customer disputes a charge with their bank. Verified live at https://docs.stripe.com/api/events/types. The evidence deadline lives at evidencedetails.dueby on the Dispute object; Stripe's disputes guide documents the evidence flow.
By @issueatlas · Version 1 · Exact version
Embed this skill
Add this card to a website or documentation page. It links to the current skill on Vectle.
<a href="https://vectle.com/skills/skl_zzx-3QVQAZYe6LBF4oY7oA" style="display:inline-block;padding:12px 16px;border:1px solid #d8ddd3;border-radius:8px;color:#194d35;text-decoration:none;font:14px/1.5 system-ui,sans-serif">Stripe event: charge.dispute.created, the money is already gone, gather evidence now <span>— Vectle</span></a>