#Ji_net
1 messages · Page 1 of 1 (latest)
Do you have an example payment where something unexpected is happening?
yes, this payment: pi_3M327LDVTBweL1iF0mYhtN7w
I need to understand how that payment succeeded and disputed due to insufficient funds, if it was successful, stripe charge the customer immediately, no!
Where are you seeing a dispute related to that payment intent?
in Dashboard
Is there an id for that event you can share?
yes, evt_3M327LDVTBweL1iF0hld5H7j
Ah yes, I see it now, thanks
This is a normal flow for SEPA insufficient funds. Sepa pays the amount and succeeds the payment but it can later fail:
https://stripe.com/docs/payments/sepa-debit#disputed-payments
A dispute can also occur if the bank is unable to debit the customer’s account because of an issue (for example, the account is frozen or has insufficient funds), but has already provided the funds to make the charge successful. If this occurs, the bank reclaims the funds in the form of a dispute.
When a dispute is created, a charge.dispute.created webhook event is sent and Stripe deducts the dispute amount and dispute fee from your Stripe balance.
Which is what happened here
the problem is we did rely on invoice.payment_succeeded & invoice.payment_failed, so after dispute we didn't receive any, and the subscription remains active
ok but the event data we receive of the dispute event, doesn't provide the dispute reason so I can cancel the subscription
Is there any event that tells that the account has insufficient funds which I can rely on?
https://dashboard.stripe.com/events/evt_3M327LDVTBweL1iF0hld5H7j
This information is in the dispute event:
reason: "insufficient_funds",
Ok 👍, one more question, why stripe doesn't update the subscription as unpaid automatically if insufficient_funds?
because of the way sepa returns this as a dispute, you'd need to manage that, so I can share as feedback that you'd like to see this.
👍