Create Transfer
The Transfers API is the primary way to move value through Thiqwave. Specify a source and a destination — Thiqwave handles the conversion, routing, and settlement automatically.
A transfer can move value between any combination of fiat and stablecoin:
Endpoint
Request Body
Source Object
Destination Object
Examples
On-ramp: AED to USDC on Sui
Off-ramp: USDT on Ethereum to GBP
Cross-chain bridge: USDC on Solana to USDC on Ethereum
Swap: USDT on Ethereum to USDC on Sui
Fiat-to-fiat (stablecoin sandwich): AED to EUR
Response
payment_instructions is only present when the source is fiat and requires a bank deposit. Use these details to complete the transfer.
Response Fields
Transfer States
The Transfers API uses human-readable string amounts for simplicity (e.g., "1000.00" for 1000 AED). The granular endpoints (pay-ins, payouts) use smallest-unit integers (e.g., 50000 for 500 AED). Both formats are valid within their respective endpoints.
Payment Rails
"bank_transfer" — Standard bank transfer (wire, SWIFT). Available in all corridors.
"instant" — Instant payment networks where available (e.g., IPP in UAE). Faster settlement, may have different fee structure.
Notes
- All transfers require a valid, non-expired quote.
- For fiat sources, complete the bank deposit using the
payment_instructions in the response.
- Monitor transfer status via
GET /v1/transfers/{id} or webhooks.
- Use
Idempotency-Key to safely retry transfers without creating duplicates.