NominexDocs
Referencia de la APICalendarios de nómina

Editar

Edita un calendario de nómina.

Descripcion general

Este endpoint permite actualizar parcialmente un calendario de nómina. Todos los campos del cuerpo son opcionales: si omites una clave, ese campo queda intacto. Solo name, pay_day_offset e is_active son mutables; frequency, la fecha ancla (anchor_date), timezone y la razón social son inmutables, porque cambiarlos invalidaría los periodos ya generados. El identificador en la URL es el payroll_calendar_number del calendario dentro de tu organización. Una solicitud exitosa devuelve 200 con la forma completa del calendario actualizado.

Endpoint

PATCHhttps://app.integranom.com/api/v1/payroll-calendars/{payroll_calendar_number}

Path param: payroll_calendar_number — entero positivo, el número de calendario dentro de la organización.

Actualizacion minima


Envía solo los campos que quieras cambiar. El resto del calendario queda intacto.

{ "name": "Quincenal 2026 (revisado)" }

Ajustar la fecha de pago y desactivar


pay_day_offset reajusta cuántos días después del fin del periodo cae la fecha de pago (un valor negativo la adelanta antes del cierre). is_active: false desactiva el calendario, pero solo si no hay empleados activos o pendientes asignados a él: en ese caso la solicitud falla con 409 e incluye affected_count. Reasigna esos empleados a otro calendario antes de desactivarlo.

{
  "pay_day_offset": 5,
  "is_active": false
}

Campos del cuerpo

CampoTipoNotas
namestring3–60 caracteres. Único por razón social.
pay_day_offsetintegerEntre -15 y 15. Días desde el fin del periodo hasta la fecha de pago; un valor negativo paga antes del cierre. No puede ser menor que el mínimo de la periodicidad del calendario (0 en daily, -6 en weekly, -7 en decennial, -13 en biweekly, -12 en semimonthly y -15 en monthly); si lo es, se rechaza con 400.
is_activebooleanAl ponerlo en false se rechaza (409) si hay empleados activos o pendientes asignados.
isr_tariff_frequencystringTabla del SAT con la que se retiene el ISR: el mismo valor que frequency del calendario, o monthly. Cualquier otro se rechaza con 400. No modifica los periodos ya cerrados.
applies_seventh_day_discountbooleanSi las faltas y ausencias sin goce descuentan además un sexto del día de descanso (séptimo día proporcional). Un valor que no sea booleano se rechaza con 400. No modifica los periodos ya cerrados; los abiertos o calculados lo toman al recalcularse.
month_day_factornumberDías del mes del calendario: 30 o 30.4 (el número, no texto). Cualquier otro valor se rechaza con 400 y el mensaje Los días del mes deben ser 30 o 30.4. No modifica los periodos ya cerrados; los abiertos o calculados lo toman al recalcularse.

Campos inmutables: frequency, anchor_date, timezone y la razón social no se pueden editar — cambiarlos invalidaría los periodos ya generados. Para una configuración distinta, crea un calendario nuevo.

Forma de la respuesta

200 OK — misma forma que una fila de listar:

{
  "payroll_calendar_number": 3,
  "legal_entity_number": 1,
  "name": "Quincenal 2026",
  "frequency": "semimonthly",
  "isr_tariff_frequency": "semimonthly",
  "applies_seventh_day_discount": true,
  "month_day_factor": 30,
  "anchor_date": "2026-01-01T00:00:00.000Z",
  "pay_day_offset": 3,
  "timezone": "America/Mexico_City",
  "is_active": true,
  "periods_count": 24,
  "created_at": "...",
  "updated_at": "..."
}

Errores

StatusCausa
400payroll_calendar_number inválido en la URL, o falla de validación del cuerpo.
404El calendario con ese payroll_calendar_number no existe (o fue eliminado) en esta organización.
409is_active: false pero hay empleados activos o pendientes asignados — la respuesta incluye affected_count. También cuando el name ya existe para la razón social del calendario.

Ejemplo de cuerpo 409 al intentar desactivar:

{
  "message": "Cannot deactivate a payroll calendar while active or pending employees are assigned to it. Reassign them first.",
  "affected_count": 12
}
Abrir Nominex