Stripe recurrent charges for 3D secured cards (not subscription or billing)

Viewed 339

I want customer to pass 3D secure process only once. Then his future charges should be proceeded without doing 3d secure process. Is it possible in stripe? It is not clear from documentation. If it is possible then what is wrong my flow?

  1. Add card to customer and get card source id
  2. Create 3d source id using customer id and card source id

    source = stripe.Source.create(
    amount=1099,
    currency="eur",
    type='three_d_secure',
    three_d_secure={
        'card': card source id,
        'customer': customer id
    },
    redirect={
        'return_url': 'https://shop.example.com/crtA6B28E1'
    },
    

    )

  3. Then by passing to url I do 3d secure authentication, and 3d secure source authenticated becomes "true".

  4. I make charge using 3d secure source id and customer id and it succeeds.

    charge = stripe.Charge.create(
        amount=1099,
        currency='eur',
        customer=customer id,
        source='3d secure source id'
    )
    
  5. Then I try to make charge using just customer and it fails.

    charge = stripe.Charge.create(
        amount=1099,
        currency='eur',
        customer=customer id
    )
    
1 Answers

Card with 3d secure required have to be authorized by user every charge.

Related