Request a Quote

Once you know the possible RFQ Pairs, you can attempt to request a Quote.

Endpoint URL

You can request a Quote by posting to the following URL:

POST https://api.bitso.com/rfq/v1/quotes


Request

Fields

FieldTypeRequiredDescription
sourcestringYesSource currency of the RFQ Pair
targetstringYesTarget currency or asset of the RFQ Pair
source_amountstringNoWhen provided it refers to the source currency or asset
target_amountstringNoWhen provided it refers to the target currency or asset

Payload Example

{
  "source": "BTC",
  "target": "USDT",
  "source_amount": "0.001"
}

Response

Fields

FieldTypeDescription
idstringUUID that uniquely identify the Quote
sourcestringSource currency or asset of the Quote
targetstringTarget currency or asset of the Quote
source_amountstringThe amount related to the source field
target_amountstringThe amount related to the targetfield
ratestringsource:target Quote price
statusstringThe status of the Quote: ACTIVE, EXPIRED, ACCEPTED, REJECTED
created_atstringThe date when the Quote was created
expires_atstringThe date when the Quote will expire

Payload Example

{
  "id": "552fd39c-1b1a-438f-b408-c06a51e00bd4",
  "source": "BTC",
  "target": "USDT",
  "source_amount": "0.00100000",
  "target_amount": "114.52",
  "rate": "114520.19",
  "status": "ACTIVE",
  "created_at": "2025-07-25T03:43:15Z",
  "expires_at": "2025-07-25T04:03:15Z"
}

Error

Responses

Status CodeError CodeError Message
400invalid_source_currencyThe field Source currency is either invalid or missing
400invalid_target_currencyThe field Target currency is either invalid or missing
400invalid_source_number_formatSource amount is not a valid number
400invalid_target_number_formatTarget amount is not a valid number
400both_amounts_missingOne or more fields (source amount, target amount) are either invalid or missing
400invalid_provided_amountIncorrect provided amount
400invalid_source_precisionSource amount should have at most a precision of <precision>
400invalid_target_precisionTarget amount should have at most a precision of <precision>

Payload Example

{
  "errors": [
    {
      "code": "invalid_provided_amount",
      "message": "Incorrect provided amount"
    }
  ]
}

Possible Quote Scenarios

With two possible values for both source/target and source_amount/target_amount, there are 4 combinations:

#sourcetargetsource_amounttarget_amountInterpretation
1BTCUSDT0.001How much USDT you would receive from selling 0.001 BTC?
2BTCUSDT100How much BTC you need to sell to receive 100 USDT?
3USDTBTC100How much BTC you can buy with 100 USDT?
4USDTBTC0.001How much USDT you need to buy 0.001 BTC?

How much USDT you would receive from selling 0.001 BTC?

Request

{
  "source": "BTC",
  "target": "USDT",
  "source_amount": "0.001"
}

Response

{
  "id": "552fd39c-1b1a-438f-b408-c06a51e00bd4",
  "source": "BTC",
  "target": "USDT",
  "source_amount": "0.00100000",
  "target_amount": "114.52",
  "rate": "114520.19",
  "status": "ACTIVE",
  "created_at": "2025-07-25T03:43:15Z",
  "expires_at": "2025-07-25T04:03:15Z"
}

Then you would receive 114.52 USTD from selling 0.001 BTC.


How much BTC you need to sell to receive 100 USDT?

Request

{
  "source": "BTC",
  "target": "USDT",
  "target_amount": "100"
}

Response

{
  "id": "e4e4a87e-8079-4489-a731-73dc3ed6bd1b",
  "source": "BTC",
  "target": "USDT",
  "source_amount": "0.00087387",
  "target_amount": "100.00",
  "rate": "114433.49",
  "status": "ACTIVE",
  "created_at": "2025-07-25T03:43:15Z",
  "expires_at": "2025-07-25T04:03:15Z"
}

So with this quote you would need to sell 0.00087387 BTC to receive 100 USDT.


How much BTC you can buy with 100 USDT?

Request

{
  "source": "USDT",
  "target": "BTC",
  "source_amount": "100"
}

Response

{
  "id": "26c42e44-a6bf-45b0-bc5f-8992793e1011",
  "source": "USDT",
  "target": "BTC",
  "source_amount": "100.00",
  "target_amount": "0.00087395",
  "rate": "114423.02",
  "status": "ACTIVE",
  "created_at": "2025-07-25T03:43:15Z",
  "expires_at": "2025-07-25T04:03:15Z"
}

You would buy 0.00087395 BTC with 100 USDT.


How much USDT you need to buy 0.001 BTC?

Request

{
  "source": "USDT",
  "target": "BTC",
  "target_amount": "0.001"
}

Response

{
  "id": "1624368a-71f1-49c2-87a3-b8b4e99fdd90",
  "source": "USDT",
  "target": "BTC",
  "source_amount": "114.41",
  "target_amount": "0.00100000",
  "rate": "114414.17",
  "status": "ACTIVE",
  "created_at": "2025-07-25T03:43:15Z",
  "expires_at": "2025-07-25T04:03:15Z"
}

You would need 114.41 USDT to buy 0.001 BTC.