Create Transfer
Initiate a transfer transaction
Create Transfer
Create a transfer transaction. Atomically creates a transaction record, locks the transfer amount, and initiates MPC signing. The system automatically locates the source asset by matchingfrom_address + chain + token_symbol under the authenticated client.
USDT, ETH, BTC, max 20 characters).0 and must not exceed the asset’s decimal precision.Address Validation
The destination address format is validated against the specified chain:| Chain | Format |
|---|---|
| EVM chains | 0x-prefixed 42-character hex |
| Tron | Base58check-encoded T-prefix |
| Bitcoin | Valid mainnet/testnet format |
| Solana | Valid base58 Ed25519 public key |
Response
Errors
| HTTP | Code | Condition |
|---|---|---|
| 400 | invalid_parameter | Invalid request body, non-positive amount, excessive decimal precision, or identical from_address / to_address |
| 400 | insufficient_balance | Insufficient available balance |
| 400 | invalid_address | Address format invalid for the chain |
| 400 | wallet_not_active | Wallet is not in active state |
| 400 | business_error | Transaction amount exceeds wallet limit |
| 404 | not_found | No asset found for the given address/chain/token combination |
| 500 | internal_error | Internal processing failure |
Authorizations
JWT access token obtained from the /api/v1/auth/token endpoint.
Body
The sender's blockchain address.
255The recipient's blockchain address.
255Enabled chain name for the transfer.
The symbol of the token to transfer (e.g., ETH, USDT, BTC).
20The amount to transfer as a string. Must be greater than 0 and must not exceed the asset's supported decimal precision.
"1.5"
Optional memo or note for the transfer.
100Response
Transfer initiated successfully.
Unique identifier for the created transaction.
"tx_w1x2y3z4a5"
Initial transfer status returned by the gateway. Currently PENDING when the task is created.
"PENDING"
A human-readable message about the transfer status.
"Transfer initiated successfully."