Cancelar una Transacción de Terminal
No existe un subrecurso dedicado de void o reembolso para los pagos con terminal. Las cancelaciones y reversas se expresan actualizando el estado del pago con terminal vía PATCH /terminal-payment/{id}.
Actualizar el estado
curl -X PATCH https://api.ali.app/rest/terminal-payment/{id} \
-H "Authorization: Bearer <token>" \
-H "x-application-id: YOUR_APP_ID" \
-H "Content-Type: application/json" \
-d '{ "status": "cancelled" }'
El body es { externalId?, totalAmount?, status?, additionalData? }, donde status es un valor de CardTransfersStatus:
| Estado | Significado |
|---|---|
created | Estado inicial |
approved | Aprobado |
processed | Procesado |
denied | Denegado |
reversed | Reversado |
refunded | Reembolsado |
cancelled | Cancelado |
in_progress | En progreso |
liquidated | Liquidado |
Para cancelar, define status en cancelled (o reversed). Para marcar un reembolso, define status en refunded. La respuesta es el CustomResponse estándar:
{
"success": true,
"data": { }
}
No existe un campo action, reason ni reasonDetail. Si necesitas adjuntar notas contextuales, usa el objeto de formato libre additionalData en el pago con terminal.
Consultas de transacciones por dispositivo
Recupera transacciones pasadas en un dispositivo específico (útil para la conciliación de cierre del día). La lista cubre las transacciones del dispositivo de los últimos 180 días; no hay filtro de fecha.
# All transactions on a device (last 180 days)
curl "https://api.ali.app/rest/devices/{deviceId}/transactions" \
-H "Authorization: Bearer <token>"
# A specific transaction (numeric transactionId)
curl https://api.ali.app/rest/devices/{deviceId}/transactions/{transactionId} \
-H "Authorization: Bearer <token>"
deviceId es un string (p. ej. device-abc123) y transactionId es un id entero numérico (p. ej. 12345).
Webhooks
Los webhooks salientes terminal_payment.* no están disponibles.