NominexDocs
Referencia de la APIEmpleados

Reactivar

Reactiva a un empleado que está dado de baja.

Descripcion general

Este endpoint reactiva a un empleado que está dado de baja, registrando una nueva relación laboral. Se usa para recontratar empleados que fueron dados de baja previamente. La nueva relación laboral puede atarse a una razón social distinta a la anterior, y opcionalmente puede arrastrar la antigüedad acumulada.

Si el empleado no tiene historial laboral previo, este endpoint no es el camino — usa POST /api/v1/employees para registrarlo por primera vez.

Cálculo de antigüedad. Si keep_seniority es true, la seniority_date toma la fecha más antigua de antigüedad encontrada en el historial del empleado. Si es false, la antigüedad se reinicia y seniority_date queda igual a rehire_date. Un asimilado o un trabajador por honorarios no lleva antigüedad: su seniority_date queda en null sin importar keep_seniority.

Endpoint

POSThttps://app.integranom.com/api/v1/employees/{employee_number}/reactivate

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

Recontratar con antiguedad


keep_seniority: true arrastra la fecha de antigüedad más antigua del historial. En este ejemplo, el empleado fue contratado originalmente el 2026-01-15 y se recontrata el 2026-08-01 conservando esa antigüedad.

{
  "legal_entity_number": 1,
  "rehire_date": "2026-08-01",
  "keep_seniority": true,
  "is_included_in_payroll_calculations": true,
  "contributes_to_imss": true,
  "imss_number": "12345678903",
  "already_registered_with_imss": false
}

Recontratar reiniciando antiguedad y cambiando razon social


keep_seniority: false reinicia la antigüedad — la nueva seniority_date queda igual a rehire_date. La razón social puede ser diferente a la que tenía antes de la baja.

{
  "legal_entity_number": 2,
  "rehire_date": "2026-08-01",
  "keep_seniority": false,
  "is_included_in_payroll_calculations": true,
  "contributes_to_imss": false
}

Campos del cuerpo

CampoTipoRequeridoNotas
legal_entity_numberinteger positivoSíRazón social del empleado reactivado. Puede diferir de la que tenía antes de la baja.
rehire_datestring YYYY-MM-DDSíNueva hire_date del empleado.
keep_senioritybooleanSíSi es true, seniority_date toma la fecha más antigua del historial. Si es false, se reinicia a rehire_date.
is_included_in_payroll_calculationsbooleanSí
contributes_to_imssbooleanSíDebe ser false cuando worker_type no es subordinate.
worker_typesubordinate | asimilado | honorariosNoSi lo omites, el reingreso conserva el tipo del empleo anterior, y toma subordinate solo cuando no hay uno previo.
minimum_wage_zonegeneral | northern_borderNoSi lo omites, el reingreso conserva la zona del empleo anterior, y toma general solo cuando no hay uno previo.
salary_typefixed | mixed | variableNoSi lo omites, el reingreso conserva el tipo de salario del empleo anterior, y queda vacío cuando no hay uno.
imss_worker_typepermanent | eventual_city | eventual_construction | eventual_rural | nullNoSi lo omites, el reingreso conserva el tipo de trabajador IMSS del empleo anterior, y es obligatorio si el reingreso aporta al IMSS y el empleo anterior no lo tiene (IMSS_AFFILIATION_REQUIRED). Si el reingreso no aporta al IMSS, siempre queda vacío.
imss_work_schedulefull | one_day_week | two_day_week | three_day_week | four_day_week | five_day_week | reduced_day | nullNoSi lo omites, el reingreso conserva la semana o jornada reducida del empleo anterior, y es obligatoria si el reingreso aporta al IMSS y el empleo anterior no la tiene (IMSS_AFFILIATION_REQUIRED). Si el reingreso no aporta al IMSS, siempre queda vacía.
work_shift_typestringNoClave SAT del tipo de jornada (c_TipoJornada). Si lo omites, el reingreso conserva la del empleo anterior.
is_unionizedbooleanNoSi lo omites, el reingreso conserva el valor del empleo anterior, y toma false solo cuando no hay uno previo.
imss_numberstringNoNSS de 11 dígitos. Se valida el dígito verificador. Solo para subordinate: con otro worker_type efectivo responde 400.
already_registered_with_imssbooleanNoPor defecto false. Con true, el alta del reingreso en Movimientos IMSS se registra como ya presentada ante el IMSS fuera de la plataforma: no queda pendiente ni se calcula su SBC. Con false, queda pendiente de presentar. Solo tiene efecto cuando contributes_to_imss es true.
confirm_retrobooleanNoAutoriza que un reingreso con fecha dentro de un periodo cerrado se registre como ajuste retroactivo. Ver abajo.

Comportamiento

  1. Carga el empleado y su historial laboral completo.
  2. Rechaza con 400 ALREADY_HAS_OPEN_EMPLOYMENT si el empleado está activo (no dado de baja) — primero hay que darlo de baja con /terminate.
  3. Rechaza con 400 NO_PRIOR_EMPLOYMENT si el empleado nunca ha sido registrado — usa POST /api/v1/employees para el primer alta.
  4. Resuelve legal_entity_number contra una razón social existente (LEGAL_ENTITY_NOT_FOUND si no resuelve).
  5. Calcula seniority_date según la regla descrita arriba.
  6. Marca al empleado como activo nuevamente.
  7. Si contributes_to_imss es true, genera el alta del reingreso en Movimientos IMSS: pendiente de presentar, o ya presentada si envías already_registered_with_imss: true.

Forma de la respuesta

201 Created — los datos laborales del empleado reactivado:

{
  "employee_number": 5,
  "legal_entity_number": 1,
  "status": "active",
  "hire_date": "2026-08-01T00:00:00.000Z",
  "seniority_date": "2026-01-15T00:00:00.000Z",
  "termination_date": null,
  "created_at": "2026-08-01T10:00:00.000Z"
}

Reingreso con fecha dentro de un periodo cerrado


Un reingreso fechado dentro de un periodo ya cerrado afecta una nómina que ya se pagó. Igual que en la baja, no se aplica en silencio: la llamada se rechaza con 409 RETRO_CONFIRMATION_REQUIRED (con retro_periods, los periodos afectados).

Reenvíala con confirm_retro: true para aceptar. El ajuste retroactivo se genera cuando el nuevo empleo queda listo para nómina (con calendario, sueldo y contrato asignados).

Errores

StatusCódigoCausa
400—employee_number inválido en la URL o falla de validación del cuerpo.
400NO_PRIOR_EMPLOYMENTEl empleado nunca ha sido registrado — usa POST /api/v1/employees.
400ALREADY_HAS_OPEN_EMPLOYMENTEl empleado está activo — primero dalo de baja con /terminate.
400WORKER_TYPE_FIELD_CONFLICTSe envió imss_number para un reingreso cuyo worker_type efectivo no es subordinate.
400IMSS_AFFILIATION_REQUIREDEl reingreso aporta al IMSS y imss_worker_type o imss_work_schedule queda vacío: no se envió y el empleo anterior no lo tiene, o se envió en null.
400LEGAL_ENTITY_NOT_FOUNDlegal_entity_number no coincide con ninguna razón social de la organización.
404—El empleado no existe o ya fue eliminado en esta organización.
409RETRO_CONFIRMATION_REQUIREDLa fecha de reingreso cae en un periodo cerrado. Reenvía con confirm_retro: true.
Abrir Nominex