#uncdaja_api
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/1238139582814355569
📝 Have more to share? Add more details, code, screenshots, videos, etc. below.
Hi, even if you use "setup_future_usage:off_session", the Issuing bank can still ask for 3DS. Stripe does not control when the issuing bank asks for this so you'd need to be able to handle this by bringing the customer back on session and hand next_action.
I'm now working on showing an error message or trying to get the API to fail when I attempt to confirm but having no luck
Can you add more context? What kind of error/ what are you trying to test exactly?
$stripe->paymentIntents->confirm($request->paymentIntent);
I want this to be able to fail for when I need to a 3d check
It is returning a 200 response and then on the Stripe dashboard I am seeing "The cardholder began 3D Secure authentication but has not completed it."
I would like for this to fail when next_action is required
What test card are you using?
It ends in 3220
Either way this card number is the one that's allowing me to recreate my issue in production
When you click on the next_action, it should give you an option to fail in the UI. Does that not happen for you?
I would like to generate a failed response or any response where I can see next_action
Ah, in that case you would need to add this logic on your end. When next_action is required, the request on our end will not fail. It's just part of the payment intents cycle.
next_action:
Stripe
StripeObject {#1591 ▼
#_opts:
Stripe\Util
RequestOptions {#1598 ▶}
#_originalValues: array:2 [▶]
#_values: array:2 [▶]
#_unsavedValues:
Stripe\Util
Set {#1596 ▶}
#_transientValues:
Stripe\Util
Set {#1597 ▶}
#_retrieveOptions: []
#_lastResponse: null
type: "use_stripe_sdk"
use_stripe_sdk:
Stripe
StripeObject {#1599 ▼
#_opts:
Stripe\Util
RequestOptions {#1603 ▶}
#_originalValues: array:9 [▶]
#_values: array:9 [▶]
#_unsavedValues:
Stripe\Util
Set {#1601 ▶}
#_transientValues:
Stripe\Util
Set {#1602 ▶}
#_retrieveOptions: []
#_lastResponse: null
directory_server_encryption:
Stripe
StripeObject {#1604 ▶}
directory_server_name: "visa"
merchant: "acct_1LXp4TAjVCSGqTqg"
one_click_authn: null
server_transaction_id: "507e2659-c3a9-4295-b9e1-28575b9e6636"
three_d_secure_2_source: "payatt_3PEYguAjVCSGqTqg0U6d0qf1"
three_ds_method_url: ""
three_ds_optimizations: "kf"
type: "stripe_3ds2_fingerprint"
}
}
Is there suppose to be an url somewhere here?
Taking a look here
I think I need to pass an url
It looks like you're used SetupIntents, https://dashboard.stripe.com/test/logs/req_9tW8HQODySZc9A to create that payment method. To manually request 3DS, you'd want to follow this guide: https://docs.stripe.com/payments/3d-secure/authentication-flow#manual-three-ds.