API ReferenceTransfers
Transfer Tokens
Transfer tokens from a wallet to an external address.
Transfer Tokens
Send tokens from a managed wallet to any external address. Spending controls are enforced before the transfer is executed.
Authentication
Requires X-API-Key header.
Path parameters
| Parameter | Type | Description |
|---|---|---|
id | string | Wallet UUID |
Request body
Request
curl -X POST http://localhost:4000/v1/wallets/WALLET_ID/transfer \
-H "X-API-Key: ak_your_key" \
-H "Content-Type: application/json" \
-d '{
"chain": "base",
"to": "0xRecipientAddress",
"amount": "10.00",
"currency": "USDC"
}'Response (200)
{
"transaction_id": "tx-uuid",
"tx_hash": "0xabc123def456...",
"from": "0x742d35Cc...",
"to": "0xRecipientAddress",
"amount": "10.00",
"currency": "USDC",
"chain": "base",
"status": "confirmed"
}Response fields
| Field | Type | Description |
|---|---|---|
transaction_id | string | Internal transaction UUID |
tx_hash | string | On-chain transaction hash |
from | string | Sender address |
to | string | Recipient address |
amount | string | Amount transferred |
currency | string | Token symbol |
chain | string | Chain used |
status | string | confirmed, pending, or failed |
Errors
| Status | Code | Description |
|---|---|---|
| 400 | INVALID_INPUT | Invalid chain, missing fields, or bad amount |
| 403 | DAILY_LIMIT_EXCEEDED | Spending control violation |
| 403 | PER_TX_LIMIT_EXCEEDED | Amount exceeds per-transaction limit |
| 403 | ADDRESS_NOT_ALLOWED | Recipient not in allowlist |
| 404 | NOT_FOUND | Wallet not found |
| 500 | TRANSFER_FAILED | On-chain transfer failed |