Módulo Send
Send · Transferencias Transferencias del wallet Argentive a CVU, CBU o alias arbitrario en LATAM. Threshold configurable + aprobación por WhatsApp para montos altos.
Estado: Beta
Send corre sobre Pomelo Pay para transferencias vía Transferencias 3.0 (Argentina) y SPEI (México). Otros países en roadmap Q4 2026.
Overview El módulo Send convierte un intent del agente en una transferencia real. Cada request pasa por 3 etapas:
pipeline COPY
1. Validation → CVU/CBU/alias existe y es válido
2. Approval gate → según monto: auto | whatsapp | biometric | blocked
3. Rail execution → Pomelo Pay → confirmación webhookPOST /v1/send/transfers Crea una solicitud de transferencia.
curl COPY
curl -X POST https://api.argentive.ai/v1/send/transfers \
-H "Authorization: Bearer sk_test_..." \
-H "Content-Type: application/json" \
-H "Idempotency-Key: agent-req-123" \
-d '{
"to": {
"type": "alias",
"value": "jose.mercadopago"
},
"amount": 25000,
"currency": "ARS",
"concept": "alquiler julio",
"from_sub_wallet": "swal_01HW3F..."
}'Response 202 (approval pending)
response COPY
{
"id": "tx_01HW3F...",
"status": "pending_approval",
"approval": {
"channel": "whatsapp",
"phone": "+549XXXX....",
"sent_at": "2026-07-01T12:04:33Z",
"expires_at": "2026-07-01T12:19:33Z"
},
"to": { "type": "alias", "value": "jose.mercadopago", "name": "José Pérez" },
"amount": 25000,
"currency": "ARS",
"concept": "alquiler julio"
}Response 202 (auto-approved, ejecutando)
response COPY
{
"id": "tx_01HW3F...",
"status": "processing",
"approval": { "channel": "auto", "reason": "under_threshold" },
"estimated_settlement": "2026-07-01T12:04:38Z"
}Response 200 (idempotencia hit)
Si el Idempotency-Key ya existe, devolvemos la transacción original sin re-crearla. Un agente que reintenta no genera duplicados.
GET /v1/send/transfers/:id curl COPY
curl -X GET https://api.argentive.ai/v1/send/transfers/tx_01HW3F... \
-H "Authorization: Bearer sk_test_..."Response 200
response COPY
{
"id": "tx_01HW3F...",
"status": "settled",
"amount": 25000,
"currency": "ARS",
"from": { "wallet_id": "wal_01HW3F...", "sub_wallet": "swal_01HW3F..." },
"to": { "type": "alias", "value": "jose.mercadopago", "name": "José Pérez" },
"concept": "alquiler julio",
"created_at": "2026-07-01T12:04:33Z",
"settled_at": "2026-07-01T12:04:38Z",
"rail": { "provider": "pomelo-pay", "external_id": "pomelo_tx_9873" },
"receipt_url":"https://argentive.ai/tx/tx_01HW3F..."
}Estados posibles pending_approval — esperando tap del user en WhatsAppapproved — user aprobó, encolada al railprocessing — enviada al rail, esperando confirmaciónsettled — plata acreditada en destinorejected — user tocó "rechazar" o approval expirófailed — rail devolvió error (fondos insuficientes, CVU inválido, etc)POST /v1/send/transfers/:id/cancel Cancela una transfer en estado pending_approval. No sirve una vez que pasó a approved o processing.
Formatos de destino destinations COPY
{ "type": "cvu", "value": "0000034411112222333344" }
{ "type": "cbu", "value": "0070007700000000123456" }
{ "type": "alias", "value": "jose.mercadopago" }
{ "type": "email", "value": "jose@example.com" } // requires beneficiary onboardingErrores comunes errores COPY
400 invalid_destination CVU/CBU con checksum inválido
403 approval_required Monto sobre threshold; user no aprobó
403 panic_limit_reached Excede el cap 24h del sub-wallet
409 insufficient_balance Saldo insuficiente en la wallet/sub-wallet
409 duplicate_idempotency_key Idempotency-Key ya asociada a otra tx
422 destination_not_found El alias/CBU no existe en el sistema bancarioWebhooks send.approval_requested — WA enviado al usersend.approved — user aprobó, encolada al railsend.rejected — user rechazó o expirósend.settled — dinero acreditado en destinosend.failed — rail devolvió error