Datos de empleados
Los datos de empleado son información adicional de un receptor que se utiliza exclusivamente para emitir facturas de nómina. Estos datos representan la información de un empleado requerida únicamente en los CFDI de nómina. Existe una relación 1:1 entre un receptor y los datos de empleado, por lo que para crear datos de empleado, primero se debe crear un receptor.
Tip: Los datos de empleado son un subrecurso del recurso de personas: /api/v4/people/<personId>/employee
Modelo datos de empleado
El modelo de datos de empleado contiene toda la información de los datos de empleado. Las propiedades con el sufijo Id
corresponden a valores de los catálogos oficiales del SAT. Puedes consultarlos en la página de Catálogos CFDI 4.0 o
programáticamente a través de la API catalogs.
Propiedades
- Name
id
- Type
- string?
- Description
Id asignado por Fiscalapi.
- Name
employerPersonId
- Type
- string
- required
- Description
Id de la persona empleadora (patrón).
- Name
employeePersonId
- Type
- string
- required
- Description
Id de la persona empleada (empleado).
- Name
employeeNumber
- Type
- string
- required
- Description
Número de empleado asignado por el empleador.
- Name
socialSecurityNumber
- Type
- string
- required
- Description
Número de seguridad social del empleado.
- Name
laborRelationStartDate
- Type
- date
- required
- Description
Fecha de inicio de la relación laboral.
- Name
satContractTypeId
- Type
- string
- required
- expandible
- Description
Tipo de contrato entre el empleado y el empleador. Catálogo del SAT
c_TipoContrato
.- Type
- enum:
- Values
- "01""02""03"
- Name
satTaxRegimeTypeId
- Type
- string
- required
- expandible
- Description
Tipo de régimen fiscal del empleado. Catálogo del SAT
c_TipoRegimen
.- Type
- enum:
- Values
- "02""03""04"
- Name
satWorkdayTypeId
- Type
- string
- required
- expandible
- Description
Jornada de trabajo del empleado. Catálogo del SAT
c_TipoJornada
.- Type
- enum:
- Values
- "01""02""03"
- Name
satJobRiskId
- Type
- string
- required
- expandible
- Description
Riesgo de trabajo del puesto del empleado. Catálogo del SAT
c_RiesgoTrabajo
.- Type
- enum:
- Values
- "1""2""3"
- Name
satPaymentPeriodicityId
- Type
- string?
- expandible
- Description
Periodicidad de pago del empleado. Catálogo del SAT
c_PeriodicidadPago
.- Type
- enum:
- Values
- "01""02""03"
- Name
satPayrollStateId
- Type
- string
- required
- expandible
- Description
Entidad federativa donde el empleado labora. Catálogo del SAT
c_Estado
.- Type
- enum:
- Values
- "AGU""BCN""BCS"
- Name
seniority
- Type
- string
- required
- Description
Antigüedad del empleado en formato período de duración ISO 8601. Ejemplo:
P437W
para 437 semanas oP1Y5M
para 1 año y 5 meses.
- Name
baseSalaryForContributions
- Type
- number
- required
- Description
Salario base de cotización o aportaciones del empleado.
- Name
integratedDailySalary
- Type
- number
- required
- Description
Salario diario integrado del empleado.
- Name
satBankId
- Type
- string?
- expandible
- Description
Banco donde el empleado recibe el pago de nómina. Catálogo del SAT
c_Banco
.- Type
- enum:
- Values
- 002006009
- Name
satUnionizedStatusId
- Type
- string?
- expandible
- Description
Estado sindical del empleado. Catálogo del SAT
c_Sindicalizado
.- Type
- enum:
- Values
- "Sí""No"
- Name
position
- Type
- string?
- Description
Nombre del puesto que el empleado ocupa.
- Name
department
- Type
- string?
- Description
Nombre del departamento donde el empleado labora.
- Name
bankAccount
- Type
- string?
- Description
Cuenta bancaria del empleado donde se recibe el pago de nómina.
- Name
subcontractorRfc
- Type
- string?
- Description
RFC del subcontratista. Cuando el empleado es subcontratado.
- Name
timePercentage
- Type
- number?
- Description
Porcentaje de tiempo de trabajo. Cuando el empleado es subcontratado.
Obtener datos de empleado
Este endpoint te permite obtener los datos de empleado de una persona por id de persona.
Request
curl --location 'https://test.fiscalapi.com/api/v4/people/<personId>/employee' \
--header 'X-TENANT-KEY: <tenant_key>' \
--header 'X-TIME-ZONE: America/Mexico_City' \
--header 'X-API-KEY: <api_key>'
Response
{
"data": {
"employerPersonId": "bef56254-0892-4558-95c3-f9c8729e4b0e",
"employeePersonId": "54fc14ae-c88f-4afc-996b-0574d63341e2",
"employeeNumber": "123456789",
"socialSecurityNumber": "0101010101",
"laborRelationStartDate": "2020-01-12T00:00:00.000",
"satContractType": {
"id": "01",
"description": "Contrato de trabajo por tiempo indeterminado",
"createdAt": "2024-08-10T15:46:30.373",
"updatedAt": null
},
"satTaxRegimeType": {
"id": "02",
"description": "Sueldos (Incluye ingresos art. 94 LISR)",
"createdAt": "2024-08-10T15:46:30.373",
"updatedAt": null
},
"satWorkdayType": null,
"satJobRisk": {
"id": "1",
"description": "Clase I",
"createdAt": "2024-08-10T15:46:30.373",
"updatedAt": null
},
"satPaymentPeriodicity": {
"id": "04",
"description": "Quincenal",
"createdAt": "2024-08-10T15:46:30.373",
"updatedAt": null
},
"satBank": null,
"satPayrollState": {
"id": "JAL",
"description": "Jalisco",
"createdAt": "2024-08-10T15:46:30.373",
"updatedAt": null
},
"satUnionizedStatus": null,
"department": null,
"position": null,
"seniority": "P1Y5M15D",
"bankAccount": null,
"baseSalaryForContributions": 520,
"integratedDailySalary": 186,
"subcontractorRfc": null,
"timePercentage": 0
},
"succeeded": true,
"message": "",
"details": "",
"httpStatusCode": 200
}
Crear datos de empleado
Este endpoint te permite crear datos de empleado a una persona por id de persona.
Modelo
- Name
employerPersonId
- Type
- string
- required
- Description
Id de la persona empleadora (patrón).
- Name
employeePersonId
- Type
- string
- required
- Description
Id de la persona empleada (empleado).
- Name
employeeNumber
- Type
- string
- required
- Description
Número de empleado asignado por el empleador.
- Name
socialSecurityNumber
- Type
- string
- required
- Description
Número de seguridad social del empleado.
- Name
laborRelationStartDate
- Type
- date
- required
- Description
Fecha de inicio de la relación laboral.
- Name
satContractTypeId
- Type
- string
- required
- expandible
- Description
Tipo de contrato entre el empleado y el empleador. Catálogo del SAT
c_TipoContrato
.- Type
- enum:
- Values
- "01""02""03"
- Name
satTaxRegimeTypeId
- Type
- string
- required
- expandible
- Description
Tipo de régimen fiscal del empleado. Catálogo del SAT
c_TipoRegimen
.- Type
- enum:
- Values
- "02""03""04"
- Name
satWorkdayTypeId
- Type
- string
- required
- expandible
- Description
Jornada de trabajo del empleado. Catálogo del SAT
c_TipoJornada
.- Type
- enum:
- Values
- "01""02""03"
- Name
satJobRiskId
- Type
- string
- required
- expandible
- Description
Riesgo de trabajo del puesto del empleado. Catálogo del SAT
c_RiesgoTrabajo
.- Type
- enum:
- Values
- "1""2""3"
- Name
satPaymentPeriodicityId
- Type
- string?
- expandible
- Description
Periodicidad de pago del empleado. Catálogo del SAT
c_PeriodicidadPago
.- Type
- enum:
- Values
- "01""02""03"
- Name
satPayrollStateId
- Type
- string
- required
- expandible
- Description
Entidad federativa donde el empleado labora. Catálogo del SAT
c_Estado
.- Type
- enum:
- Values
- "AGU""BCN""BCS"
- Name
seniority
- Type
- string
- required
- Description
Antigüedad del empleado en formato período de duración ISO 8601. Ejemplo:
P437W
para 437 semanas oP1Y5M
para 1 año y 5 meses.
- Name
baseSalaryForContributions
- Type
- number
- required
- Description
Salario base de cotización o aportaciones del empleado.
- Name
integratedDailySalary
- Type
- number
- required
- Description
Salario diario integrado del empleado.
- Name
satBankId
- Type
- string?
- expandible
- Description
Banco donde el empleado recibe el pago de nómina. Catálogo del SAT
c_Banco
.- Type
- enum:
- Values
- 002006009
- Name
satUnionizedStatusId
- Type
- string?
- expandible
- Description
Estado sindical del empleado. Catálogo del SAT
c_Sindicalizado
.- Type
- enum:
- Values
- "Sí""No"
- Name
position
- Type
- string?
- Description
Nombre del puesto que el empleado ocupa.
- Name
department
- Type
- string?
- Description
Nombre del departamento donde el empleado labora.
- Name
bankAccount
- Type
- string?
- Description
Cuenta bancaria del empleado donde se recibe el pago de nómina.
- Name
subcontractorRfc
- Type
- string?
- Description
RFC del subcontratista. Cuando el empleado es subcontratado.
- Name
timePercentage
- Type
- number?
- Description
Porcentaje de tiempo de trabajo. Cuando el empleado es subcontratado.
Request
curl --location 'https://test.fiscalapi.com/api/v4/people/54fc14ae-c88f-4afc-996b-0574d63341e2/employee' \
--header 'X-TENANT-KEY: <tenant-key>' \
--header 'X-TIME-ZONE: America/Mexico_City' \
--header 'Content-Type: application/json' \
--header 'X-API-KEY: <api-key>' \
--data '{
"employerPersonId": "bef56254-0892-4558-95c3-f9c8729e4b0e",
"employeePersonId": "54fc14ae-c88f-4afc-996b-0574d63341e2",
"employeeNumber": "12345",
"satContractTypeId": "01",
"satTaxRegimeTypeId": "02",
"satPaymentPeriodicityId": "04",
"satPayrollStateId": "JAL",
"socialSecurityNumber": "123456789012345",
"laborRelationStartDate": "2023-01-15T00:00:00",
"satWorkdayTypeId": "01",
"satJobRiskId": "1",
"satBankId": "002",
"satUnionizedStatusId": "No",
"department": "Recursos Humanos",
"position": "Analista de Nóminas",
"seniority": "7Y3M1W",
"bankAccount": "12345678901234567890",
"baseSalaryForContributions": 490.22,
"integratedDailySalary": 146.47,
"subcontractorRfc": null,
"timePercentage": null
}'
Response
{
"data": {
"personId": "bef56254-0892-4558-95c3-f9c8729e4b0e",
"employerRegistration": "B5510768108",
"originEmployerTin": "URE180429TM6",
"satFundSource": null,
"ownResourceAmount": null,
"id": "23f0b555-68bc-48fd-bb90-deb36ed25ef6",
"createdAt": "2025-09-18T20:17:44.175",
"updatedAt": "2025-09-18T20:17:44.175"
},
"succeeded": true,
"message": "",
"details": "",
"httpStatusCode": 200
}
Actualizar datos de empleado
Este endpoint te permite actualizar los datos de empleado de una persona por id de persona.
Modelo
- Name
employerPersonId
- Type
- string
- required
- Description
Id de la persona empleadora (patrón).
- Name
employeePersonId
- Type
- string
- required
- Description
Id de la persona empleada (empleado).
- Name
employeeNumber
- Type
- string
- required
- Description
Número de empleado asignado por el empleador.
- Name
socialSecurityNumber
- Type
- string
- required
- Description
Número de seguridad social del empleado.
- Name
laborRelationStartDate
- Type
- date
- required
- Description
Fecha de inicio de la relación laboral.
- Name
satContractTypeId
- Type
- string
- required
- expandible
- Description
Tipo de contrato entre el empleado y el empleador. Catálogo del SAT
c_TipoContrato
.- Type
- enum:
- Values
- "01""02""03"
- Name
satTaxRegimeTypeId
- Type
- string
- required
- expandible
- Description
Tipo de régimen fiscal del empleado. Catálogo del SAT
c_TipoRegimen
.- Type
- enum:
- Values
- "02""03""04"
- Name
satWorkdayTypeId
- Type
- string
- required
- expandible
- Description
Jornada de trabajo del empleado. Catálogo del SAT
c_TipoJornada
.- Type
- enum:
- Values
- "01""02""03"
- Name
satJobRiskId
- Type
- string
- required
- expandible
- Description
Riesgo de trabajo del puesto del empleado. Catálogo del SAT
c_RiesgoTrabajo
.- Type
- enum:
- Values
- "1""2""3"
- Name
satPaymentPeriodicityId
- Type
- string?
- expandible
- Description
Periodicidad de pago del empleado. Catálogo del SAT
c_PeriodicidadPago
.- Type
- enum:
- Values
- "01""02""03"
- Name
satPayrollStateId
- Type
- string
- required
- expandible
- Description
Entidad federativa donde el empleado labora. Catálogo del SAT
c_Estado
.- Type
- enum:
- Values
- "AGU""BCN""BCS"
- Name
seniority
- Type
- string
- required
- Description
Antigüedad del empleado en formato período de duración ISO 8601. Ejemplo:
P437W
para 437 semanas oP1Y5M
para 1 año y 5 meses.
- Name
baseSalaryForContributions
- Type
- number
- required
- Description
Salario base de cotización o aportaciones del empleado.
- Name
integratedDailySalary
- Type
- number
- required
- Description
Salario diario integrado del empleado.
- Name
satBankId
- Type
- string?
- expandible
- Description
Banco donde el empleado recibe el pago de nómina. Catálogo del SAT
c_Banco
.- Type
- enum:
- Values
- 002006009
- Name
satUnionizedStatusId
- Type
- string?
- expandible
- Description
Estado sindical del empleado. Catálogo del SAT
c_Sindicalizado
.- Type
- enum:
- Values
- "Sí""No"
- Name
position
- Type
- string?
- Description
Nombre del puesto que el empleado ocupa.
- Name
department
- Type
- string?
- Description
Nombre del departamento donde el empleado labora.
- Name
bankAccount
- Type
- string?
- Description
Cuenta bancaria del empleado donde se recibe el pago de nómina.
- Name
subcontractorRfc
- Type
- string?
- Description
RFC del subcontratista. Cuando el empleado es subcontratado.
- Name
timePercentage
- Type
- number?
- Description
Porcentaje de tiempo de trabajo. Cuando el empleado es subcontratado.
Request
curl --location --request PUT 'https://test.fiscalapi.com/api/v4/people/54fc14ae-c88f-4afc-996b-0574d63341e2/employee' \
--header 'X-TENANT-KEY: <tenant-key>' \
--header 'X-TIME-ZONE: America/Mexico_City' \
--header 'Content-Type: application/json' \
--header 'X-API-KEY: <api-key>' \
--data '{
"employerPersonId": "bef56254-0892-4558-95c3-f9c8729e4b0e",
"employeePersonId": "54fc14ae-c88f-4afc-996b-0574d63341e2",
"employeeNumber": "12345ABC",
"satContractTypeId": "02",
"satTaxRegimeTypeId": "02",
"satPaymentPeriodicityId": "02",
"satPayrollStateId": "AGU",
"socialSecurityNumber": "123456789012345",
"laborRelationStartDate": "2022-01-15T00:00:00",
"satWorkdayTypeId": "01",
"satJobRiskId": "2",
"satBankId": "012",
"satUnionizedStatusId": "Sí",
"department": "Sistemas",
"position": "Programador Jr.",
"seniority": "7Y3M1W",
"bankAccount": "12345678901234567890",
"baseSalaryForContributions": 290.22,
"integratedDailySalary": 46.47,
"subcontractorRfc": null,
"timePercentage": null
}'
Response
{
"data": {
"employerPersonId": "bef56254-0892-4558-95c3-f9c8729e4b0e",
"employeePersonId": "54fc14ae-c88f-4afc-996b-0574d63341e2",
"employeeNumber": "12345ABC",
"socialSecurityNumber": "123456789012345",
"laborRelationStartDate": "2022-01-15T00:00:00.000",
"satContractType": {
"id": "02",
"description": "Contrato de trabajo para obra determinada",
"createdAt": "2024-08-10T15:46:30.373",
"updatedAt": null
},
"satTaxRegimeType": {
"id": "02",
"description": "Sueldos (Incluye ingresos señalados en la fraccion I del articulo 94 de LISR)",
"createdAt": "2024-08-10T15:46:30.373",
"updatedAt": null
},
"satWorkdayType": {
"id": "01",
"description": "Diurna",
"createdAt": "2024-08-10T15:46:30.373",
"updatedAt": null
},
"satJobRisk": {
"id": "2",
"description": "Clase II",
"createdAt": "2024-08-10T15:46:30.373",
"updatedAt": null
},
"satPaymentPeriodicity": {
"id": "02",
"description": "Semanal",
"createdAt": "2024-08-10T15:46:30.373",
"updatedAt": null
},
"satBank": {
"id": "012",
"description": "BBVA BANCOMER",
"createdAt": "2024-08-10T15:46:30.373",
"updatedAt": null
},
"satPayrollState": {
"id": "AGU",
"description": "Aguascalientes",
"createdAt": "2024-08-10T15:46:30.373",
"updatedAt": null
},
"satUnionizedStatus": {
"id": "Sí",
"description": "SI",
"createdAt": "2024-08-10T15:46:30.373",
"updatedAt": null
},
"department": "Sistemas",
"position": "Programador Jr.",
"bankAccount": "12345678901234567890",
"baseSalaryForContributions": 290.22,
"integratedDailySalary": 46.47,
"subcontractorRfc": null,
"timePercentage": 0
},
"succeeded": true,
"message": "",
"details": "",
"httpStatusCode": 200
}
Eliminar datos de empleado
Este endpoint te permite eliminar los datos de empleado de una persona por id de persona.
Request
curl --location --request DELETE 'https://test.fiscalapi.com/api/v4/people/bef56254-0892-4558-95c3-f9c8729e4b0e/employee' \
--header 'X-TENANT-KEY: <tenant-key>' \
--header 'X-TIME-ZONE: America/Mexico_City' \
--header 'X-API-KEY: <api-key>' \
--data ''
Response
{
"data": true,
"succeeded": true,
"message": "",
"details": "",
"httpStatusCode": 200
}