On Ramp

On-ramp

Get best offer

get
/api/onramp/best-offer

Returns the best offer for the provided country, network, asset, amount and payment channel.

Authorizations
x-client-idstringRequired

Your client ID

Query parameters
networkstring · enumRequired

blockchain network of the order

Possible values:
assetstring · enumRequired

asset of the order

Possible values:
currencystring · enumRequired

Currency of the amount param

Possible values:
amountnumberRequired

Amount of local currency user wants to pay or amount of crypto user wants to receive depending on the currency param value

countryIsoCodestringRequired

country ISO code, e.g. NG, KE etc.

paymentChannelstring · enumRequired

type of the payment channel user wants to use, e.g. bank, mobile_money, airtime to pay local currency

Possible values:
carrierCodestringOptional

carrier code if applicable, e.g. for mobile_money or airtime orders

Responses
chevron-right
200

Successful response

application/json
quoteIdstringOptional

Unique quote id

get
/api/onramp/best-offer
200

Successful response

Get payment channels

get
/api/onramp/payment-channels

Returns a list of supported countries and their payment channels

Authorizations
x-client-idstringRequired

Your client ID

Responses
chevron-right
200

Successful response

application/json
countryIsoCodestringOptional

ISO code of the country, e.g. NG for Nigeria, KE for Kenya

currencyIsoCodestringOptional

ISO code of the local currency, e.g. NGN for Nigerian Naira, KES for Kenyan Shilling

namestringOptional

Name of the country, e.g. Nigeria, Kenya

get
/api/onramp/payment-channels
200

Successful response

Get limits

get
/api/onramp/limits

Returns minimum and maximum amount of order in crypto and local currency and applied fees for specific payment channel, country, network and asset.

Authorizations
x-client-idstringRequired

Your client ID

Query parameters
networkstring · enumRequiredPossible values:
assetstring · enumOptionalPossible values:
countryIsoCodestringRequired
paymentChannelstring · enumRequiredPossible values:
carrierCodestringOptional
Responses
chevron-right
200

Successful response

application/json
minUsdnumberOptional

Minimum amount in USD for the order

maxUsdnumberOptional

Maximum amount in USD for the order

minLocalCurrencynumberOptional

Minimum amount in local currency for the order

maxLocalCurrencynumberOptional

Maximum amount in local currency for the order

minCryptonumberOptional

Minimum amount in crypto for the order

maxCryptonumberOptional

Maximum amount in crypto for the order

get
/api/onramp/limits
200

Successful response

Get list of supported assets

get
/api/onramp/assets

Returns a list of supported blockchain assets for the on-ramp orders

Authorizations
x-client-idstringRequired

Your client ID

Responses
chevron-right
200

Successful response

application/json
networkstring · enumOptionalPossible values:
assetstring · enumOptionalPossible values:
get
/api/onramp/assets
200

Successful response

Get order

get
/api/onramp/order

Returns a single pay widget order by its ID or orderParams query parameter.

Authorizations
x-client-idstringRequired

Your client ID

Query parameters
orderIdstringOptional

id of the order which you could receive via a webhook or iframe events

orderParamsstringOptional

Value which you provided in the orderParams parameter of the pay widget URL

Responses
chevron-right
200

Successful response

application/json
_idstringOptional

Order ID

statusstring · enumOptional
  • swap_initiated: user has created an order
  • swap_expired: an order has expired
  • swap_buyer_rejected: user has rejected an order
  • swap_buyer_confirmed: user has confirmed an order
  • swap_seller_rejected: agent has rejected an order, happens when agent don't receive a payment
  • swap_seller_confirmed: agent has confirmed an order
  • pending: crypto transaction is pending
  • complete: crypto transaction is complete
  • failed: crypto transaction has failed
Possible values:
datestring · date-timeOptional

Date of order creation

orderIdstringOptional

Order ID

phoneNumberstringOptional

User phone number, should include country code

emailstringOptional

User email address

localCurrencyAmountnumberOptional

Amount in local currency

currencyIsoCodestringOptional

Local currency ISO code, e.g. NGN, KES

countryIsoCodestringOptional

Country ISO code, e.g. NG

paymentChannelstring · enumOptional

