Skip to main content
Convert provides instant currency conversion at a quoted rate. Unlike spot trading, Convert requires no orderbook interaction — request a quote, confirm within 10 seconds, and the conversion executes immediately.

When to use Convert

FeatureConvertSpot Trading
ExecutionInstant at quoted rateDepends on orderbook liquidity
OrderbookNo orderbook interactionOrders placed on the orderbook
Order typesSingle quote-and-confirm flow6 order types (limit, market, stop-limit, stop-market, OCO, bulk)
Best forQuick conversions, price estimationAdvanced trading strategies, precise price control
Convert also serves as a price estimation tool. Call the estimate endpoint before placing a market order to preview the approximate execution price.

Conversion flow

The conversion flow has two steps: estimate and confirm.
1

Request a quote

Send a POST request to /api/v4/convert/estimate with the following parameters: from (source ticker), to (destination ticker), direction ("from" or "to"), and amount. The response includes id (quote identifier), give, receive, rate, and expireAt.
2

Confirm the quote

Send a POST request to /api/v4/convert/confirm with quoteId set to the id returned by the estimate. The response returns finalGive and finalReceive.
Conversion quotes expire after 10 seconds. If the quote expires before confirmation, request a new estimate.

API endpoints

Convert uses 3 authenticated endpoints. All require HMAC-SHA512 signing.
EndpointPurposeRate limit
POST /api/v4/convert/estimateRequest a conversion quote10,000 req / 10 sec
POST /api/v4/convert/confirmConfirm and execute a quote10,000 req / 10 sec
POST /api/v4/convert/historyRetrieve conversion history (max 6 months)10,000 req / 10 sec

Estimate parameters

ParameterTypeRequiredDescription
fromstringYesSource currency ticker (e.g., BTC)
tostringYesDestination currency ticker (e.g., USDT)
directionstringYes"from" = amount is in source currency; "to" = amount is in destination currency
amountstringYesAmount to convert or receive

Code example

Estimate a BTC-to-USDT conversion and confirm the quote.
# Step 1: Request a conversion estimate
curl -X POST https://whitebit.com/api/v4/convert/estimate \
  -H "X-TXC-APIKEY: YOUR_API_KEY" \
  -H "X-TXC-PAYLOAD: YOUR_PAYLOAD" \
  -H "X-TXC-SIGNATURE: YOUR_SIGNATURE" \
  -H "Content-Type: application/json" \
  -d '{
    "from": "BTC",
    "to": "USDT",
    "direction": "from",
    "amount": "1",
    "request": "/api/v4/convert/estimate",
    "nonce": 1
  }'
{
  "id": "123",
  "from": "BTC",
  "to": "USDT",
  "give": "1",
  "receive": "34299.76831549",
  "rate": "34299.76831549",
  "expireAt": 1699016476
}
# Step 2: Confirm the quote using the id from the estimate response
curl -X POST https://whitebit.com/api/v4/convert/confirm \
  -H "X-TXC-APIKEY: YOUR_API_KEY" \
  -H "X-TXC-PAYLOAD: YOUR_PAYLOAD" \
  -H "X-TXC-SIGNATURE: YOUR_SIGNATURE" \
  -H "Content-Type: application/json" \
  -d '{
    "quoteId": "123",
    "request": "/api/v4/convert/confirm",
    "nonce": 2
  }'
{
  "finalGive": "1",
  "finalReceive": "34299.76831549"
}
For Go and PHP examples, see SDKs.

History filters

The history endpoint supports filtering by fromTicker, toTicker, quoteId, and time range (from/to timestamps). The default limit is 100 records. The maximum history depth is 6 months from the current month.

Convert in payment flows

Convert is commonly used as part of the withdrawal flow when the currency held in Main balance differs from the currency an end user needs to withdraw. The pattern is: transfer Main → Trade, convert, transfer Trade → Main, then withdraw. For the full step-by-step withdrawal-with-conversion flow including code examples, see Payment Integration.

What’s next

Payment Integration

Deposit and withdrawal flows including conversion.

Spot Trading

Place orders on the orderbook with 6 order types.

WhiteBIT Codes

Transfer funds between accounts using fee-free digital vouchers.