Skip to main content

URL Parameters

List of parameters

Here is the list of parameters that can be added to the URL:

ParameterDescription
addressAddress of the wallet you want to send USDC/cUSD to
networkWallet network. Supported values: POLYGON, ETHEREUM, STELLAR, AVALANCHE, SOLANA, ALGORAND, TRON, CELO, BASE, OPTIMISM, NEAR
assetWallet asset. Supported values: USDC,CUSD,USDT,USDC_E depending on network. Default value is USDC for all networks what support it except CELO, for CELO it's CUSD. Supported network/asset pairs: AVALANCHE (USDC), POLYGON (USDC, USDC_E, USDT), CELO (CUSD, USDC), STELLAR (USDC), ALGORAND(USDC), SOLANA (USDC), TRON (USDT), BASE (USDC), OPTIMISM (USDC), NEAR (USDC), ETHEREUM (USDC)
memoMemo for the transaction
amountIf a currency is not provided, it will be an amount of USDC/cUSD received after fees. If currency is airtime it will be the amount of airtime a user should spend.
minAmountMinimum amount of order in USDC/cUSD
currencyCurrency of the amount. Supported values: airtime or usdc
countrydefault selected country iso code, example: KE for Kenya, NG for Nigeria
currencyIsocurrency iso code, example: KES for Kenya, NGN for Nigeria. Acts like a country parameter.
freezeAmountFreezes the amount of order for the user, the user will not be able to change it. The amount is required in the URL for this parameter to work.
freezeWalletFreezes the wallet of order for the user, the user will not be able to change it. The wallet is required in the URL for this parameter to work.
providerDefault user funds source to select, supported values: carrier, mpesa, mobile_money, bank_transfer
carrierid of a mobile carrier to select by default
callbackUrlif present, "Back to website" link will be displayed on the success page. When a user clicks on it, we will redirect him to the provided URL. It supports placeholders which will be replaced by order data: {orderId}, {transactionHash}, {usdcAmount}, {airtimeAmount}, {network}, {address}. For example the next URL https://example.com/success/{orderId}/{usdcAmount} will be converted to something like https://example.com/success/648b3095a9f38d8b7b2da748/5.45.
[Warning] provided URL should be encoded, example
callbackBtnTextText of the button that is displayed when callbackUrl is provided. Default is: "Back to website"
phonephone number to prefill the phone number fields
closeBtntext of the button that will be displayed on the success page. If not provided, the button will not be displayed. On click, it will send a close-iframe iframe event, so an integrator can close the widget.
redirectUrlif present, user will be redirected to this URL on order fail or success. It supports placeholders which will be replaced by order data: {orderId}, {transactionHash}, {usdcAmount}, {airtimeAmount}, {network}, {address}, {status}, {failReason}. {status} placeholder can the next values: success or fail. Fail reason placeholder can the next values: transaction_failure or agent_rejected. For example the next URL https://example.com/success/{orderId}/{usdcAmount} will be converted to something like https://example.com/success/648b3095a9f38d8b7b2da748/5.45.
[Warning] provided URL should be encoded, example
quoteIdid of a quote returned from the price API request.

Params allowed only for registered merchants:

ParameterDescription
orderParamsThis parameter will be sent to a merchant webhook after the success of the USDC/cUSD transfer.
sourceparameter used to match an order to a merchant if the merchant operates by a huge amount of wallets and can't provide them in the merchant dashboard. Merchants should request our support to assign a source to their accounts.

Here is an example of a URL with parameters:

https://pay.fonbnk.com?amount=1&freezeAmount=1&freezeWallet=1&network=POLYGON&address=0x8a9c67fee641579deba04928c4bc45f66e26343a

Skipping screens

The first two screens where a user provides an order amount and his wallet details can be skipped, so user sees a phone verification screen right away. To do that, you need to open the /phone page and provide the next parameters: provider, network, address, address, amount, currency, country. So the URL would look something like this: https://pay.fonbnk.com/phone?provider=bank_transfer&network=POLYGON&amount=3&currency=usdc&address=0x91b0a33dbcb10f8331eD3627B94e5a9B1591269f&country=NG