#vova_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/1267823747994484848
đ Have more to share? Add more details, code, screenshots, videos, etc. below.
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.
- vova_api, 2 hours ago, 13 messages
Hi, let me help you with this.
Where did you see the "authentication_required" error?
When I create a PaymentIntent with the following parameters and as payment_method use card with 3DS security (4000000000003220)
'off_session' => true,
'confirm' => true,
Could you please share the Request ID req_xxx? https://support.stripe.com/questions/finding-the-id-for-an-api-request
req_dwYT8B82gpDIk0
The error code is different here: payment_intent_unexpected_state
How are you confirming this payment exactly?
Oh, sorry. It was a confirmation request without payment_method.
here's a request with authentication_required req_fVVm5i82h3mGAX
Is it a test card that requires authentication?
Yes, card numbers is 4000000000003220
If the card is set up correctly for future payments, this won't likely happen in reality. In this case you would usually ask your customer for a different card.
But I need to create a flow for all cases, even if bank requires authorization. How can I setup confirmation flow properly?
As I mentioned, for off-session payments, normally you want to set up a PaymentMethod for future payments - usually with a SetupIntent. When you do that, authentication will never be required and you will be just able to charge it without handling 3DS. In exceptional cases when this happens, it's easier to ask the customer for a different card (because the problem is usually with their own bank), than building and maintaining a way to handle 3DS.
Here's a guide how to set up PaymentMethods for future usage: https://docs.stripe.com/payments/save-and-reuse
Okey, thank you for your help!
Happy to help.
If you use Stripe Billing, there's even a setting to send an email to update the PaymentMethod: https://dashboard.stripe.com/settings/billing/automatic
Will it work also for PaymentIntent?
PaymentIntents are used in Subscriptions, https://docs.stripe.com/billing/subscriptions/overview. Did you mean to ask if the above settings shared in the screenshot works for non-Billing payments? If so, no it does not and there are not other settings like that for non-Billing pyaments. You would handle that on your end by inspecting the PaymentIntent status and when 'authentication_required' is required, you'd trigger an email yourself.
I cannot use subscription due to complicated logic of app (custom schedulling for school), so I plan to charge clients manually using PaymentIntent for every lesson.
Your collegue said that it's hard to maintain 3DS. But why is it so? I tried to fill payment_method on the client side with user payment method and it opens modal with confirmation just like it did when I used SetupIntend