Consultar un pago y su ciclo de vida
GET /api/connect/v1/payments/{id}
Devuelve el mismo objeto que la creación, con el estado actual. Usa la llave del entorno en el que se creó el pago.
9.1 Estados
| Estado | Significado |
|---|---|
pending |
Creado, todavía sin pagar. |
paid |
Cobrado con éxito. Aparecen transaction_id y paid_at. |
partially_refunded |
Reembolsado parcialmente. |
refunded |
Reembolsado por completo. |
voided |
Anulado antes de la liquidación; los fondos quedan liberados. |
expired |
El enlace venció sin pagarse. |
disabled |
Deshabilitado. |
Los pagos con historial de reembolsos también traen refunded_amount y refund_status
(none / partial / full).
9.2 Listar pagos
GET /payments devuelve los pagos del comercio, del más nuevo al más viejo, paginados y acotados al
comercio y al entorno de la llave - una llave de sandbox nunca ve pagos de producción.
curl "https://aura.roki.systems/api/connect/v1/payments?status=paid&per_page=50" \
-H "Authorization: Bearer sk_test_..." -H "Accept: application/json"
{
"data": [ { "id": 938, "status": "pending", "...": "the full payment object" } ],
"meta": { "current_page": 1, "per_page": 20, "total": 47, "last_page": 3 }
}
| Parámetro | Efecto |
|---|---|
per_page |
Tamaño de página, 20 por defecto. limit se ignora - solo funciona per_page. |
page |
Empieza en 1. Deja de paginar cuando llegues a meta.last_page. |
status |
Filtra por estado. Un valor desconocido devuelve 422; no se ignora. |
external_reference |
Filtra por tu id de orden. Puede coincidir con varios, porque no es único. |
from / to |
Rango de fecha de creación, YYYY-MM-DD, hora de Honduras. |
meta.total cuenta todo lo que coincide con los filtros, no la página - contra eso paginas.
Aun así, guarda el id del pago al crearlo. El listado hace posible la conciliación, pero
recorrer páginas para encontrar un pago no sustituye tener su id.
9.3 Qué confirma un pago y qué no
Confirma: el webhook payment.approved, y un GET /payments/{id} que devuelva status: "paid".
No confirma: que el cliente caiga en success_url. Ese redireccionamiento lo controla el
navegador del cliente y cualquiera puede entrar a la URL sin pagar. Trátalo como una señal de UX,
nunca como prueba de un cobro.
