Estados
El ciclo de vida de una operación, del clic a la liquidación.
| Estado | Terminal | Significado |
|---|---|---|
initiated |
no | Creada; el pagador aún no ha actuado |
pending |
no | El pagador ha actuado; falta la confirmación del rail |
success |
sí | Cobrada — los fondos están abonados en su saldo |
failed |
sí | Rechazada o fallida en el rail |
cancelled |
sí | Anulada (por el pagador o por usted) antes del cobro |
expired |
sí | El enlace o la sesión de pago expiró sin acción |
Reglas
- Un estado terminal no vuelve a cambiar jamás.
successno se convierte enfailed; un cobro disputado produce un recurso nuevo (reembolso, disputa), nunca una reescritura del historial. pendingpuede durar — algunos pagadores validan su código USSD varios minutos después. Nunca tratependingcomo un fallo.- La transición que le interesa llega por webhook; la lectura
(
GET /v1/payments/{id}) es la red de seguridad, no el mecanismo principal.
No derive su estado del nuestro
Un estado describe nuestra operación. En qué debe convertirse su pedido es decisión suya: un
success no quiere decir «enviar», quiere decir «los fondos están con usted». Mantenga su propia
máquina de estados y hágala avanzar con los eventos, no al revés.