Create Quote
Request a conversion quote with a locked-in exchange rate. Quotes are valid for a limited time and can be used when executing a conversion to guarantee the quoted rate.
POST /v1/quotes
Headers
| Header | Required | Description |
|---|---|---|
X-Api-Key |
Yes | Your API key |
Content-Type |
Yes | application/json |
Request Body
| Field | Type | Required | Description |
|---|---|---|---|
amount |
number | Yes | Amount in source currency to convert (see minimum amounts below) |
sourceCurrency |
string | Yes | Source currency: NGN |
targetCurrency |
string | Yes | Target currency: USD, EUR, GBP, USDT, USDC |
Note: Quotes currently support NGN as the source currency only.
Minimum Amounts
| Source Currency | Minimum Amount |
|---|---|
NGN |
150,000 |
BTC |
0.00033 |
USD, EUR, GBP, USDT, USDC |
30 |
Example Request
curl -X POST "https://api.esca.finance/v1/quotes" \
-H "X-Api-Key: your_api_key_here" \
-H "Content-Type: application/json" \
-d '{
"amount": 500000,
"sourceCurrency": "NGN",
"targetCurrency": "USD"
}'
Example Response
{
"status": true,
"message": "Quote created successfully.",
"data": {
"quoteId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"sourceCurrency": "NGN",
"targetCurrency": "USD",
"sourceAmount": 500000,
"targetAmount": 312.50,
"appliedRate": 1600,
"status": "PENDING",
"expiresAt": "2026-02-15T12:00:30.000Z"
}
}
Response Fields
| Field | Type | Description |
|---|---|---|
quoteId |
string | UUID of the quote. Use this when executing a conversion. |
sourceCurrency |
string | Source currency |
targetCurrency |
string | Target currency |
sourceAmount |
number | Amount in source currency |
targetAmount |
number | Amount you will receive in target currency |
appliedRate |
number | Locked-in exchange rate |
status |
string | Quote status: PENDING, EXECUTED, EXPIRED, CANCELLED |
expiresAt |
string | When the quote expires (ISO 8601) |
Quote Status Flow
PENDING -> EXECUTED (used in a conversion)
-> EXPIRED (time elapsed)
-> CANCELLED