#kudos112
1 messages · Page 1 of 1 (latest)
Hello! We'll be with you shortly. 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.
- kudos112, 6 hours ago, 17 messages
Hi can you share a payment intent id where this happened?
here is the payment intent object:
payment_intent: {
id: "pi_3OkXcEAzlYto0TMq4XNP7EKY",
object: "payment_intent",
amount: 20000,
amount_capturable: 0,
amount_details: {
tip: {
},
},
amount_received: 0,
application: null,
application_fee_amount: null,
automatic_payment_methods: null,
canceled_at: null,
cancellation_reason: null,
capture_method: "automatic",
client_secret: "pi_3OkXcEAzlYto0TMq4XNP7EKY_secret_4ZfcY2UM1aI1JzOLddhIGNclu",
confirmation_method: "automatic",
created: 1708113754,
currency: "usd",
customer: "cus_PZgz9UDIVLMist",
description: null,
invoice: null,
last_payment_error: {
charge: "ch_3OkXcEAzlYto0TMq4ONJurDw",
code: "authentication_required",
decline_code: "authentication_required",
doc_url: "https://stripe.com/docs/error-codes/authentication-required",
message: "Your card was declined. This transaction requires authentication.",
payment_method: {
...
type: "card",
},
type: "card_error",
},
latest_charge: "ch_3OkXcEAzlYto0TMq4ONJurDw",
livemode: false,
metadata: {
orderId: "56",
buyerId: "615",
},
next_action: null,
on_behalf_of: null,
payment_method: null,
payment_method_configuration_details: null,
payment_method_options: {
card: {
installments: null,
mandate_options: null,
network: null,
request_three_d_secure: "automatic",
},
},
payment_method_types: [
"card",
],
processing: null,
receipt_email: null,
review: null,
setup_future_usage: null,
shipping: null,
source: null,
statement_descriptor: null,
statement_descriptor_suffix: null,
status: "requires_payment_method",
transfer_data: null,
transfer_group: null,
},
Here are the testing cards/payment methods I've used:
"pm_card_authenticationRequired"
"pm_card_authenticationRequiredOnSetup"
Ah yeah. Off session payments always decline if authentication is required
You need on session for it to go to requires action
there is not benefit for saving the users payment method if this card always need to get authenticated?
What do you mean? If you set up the card properly for future usage (via setupintent or paymentintent with setup_future_usage, then it's unlikely future authentication will be required for off session payment intents but still possible)
The test card you used is a test card that always requries auth though
That's why you're getting a decline here
Okay I know, about this error. We're also dealing with the case you mentioned above "but still possible". I just need to test the SCA for off session payments which I'm unable to because I'm not getting "requires_action" status.
Requires action only comes for on-session
I've seen the stripe doc which shows that requires_action does appear when you try to charge the subscription with a card which need to get authentication in off-session payments. Thats why I'm asking if it can happen with subscription then why not single off-session payments.
Yeah it's a bit different with a subscription
Off session payment intents just decline if authentication is requried
So you'd need to bring customer online to confirm in those cases
yeah that's what i'm trying to get, how to confirm?
So if you want to use the same card, you'd call https://docs.stripe.com/js/payment_intents/confirm_payment from the front-end when customer comes back online and pass the payment method id: https://docs.stripe.com/js/payment_intents/confirm_payment#confirm_payment_intent-options-confirmParams-payment_method. Then they'll be prompted for 3ds
What we want is user don't have to enter same card again for authentication or payment?
That's what the above does
You're passing payment method
User doesn't have to enter card details at all
Or do you want to collect a new card?
No, we don't want to collect a new card if only the error is user need to authenticate the card.
I think these links could help me. But which card I've to use to test this confirm payment?
Just the same one
I really don't understand your question
It's the payment method id you pass
If you want to use the same card, just pass the same id as the one from the initial payment intent creation request
"pm_card_authenticationRequired" this one?