Consultar la lista de pagos de nómina registrados.
| Time | Status | User Agent | |
|---|---|---|---|
Retrieving recent requests… | |||
Devuelve la cabecera de cada pago de nómina (una fila por liquidación: año, mes, período, totales y estado). No incluye el detalle por empleado — para eso ver Cómo obtener la nómina de un mes.
Reglas de negocio
- El parámetro
params[estados]es obligatorio; su ausencia produce un error 500 (no está validado en el backend). Los corchetes son literales: se envíaparams[estados]=EP,PA, noestados=EP,PA. - Siempre excluye del listado los pagos de tipo "Datos Iniciales", sin importar el filtro.
- El texto de búsqueda libre (
filter) no solo busca en la descripción del pago: también hace match contra el nombre completo o el número de documento de cualquier empleado asociado a ese pago. - No existe filtro por fecha, año ni mes. Los únicos filtros son
params[estados],filtery la paginación/orden. Ver Filtrar por fecha o período.
Códigos de estado (estado)
estado)| Código | Significado |
|---|---|
EP | En Preparación |
PA | Por Aprobar |
PP | Por Pagar |
PG | Pagada |
RE | Regreso a Preparación |
AN | Anulado |
Códigos de tipo de pago (tipoPago)
tipoPago)| Código | Significado |
|---|---|
PE | Nómina |
PR | Prima de Servicios |
CE | Cesantías |
IC | Intereses de Cesantías |
LD | Liquidación Definitiva |
AN | Adelanto |
DV | Devengados en valor |
NE | Nómina Electrónica |
VI | Pago virtual |
IN | Datos iniciales (siempre excluido de este listado) |
Formato de la respuesta
Convenciones verificadas contra el API. Conviene tenerlas en cuenta al tipar la integración:
| Aspecto | Cómo llega | Detalle |
|---|---|---|
| Fechas | Texto ISO-8601 | "2026-04-16T05:00:00.000+0000". El desplazamiento va sin dos puntos (+0000), no como +00:00. Las fechas sin hora llegan a las 05:00 UTC, que es la medianoche en hora de Colombia (UTC-5). |
uuid | Texto de 32 caracteres hexadecimales en mayúscula | "A1B2C3D4E5F60718293A4B5C6D7E8F90", sin guiones. No es el formato canónico 8-4-4-4-12, así que una validación de UUID estándar lo rechazaría. |
| Banderas | Booleanos | definitivo, incluirPrima, incluirInteresesCesantias llegan como true/false, no como 0/1. |
| Contadores | Números decimales | generoPlano, egresoConErrores, pendienteGenerarEgreso, pendienteGenerarIngreso e ingresoConErrores llegan como 0.0/1.0, no como enteros. |
| Montos grandes | Notación científica | Un valor de 18.404.777 se serializa como 1.8404777E7. Es JSON válido, pero algunos parsers estrictos o mapeos a enteros lo rechazan. totalDeducciones además puede ser negativo en pagos de prima. |
| Campos nulos | null | grupoPago es null cuando el pago no está asociado a un grupo. pendienteGenerarIngreso e ingresoConErrores también pueden llegar en null. |
| Sobre de la respuesta | contenido + total | En respuestas exitosas error, advertencia y metadata siempre llegan en null. total trae el conteo global, independiente de la paginación. |
| Sin resultados | Lista vacía | {"contenido": [], "error": null, "advertencia": null, "metadata": null, "total": 0} — no es un 404. |
Cómo obtener la nómina de un mes
Este endpoint es el primer paso de un flujo de tres:
| Paso | Endpoint | Qué devuelve |
|---|---|---|
| 1 | GET /pagos?params[estados]=PG,PP | Cabeceras de pago. Identificar el uuid del pago buscado por sus campos ano y mes. |
| 2 | Listar comprobantes de pago — GET /pagoEmpleados?params[pago]={uuid} | Un comprobante por empleado de ese pago. |
| 3 | Detalle de pago de un empleado — GET /pagoEmpleadoDetalles/{uuidPagoEmpleado} | El desglose concepto por concepto de un solo comprobante: un empleado en un pago. Se llama una vez por cada uuid obtenido en el paso 2. |
El paso 3 no admite lote: hay que invocarlo una vez por empleado. Si en cambio basta con los totales por concepto de todo el pago sumando a todos los empleados, un solo llamado a Detalle de un pago específico — GET /pagoEmpleadoDetalles/detallePago/{idPago} reemplaza los pasos 2 y 3, pero pierde el desglose individual.
Si lo que se necesita es un solo llamado con los totales del período agregados por empleado, usar Conceptos acumulados en vez de este flujo.
No usarGET /pagos/nominaelectronica/{ano}/{mes}como consulta del mes. A pesar del nombre, no es de solo lectura: consume el consecutivo de documento soporte de nómina electrónica de la compañía en cada llamada. Ver Estado nómina electrónica del periodo.
Filtrar por fecha o período
Este endpoint no acepta filtros por fecha. Las alternativas son:
- Conceptos acumulados —
GET /pagoEmpleadoDetalles/conceptosacumulados/{fechaDesde}/{fechaHasta}/false. Es el único endpoint de pagos que filtra por rango de fechas real (sobrefechaDesdedel pago) y solo considera pagos definitivos. - Consultar
GET /pagosconsort=fechaDesde,descy filtrar del lado del cliente por los camposanoymes, que vienen en cada fila de la respuesta. El orden porfechaDesdees el que usa la propia aplicación de Nómina. - Para reportes puntuales ya acotados por período: Consolidado de vacaciones, Consolidado de prima, Consolidado de cesantías, Depuración de retefuente o Aportes acumulados del período.
401No autorizado para el uso del servicio.
Posibles causas:
- Falta agregar el Bearer Token en la petición.
- Tenant no existe o está inactivo.