#joe-sataapon_api
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/1377939962980339732
๐ Have more to share? Add more details, code, screenshots, videos, etc. below.
Sure, what are the questions?
-
For 3DS: When a user completes 3DS authentication, are there any events I need to listen to? From my understanding, after successful 3DS authentication, the user will be redirected to a URL that I set during PaymentIntent creation. Generally, when the user is redirected, we can trigger our backend to call Stripe capture. Is my assumption correct?
-
Which event types do I need to listen to for successful/failed captures?
-
For cancellation: Do I need to listen to events as well, or is the response from the synchronous call sufficient?
- It depends. It sounds like you're doing manual capture? So you confirm the intent, customer completes auth/3DS and then you capture it, right? In that scenario you'd listen for a
payment_intent.amount_capturable_updatedevent which will fire when the intent transitions torequires_capture - Success will be
payment_intent.succeededโ there's no real failure state for captures as the 'validation' is done at auth time - Synchronous response would be fine in that instance, but you'd also get
payment_intent.canceled
These should be easy enough for you to test ๐
Thank you @lean vigil , this is very helpful.
Yes, I'm using manual capture. For point 1, when creating the PaymentIntent, I see there's also a return_url parameter, which is why I asked about redirection and calling capture after the redirect.
So using the payment_intent.amount_capturable_updated webhook to trigger the capture would be more accurate, correct?
Yes, don't rely on customers being redirected back to your site to perform business critical logic like capture
You should do that async, utilising a webhook with events noted
Currently, I have two systems integrated with Stripe - an old one and a new one - and both need to handle the same events from webhooks. I want to know whether Stripe webhooks support filtering to send specific events base on the parametesr to certain endpoints only?
I think it don't support this feature, but I just want to confirm.
What do you mean by 'webhooks support filtering to send specific events base on the parametesr to certain endpoints only' mean? Are you trying to filter the data after the events are sent? If that is the case, you can get these events, and filter the data however you'd want after.
I mean both systems are listening to payment_intent.succeeded, but I don't want the same event to be sent to both systems. Does Stripe have a filter function to send events to only the old system based on specific parameters like MerchantCode (this is a dummy parameter)?
No, there is no such a function but we document how you can update the webhook verisoning which might be useful in this case: https://docs.stripe.com/webhooks/versioning
Let me know if you have any questions on this
Thank @spare onyx you are very helpful, but this is critical to our integration is it possible to get the person that reply this question?
What do you mean by 'to get the person that reply this question?'?
Does Stripe have a filter function to send events to only the old system based on specific parameters like MerchantCode (this is a dummy parameter)?
No, but you can add a query parameter to distinguish between events sent to the two different endpoints. The, you can use the query parameter and either ignor or process the event. We share the step by step guide here: https://docs.stripe.com/webhooks/versioning
Cool, thank.