Prefilling saved cards in Checkout

Stripe Checkout offers Link—a one-click payment option to let customers securely save and reuse their payment information. However, if you need to save a payment method to charge it off-session or you prefer to manage saved payment methods yourself, you will need to save the payment method to a Customer. Allow_redisplay is a parameter on the PaymentMethod object to help you model whether you've received consent from the customer to prefill saved card information on return purchases.

Saving payment methods in Checkout: 

Whether and how a payment method is saved will depend on the mode that you use in Checkout. 

  • Payment mode: By default, Stripe does not save payment method information for one-time payments in payment mode. You can use payment_intent_data.setup_future_usage to save a payment method to a Customer in payment mode. This is useful if you need to capture a payment method on-file to use for future fees, such as cancellation or no-show fees your customer has agreed to have charged to their card. By default, these payment methods will be saved with allow_redisplay: limited and will not be prefilled on return purchases. Alternatively, you can let customers choose whether to save their card information for return purchases by using saved_payment_method_options.payment_method_save. Using this parameter will show an additional checkbox on the Checkout page that the customer can check to optionally save their payment information. Cards saved when the checkbox is checked will be saved with allow_redisplay: always and will be prefilled for returning customers.
  • Subscription mode: Payment methods will be saved to the Customer when using Checkout in subscription mode in order to charge the payment method for recurring payments. These payment methods are saved with allow_redisplay: limited and will not be prefilled for return purchases. You can use saved_payment_method_options.payment_method_save to let customers save their payment method and prefill it on return purchases.
  • Setup mode: This mode is designed solely for collecting and obtaining customer agreement to saving payment methods for future use.  Payment methods saved in setup mode are by default saved with allow_redisplay: always and will be prefilled when passing in a Customer object into a Checkout Session.

Overriding or changing allow_redisplay behavior

This default behavior is to make it simpler for you to comply with card network rules and data protection regulations. If you need to change the default behavior enabled by these modes, you can use the following methods: 

  • Changing allow_redisplay value on the payment method: You can use the PaymentMethod API to change the allow_redisplay value that is set on the payment method. 
  • Overriding the allow_redisplay value set through Checkout: You can use payment_method_data.allow_redisplay to override the allow_redisplay value that is set for payment methods saved through Checkout.
  • Overriding which saved payment methods are shown: By default, Checkout will only show saved payment methods with allow_redisplay: always. You can use saved_payment_method_options.allow_redisplay_filters to determine whether to also show payment methods with allow_redisplay: limited or unspecified.


CAUTION

Global privacy laws are complicated and nuanced.  We recommend talking with your legal and privacy team prior to implementing setup_future_usage  or overriding Checkout’s default behaviors for saving and redisplaying payment methods as it may implicate your privacy compliance framework. As an example, the European Data Protection Board has issued guidance regarding saving payment details.  Learn how to configure Checkout to collect consent and save payment methods for future use here.


Impact to existing integrations

If you created a Stripe account before April 18, payment methods previously saved through Checkout have been backfilled with the appropriate allow_redisplay value. 
Starting May 1, 2024, Checkout no longer displays saved cards with allow_redisplay: limited or unspecified to returning customers. If you have any questions about this change please contact support.


Upcoming improvements to saved payment methods on Checkout

  • Showing multiple saved payment methods: Today, a customer is only able to see their most recent saved card on Checkout. We’ll soon let customers with multiple saved cards see and choose from all their eligible saved cards. 
  • Letting customers delete saved payment methods within Checkout: We’ll soon introduce a new feature with which you’ll be able to let your customers delete their saved payment method directly within Checkout.

Did this answer your question?