# Supported Referral Parameters

All parameters are optional. Any value not provided will default to customer preferences or the defaults configured in your Partner Dashboard.

## Parameters

| Parameter | Type | Description |
|  --- | --- | --- |
| `walletAddress` | string | Customer's wallet address for the receiving crypto asset. Pre-populates the wallet field in checkout. |
| `walletAddressTag` | string | Customer's wallet tag or memo. Required for transacting on certain blockchains such as BNB and XRP. |
| `blockchain` | string | Blockchain network for the wallet address (e.g., `ETH`, `BTC`, `BNB`). Required when `walletAddress` is provided for multi-chain assets. |
| `coinType` | string | Cryptocurrency to purchase (e.g., `ETH`, `BTC`, `USDT`). Pre-selects the crypto asset in checkout. |
| `fiatType` | string | Fiat currency for the transaction (e.g., `AUD`, `USD`, `EUR`). Pre-selects the fiat currency. |
| `fiatAmount` | number | Amount of fiat currency the customer wants to spend. Either `fiatAmount` or `coinAmount` can be provided, not both. |
| `coinAmount` | number | Amount of cryptocurrency the customer wants to receive. Either `fiatAmount` or `coinAmount` can be provided, not both. |
| `orderType` | string | Pass `sell` to open the checkout in off-ramp (sell) mode. Omit for on-ramp (buy). |
| `email` | string | Customer's email address. Pre-populates the email field, reducing friction at checkout. |
| `paymentMethodId` | string | Pre-selects a payment method. See [supported values](#payment-method-ids). |
| `returnUrl` | string | URL to redirect the customer to after the transaction is complete or cancelled. Must be URL-encoded. Also accepted as `redirectUrl`. |
| `externalCustomerId` | string | Your stable identifier for this customer. Used by Banxa to recognise returning customers and avoid repeat KYC collection. See [externalCustomerId best practices](/products/hosted-checkout/docs/getting-started/integration-best-practices#externalcustomerid). |
| `backgroundColor` | string | Hex colour value (without `#`) to override the checkout background colour, e.g. `ffffff`. |
| `primaryColor` | string | Hex colour value for active buttons. |
| `secondaryColor` | string | Hex colour value for button hover effects. |
| `textColor` | string | Hex colour value for all text in the checkout flow. |
| `theme` | string | `light` or `dark`. Sets contrast mode to match your background colour. |


## Payment method IDs

| Value | Payment method |
|  --- | --- |
| `debit-credit-card` | Debit or credit card |
| `apple-pay` | Apple Pay |
| `google-pay` | Google Pay |
| `sepa-bank-transfer` | SEPA bank transfer (EUR) |
| `gbp-bank-transfer` | Bank transfer (GBP) |
| `ach-bank-transfer` | ACH bank transfer (USD) |
| `payid-bank-transfer` | PayID bank transfer (AUD) |
| `upi` | UPI (INR) |
| `pix` | PIX (BRL) |
| `paypal` | PayPal |


Not all payment methods are available in all regions. Available methods are determined by your partner configuration and the customer's country.

## Sell (off-ramp)

To open the checkout in sell mode, pass `orderType=sell`. All other parameters apply. Contact Banxa to confirm that off-ramp is enabled for your partner account.