Create Quote

Retrieve a real-time conversion quote between any two supported currencies: USDT, USDC, Bitcoin, and NGN.

This endpoint allows you to preview the expected rate, amount received, and validity period for a trade between any supported pair (for example USDTBTC, or NGNUSDT). Quotes can be used to show customers live pricing or to execute a trade with a locked rate.

Endpoint

Full request and response schema: Quotes in the API reference.

Endpoint

For the full request and response schema, see the Create Quote API Reference.


Purpose

Use this endpoint to:

Display current pricing before executing a trade

Evaluate exact cost or return amount for conversions

Fetch trade metadata (fees, expiry, reference) before committing

Re-read a quote you already created with Get Quote by ID, or skip the quote entirely and read indicative pricing from Get Prices


Create Quote Request

parameter
type
required
description
base_currency
string
Yes
The base currency for the trade. One of: BTC, USDT, USDC, or NGN
quote_currency
string
Yes
The quote currency for the trade. One of: BTC, USDT, USDC, or NGN. For naira trades, one side of the pair must be NGN
side
string
Yes
The side of the trade. One of: buy or sell
quantity
string
Yes
The amount of base currency to trade, in major units. Example: 0.0001 (BTC) or 5000 (₦5,000)

Example Request

Example Request
Example Request (NGN pair) Preview
Preview — enabled per account

NGN (naira) trading is being rolled out gradually and is not enabled for all companies yet.

To quote a naira trade, set base_currency to what you are spending and use side: "sell". Here, 5000 means ₦5,000.

Example Request (NGN)

Successful Response (200 OK)

Response Body

Response Fields

field
type
description
id
string
Unique ID for this quote. Use it when executing the trade
base_currency
string
The base currency for the trade (e.g., BTC)
quote_currency
string
The quote currency for the trade (e.g., USDT)
side
string
The side of the trade: BUY or SELL
quantity
string
The amount of base currency to trade
price
string
The quoted price per unit of base currency in terms of quote currency
expires_at
string
ISO 8601 timestamp after which this quote is no longer valid
created_at
string
ISO 8601 timestamp when the quote was created
original_quantity
string
The original quantity requested when the quote was created
consumed_quantity
string
The amount of the quote already used in executed trades
remaining_quantity
string
The amount still available to trade (original minus consumed)
is_exhausted
boolean
Whether the quote has been fully consumed. If true, no more trades can use this quote
exchange
object
Summary of what will be sent and received if the quote is executed
send_quantity
string
The amount you will send to execute the trade (e.g., 6.91)
send_currency
string
The currency you will send (e.g., USDT for a BUY order)
receive_quantity
string
The amount you will receive after the trade (e.g., 0.00010000)
receive_currency
string
The currency you will receive (e.g., BTC for a BUY order)

Notes

Quotes are valid for a short time (usually 30 seconds for development and 10 seconds in production)

Use the quoteId in /trading/quotes to ensure price locking

Use the price from the quote when creating the order.

Without quoteId, the trade executes at current market rate

Fees depend on your integration tier (default is 0)

For NGN pairs, one side of the pair must be NGN, amounts are in major units (whole naira), and a quote_id is required at execution — the rate must be locked before funds move

NGN conversions are limited to ₦500–₦10,000,000 per trade and must be enabled on your account before use


Errors

code
message
fix
400
Invalid asset pair
Use a supported pair (USDT, USDC, BTC, NGN). Naira trades must have NGN on one side
400
Missing or invalid amount
Must be a positive number in major units, within any pair limits
403
NGN not enabled
Ask Bitnob to enable naira trading on your account
403
Insufficient balance
Only applies if pre-balance checks are enabled
500
Quote service unavailable
Retry or contact support if persistent

Share on
Did you find this page useful?

Join our Discord