#sina
1 messages · Page 1 of 1 (latest)
Hi there, is you question about how to handle a PaymentIntent when its status becomes requires_action ?
Yes
There are two ways
- If you have a frontend integration, you can call stripe.confirmPayment() (https://stripe.com/docs/js/payment_intents/confirm_payment) to let Stripe.js to initiate the 3DS flow so that you customer can authenticate the payment
- Enable the
Send a Stripe-hosted link for customers to confirm their payments when requiredoption in the billings settings page (https://dashboard.stripe.com/settings/billing/automatic)
Sign in to the Stripe Dashboard to manage business payments and operations in your account. Manage payments and refunds, respond to disputes and more.
The payment is for a recurring subscription, specifically a gym membership
The cardholder would've authenticated during the initial purchase
How do we reference that initial authentication during repeat billing
?
Based on the log, this PaymentIntent wasn't attached with an existing PaymentMethod when it's created, and the terminal application is collecting a new PaymentMethod from the terminal reader.
I think you're in the wrong chat as I didn't even give you a paymentintent
We're talking about 3D secure
Sorry, I'm in a wrong chat. Too many threads...
No problem
OK, back to the 3DS. It's up to the card issuer to determine whether a 3DS is necessary even if the card was used previously for the same subscription.
So your application need to handle the scenario when the PaymentIntent status becomes requires_action
Payment Intent ID: pi_3LvMqCE48Fm17Noq03nmGpvb
This transaction failed but the cardholder has previously made a purchase and authenticated themselves. How do we re-bill this card and reference that authentication?
You can read the decline code page to know how to handle this decline error (https://stripe.com/docs/error-codes#authentication-required). So you should create a PaymentIntent without setting confirm=true, and confirm the PaymentIntent at frontend by using stripe.confirmPayment() (https://stripe.com/docs/js/payment_intents/confirm_payment)