Skip to main content
POST
Create a lockable FX quote

Authorizations

DPoP
string
header
required

Per-request DPoP proof JWT (RFC 9449). MUST accompany the Authorization: DPoP <access_token> header on every protected operation. The proof is signed by the merchant's private DPoP key and carries htm, htu, iat, jti, and ath claims.

Body

application/json

Supply either sell_amount OR buy_amount — the missing side is computed from the locked rate.

sell_currency
string
required

ISO 4217 three-letter currency code.

Pattern: ^[A-Z]{3}$
Example:

"USD"

buy_currency
string
required

ISO 4217 three-letter currency code.

Pattern: ^[A-Z]{3}$
Example:

"USD"

sell_amount
string

Decimal amount as a string, never a float. Up to 12 whole digits.

Pattern: ^-?\d{1,12}(\.\d+)?$
Example:

"1234.56"

buy_amount
string

Decimal amount as a string, never a float. Up to 12 whole digits.

Pattern: ^-?\d{1,12}(\.\d+)?$
Example:

"1234.56"

locked
boolean
default:true

Request a rate-locked quote whose customer_rate is held until lock_expires_at. Redeem the lock by passing the returned id (or equivalently lock_id) as quote_id on POST /v1/fx/exchange before expiry. Defaults to true. Set to false for an indicative (non-binding) quote that cannot be redeemed on /v1/fx/exchange.

Response

Quote created.

data
object
required

An FX rate quote, optionally locked for execution.