SCA migration guide for plugins and developer libraries
Learn how to update your Stripe plugin or developer library to support Strong Customer Authentication (SCA).
Note
This SCA guide is designed for developers of Stripe plugins or libraries. If you’re a Stripe user looking for an SCA-ready plugin, visit Stripe Partners.
Do I need to support SCA for my users? 
Businesses in the European Economic Area (EEA) that accept online payments from customers in the EEA require you to use 3D Secure . Transactions that don’t follow these authentication guidelines might be declined by a customer’s bank, as of September 14th, 2019. This additional layer of authentication requires migrating to SCA-ready solutions like Checkout or Payment Intents.
Identify your plugin on our platform
Plugins and third-party libraries should include identifying information so we can contact you about future changes or critical updates to the API. Use the setAppInfo function to provide those details in your Stripe integration.
We encourage you to join the Stripe Partner Program, which includes free registration and more resources for developers building plugins. Learn more about suggested best practices.
Determine your integration path
For developers of plugins or libraries:
- Choose Stripe Checkout when possible. Checkout is a low-code integration that lets you collect payments using a customizable form. You can embed the payment form on your website or host it on Stripe. To learn more about this payment integration option, see Stripe Checkout.
- For more control over your checkout flow, use the Payment Intents and Setup Intents APIs. These APIs work with Elements, Stripe’s customizable UI components for payment flows, and other Stripe APIs like PaymentMethods, Customers, and Connect. The Payment Intents and Setup Intents APIs display authentication flows like 3D Secure 2, save cards to use later, and support SCA.
- For recurring payments, use Stripe Billing. Billing is a tool for managing subscriptions and invoicing. To learn how to update your Billing implementation to support SCA requirements, see SCA migration guide for Billing.
- Programmatically subscribe your user to webhooks: You can register a webhook endpoint for your account or connected accounts and manage them with the Webhooks API, simplifying setup for your users.
If none of these options work for your integration, let us know.
Test dynamic authentication
After you have finished implementing the new integration path, configure your Dynamic 3D Secure Radar rules to test your integration using 3D Secure test cards. Make sure to test both successful and unsuccessful authentication cases.
Notify your users and Stripe
We recommend releasing an update for your users to let them know your payments solution is SCA-ready. You can share the guide to Strong Customer Authentication with your users to help them understand these regulatory changes. When you’ve released an SCA-ready update, please let us know as well.
Caution
Provide an SCA-ready update as soon as you’re finished updating. We direct users to SCA-ready solutions on the Stripe Partners page.