#some1ataplace

1 messages · Page 1 of 1 (latest)

compact solarBOT
#

Hello! We'll be with you shortly. Below are links to other discussions we've had with you in the past week in case you want to review that information. If your question is related to one of these previous discussions, please provide a comprehensive summary of the current state and what you need help with now. We help many users simultaneously, so a summary allows us to resolve your issue as soon as possible.

normal kernel
#

Can you share the Checkout Session ID (cs_xxx)?

polar jewel
#

cs_test_a1SLuuhojCQ8urv62JJMNBMi0UWO2Cw1jQTft9MkpyPtuPDotxgadBGRcM

#

req_a1OSeR1H62SmhM

#

I am not explictly saying in an API way to make a subscription. It seems like it is being done automatically

#

As if the checkout session will do it no matter what

normal kernel
#

Thanks for sharing! The behaviour is indeed odd. It's likely because ACH direct debit is processed asynchronously that the the subscription will be created first and have the invoice payment in pending, then update to failure later

#

Can I suggest writing to Support https://support.stripe.com/contact with the Checkout Session ID, so that they can check with relevant team?

polar jewel
#

Unless the workaround is if there is a failure of the ACH then cancel the subscription from checkout. Invoice will be uncollectible webhook?

#

How do I tell then in that webhook it was an ACH failure?

normal kernel
#

checkout.session.async_payment_failed will be sent. For example: https://dashboard.stripe.com/test/events/evt_1OEm4SIeTJrsS1reyt4J1uW9

I'd recommend checking the guide here: https://stripe.com/docs/payments/checkout/fulfill-orders#delayed-notification

Learn how to fulfill orders after a customer pays with Stripe Checkout or Stripe Payment Links.

polar jewel
#

hmm yea I have that too but it is not sending

#

oh maybe because on the second round of the webhook getting executed I have to say either

checkout_session.invoice.payment_intent.status

checkout_session.payment_status

Which one is better?

normal kernel
#

The event was sent and your Webhook endpoint has responded 200

polar jewel
normal kernel
#

checkout_session.payment_status should be checked

polar jewel
#

yes but it will be unpaid twice - first round and second round

#

with
checkout_session.invoice.payment_intent.status
I can at least get canceled. But not sure if that will be every time yet

#

Would this be okay?

event.type == 'checkout.session.async_payment_failed' and checkout_session.invoice.payment_intent.status == 'canceled'

normal kernel
#

checkout.session.async_payment_failed event should be sufficient to determine the payment failure on the Checkout Session.

checkout_session.payment_status is mainly used to determine the checkout session status when receiving checkout.session.completed event

polar jewel
#

okay so maybe i won't need to add either status i guess. I'll give it a try thanks

normal kernel
#

No problem! Happy to help 😄

polar jewel
#

i think it worked, even the invoice uncollectible webhook, idk why i didn't include the url to that webhook before

normal kernel
#

Great to hear that it works!