#Vincent-paymentintents
1 messages · Page 1 of 1 (latest)
@trail comet there's no real advantage. That integration is an escape hatch for systems that don't/won't rely on webhooks and want a more synchrnous flow where the final payment action gets confirmed on the backend server instead of the frontend
oh ok! Thank you very much @steep hollow
crystal clear
There is some benefits to use synchronous architecture instead of asynchronous architecture (with webhooks) on payment intent API?
not really, if you can use the webhook approach you should, it's easier to extend in future for other payment methods(this synchronous approach is specific to cards only), the syynchrnous integration is mainly there to make it easier for legacy systems(based on creating a token on the frontend, sending to the backend and completing payment there) to have an upgrade path without webhooks
the idea being you could keep that approach, but 'just' add an extra round trip at the end for 3D Secure if needed
For now, 3D secure is already triggered by confirmCardPayment if needed (radar, or bank request I guess). Do we have to add another extra round with our asynchronous approach?
I ask the question because we are currently facing an issue with this usecase:
- Our customer is starting to pay on our webapp
- 3DS is triggered: our customer is leaving our app (for 3DS authentication by SMS or with their bank app)
- The customer left our app after authentication success from bank iframe (like a green screen with "Authentication in success" depending on each bank) without waiting the iframe redirection on our app that finalize the payment.
A strange behaviour but our assumption is that it is more related to 3DS protocol with bank implementation than Stripe integration
no, you don't need to do anything different
left our app after authentication success from bank iframe (like a green screen with "Authentication in success" depending on each bank) without waiting the iframe redirection on our app that finalize the payment.
I'm afraid I'm having a hard time understanding that
to be clear yes, the customer might have to open their banks app to authenticate(that's how my bank does 3D Secure, I open their app and put in a code, then I have to go back to your site(the popup from confirmCardPayment) and hit a button there to complete the process)
there is no gurantee the user comes back
which is why it's essential you use webhooks to be notified when the payment is complete and not just your frontend informing you after the confirmCardPayment Promise resolves!
does that make sense? I think that's the issue you're describing, sometimes users authenticate in the bank app, completing the process and getting charged(it happens automatically on Stripe's backend after they authenticate fully) and don't come back to you. That's totally normal/possible and it's why you have to use webhooks to avoid 'missing' those payments.