Available offramp flows
Learn about the Offramp process flows, including the differences between the QR code flow and the Wallet Initiation flow, key parameters, and system requirements for completing crypto transactions.
Offramp process flow support:
Offramp provider | Wallet Initiation Flow (recommended) | QR code flow |
---|---|---|
AlchemyPay | ❌ | ✅ |
Banxa | ✅ | ❌ |
MoonPay | ✅ | ✅ |
Unlimit Crypto | ✅ | ✅ |
Koywe | ✅ | ✅ |
TransFi | ✅ | ✅ |
Onramp Money | ✅ (*) | ✅ |
[*] - Onramp Money Wallet Initiation flow is supported only for networks:
ethereum, bsc, tron, polygon, solana, arbitrum, base, optimism, vechain, ethereumclassic, theta, fantom, cortex, avaxc, ronin, celo, rsk, moonriver, moonbeam, zksync, worldchain
The token list can be filtered using Only Crypto Networks (offramp) parameter.
Wallet Initiation Flow

Recommended for: integrations on mobile wallets and wallet-connected web applications.
Facilitate users with seamless crypto transfers without relying on manual QR code scanning or wallet address copy-pasting.
If the offrampCashoutRedirectUrl
is passed in the widget, the system will use the Wallet Initiation flow, allowing the partner system to programmatically handle the crypto transfer process.
🔄 Redirect to Partner System
At a certain point during the transaction wallet flow, the user will be redirected to the partner’s system.
This redirect happens to the URL defined in the offrampCashoutRedirectUrl
parameter.
🛠 Partner System Requirements
To enable this, the partner must set up an application-level web handler at the specified URL.
This handler should:
- Extract the forwarded query parameters from the redirect URL (see below).
- Use these parameters to initiate the crypto transfer to the designated provider wallet on behalf of the user.
📩 Forwarded Query Parameters
When the redirect occurs, the following information will be forwarded as query parameters:
Parameter | Description |
---|---|
offramp | Provider ID |
partnerContext | Context or metadata provided by the partner (if any) |
providerWalletAddress | Target wallet address (where the crypto needs to be sent) |
wallet | Source wallet address (where the crypto is expected to come from, if known) |
transactionId | Onramper transaction ID |
sourceCurrency | Source currency ID for the transaction |
targetCurrency | Target currency ID for the transaction |
inAmount | Source crypto amount to be transferred |
paymentMethod | The ID of the payment method used for the fiat payout |
totalFee | Combined fees for the transaction (in sourceCurrency ) |
countryCode | ISO-3166 alpha-2 code of the country where the transaction was placed |
exchangeRate | The effective exchange rate applied to this transaction (inAmount / outAmount ) |
The partner system will use this information to initiate the crypto transfer programmatically.
🚀 Crypto Transfer Process
Once the user is redirected to the partner system:
- The partner system extracts the query parameters.
- Using the extracted parameters, the partner’s backend initiates the crypto transfer to the provider’s wallet on behalf of the user.
- The transfer is executed, and the provider processes the fiat payout to the user via the selected payment method.
✅ Transaction Confirmation
After the crypto transfer is completed, the partner system must call the following API endpoint to confirm the crypto transfer:
POST /transactions/confirm/{type}
QR-Code Flow
If the offrampCashoutRedirectUrl
is not provided in the widget, and the selected offramp supports the QR-code process, the system will automatically switch to the QR-code flow.
In this flow, the user will be shown a screen where they can copy-paste the amount and wallet address where the user has to send crypto, as well as a QR code that can be scanned using a wallet to initiate the transaction.
Key Points to Remember
• The
offrampCashoutRedirectUrl
is the key differentiator between the two flows. If it’s included, the system initiates the Wallet Initiation flow; otherwise, if the offramp supports it, the QR code flow will be used.
• For the Wallet Initiation flow, the partner will handle the crypto transfer after being redirected, and the system will confirm the transfer using the transactions/confirm/{type} endpoint.
Updated 4 days ago