Create a crypto transfer
Create a single crypto transfer that moves a stablecoin from a source wallet to a
destination wallet or external wallet. The chain is derived from the source wallet.
Provide exactly one of destination.walletId or destination.externalWalletId.
requestId is an idempotency key: reusing one for an in-flight transfer returns a
conflict, and the transfer is processed asynchronously after creation.
Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Body
Crypto transfer details. Provide exactly one of destination.walletId or
destination.externalWalletId. The chain is derived from the source wallet.
Create a single crypto transfer. The chain is derived from the source wallet —
it is not supplied in the request. Exactly one of destination.walletId or
destination.externalWalletId must be provided.
Client-supplied idempotency key. Reusing a requestId returns the existing transfer or a conflict.
"b1e6f0c2-1a2b-4c3d-9e8f-0a1b2c3d4e5f"
Stablecoin to transfer.
USDC, USDT, USDG, PYUSD, PYUSD0, USDCX "USDC"
Amount to transfer, greater than zero.
0.000001 <= x <= 999999999100.5
Provide exactly one of walletId or externalWalletId.
When true, the transfer is created in a pending-approval state and must be approved before execution.
false
Response
Crypto transfer created successfully.
A single crypto transfer.
Public ID of the crypto transfer (prefixed with ctx_).
"ctx_3Kf9dQ2mNpXwZ7bV1aLcs"
Client-supplied idempotency key.
"b1e6f0c2-1a2b-4c3d-9e8f-0a1b2c3d4e5f"
NOT_INITIATED, CREATED, PENDING_APPROVAL, APPROVED, REJECTED, EXPIRED, INITIATED, PENDING, COMPLETED, FAILED, QUOTE_FAILED, OPEN_QUOTE, UNKNOWN, CANCELLED "CREATED"
USDC, USDT, USDG, PYUSD, PYUSD0, USDCX "USDC"
Transfer amount as a string.
"100.5"
Reason the transfer failed, when applicable.
null
Token contract address for the transferred currency.
"0x3c499c542cef5e3811e1192ce70d8cc03d5c3359"
On-chain settlement references. Fields are null until the transfer is submitted on-chain.
Blockchain the transfer settles on, derived from the source wallet.
ETHEREUM, POLYGON, SOLANA, BASE, ARBITRUM, FLOW_EVM, CANTON, TRON, BSC "POLYGON"
"2026-07-01T10:30:00.000Z"
"2026-07-01T10:30:00.000Z"