Payment channel used for the order, e.g. bank, mobile_money, airtime

Possible values:
amountnumberOptional

Amount in USD

amountCryptonumberOptional

Amount in crypto

networkstring · enumOptional

Blockchain network of the order, e.g. POLYGON, ETHEREUM, STELLAR

Possible values:
assetstring · enumOptional

Blockchain asset of the order, e.g. USDC, USDT, CUSD

Possible values:
addressstringOptional

User wallet address

memostringOptional

Memo for the Stellar, TON and other networks transactions that support it

hashstringOptional

Transaction hash if available

orderParamsstringOptional

Value of the orderParams query param during order creation

resumeUrlstringOptional

URL to resume the order in the pay widget

carrierIdstringOptional

Carrier ID if applicable, e.g. for mobile money orders

feePercentnumberOptional

total fee percent (fonbnk fee + partner fee)

feePercentFonbnknumberOptional

fonbnk fee percent

feePercentPartnernumberOptional

partner fee percent

feeAmountUsdnumberOptional

Total fee amount in USD

feeAmountLocalCurrencynumberOptional

Total fee amount in local currency

feeAmountUsdFonbnknumberOptional

Fonbnk fee amount in USD

feeAmountLocalCurrencyFonbnknumberOptional

Fonbnk fee amount in local currency

feeAmountUsdPartnernumberOptional

Partner fee amount in USD

feeAmountLocalCurrencyPartnernumberOptional

Partner fee amount in local currency

gasAmountUsdnumberOptional

Gas fee amount in USD

gasAmountLocalCurrencynumberOptional

Gas fee amount in local currency

get
/api/onramp/order
200

Successful response

Get orders

get
/api/onramp/orders

Returns a paginated list of pay widget orders. Filters can be applied to the list by providing query parameters.

Authorizations
x-client-idstringRequired

Your client ID

Query parameters
cursorstringOptional

this parameter should be provided in order to get a next page from the pagination, it should be taken from "nextCursor" response value

limitintegerRequired

number from 1 to 100, describes how many records should be in each pagination page

networkstring · enumOptional

blockchain network of orders

Possible values:
addressstringOptional
userPhoneNumberstringOptional

phone number of the client, should include country code

userEmailstringOptional

email of the client

paymentChannelstring · enumOptional

type of the payment channel

Possible values:
buySwapStatusstring · enumOptional
  • initiated: The buy swap has been initiated
  • expired: The buy swap has expired
  • buyer_confirmed: The buyer has confirmed the buy swap
  • seller_confirmation_pending: The agent is yet to confirm the buy swap
  • seller_confirmation_failed: The agent has failed to confirm the buy swap
  • seller_confirmed: The agent has confirmed the buy swap
  • seller_rejected: The agent has rejected the buy swap
Possible values:
withdrawalStatusstring · enumOptional

status of a crypto transfer

Possible values:
Responses
chevron-right
200

Successful response

application/json
get
/api/onramp/orders
200

Successful response

Create order

post
/api/onramp/order/create

Creates a new on-ramp order using a quote ID from the best offer endpoint

Authorizations
x-client-idstringRequired

Your client ID

Body
quoteIdstringRequired

Quote ID from the best offer endpoint

networkstring · enumRequiredPossible values:
amountnumberRequired

Amount based on the currency parameter

currencystring · enumRequiredPossible values:
assetstring · enumRequiredPossible values:
addressstringOptional

Wallet address to receive the crypto

emailstring · emailRequired

User email address

orderParamsstringOptional

Optional parameter for order tracking

userIpstring · ipv4Required

User's IP address

redirectUrlstring · uriOptional

URL to redirect the user after completion of the transfer, applicable only for orders with transferInstructions.type = "redirect"

Responses
chevron-right
200

Order created successfully

application/json
_idstringOptional

Order ID

statusstring · enumOptional
  • swap_initiated: user has created an order
  • swap_expired: an order has expired
  • swap_buyer_rejected: user has rejected an order
  • swap_buyer_confirmed: user has confirmed an order
  • swap_seller_rejected: agent has rejected an order, happens when agent don't receive a payment
  • swap_seller_confirmed: agent has confirmed an order
  • pending: crypto transaction is pending
  • complete: crypto transaction is complete
  • failed: crypto transaction has failed
