Enable Remember Me
Beta
Last updated: July 2, 2025
Information
Remember Me is only available for merchants in the United Arab Emirates (UAE). To enable Remember Me, contact your account manager or [email protected].
The Remember Me feature enables customers to save their card details during checkout. The next time the customer shops at any merchant that has Remember Me enabled, we display their saved card details.
This means you can provide a faster checkout experience even if the customer did not save their details directly with you.
Remember Me is available for the following integrations:
Additionally, you can integrate the:
- Address component to collect the customer's shipping address.
- Authentication component to collect the customer's email address and authenticate returning Remember Me customers.
Remember Me supports merchant-initiated transactions (MITs). If you process MITs with Flow, Remember Me inherits this configuration and saves the customer card details.
When a customer chooses to save their card details during checkout we save and link their following details:
- Email address
- Payment details
- Phone number

The next time the customer shops with a merchant that enabled Remember Me:
- Checkout.com uses the email address the customer provided to detect if they have previously saved their details.
- We send them a one-time code to securely verify their identity and authenticate their session.
- If successful, we display their saved card details to provide a faster checkout experience.

Customers can manage their saved details and view their purchase history on their personal dashboard.
Information
Remember Me's authentication does not replace any additional payment authentication required by the issuer, scheme, or merchant. For example, 3D Secure authentication.
Remember Me requires a customer email to display the new and returning user options on the checkout page. You can:
- Provide the
customer.email
field when you Request a Payment Session. Recommended if you already collect the customer email in your checkout flow. - Collect the customer email using Flow. Recommended if you do not collect the customer email in your checkout flow.
- Integrate the Flow authentication component to handle email collection and Remember Me authentication. Recommended if you also want to make use of the Flow address component.
To provide a better experience for returning customers, we recommend that you also request the customer's phone number and provide it in the customer.phone
field.
post
https://api.checkout.com/payment-sessions
1{2"amount": 1000,3"currency": "GBP",4"reference": "ORD-123A",5"billing": {6"address": {7"country": "GB"8}9},10"customer": {11"name": "Jia Tsang",12"email": "[email protected]",13"phone": {14"country_code": "+44",15"number": "7700900000"16}17},18"success_url": "https://example.com/payments/success",19"failure_url": "https://example.com/payments/failure"20}
1{2"id": "ps_2Un6I6lRpIAiIEwQIyxWVnV9CqQ",3"payment_session_secret": "pss_9823241e-2cec-4c98-b23d-7b29ow4e2e34",4"payment_session_token": "YmFzZTY0:eyJpZCI6InBzXzJVbjZJNmxScElBaUlFd1FJeXhXVm5WOUNxUSIsImFtb3VudCI6MTAwMCwibG9jYWxlIjoiZW4tR0IiLCJjdXJyZW5jeSI6IkdCUCIsInBheW1lbnRfbWV0aG9kcyI6W3sidHlwZSI6ImNhcmQiLCJjYXJkX3NjaGVtZXMiOlsiVmlzYSIsIk1hc3RlcmNhcmQiLCJBbWV4Il19XSwicmlzayI6eyJlbmFibGVkIjp0cnVlfSwiX2xpbmtzIjp7InNlbGYiOnsiaHJlZiI6Imh0dHBzOi8vYXBpLnNhbmRib3guY2hlY2tvdXQuY29tL3BheW1lbnQtc2Vzc2lvbnMvcHNfMlVuNkk2bFJwSUFpSUV3UUl5eFdWblY5Q3FRIn19fQ==",5"_links": {6"self": {7"href": "https://api.sandbox.checkout.com/payment-sessions/ps_2Un6I6lRpIAiIEwQIyxWVnV9CqQ"8}9}10}
Information
When you have successfully tested your integration in the sandbox environment, contact your account manager or [email protected] to enable Remember Me in your production environment.
Use the Flow authentication component to collect the customer's email address and authenticate returning Remember Me customers.
If the customer has a Remember Me account, they are prompted to securely authenticate via a one-time password (OTP). When they authenticate successfully, their saved payment details are automatically populated in the Flow card component.
If they do not have an account and choose a payment method supported by Remember Me, they are prompted to sign up.
This helps to:
- Provide a streamlined user experience for new and returning Remember Me customers.
- Simplify your integration logic – When the payment is complete, the customer email is returned in the response.
Information
The email the customer provides in the authentication component is returned in the payment response. This email address overrides the email used to initiate the payment session.
Use your integration's existing CheckoutWebComponents
instance to create an authentication
object and use the onChange
event handler to retrieve the customer's email address:
1const authenticationComponent = checkout.create('authentication', {2onChange: (_self, data) => {3// Access the email value via data.email4},5});
Mount the authentication component to the website using the mount()
method. The method takes an Element selector or an Element as an argument. For example, #authentication-container
or document.getElementById(#authentication-container)
, respectively.
1authenticationComponent.mount('#authentication-container');
Note
Embedding the authentication component within an iframe or onto a Shadow DOM is not supported.
Information
You must integrate the authentication component to use the address component with Remember Me.
Use the Flow address component to collect the customer's shipping address.
If the customer has a Remember Me account, their saved shipping address is automatically populated when they sign in.
Use your integration's existing CheckoutWebComponents
instance to create an address
object and use the onChange
event handler to retrieve the customer's shipping address:
1const addressComponent = checkout.create('address', {2onChange: (_self, data) => {3// Access the shipping address value via data.shippingAddress4},5});
Mount the address component to the website using the mount()
method. The method takes an Element selector or an Element as an argument. For example, #authentication-container
or document.getElementById(#authentication-container)
, respectively.
1addressComponent.mount('#address-container');
Note
Embedding the address component within an iframe or onto a Shadow DOM is not supported.