Visão Geral
O cash-out SPEI envia uma transferência interbancária para uma CLABE de destino. O saldo da conta é debitado e a NTX Pay processa a transferência na rede SPEI. A confirmação chega no webhookcash_out com o evento transaction.cash_out.settled.
Endpoint
POST /api/spei/cash-out
Headers
Request
Response (201)
transactionId (UUID) é o identificador único da transação — é o mesmo valor entregue nos webhooks; use-o para correlacionar eventos e consultar a transação.
Campos do Response
string
obrigatório
Identificador único da transação (UUID). Mesmo valor entregue nos webhooks.
string
obrigatório
Status da transação:
PENDING, CONFIRMED, FAILED ou EXPIRED.string
obrigatório
CLABE de destino que o pagador deve usar na transferência SPEI.
string
Referência numérica SPEI, quando disponível.
integer
obrigatório
Valor em centavos MXN.
string
Criação da transação (ISO 8601).
Campos do Request
integer
obrigatório
Valor em centavos MXN (mínimo 1). Ex.:
50000 = $500,00 MXN.string
Identificador externo único (até 100 caracteres). Reenvios com o mesmo
externalId retornam a transferência existente (idempotência server-side).string
obrigatório
CLABE de destino — exatamente 18 dígitos numéricos (regex:
^\d{18}$).string
obrigatório
Nome do beneficiário (3–255 caracteres).
string
RFC/CURP do beneficiário (10–20 caracteres). Recomendado para reconciliação.
string
Conceito exibido no extrato do beneficiário (até 40 caracteres — limite do concepto SPEI).
Validação de Saldo
Antes de enviar, valide o saldo:Estados
No webhook, os desfechos chegam como
transaction.cash_out.settled (LIQUIDATED) e transaction.cash_out.rejected (REJECTED) — veja o payload completo.
Devolução após a liquidação: se o banco da contraparte devolver a transferência, o saldo é creditado de volta e você recebe transaction.cash_out.returned no webhook refund_out.
Códigos de Erro
Exemplo em Node.js com Retry
Testar no Sandbox
No sandbox, o pipeline completo roda — saldo debitado, tarifa cobrada, extrato gerado — e a liquidação é simulada em segundos. Sua conta precisa de saldo: faça um cash-in antes. Force rejeição, devolução e falhas síncronas com o headerX-Sandbox-Scenario — veja o catálogo de cenários.
Próximos Passos
Webhook cash_out
Payload do webhook de liquidação
Webhook refund_out
Como chegam as devoluções de cash-out