#Reformedot-3ds-off-session

1 messages ยท Page 1 of 1 (latest)

steady yew
#

Hi ๐Ÿ‘‹ it's not guaranteed that a payment using a previously setup Payment Method won't require the completion of 3DS. It is up to the issuer whether they require 3DS for a specific transaction.

When you create and process the Payment Intent from your backend, are you setting the off_session parameter to true?
https://stripe.com/docs/api/payment_intents/create#create_payment_intent-off_session

soft zodiac
#
confirm=False,
usage="off_session"

this when I create the setupIntent secret

off_session=False,
confirm=True

and this when I create the Payment Intent via backend

#

Okay, with:

off_session=True,
confirm=True

it looks like it works

steady yew
#

Awesome, glad to hear that helped!

soft zodiac
#

When I try (even with the off_session=True) it fails

#
subscription = stripe.Subscription.create(
   customer=new_customer["id"],
   trial_period_days=30,
   items=[{
          'price': restock.plan.recurrent_product.price_id
         }],
    add_invoice_items=[{
           'price': restock.plan.one_time_product.price_id
          }],
    off_session=True
#

Users get charged for the invoice items first, but it fails due to 3ds

#

The PaymentIntent is not attached to the subscription invoice, and I need that

#

but without the PaymentIntent, it just fails

steady yew
#

Can you share the ID of a Subscription where you saw that behavior?

soft zodiac
#

This is the customer: cus_MOv8aR2GqsiIUp

I'm using test mode

#

sub_1Lg7HwEtfggJJ5D3j3ylwyLB the sub

#

30 eur first month, 20 eur the following ones

#

And this customer: cus_MOuyaUm4jmQjKT gets charged for the first month using the PaymentIntent, but is not attached to the subscription invoice, and I need that

#

sub_1Lg78nEtfggJJ5D3IfOrd3M0 ^^

steady yew
#

Thank you, pulling those up.

steady yew
# soft zodiac sub_1Lg7HwEtfggJJ5D3j3ylwyLB the sub

For this Subscription you seem to be using our 3184 test card which always requires authentication to be completed, regardless of whether the card was previously set up.
https://stripe.com/docs/testing#authentication-and-setup

We provide this as a test card because when a payment is processed it is up to the issuer whether they will require 3DS to be completed for that transaction. During the setup intent process we prepare to request exemptions from 3DS/SCA on future payments, but it's up to the issuer whether they will grant those exemptions.

Simulate payments to test your integration.

soft zodiac
#

I should test with the 3155?

steady yew
#

Yup, that would be the better card for testing if your flow is setting payment methods up correctly.

soft zodiac
#

Perfect thanks, hopefully our customer's cc dont force 3ds always