Possible values:
datestring · date-timeOptional

Date of order creation

orderIdstringOptional

Order ID

phoneNumberstringOptional

User phone number, should include country code

emailstringOptional

User email address

localCurrencyAmountnumberOptional

Amount in local currency

currencyIsoCodestringOptional

Local currency ISO code, e.g. NGN, KES

countryIsoCodestringOptional

Country ISO code, e.g. NG

paymentChannelstring · enumOptional

Payment channel used for the order, e.g. bank, mobile_money, airtime

Possible values:
amountnumberOptional

Amount in USD

amountCryptonumberOptional

Amount in crypto

networkstring · enumOptional

Blockchain network of the order, e.g. POLYGON, ETHEREUM, STELLAR

Possible values:
assetstring · enumOptional

Blockchain asset of the order, e.g. USDC, USDT, CUSD

Possible values:
addressstringOptional

User wallet address

memostringOptional

Memo for the Stellar, TON and other networks transactions that support it

hashstringOptional

Transaction hash if available

orderParamsstringOptional

Value of the orderParams query param during order creation

resumeUrlstringOptional

URL to resume the order in the pay widget

carrierIdstringOptional

Carrier ID if applicable, e.g. for mobile money orders

feePercentnumberOptional

total fee percent (fonbnk fee + partner fee)

feePercentFonbnknumberOptional

fonbnk fee percent

feePercentPartnernumberOptional

partner fee percent

feeAmountUsdnumberOptional

Total fee amount in USD

feeAmountLocalCurrencynumberOptional

Total fee amount in local currency

feeAmountUsdFonbnknumberOptional

Fonbnk fee amount in USD

feeAmountLocalCurrencyFonbnknumberOptional

Fonbnk fee amount in local currency

feeAmountUsdPartnernumberOptional

Partner fee amount in USD

feeAmountLocalCurrencyPartnernumberOptional

Partner fee amount in local currency

gasAmountUsdnumberOptional

Gas fee amount in USD

gasAmountLocalCurrencynumberOptional

Gas fee amount in local currency

post
/api/onramp/order/create
200

Order created successfully

Verify OTP for order

post
/api/onramp/order/otp

Verifies OTP code for an on-ramp order that requires OTP authentication.

Authorizations
x-client-idstringRequired

Your client ID

Body
orderIdstringRequired

ID of the order to verify OTP for

otpstringRequired

OTP code received by the user

post
/api/onramp/order/otp

Confirm onramp order

post
/api/onramp/order/confirm

Confirms an onramp order

Authorizations
Body
orderIdstringRequired

The ID of the order to confirm

Example: 507f1f77bcf86cd799439011
Responses
chevron-right
200

Order confirmed successfully

application/json
_idstringOptional

Order ID

statusstring · enumOptional
  • swap_initiated: user has created an order
  • swap_expired: an order has expired
  • swap_buyer_rejected: user has rejected an order
  • swap_buyer_confirmed: user has confirmed an order
  • swap_seller_rejected: agent has rejected an order, happens when agent don't receive a payment
  • swap_seller_confirmed: agent has confirmed an order
  • pending: crypto transaction is pending
  • complete: crypto transaction is complete
  • failed: crypto transaction has failed
Possible values:
datestring · date-timeOptional

Date of order creation

orderIdstringOptional

Order ID

phoneNumberstringOptional

User phone number, should include country code

emailstringOptional

User email address

localCurrencyAmountnumberOptional

Amount in local currency

currencyIsoCodestringOptional

Local currency ISO code, e.g. NGN, KES

countryIsoCodestringOptional

Country ISO code, e.g. NG

paymentChannelstring · enumOptional

Payment channel used for the order, e.g. bank, mobile_money, airtime

Possible values:
amountnumberOptional

Amount in USD

amountCryptonumberOptional

Amount in crypto

networkstring · enumOptional

Blockchain network of the order, e.g. POLYGON, ETHEREUM, STELLAR

Possible values:
assetstring · enumOptional

Blockchain asset of the order, e.g. USDC, USDT, CUSD

