#nicoyamx_error

1 messages ¡ Page 1 of 1 (latest)

modern marlinBOT
#

👋 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/1399361015426322513

📝 Have more to share? Add more details, code, screenshots, videos, etc. below.

glacial matrix
#

hi there!

#

can you share the Request ID (req_xxx)?

modern marlinBOT
sudden oak
#

Hey! Taking over for my colleague. Let me catch up.

#

You are not requesting 3DS when collecting the Paymentmethod:
req_L9SneImejx9rn9

#

You should use SetupIntents in order to correctly collect the PaymentMethod

#

It will auth the payment and handle the 3DS when the bank issuer requests it

finite plume
#

Ok

#

When should I call this: here is my flow:

create-payment-intent
createPaymentMethod
create-customer
paymentIntents.update (attach customer to payment method)
confirmCardPayment

sudden oak
#

Ok
When should I call this: here is my flow:

create-payment-intent
createPaymentMethod
create-customer
paymentIntents.update (attach customer to payment method)
confirmCardPayment
Ah you are accepting a Payment and Save the PaymentMethod, in this case, you should refactor your code to look exactly like this guide:
https://stripe.com/docs/payments/save-during-payment

#

The flow will be as following:

  1. Create Customer
  2. Create PaymentIntent with that Customer
  3. Confirm PaymentIntent
  4. Update the Customer's invoice setting to use that PaymentMethod as default.
modern marlinBOT
finite plume
#

Is it mandatory to create the customer first then the paymentIntent?

sudden oak
#

What is the blocker here? because you can create both the Customer and the PaymentIntent after collecting the PaymentMethod (using confirmation tokens)

finite plume
#

Ok but how come I have so many card decline then? 372 the last 7 days

#

Seems like European banks are not accepting the transactions, I have some customers that are able to pay but 60% cannot, they are all getting declined like do not honor errors

#

Isn't it a BIN issue ?

normal grotto
#

When the issuing bank asks for 3DS, it is required that the customer authenticates the payment

finite plume
#

const paymentIntent = await stripe.paymentIntents.create({
amount: Math.round(amount),
currency: currency.toLowerCase(),
payment_method_types: ['card'],
payment_method_options: {
card: {
request_three_d_secure: 'challenge'
}
}
});

normal grotto
#

We can't help with decline related questions here.

finite plume
#

And I have enable the 3DS on radar as well