Create transfer quote
Create or reuse a short-lived transfer-owned executable quote. The amount is an integer minor-unit string. customer_id is required, amount.currency must equal base, and backend FX conversion is called with amount_unit=minor. FX date resolution is delegated to the FX module business-date lookup policy, including optional lookback across prior calendar dates, and the locked snapshot exposes the resolved fx_rate_date and optional fx_rate_at provenance fields.
/v2/transfers/quotesAuthorization
BearerAuth JWT authentication token
In: header
Header Parameters
Language preference for the response
Idempotency key for quote creation retries. Reuses the existing active quote for the same fingerprint.
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Transfer-owned quote request. Either product_code or product_id must be provided.
Transfer-owned quote request. Either product_code or product_id must be provided.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/v2/transfers/quotes" \ -H "Content-Type: application/json" \ -d '{ "customer_id": "123e4567-e89b-12d3-a456-426614174050", "base": "USDC", "target": "EUR", "type": "SELL", "amount": { "amount": "100000000", "currency": "USDC" }, "product_code": "CRW" }'{
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"status": "quoted",
"reused": true,
"quoted_at": "2019-08-24T14:15:22Z",
"expires_at": "2019-08-24T14:15:22Z",
"consumed_at": "2019-08-24T14:15:22Z",
"transfer_id": "d4a2d8dd-7def-4545-a062-761683b9aa05",
"price_snapshot": {
"base": "string",
"target": "string",
"type": "string",
"amount": {
"amount": "string",
"currency": "string",
"precision": 0
},
"fx_source": "string",
"selected_fx_rate": 0,
"fx_rate_date": "2019-08-24",
"fx_rate_at": "2019-08-24T14:15:22Z",
"market_rate_mid": 0,
"amount_to_pay": {
"amount": "string",
"currency": "string",
"precision": 0
},
"amount_to_convert": {
"amount": "string",
"currency": "string",
"precision": 0
},
"amount_to_receive": {
"amount": "string",
"currency": "string",
"precision": 0
},
"total_fee": {
"amount": "string",
"currency": "string",
"precision": 0
},
"fees": [
{
"name": "conversion_fee",
"amount": "string",
"currency": "string",
"precision": 0
}
],
"fx_rate_id": "string",
"tariff_ids": [
"string"
],
"fx_tariff_id": "string",
"spread_rule_id": "string",
"fallback_tariff_id": "string",
"fallback_tariff_used": true
}
}{
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"status": "quoted",
"reused": true,
"quoted_at": "2019-08-24T14:15:22Z",
"expires_at": "2019-08-24T14:15:22Z",
"consumed_at": "2019-08-24T14:15:22Z",
"transfer_id": "d4a2d8dd-7def-4545-a062-761683b9aa05",
"price_snapshot": {
"base": "string",
"target": "string",
"type": "string",
"amount": {
"amount": "string",
"currency": "string",
"precision": 0
},
"fx_source": "string",
"selected_fx_rate": 0,
"fx_rate_date": "2019-08-24",
"fx_rate_at": "2019-08-24T14:15:22Z",
"market_rate_mid": 0,
"amount_to_pay": {
"amount": "string",
"currency": "string",
"precision": 0
},
"amount_to_convert": {
"amount": "string",
"currency": "string",
"precision": 0
},
"amount_to_receive": {
"amount": "string",
"currency": "string",
"precision": 0
},
"total_fee": {
"amount": "string",
"currency": "string",
"precision": 0
},
"fees": [
{
"name": "conversion_fee",
"amount": "string",
"currency": "string",
"precision": 0
}
],
"fx_rate_id": "string",
"tariff_ids": [
"string"
],
"fx_tariff_id": "string",
"spread_rule_id": "string",
"fallback_tariff_id": "string",
"fallback_tariff_used": true
}
}{
"status": 0,
"message": "string"
}{
"status": 0,
"message": "string"
}{
"status": 0,
"message": "string"
}{
"status": 0,
"message": "string"
}{
"status": 0,
"message": "string"
}{
"status": 0,
"message": "string"
}