Express Checkout
What is Express Checkout?
Express Checkout enables your customers to save their payment information so that your customers don’t need to input their details every time they want to make a payment. This means:
- Faster, more convenient checkout process for your customers
- Higher conversion rate for your business
The biggest benefit is that your customer can enjoy this seamless checkout experience immediately when they have transacted before at any of Xendit merchants who are using Express Checkout. This means that shoppers that arrive on your website for the first time - but have shopped on any other Xendit Express Checkout merchant before - will be treated as returning customers, and can enjoy faster checkout!
Supported Channels
For now, Xendit Express Checkout only supports these payment channels:
- Debit & Credit Cards
- eWallet - OVO
We are working on adding other payment channels to Express Checkout. In the future, you will be able to use other eWallets (Dana and ShopeePay) and other channels such as BCA OneKlik, Kredivo, etc. Please stay tuned!
Payment Flows
Cards
Below is the example flow of a customer paying using Cards Express Checkout:
Step | First-time customers | Returning customers |
---|---|---|
1 | Customer fills in their personal information (name, mobile number) and card information (card number, expiry date, CVV) | Customer fills in their phone number and Xendit automatically detects returning customer by checking their mobile number |
2 | Xendit sends the customer an OTP to the mobile number they provided | Xendit sends the customer an OTP to the mobile number they provided |
3 | Xendit redirects the customer to the Cards payment flow* | Xendit redirects the customer to the Cards payment flow* |
4 | Payment complete! | Payment complete! |
*For cards with 3DS enabled, the customer will need to input an OTP from their bank. For cards without 3DS enabled, the customer’s payment will succeed immediately.
OVO
Below is the example flow of a customer paying using OVO Express Checkout:
Step | First-time customers | Returning customers |
---|---|---|
1 | Customer inputs their name and phone number on the customer details | Customer fills in their phone number and Xendit automatically detects returning customer by checking their mobile number |
2 | Xendit sends the customer an OTP to the mobile number they provided | Xendit sends the customer an OTP to the mobile number they provided |
3 | Customer chooses OVO eWallet and reads through OVO’s terms and conditions | Xendit redirects the customer to the OVO payment flow |
4 | Xendit sends another verification number to the customer’s mobile number | Customer clicks “Pay Now” and needs to input their OVO security code again to authorize the transaction |
5 | Customer needs to input their OVO security code | Payment Complete! |
6 | Customer clicks “Pay Now” and needs to input their OVO security code again to authorize the transaction | |
7 | Payment Complete! |
Activate Express Checkout
Let us know if you’re interested in this feature by reaching out to your Account Manager or contacting help@xendit.co, and we’ll switch it on for you.
Use Express Checkout via API
When you use Create Invoice API, make sure you populate the customer
object in the body request with the following parameters:
given_names
mobile_number
Xendit will use this information to pre-fill the customer fields in the Checkout UI, so that your customers won’t need to type them up. Although this is not mandatory for Express Checkout to work, we strongly recommend it because this is a smoother customer experience that increases the likelihood of conversion. Below is the example of how Express Checkout displays on Checkout UI

Test Express Checkout in Test mode
You can create an invoice in test mode with Express Checkout enabled. Complete the customer payment information on the Checkout UI and when you click “Pay Now,” an OTP modal will appear.
You can simulate a positive scenario by inputting 111000 as the 6-digit OTP.
To simulate negative scenarios, input the corresponding 6-digit OTP:
Input | Expected Result |
---|---|
111001 | OTP_EXPIRED_ERROR |
111002 | OTP_MAXIMUM_ATTEMPT_ERROR |
111003 | VERIFY_OTP_ERROR |
111004 | MAX_OTP_CREATED_WITHN_FREQUENCY_INTERVAL_ERROR |
FAQs
Some other questions you or your customers may have:
Question | Answer |
---|---|
This is the first time I’ve shopped at this business. How are my card details saved? | This means you’ve shopped at a different shop/business that is also using Xendit Express Checkout! Xendit allows you to save your card details to pay with any business that uses Xendit Express Checkout, to maximize your convenience. |
Is it secure? | Yes. Xendit is PCI-DSS certified and authorized to securely save your payment information. |
Is my data shared to anyone other than Xendit? | No. Xendit will not share your personal data with any third party without your consent. |
What if I want Xendit to delete all my personal information related to Express Checkout? | Please send us an email to invoice@xendit.co and let us know that you want to delete all your data from Xendit Express Checkout. |
Last Updated on 2023-10-09