PaymentMethods/PaginatedPeriodPayroll

 


POST https://customerapi.geovictoria.com/api/v1/PaymentMethods/PaginatedPeriodPayroll

 

Descripción

Obtener la nómina de novedades de pago de un período, paginada por usuarios (20 usuarios por página). Por
cada usuario supervisado del período devuelve sus novedades de horas (tipo de hora, concepto, total, horas
compensadas, etc.), agrupadas por identificador de usuario. La empresa y el período se indican explícitamente en el body mediante CompanyId y PeriodId.

Request

Request Body

 

Campos Tipo de dato Descripción
CompanyId Integer Identificador de la empresa. Requerido y distinto de 0; de lo contrario el request se rechaza con 400.
PeriodId Integer Identificador del período de pago a consultar. Requerido y distinto de 0; de lo contrario el request se rechaza
con 400.
PageNumber Integer Número de página a obtener (20 usuarios por página). Opcional, por defecto 1. Si excede el total de páginas se
ajusta a la última.
Identifier String Lista de identificadores de usuario (RUT/cédula) separados por coma para filtrar. Vacío = todos los usuarios
supervisados. Debe venir en el body aunque sea vacío (“”).
WorkIdentifier String Lista de legajos/identificadores laborales separados por coma para filtrar. Vacío = sin filtro por legajo.
Debe venir en el body aunque sea vacío (“”).
Client String Lista de códigos de cliente separados por coma para filtrar las novedades. Vacío = sin filtro. Debe venir en el body aunque sea vacío (“”).
Task String Lista de códigos de tarea separados por coma para filtrar las novedades. Vacío = sin filtro. Debe venir en el body aunque sea vacío (“”).
Date String Fecha específica (sólo aplica a variantes diarias). Para este endpoint va vacío. Debe venir en el body aunque sea vacío (“”).
IncludeDeactivatedUsers Boolean Incluir usuarios desactivados en el resultado. Opcional, por defecto false.
IncludeEmptyHourRecords Boolean Incluir usuarios sin novedades de horas. Opcional, por defecto false.

Ejemplo request

{
          "CompanyId": 12345,
          "PeriodId": 6789,
          "PageNumber": 1,
          "Identifier": "",
          "WorkIdentifier": "",
          "Client": "",
          "Task": "",
          "Date": "",
          "IncludeDeactivatedUsers": false,
          "IncludeEmptyHourRecords": false
      }

 

Importante

  • Los campos CompanyId y PeriodId son obligatorios y deben ser distintos de
    0; de lo contrario el request se rechaza con código 400.
  • Los campos UserId y ProfileId del body se ignoran: el servicio los asigna
    internamente a un usuario/perfil administrador genérico.
  • La paginación es por usuarios: 20 usuarios por página. La respuesta informa la página actual
    (PageNumber) y el total de páginas (TotalPages).
  • Los campos de la respuesta con valor nulo o por defecto se omiten del JSON.

Response

Response Body

La respuesta es un objeto paginado con los siguientes campos:

Campos Tipo de dato Descripción
PageNumber Integer Número de la página devuelta
TotalPages Integer Cantidad total de páginas disponibles
Users Array Lista de usuarios con sus novedades (ver detalle abajo)

 

Users

 

Campos Tipo de dato Descripción
Identifier String Identificador del usuario (RUT/cédula u otro)
WorkIdentifier String Legajo / identificador laboral del usuario
Name String Nombre del usuario (o nombre completo según configuración de la empresa)
LastName String Apellido del usuario (sólo si la empresa separa nombre y apellido)
Group String Grupo al que pertenece el usuario
Period String Rango de fechas del período (formato “inicio – fin”)
Data Array Lista de novedades de horas del usuario (ver detalle abajo)

 

Data

 

Campos Tipo de dato Descripción
HourType String Tipo de hora de la novedad
Concept String Concepto externo asociado al tipo de hora
Parameter String Parámetro asociado al tipo de hora
Category String Categoría del tipo de hora
BICategory String Categoría BI asociada al tipo de hora
Total Double Total de horas de la novedad
CompensatedHours Double Horas compensadas
IsPreApproved Boolean Indica si la novedad está pre-aprobada
OvertimeAssigment String Asignación de horas extra
ClientCode String Código de cliente (sólo si la empresa usa distribución por proyecto/tarea)
ProjectCode String Código de proyecto (sólo si la empresa usa distribución por proyecto/tarea)
WorkCode String Código de obra (sólo si la empresa usa distribución por proyecto/tarea)
TaskCode String Código de tarea (sólo si la empresa usa distribución por proyecto/tarea)
Date String Fecha de la novedad (sólo en variantes diarias del reporte)

 

Códigos

 

Código Descripción
200 Éxito
400 Error en el request (CompanyId/PeriodId en 0, campos String ausentes o nulos, u otro error de validación)

Ejemplo response

{
          "PageNumber": 1,
          "TotalPages": 3,
          "Users": [
              {
                  "Identifier": "15715287",
                  "WorkIdentifier": "L-0099",
                  "Name": "Juan Pérez",
                  "Group": "Operaciones",
                  "Period": "2026-05-01 - 2026-05-31",
                  "Data": [
                      {
                          "HourType": "Horas Extra 50%",
                          "Concept": "HE50",
                          "Parameter": "P1",
                          "Category": "Extra",
                          "Total": 12.5
                      }
                  ]
              }
          ]
      }
Tabla de contenidos