Possible values:
addressstringOptional

User wallet address

memostringOptional

Memo for the Stellar, TON and other networks transactions that support it

hashstringOptional

Transaction hash if available

orderParamsstringOptional

Value of the orderParams query param during order creation

resumeUrlstringOptional

URL to resume the order in the pay widget

carrierIdstringOptional

Carrier ID if applicable, e.g. for mobile money orders

feePercentnumberOptional

total fee percent (fonbnk fee + partner fee)

feePercentFonbnknumberOptional

fonbnk fee percent

feePercentPartnernumberOptional

partner fee percent

feeAmountUsdnumberOptional

Total fee amount in USD

feeAmountLocalCurrencynumberOptional

Total fee amount in local currency

feeAmountUsdFonbnknumberOptional

Fonbnk fee amount in USD

feeAmountLocalCurrencyFonbnknumberOptional

Fonbnk fee amount in local currency

feeAmountUsdPartnernumberOptional

Partner fee amount in USD

feeAmountLocalCurrencyPartnernumberOptional

Partner fee amount in local currency

gasAmountUsdnumberOptional

Gas fee amount in USD

gasAmountLocalCurrencynumberOptional

Gas fee amount in local currency

post
/api/onramp/order/confirm
200

Order confirmed successfully

Reject onramp order

post
/api/onramp/order/reject

Rejects an onramp order

Authorizations
Body
orderIdstringRequired

The ID of the order to reject

Example: 507f1f77bcf86cd799439011
Responses
chevron-right
200

Order rejected successfully

application/json
_idstringOptional

Order ID

statusstring · enumOptional
  • swap_initiated: user has created an order
  • swap_expired: an order has expired
  • swap_buyer_rejected: user has rejected an order
  • swap_buyer_confirmed: user has confirmed an order
  • swap_seller_rejected: agent has rejected an order, happens when agent don't receive a payment
  • swap_seller_confirmed: agent has confirmed an order
  • pending: crypto transaction is pending
  • complete: crypto transaction is complete
  • failed: crypto transaction has failed
Possible values:
datestring · date-timeOptional

Date of order creation

orderIdstringOptional

Order ID

phoneNumberstringOptional

User phone number, should include country code

emailstringOptional

User email address

localCurrencyAmountnumberOptional

Amount in local currency

currencyIsoCodestringOptional

Local currency ISO code, e.g. NGN, KES

countryIsoCodestringOptional

Country ISO code, e.g. NG

paymentChannelstring · enumOptional

Payment channel used for the order, e.g. bank, mobile_money, airtime

Possible values:
amountnumberOptional

Amount in USD

amountCryptonumberOptional

Amount in crypto

networkstring · enumOptional

Blockchain network of the order, e.g. POLYGON, ETHEREUM, STELLAR

Possible values:
assetstring · enumOptional

Blockchain asset of the order, e.g. USDC, USDT, CUSD

Possible values:
addressstringOptional

User wallet address

memostringOptional

Memo for the Stellar, TON and other networks transactions that support it

hashstringOptional

Transaction hash if available

orderParamsstringOptional

Value of the orderParams query param during order creation

resumeUrlstringOptional

URL to resume the order in the pay widget

carrierIdstringOptional

Carrier ID if applicable, e.g. for mobile money orders

feePercentnumberOptional

total fee percent (fonbnk fee + partner fee)

feePercentFonbnknumberOptional

fonbnk fee percent

feePercentPartnernumberOptional

partner fee percent

feeAmountUsdnumberOptional

Total fee amount in USD

feeAmountLocalCurrencynumberOptional

Total fee amount in local currency

feeAmountUsdFonbnknumberOptional

Fonbnk fee amount in USD

feeAmountLocalCurrencyFonbnknumberOptional

Fonbnk fee amount in local currency

feeAmountUsdPartnernumberOptional

Partner fee amount in USD

feeAmountLocalCurrencyPartnernumberOptional

Partner fee amount in local currency

gasAmountUsdnumberOptional

Gas fee amount in USD

gasAmountLocalCurrencynumberOptional

Gas fee amount in local currency

post
/api/onramp/order/reject
200

Order rejected successfully

Last updated