#jared_3ds-card-deferred

1 messages ยท Page 1 of 1 (latest)

icy lindenBOT
#

๐Ÿ‘‹ 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/1222213337928962211

๐Ÿ“ Have more to share? Add more details, code, screenshots, videos, etc. below.

round girderBOT
near wyvern
#

Hi ๐Ÿ‘‹

The issuing bank can request 3DS at any time, even if you have gone through 3DS with the card previously. Let me take a look at how this was created

heady talon
#

Hi ๐Ÿ‘‹

#

Oh interesting

#

So the card can require confrirmation more than once?

near wyvern
#

It's up to the issuing bank whether or not the request it.

heady talon
#

I'm not sure about deferred intents

#

We use the Ruby SDK to create PaymentIntents whether we are attempting to charge or auth the card

#

So it looks like PaymentIntent.create(....)

#

Does the deferred intents flow refer to authorizing the card now and charging it later? If so then yes that is what we are trying to do here

near wyvern
#

I'm referring to when the Payment Method is created

#

That is the important part

heady talon
#

Right so in this case we are trying to create the payment intent without charging the card and then charge the card at a later date

near wyvern
#

You creat the payment intent with setup_future_usage. That implies to us that you have the user on-session and you will be creating a payment method

#

Since there is already a payment method attached, that is incorrect

#

This will indicate to the API that the customer is not interacting with your system at that time and we will automatically request an exemption from 3DS

heady talon
#

Okay interesting so "setup_future_usage": "off_session" is not the same as "off_sesion=true"

near wyvern
#

Not at all

#

setup_future_usage is used when you are creating a Payment Method as part of the Intent confirmation. That informs the API that the payment method it will create should be set up for future usage

#

It implies the customer is on-session and able to authenticate

#

and that we should try to collect authentication from them so the payment method is configured properly

#

So it's doing the opposite of what you are trying to achieve

heady talon
#

Okay I think I understand. In the case where we want to charge the customer later we need to set offsesion = true and we don't want to add setup_future_usage

near wyvern
#

Correct

heady talon
#

Thank you that is really helpful. Do you know if there's a way to simulate this in a test environment? It seems like we can't reproduce it unless the authorization expires

near wyvern
#

Unfortunately you cannot simulate this exact situation. All our test payment methods either succeed or fail with specific failures.

#

That would allow you to test your flow to be sure the payment methods you create a properly configured.

#

You would still need to create the Payment Intents with the correct parameters though and we don't have a way to automatically trigger another auth request in that scenario

heady talon
#

I see okay

#

I feel like that answers our questions. Thank you so much for all your help here

near wyvern
#

I'm happy I was able to help ๐Ÿ™‚