You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Normally, if we attempt payment and it fails, we get a payment_failed event with a next_payment_attempt set to show Stripe will try again, and we send an email saying payment has failed, please sort it. Then if we get the same type of event with no next_payment_attempt, we send an email saying it's been cancelled, as we won't have taken any payment.
However, we had a situation recently where a subscription rolled over, payment was attempted but the card required 3DS confirmation, so the payment failed and Stripe sent the customer an email to do the 3DS check (which they did, and the payment went through fine). However, the payment_failed event we received didn't have a next_payment_attempt set (presumably because it wasn't going to), so we sent a "subscription has been cancelled" email, which was confusing as they'd also got an email from Stripe and confirmed their payment (and their subscription was not cancelled).
I think we should:
stop sending out the "cancelled" email on failed payment, and only do so on customer.subscription.deleted (when we know it has been) - don't think there's any issue with this?
Also, if we think there might be other payment failures that don't have a next_payment_attempt that might not be 'final' attempts for whatever reason, we could stop sending out that email and turn on Stripe's "Send email when card payments fail" option and let it handle that instead.
The text was updated successfully, but these errors were encountered:
Normally, if we attempt payment and it fails, we get a
payment_failed
event with anext_payment_attempt
set to show Stripe will try again, and we send an email saying payment has failed, please sort it. Then if we get the same type of event with nonext_payment_attempt
, we send an email saying it's been cancelled, as we won't have taken any payment.However, we had a situation recently where a subscription rolled over, payment was attempted but the card required 3DS confirmation, so the payment failed and Stripe sent the customer an email to do the 3DS check (which they did, and the payment went through fine). However, the
payment_failed
event we received didn't have anext_payment_attempt
set (presumably because it wasn't going to), so we sent a "subscription has been cancelled" email, which was confusing as they'd also got an email from Stripe and confirmed their payment (and their subscription was not cancelled).I think we should:
customer.subscription.deleted
(when we know it has been) - don't think there's any issue with this?next_payment_attempt
that might not be 'final' attempts for whatever reason, we could stop sending out that email and turn on Stripe's "Send email when card payments fail" option and let it handle that instead.The text was updated successfully, but these errors were encountered: