API product catalogSub-Accounts & White-Label Retail KYC
Confirm an unexpired wallet conversion quote
Sub-Accounts & White-Label Retail KYC
POST
/users/{userId}/fx/convert
Confirm an unexpired wallet conversion quote
Sandbox available
confirmSubAccountCurrencyQuoteRequires an Idempotency-Key and an owned active account. Sandbox conversion is virtual. Live requires verified identity, approved currencies, traceable funding origin and operational acceptance. Quotes use shared managed rates, fee policy and 60-second expiry. Confirmation consumes a quote atomically; it never spends indicative display equivalents. Historical untraceable balances are not automatically eligible.
Parameters
userIdstringpathRequiredExample: CUSTOMER_ID_FROM_USERS
Headers
AuthorizationstringRequiredBearer sk_sandbox_<your_key> for sandbox requests.
Idempotency-KeystringheaderRequiredRequest body
quoteIdstringRequiredExample: "QUOTE_ID_FROM_FX_QUOTE"
Response fields
quoteIdstringconversionIdstringfromCurrencystringtoCurrencystringsourceAmountnumbertargetAmountnumberfeeAmountnumberfeeCurrencystringfeePercentnumberratenumberrateConventionstringexpiresAtstringsourcestringrateAsOfstring | nullsimulationOnlybooleanstatusCOMPLETEDsourceBalancenumbertargetBalancenumberResponse codes
200Authoritative managed FX terms or completed conversion receipt. See the FX model guide for field meanings.400Invalid parameters or missing idempotency key403Currency404Account or quote not found409Expired or consumed quote