{
"send_id": "9c8b7a6d-5e4f-3a2b-1c0d-9e8f7a6b5c4d",
"status": "processing",
"idempotency_key": "send-2026-07-11-a",
"idempotency_hit": true
}{
"send_id": "9c8b7a6d-5e4f-3a2b-1c0d-9e8f7a6b5c4d",
"wallet_id": "b7e3a1c2-9f4d-4a8b-8c1e-2d3f4a5b6c7d",
"chain": "tron",
"asset": "USDT",
"to_address": "TXYZdestination00000000000000000000",
"amount_raw": "25500000",
"fee": "0.000000",
"fee_asset": "USDT",
"status": "processing",
"tx_id": "b1946ac92492d2347c6235b4d2611184e0f0f8c9d3a1e2b3c4d5e6f708192a3b",
"idempotency_key": "send-2026-07-11-a",
"created_at": "2026-07-11T12:05:00Z"
}{
"error": "insufficient_gas",
"message": "the wallet does not hold enough TRX to pay the network fee (minimum 5.000000 TRX); fund the wallet address with TRX and retry"
}Enviar crypto desde la wallet
Envía crypto desde la wallet misma (dirección de origen real, firmado por el custodio). idempotency_key es obligatoria. El gas corre por el cliente: si la wallet no tiene gas nativo, el envío se rechaza con 422 insufficient_gas antes de cualquier cobro. Puede cobrar el fee wallet_send (del saldo de settlement de la cuenta en el ledger, nunca los fondos on-chain de la wallet; reembolsado si el core rechaza). Exige cuenta verificada y OTP. Ante una falla ambigua el envío queda pending — reintenta con la misma clave, jamás se re-envía.
{
"send_id": "9c8b7a6d-5e4f-3a2b-1c0d-9e8f7a6b5c4d",
"status": "processing",
"idempotency_key": "send-2026-07-11-a",
"idempotency_hit": true
}{
"send_id": "9c8b7a6d-5e4f-3a2b-1c0d-9e8f7a6b5c4d",
"wallet_id": "b7e3a1c2-9f4d-4a8b-8c1e-2d3f4a5b6c7d",
"chain": "tron",
"asset": "USDT",
"to_address": "TXYZdestination00000000000000000000",
"amount_raw": "25500000",
"fee": "0.000000",
"fee_asset": "USDT",
"status": "processing",
"tx_id": "b1946ac92492d2347c6235b4d2611184e0f0f8c9d3a1e2b3c4d5e6f708192a3b",
"idempotency_key": "send-2026-07-11-a",
"created_at": "2026-07-11T12:05:00Z"
}{
"error": "insufficient_gas",
"message": "the wallet does not hold enough TRX to pay the network fee (minimum 5.000000 TRX); fund the wallet address with TRX and retry"
}Autorizaciones
JWT de sesión (de register/login) o llave de API (pk_...).
X-API-Key: <token> se acepta como header alternativo.
Encabezados
Parámetros de ruta
Cuerpo
Respuesta
Replay idempotente de un envío previo.
tron, eth, btc "USDT"
Monto en unidades mínimas on-chain.
Fee de servicio cobrado del saldo de settlement del ledger.
"USDT"
pending, processing, completed, failed