#Jast
1 messages · Page 1 of 1 (latest)
Hi there!
This payment flow is really not optimal. You might trigger two 3DS flow in a row: when collecting the card details and when making the first payment. So I strongly recommend against this.
Instead you should follow this guide that covers subscriptions with the Payment Element: https://stripe.com/docs/billing/subscriptions/build-subscriptions?ui=elements
yeah in know, i inherited the codebase from old contractors and was hoping for a quick fix
we are also running quite an old API with stripe 8.x.x
Can you share the subscription ID (sub_xxx)?
sub_1MbnbQLNC4byIUUDsS239cSk
we did not even support 3DS, support told me switch to "default_incomplete" for payment behaviour but we do not even have that in this API version, so i'm using "allow_incomplete". Also, should already be "charge_automatically@
Can you clarify what is the issue with this subscription? It seems active with all invoices paid.
essentially, as you see from the logs, the user "attempted to subscribe to price" and the integration sorts of ends it there
we need to manually go on the dashboard and charge the customer
last event of the integration is at 16:13:07, the rest is performed manually
Is this the issue? https://dashboard.stripe.com/events/evt_1MbnbTLNC4byIUUDJ75mJl7O
oh... why do i not see it under the customer tab? i cannot see this event over there
If you look at the subscription in the dashboard, and scroll to the bottom, you can see the list of events (including this one).
oh i see there is more i didn't click view all xD
so is this User error or the integration failing?
we did not have another customer yet since i changed the integration yesterday to allow for 3ds
i did not have an issue on test dashboard before promoting to prod
Give me a few minutes to look into this.
So the first payment required 3DS, so the payment and the invoice failed. That's why, as mentioned earlier, I strongly recommend going though this guide to avoid this issue: https://stripe.com/docs/billing/subscriptions/build-subscriptions?ui=elements
But the quick fix here, is when you see the PaymentIntent is in a require_action statue, you need to call this function on the frontend so the end use can go though the 3DS flow and pay for the invoice: https://stripe.com/docs/js/payment_intents/confirm_card_payment#stripe_confirm_card_payment-attached
i do already call confirmCardPayment, not sure why it is not going through xD and the 3DS integration works fine in the TestDashboard
I still have the first failed intent but then the integration manages fine with the 3DS
I still have the first failed intent
Yes, this happens automatically, as soon as you create the subscription Stripe tries to pay for the first invoice and it fails.
Hey, do you have. a better idea then, why it is fine on test dashboard but fails in live integration?
👋 taking over for my colleague. Let me catch up.
why it is fine on test dashboard but fails in live integration?
what is working on test but not in live exactly?
This
I have been told by my superior that this was not an issue before august, when it started to fail he contacted support back then and they told him about needing to integrate 3DS, which i think i did without disrupting the original flow by adding “allow incomplete” and adding the confirmCardPayment in the frontend
I'm looking into this
@past acorn sounds good. So do you have an example of a failed payment?
not a screenshot
what would you like?
the ID like pi_xxx or in_xxx so I can look myself
pi_3MbnbQLNC4byIUUD0jIlvBm0
is it failing the 3DS a stripe integration Issue or just a User error? we just had a customer
hence why i am asking
it can be either
so, that invoice required 3D Secure payment , it looks like the customer tried to do that
but they failed the authentication
so, should i just wait for a few more clients to come through and figure that out? or is there a better way to debug this? again the main problem is that i have never managed to reproduce the issue on test dashboard of needing to manually charge the customer because 3DS fails
the specific failure looks like a generic timeout with their bank, which can happen sometimes if there's an issue with their bank, or with how the customer has their card set up for 3D Secure with their bank
you can use test mode and in the test mode popup we have, click the "fail authentication" button
the specific issue there doesn't look like a general one and is more about a failed 3D Secure authentication by that customer. Are there other examples you want us to look at?
Not really, as again i jsut changed the integration to support 3DS, and only had one customer since yesterday afternoon, hopefully this was just an unlucky trial
Let's just close / pause this for now, i will wait and gather more logs with other customers / try to test it more as you suggested here, and if needed circle back. Many thanks to the whole team!