#mike_docs
1 messages ยท Page 1 of 1 (latest)
๐ Welcome to your new thread!
โฒ๏ธ We'll be here soon! Typically we respond in a few minutes, but sometimes we might take a bit longer if the server is busy or if you have a particularly tricky question.
โฑ๏ธ We close idle threads, which makes them read-only. Once a thread is closed it won't be reopened, but you can always start a new thread if you have another question.
๐ This thread will always be available, even after it's closed. You can find it again using Discord's search, or you can save this link: https://discord.com/channels/841573134531821608/1436276171292807253
๐ Have more to share? Add more details, code, screenshots, videos, etc. below.
๐ When a charge is created, the fee information should be immediately available in the balance_transaction object referenced on the charge. Or I am I misunderstanding what you're looking for?
hey there ๐ your understanding is correct - with asynchronous capture, some details around fees/balance_transaction details may not populate at the same time as the succeeded webhook, but at that point the charge has been authorised by the issuer
so which very-first webhook we can rely on to deliver the service?
payment_intent.succeeded
https://docs.stripe.com/payments/accept-a-payment?platform=web&ui=elements#web-post-payment
or else checkout.session.completed if you use Checkout Sessions (though both of these events will be fired in this integration)
ok, before using async charges we relied on charge.succeeded. that is why I asked
that makes sense! in most cases charge.succeeded will also still fire, but charges are an older resource
we recommend relying on payment_intent.succeeded for confirming payment success