Calcular
Abre el periodo si hace falta y calcula la nómina.
Descripcion general
Este endpoint corre la nómina de un periodo. Si el periodo todavía no está abierto, lo abre, creando la corrida y congelando los empleados, sus salarios y las prestaciones de sus contratos, y a continuación lo calcula. Si el periodo ya estaba abierto, simplemente lo (re)calcula.
Abrir y calcular son un solo paso: el campo opened de la respuesta te dice si esta llamada abrió el periodo (true) o si ya estaba abierto (false).
La llamada es idempotente en el resultado mientras no cambien sus insumos: repetirla sobre un periodo ya calculado lo vuelve a calcular con los mismos empleados congelados y deja los mismos resultados. Los conceptos y los catálogos fiscales se leen como están en cada cálculo, así que un cambio en un concepto se refleja al volver a calcular. Para incorporar cambios de empleados o de asistencia posteriores a la apertura, utiliza recalcular.
No lleva cuerpo. Requiere que la API key tenga el permiso Calcular nómina.
Endpoint
https://app.integranom.com/api/v1/payroll-calendars/{payroll_calendar_number}/periods/{period_number}/calculatePath params:
payroll_calendar_number— entero positivo, el número del calendario.period_number— el periodo, con el formato{fiscal_year}-{sequence_number}(por ejemplo2026-14).
Corre un periodo
Abre el periodo (si hacía falta) y lo calcula. entries_count es el número de empleados calculados.
Campos de la respuesta
| Campo | Tipo | Descripcion |
|---|---|---|
period_number | string | El periodo calculado. |
payroll_run_number | integer | Número de la corrida creada o recalculada. |
status | string | Siempre calculated cuando la llamada tiene éxito. |
entries_count | integer | Empleados calculados en la corrida. |
opened | boolean | true si esta llamada abrió el periodo; false si ya estaba abierto. |
Comportamiento
- Si el periodo no tiene corrida, la abre: valida el calendario y la plantilla, y congela los datos de los empleados (empleados activos del calendario, salario diario, prestaciones del contrato de cada empleado). Los conceptos y los catálogos fiscales se leen en cada cálculo.
- En el primer cálculo, aplica a la corrida la asistencia capturada en el registro global para las fechas del periodo. En los cálculos posteriores respeta la asistencia ya aplicada (para volver a sincronizarla, usa recalcular).
- Ejecuta el motor de cálculo: percepciones, deducciones, ISR, IMSS, INFONAVIT, ISN y costo patronal.
- Deja la corrida y el periodo en estado
calculated.
Al cerrar, la corrida conserva los datos con los que se calculó por última vez, así que una corrida cerrada se puede reproducir idénticamente aunque después cambien salarios, contratos, conceptos o catálogos.
Errores
| Status | Código | Causa |
|---|---|---|
400 | — | payroll_calendar_number o period_number inválidos en la URL. |
401 | — | API key ausente o inválida. |
403 | — | La API key no tiene el permiso Calcular nómina. |
404 | — | El calendario o el periodo no existen en esta organización. |
409 | INACTIVE_CALENDAR | El calendario está desactivado. No se pueden abrir periodos en él. |
409 | NO_EMPLOYEES | El calendario no tiene empleados activos que calcular. |
409 | MISSING_REQUIRED_FIELDS | Algún empleado no tiene los datos requeridos para nómina (RFC, CURP, código postal, salario, contrato). |
409 | OUT_OF_NORM | Las prestaciones del contrato de algún empleado están por debajo del mínimo de ley. La respuesta incluye norm_violations. |
409 | CLOSED | El periodo está cerrado y no admite nuevos cálculos. |
409 | CANCELLED | La corrida del periodo fue cancelada; no se puede calcular. |
409 | CATALOG_MISSING | Falta configurar un catálogo fiscal requerido para el periodo. |
409 | RETRO_STATE_CHANGED | Un ajuste retroactivo cambió durante el cálculo. Vuelve a intentar. |
409 | HOUSING_INSURANCE_STATE_CHANGED | Otra nómina del bimestre cambió el seguro de vivienda INFONAVIT durante el cálculo. Vuelve a intentar. |
409 | NO_SNAPSHOT | La corrida no tiene una configuración congelada completa para el periodo. |
409 | CONCURRENT_CALCULATION | Otro cálculo de nómina de los mismos empleados está en curso. Vuelve a intentar en un momento. |
409 | NOT_ONE_EMPLOYMENT | La corrida es un finiquito con más de un empleado; un finiquito cubre a uno solo. |
409 | NOT_CLOSING_PERIOD | La corrida tiene activado el ajuste anual de ISR, pero no es el último periodo ordinario del ejercicio. Desactívalo en las opciones de la corrida. |
409 | NO_ANNUAL_ISR_TARIFF | La corrida aplica el ajuste anual de ISR, no está configurada la tarifa anual de ISR del ejercicio y al menos un empleado no está excluido por tipo de trabajador, no estar marcado para el ajuste, año incompleto o solicitud por escrito. |

