Este endpoint permite obtener una lista paginada de pagos registrados en el sistema. Se pueden aplicar filtros dinámicos y ordenamientos mediante parámetros de consulta (query params
).
GET /pagos |
Requiere autenticación mediante token JWT. El token debe enviarse en el encabezado:
Authorization: Bearer {token} |
Parámetro | Tipo | Requerido | Descripción |
---|---|---|---|
page | integer | No | Número de página. Comienza desde 1. Ejemplo: |
limit | integer | No | Cantidad máxima de elementos por página. Ejemplo: |
sorts | object | No | Permite ordenar por uno o más campos. Ejemplo: |
filters | object | Sí | Permite aplicar múltiples filtros utilizando índices. |
filters[0][field]=status filters[0][operation]=EQUAL filters[0][value]=pending filters[1][field]=request_date filters[1][operation]=LESS_THAN filters[1][value]=20250101T030000000-0300 |
sorts[request_date]=ascending sorts[amount]=descending |
Campo | Operaciones válidas |
---|---|
id | EQUAL, IN |
parent_payment_id | EXISTS, EQUAL |
external_transaction_id | EQUAL, CONTAINS_IGNORE_CASE |
type | EQUAL |
collector_id | EQUAL, IN |
currency_id | EQUAL |
final_amount | LESS_THAN, LESS_THAN_OR_EQUAL_TO, EQUAL, GREATER_THAN_OR_EQUAL_TO, GREATER_THAN |
status | EQUAL |
validation | EQUAL |
review | EQUAL |
request_date | LESS_THAN, LESS_THAN_OR_EQUAL_TO, EQUAL, GREATER_THAN_OR_EQUAL_TO, GREATER_THAN |
due_date | LESS_THAN, LESS_THAN_OR_EQUAL_TO, EQUAL, GREATER_THAN_OR_EQUAL_TO, GREATER_THAN |
last_due_date | LESS_THAN, LESS_THAN_OR_EQUAL_TO, EQUAL, GREATER_THAN_OR_EQUAL_TO, GREATER_THAN |
refunded_date | LESS_THAN, LESS_THAN_OR_EQUAL_TO, EQUAL, GREATER_THAN_OR_EQUAL_TO, GREATER_THAN |
process_date | LESS_THAN, LESS_THAN_OR_EQUAL_TO, EQUAL, GREATER_THAN_OR_EQUAL_TO, GREATER_THAN |
paid_date | LESS_THAN, LESS_THAN_OR_EQUAL_TO, EQUAL, GREATER_THAN_OR_EQUAL_TO, GREATER_THAN |
rejected_date | LESS_THAN, LESS_THAN_OR_EQUAL_TO, EQUAL, GREATER_THAN_OR_EQUAL_TO, GREATER_THAN |
cancel_date | LESS_THAN, LESS_THAN_OR_EQUAL_TO, EQUAL, GREATER_THAN_OR_EQUAL_TO, GREATER_THAN |
objected_date | LESS_THAN, LESS_THAN_OR_EQUAL_TO, EQUAL, GREATER_THAN_OR_EQUAL_TO, GREATER_THAN |
accreditation_date | LESS_THAN, LESS_THAN_OR_EQUAL_TO, EQUAL, GREATER_THAN_OR_EQUAL_TO, GREATER_THAN |
review_validation_date | LESS_THAN, LESS_THAN_OR_EQUAL_TO, EQUAL, GREATER_THAN_OR_EQUAL_TO, GREATER_THAN |
payer_validation_date | LESS_THAN, LESS_THAN_OR_EQUAL_TO, EQUAL, GREATER_THAN_OR_EQUAL_TO, GREATER_THAN |
payer_deferred_date | LESS_THAN, LESS_THAN_OR_EQUAL_TO, EQUAL, GREATER_THAN_OR_EQUAL_TO, GREATER_THAN |
batch_withdrawal | EQUAL |
Para aplicar un filtro entre dos fechas no debe utilizarse la operación BETWEEN
. En su lugar, se deben usar dos filtros separados
, cada uno con su índice correspondiente, sobre el mismo campo.
filters[0][field]=request_date filters[0][operation]=GREATER_THAN_OR_EQUAL_TO filters[0][value]=20250101T000000000-0300 filters[1][field]=request_date filters[1][operation]=LESS_THAN filters[1][value]=20250201T000000000-0300 |
Este ejemplo filtra todos los pagos cuya request_date
esté entre el 1 de enero de 2025 a las 00:00 (GMT-3)
y el 1 de febrero de 2025 a las 00:00 (GMT-3)
.
Las fechas deben enviarse en el siguiente formato:
yyyyMMdd'T'HHmmssSSSZ |
- Ejemplo: 20250101T000000000-0300
- Representa: 1 de enero de 2025, 00:00:00.000
en hora UTC alineada a GMT-3
Debe incluirse al menos una
de las siguientes combinaciones de filtros. Si no se cumple esta condición, el sistema responderá con un error.
collector_id
y request_datecollector_id
y paid_date
collector_id
y rejected_date
collector_id
y accreditation_date
collector_id
y refunded_date
collector_id
y payment_id
payer.email
y request_datetype
y payment_methods.gateway.name
{ "code": 400, "message": "Query not have the minimum fields required for realm", "extended_code": 4501 } |
Código | Mensaje de error | Código extendido | Descripción |
---|---|---|---|
400 | <field> can not be filter | 4601 | El campo enviado no puede ser utilizado como filtro. |
400 | Invalid field "<field>" | 4601 | El campo especificado no es válido o no existe. |
400 | No enum constant com.paypertic.filter.util.enums.Operation.<OPERATION> | 4601 | La operación de filtro especificada no es válida. Debe ser una de las operaciones definidas por el sistema. |
400 | <field> can not be filtered with <OPERATION> | 4601 | La operación indicada no es compatible con el tipo de dato del campo. |
400 | Query not have the minimum fields required for realm | 4501 | No se cumple con alguna combinación de filtros mínimos requeridos. |
401 | No autorizado | 4001 | No se proporcionó un token válido o expiró. |
500 | Error interno del servidor | 5000 | Se produjo un error inesperado en el servidor. |