#Village_Admin-test-dispute
1 messages · Page 1 of 1 (latest)
👋 once you locate the first payment you can follow the steps outlined here to trigger a dispute. It has instructions for both Dashboard and API approaches:
https://stripe.com/docs/issuing/purchases/disputes
try one of the cards here (in Checkout) to simulate a dispute happening on a successful charge: https://stripe.com/docs/testing#disputes
No way to not have it disputed as soon as the transaction is approved?
ah you want to add a delay b/w Charge creation and Dispute creatin?
Not super important, i just wanted to watch what happens over webhooks when it happens.
Is it just the two events charge.dispute.created and charge.dispute.funds_withdrawn ?
And was funds withdrawn because im in test mode, or does stripe always withdraw funds as soon as a dispute is opened before the outcome?
I also see, even a dispute happened, and i closed the accepted closed the dispute, the subscription that transaction paid for is still active and showing to be rebilled in 30 days. Stripe really going to try to charge the same card that was disputed again?
Stripe really going to try to charge the same card that was disputed again?
yes, nothing changes on that end afaik, your integration controls what you do to future payments on disputed payments.
There is a $15 fee for someone starting a chargeback?
I think so? but I don't know about the fee parts on Disputes, sorry. The Support team knows more about that
Sure.
Is it just the two events charge.dispute.created and charge.dispute.funds_withdrawn ?
yes those two, there might be a few more documneted here: https://stripe.com/docs/disputes/responding
or does stripe always withdraw funds as soon as a dispute is opened before the outcome?
yes
Is there a way to flag a disputed payment method so it isn't used again? To prevent someone from using that same credit card to signup again?
I don't know off hand. Maybe Radar offers something here, not sure. Aside from that, there are other good things mentioned here that you could leverage to reduce the instance of chargebacks: https://stripe.com/docs/disputes/prevention/best-practices
Yes, but since i am not involved in the process of collecting the payment info, i have no way to filter out bad actors. A fraudster/troll can use a stolen card, it can get disputed, i can ban their account. But nothing stops them from signing up 10 more accounts with that same stolen card number which was previously disputed.
This is the situation im trying to avoid. If there is a way to prevent previously disputed cards from ever being used again.
But nothing stops them from signing up 10 more accounts with that same stolen card number which was previously disputed.
Radar is what helps here really
ah you could use "lists" in Radar Rules to make a blocklist for e.g. https://stripe.com/docs/radar/lists#default-lists
This is a paid service? To have a ban list of cards? No other available options?
I think it is part of Radar for Fraud Teams which (last I remember) was a paid thing. Support (https://support.stripe.com/contact) can double check me on that
In the dispute object, the status can have...
charge_refunded? You can issue a refund to a disputed transaction?
And out of those statuses, which are possible outcomes in the charge.dispute.closed event?
After you submit a response, the status of the dispute changes to under_review. If you win the dispute, this changes to won. If the card issuer upholds the cardholder’s dispute, the status changes to lost. After a dispute closes, we send you an email with information about the outcome and a charge.dispute.closed webhook event.
This is from the https://stripe.com/docs/disputes/responding, pls do refer to those as they help answer plenty of your questions
this answers your other question:
https://stripe.com/docs/disputes/how-disputes-work#inquiries-and-retrievals
I have read those pages. My questions are from a programing logic perspective. Im asking which status under what conditions can happen in a charge.dispute.closed so i ensure to trap all possible outcomes.
I did not see anything talking about that on those links you provided. Is there another page with that info?
I even read https://stripe.com/docs/api/disputes/object
But I dont see where it speak to process or what happens at what stage such as charge.dispute.closed
I also don't see in the webhook the customer_id to be able to match the transaction to a customer. Is there a way for the webhook to come expanded with the customer_id?
did the above part help, to clarify
After you submit a response, the status of the dispute changes to under_review. If you win the dispute, this changes to won. If the card issuer upholds the cardholder’s dispute, the status changes to lost. After a dispute closes, we send you an email with information about the outcome and a charge.dispute.closed webhook event.
i.e. regardless of outcome, you get thecharge.dispute.closedevent once the Dispute is closed.
I also don't see in the webhook the customer_id to be able to match the transaction to a customer. Is there a way for the webhook to come expanded with the customer_id?
you get back a Dispute object on that webhook event. You have to fetch thechargevia an API request, and passexpand: ['customer']on it to fetch the entire Customer as well.
i.e. regardless of outcome, you get the charge.dispute.closed event once the Dispute is closed.
Sorry i can't convey my question correctly. Yes i know once the dispute is closed thecharge.dispute.closedevent fires. What im trying to ask is what are all of the possible outcomes for thestatusfor just the closed event? While most of them are self explanatory, im curious about thecharged_refundedstatus. How does that happen? Why does it happen? So i know how to code my end, am i banning that customer? Do i need to blacklist the card used?
Hello! Taking over and catching up...
A charge.dispute.closed event can have the statuses documented on that event in the API reference: https://stripe.com/docs/api/events/types#event_types-charge.dispute.closed
So charge_refunded isn't a status that will show up in that event.
Okay, i see that, thank you.
Is a warning_closed only for a retrieval? Also for a charge back? Is money returned to my account in that status? Is it mechanically the same as a won status?
And along that lines, since a retrieval request is still a dispute are funds withdrawn for those same as a chargeback?
Honestly, I don't know. The mechanics of the dispute process are better questions for Stripe support (we're focused on developer/code/API questions here): https://support.stripe.com/contact