---
title: Multi Option Crypto Checkout
slug: crypto/multi-option-crypto-checkout
docTags: 
createdAt: 2025-10-08T09:50:29.787Z
---

This feature allows you to accept payments in cryptocurrencies and stablecoins across popular chains such as Ethereum, Tron, Solana, Polygon, and Bitcoin.

The **Multi Option Crypto Checkout** enhances the flexibility and usability of the existing crypto checkout flow by allowing users to choose their preferred cryptocurrency and network before proceeding with the payment.

User can complete the payment using two methods:

1. Connect their wallet (such as Metamask, Coinbase, WalletConnect, etc.) and pay directly through the connected wallet.&#x20;
2. Pay by scanning the QR code displayed on the screen.&#x20;

For reference, We will go over the flow of USDC Checkout on Ethereum using QR Code method.

1. User selects currency and network

When the user initiates the transaction, the user is presented with a **multi-option selection screen** that displays:

- Default token and network (for example, USDC on Ethereum)&#x20;
- A dropdown menu to select another token or network of their choice&#x20;

Once the user selects a different token or network, the **amount and fees are automatically recalculated** in real time.

This screen also supports **white-labelling**, allowing merchants to customize it with their brand colors, logo, and style for a seamless checkout experience.

::Image[]{src="https://app.archbee.com/api/optimize/9JcgbaqQe2mz216pCFoHU/YDik_bUblStif8q_cbYTu-20251017-062113.png" size="50" width="884" height="1210" position="center" showCaption="false"}

2. User proceeds to payment

After the selection is made, the user is taken to the payment screen which displays:

- The amount due&#x20;
- The selected network&#x20;
- QR code for the payment&#x20;
- Applicable transaction fees&#x20;

::Image[]{src="https://app.archbee.com/api/optimize/9JcgbaqQe2mz216pCFoHU/BN0ChxjsFPEkKw5oyTCo1-20251010-061755.png" size="50" width="960" height="1768" position="center" darkWidth="960" darkHeight="1768" showCaption="false"}

At this point, the **API initiates a payment session lasting 30 seconds**. Once 30 seconds have passed, a **20 minute countdown timer** appears on the screen for completing the payment. Both the initiation time and timer duration are **customizable based on merchant requirements**.

3\. User makes the payment

There are **three possible scenarios** for how the payment can be completed:

a. Complete payment (Exact amount)

Upon confirmation, the transaction is processed, and the **status along with the transaction reference ID** is displayed on the screen. Merchants receive the **order status update via webhook**, ensuring seamless backend synchronization and settlement.

::Image[]{src="https://api.archbee.com/api/optimize/5goxYzXl7cEfaX56A_Ptv-NrnErMLIQCF5aMRsMCXdw-20250829-052019.png" size="50" width="840" height="854" position="center" darkWidth="840" darkHeight="854" showCaption="false"}

b. Partial payment (Underpayment)

If the user makes a **partial payment**, an error screen appears informing the user that transaction is incomplete and that **additional funds must be transferred** to complete the transaction. The user can **regenerate QR code&#x20;**&#x61;nd this process can repeat until the full payment amount is received.

::Image[]{src="https://app.archbee.com/api/optimize/9JcgbaqQe2mz216pCFoHU/ZNOviQe5qVSGaHlE-VL2s-20251010-061852.png" size="50" width="682" height="810" position="center" darkWidth="682" darkHeight="810" showCaption="false"}

c. Overpayment

If the user sends **more than the due amount**, the system automatically recognizes the overpayment.

The user is shown a message that the **extra amount will be refunded** after transaction confirmation, along with the transaction reference ID and estimated refund timeline.

**Note:  BTC transactions involve longer confirmation times&#x20;**&#x63;ompared to other crypto payments. Because of Bitcoin’s inherent blockchain characteristics, users should expect delays before the payment is fully confirmed by the network. This longer processing time is normal and simply reflects the required number of blockchain confirmations.&#x20;

Hence, we take the user through a slightly different flow where a ‘Payment Initiated’ screen is shown, and the merchant is updated regarding the order status through a Webhook after we receive confirmation from the Bitcoin Network.

::Image[]{src="https://api.archbee.com/api/optimize/5goxYzXl7cEfaX56A_Ptv-I7Uqc2lNMCT1X0PjCIyEC-20250828-085628.png" size="50" width="1260" height="1281" position="center" darkWidth="1260" darkHeight="1281" showCaption="false"}

***








