Documentación Nomina Electrónica

1. APIs

En el modulo de API nos dirigimos a "Nomina Electrónica" (pruebas o producción).

2. Método Authenticate

Este método se usa para autenticar al usuario y así poder consumir los demás métodos de Nomina Electrónica. Para consumir este método de forma correcta, debemos digitar el tipo de documento de la compañía, el número de documento de la compañía, el usuario y la contraseña.

3. Método CreateBeneficiary

en este método se crea el beneficiario de la nómina. Para consumir este método de buena manera se debe diligenciar toda la información que se requiere sobre el beneficiario, tanto su información personal, como su información en la empresa

4. Método EnableCompany

Con este método se habilita la empresa; para esto se debe ingresar el código de habilitación de la empresa en el campo TestSetId de la empresa

5. Método CreatePayrollBatch

Este método cumple con la función de crear el documento de nómina electrónica, para esto se debe diligenciar toda la información del documento soporte de nómina electrónica.

En el caso de que la empresa cuente con ERP, se deberán utilizar el siguiente método:

6. Método AuthenticateERP

Este método se usa para autenticar al usuario que cuente con ERP y así poder consumir los demás métodos de Nomina Electrónica. Para consumir este método de forma correcta, se debe diligenciar el nombre del ERP, el nombre de usuario, la contraseña, el código del tipo de documento y el número del documento.

4. Video Consumo

Introduccion

El API de nómina electrónica le permite al usuario principalmente reportar los documentos soporte del pago de la nómina frente a la DIAN. También tiene otras funciones como por ejemplo obtener los detalles de los documentos enviados, consultar algún beneficiario, entre otros.

2. Emitir documento de Nómina para Compañías sin ERP

2.1 Método Authenticate

Para ello se tiene el siguiente Endpoint de Pruebas:

https://apim-aeu-test-apimanagement.azure-api.net/NominaElectronicaPruebas/Authenticate

2.1.1 Parametros de Entrada

parametros Descripción Tipo Obligatorio
documentTypeCodeCompan Código del tipo de documento de la compañía Int si
documentNumberCompany Número del documento de la compañía Int si
user Nombre de usuario a autenticar String si
password password Contraseña si

2.2 Método CreateBeneficiary

Para ello se tiene el siguiente Endpoint de Pruebas:

https://apim-aeu-test-apimanagement.azure-api.net/NominaElectronicaPruebas/CreateBeneficiary

2.2.1 Parametros de Entrada

Parametros Descripción Tipo Obligatorio
ContractTypeCode Código del tipo de Contrato que posee el empleado con el Empleador Int si
workerTypeCode Corresponde a la clasificación de PILA para conocer en que calidad se realizan las cotizaciones a la seguridad social Int si
subworkerTypeCode Corresponde a una sub clasificación de PILA para conocer en que calidad se realizan las cotizaciones a la seguridad social. Int si
documentTypeCode Codigo del tipo de documento Int si
documentNumber Numero de documento Int si
lastName Primer apellido String si
secondLastName Segundo apellido String si
firstName Primer nombre String si
otherNames Otros nombres String no
telephoneNumber Número de teléfono Int si
Fullname Nombre completo String si
email Correo electrónico String si
countryCode Codigo alfa-2 del pais donde trabaja (tabla 5.4.1 de la resolucion) Int si
departmentCode Codigo del departamento donde trabaja (tabla 5.4.2 de la resolucion) Int si
cityCode Código de la ciudad donde trabaja (tabla 5.4.3 de la resolución) Int si
address Dirección donde trabaja String si
workerCode Codigo del tabajador en la empresa o en su defecto su cedula Int si
isHighRiskPension Se debe colocar "true" o "false" dependiendo si el trabajador tiene alto riesgo de pensión String si
isIntegralsalary Se debe colocar "true" o "false" dependiendo si el trabajador cumple con un salario integral String si
salary Se debe colocar el Sueldo Base que el Trabajador tiene en la empresa Int si
IsDeleted Se debe colocar "true" o "false" dependiendo si el trabajador ya fue eliminado del comercio anteriormente String si
Active Se debe colocar "true" o "false" dependiendo si el trabajador se encuentra activo en el comercio String si

2.3 Método EnableCompany

Para ello se tiene el siguiente Endpoint de Pruebas:

https://apim-aeu-test-apimanagement.azure-api.net/NominaElectronicaPruebas/EnableCompany

2.3.1 Parametros de Entrada

Parametros Descripción Tipo Obligatorio
TestSetId Se debe digitar el código TestsetId Int si

2.4 Método CreatePayrollBatch

Para ello se tiene el siguiente Endpoint de Pruebas:

https://apim-aeu-test-apimanagement.azure-api.net/NominaElectronicaPruebas/CreatePayrollBatch

2.4.1 Parametros de Entrada

Parametros Descripción Tipo Obligatorio
xmlTypeCode Se debe digitar el codigo del tipo de xml (102 NominaIndividual, 103 NominaIndividualDeAjuste) Int si
payrollPeriodCode Corresponde al Codigo de Periodo de Nómina (tabla 5.5.1 de la resolucion) Int si
prefixCode Debe corresponder a un Prefijo elegido por el Emisor del documento String si
documentNumber Numero de documento Int si
countryCode Código alfa-2 del país de la compañía (tabla 5.4.1 de la resolución) String si
departmentCode Código del departamento de la compañía (tabla 5.4.2 de la resolución) Int si
cityCode Código de la ciudad de la compañía (tabla 5.4.3 de la resolución) Int si
postalZone Codigo postal del comercio Int si
address Direccion del comercio String si
beneficiaryDocumentTypeCode Codigo del tipo de documento del beneficiario Int si
admissionDate Se debe indicar la Fecha de Ingreso del trabajador a la empresa, en formato AAAA-MM-DD String si
startSettlementDate Se debe indicar la Fecha de Inicio del Periodo de Liquidación del documento, en formato AAAA-MM-DD String si
endSettlementDate Se debe indicar la Fecha de Fin del Periodo de Liquidación del documento, en formato AAAA-MM-DD String si
issueDate Debe ir la fecha de emision del documento String si
workedTime Se debe indicar el Tiempo laborado del trabajador en dias Int si
currencyCode Tipo de moneda String si
paymentMethodCode Se debe colocar el Codigo correspondiente al tipo de pago (tabla 5.3.3.2 de la resolucion) Int si
paymentMeanCode Se debe colocar el Codigo correspondiente a la forma de pago (tabla 5.3.3.1 de la resolucion) Int si
accountNumber Numero de la cuenta bancaria del empleado (En la ocasión que sea por transferencia bancaria) Int si
paymentDates Se debe diligenciar las fechas trabajadas en la nomina String si
workedDays Dias trabajados Int si
salaryWorked Dias trabajados en salario Int si
healthPercentage Debe corresponder al porcentaje de deducción de salud que paga el trabajador Int si
healthDeduction Valor Pagado correspondiente a Salud por parte del trabajador Int si
pensionPercentage Debe corresponder al porcentaje de deducción de fondo de pensión que paga el trabajador Int si
pensionDeduction Valor Pagado correspondiente a Pension por parte del trabajador Int si
rounding Se debe indicar el Redondeo según la definición establecida en el numeral 1.1.1 de la resolución. Int si
acrrualsTotal Total devengado Int si
deductionsTotal Total de deducciones Int si
total Total de la nomina Int si

3 Emitir documento de Nómina para Compañías con ERP

3.1 Método AuthenticateERP

Para ello se tiene el siguiente Endpoint de Pruebas:

https://apim-aeu-test-apimanagement.azure-api.net/NominaElectronicaPruebas/AuthenticateERP

3.1.1 Parametros de Entrada

Parametros Descripción Tipo Obligatorio
ERPname Nombre del ERP String si
documentTypeCodeCompany Código del tipo de documento de la compañía Int si
documentNumberCompany Número del documento de la compañía Int si
username Nombre de usuario a autenticar String si
password Contraseña String si

3.2 Método CreateCompany

Para ello se tiene el siguiente Endpoint de Pruebas:

https://apim-aeu-test-apimanagement.azure-api.net/NominaElectronicaPruebas/MNGetCompanies

3.2.1 Parametros de Entrada

Parametros Descripción Tipo Obligatorio
DocumentTypeCode Código de tipo de documento de la compañía Int si
DocumentNumber Numero de documento de la compañía Int si
Name Nombre de la compañía String si
documentNumberCheck Digito de verificación del documento Int si
tradeName Nombre del comercio String si
personTypeCode Código de tipo de persona Int si
regimenTypeCode Código de tipo de régimen Int si
telephone Número de teléfono Int si
cellPhoneNumber Número celular Int no
username Nombre de usuario para ingresar al comercio String si
email Correo electrónico del comercio String si
password Contraseña (máximo 12 dígitos y debe contener caracteres especiales, minúsculas y mayúsculas) String si
documentTypeCode Código de tipo de documento del representante legal del comercio Int si
documentNumber Numero de documento del representante legal del comercio Int si
telephone Teléfono del representante legal del comercio Int si
Codecountry Código del país de la ubicación fiscal de la compañía (tabla del numeral 5.4.1 de la resolución) String si
state Código del departamento de la ubicación fiscal de la compañía (tabla del numeral 5.4.2 de la resolución) Int si
postalZone Código postal de la ubicación fiscal de la compañía Int si
address Direccion de la ubicación fiscal de la compañia String si
departmentCode Código del departamento de la ubicación fiscal de la compañía (tabla del numeral 5.4.2 de la resolución Int si
cityCode Código de la ciudad de la ubicación fiscal de la compañía (tabla del numeral 5.4.3 de la resolución) Int si
CodeCountry Código del país de la ubicación física de la compañía (tabla del numeral 5.4.1 de la resolución) String si
State Código del departamento de la ubicación física de la compañía (tabla del numeral 5.4.2 de la resolución) Int si
City Código de la ciudad de la ubicación física de la compañía (tabla del numeral 5.4.3 de la resolución) Int si

3.3 Método CreateBeneficiary

Para ello se tiene el siguiente Endpoint de Pruebas:

https://apim-aeu-test-apimanagement.azure-api.net/NominaElectronicaPruebas/EnableCompany

3.3.1 Parametros de Entrada

Parametros Descripción Tipo Obligatorio
ContractTypeCode Código del tipo de Contrato que posee el empleado con el Empleador Int si
workerTypeCode Corresponde a la clasificación de PILA para conocer en que calidad se realizan las cotizaciones a la seguridad social Int si
subworkerTypeCode Corresponde a una sub clasificación de PILA para conocer en que calidad se realizan las cotizaciones a la seguridad social. Int si
documentTypeCode Codigo del tipo de documento Int si
documentNumber Numero de documento Int si
lastName Primer apellido String si
secondLastName Segundo apellido String si
firstName Primer nombre String si
otherNames Otros nombres String no
telephoneNumber Número de teléfono Int si
Fullname Nombre completo String si
email Correo electrónico String si
countryCode Codigo alfa-2 del pais donde trabaja (tabla 5.4.1 de la resolucion) Int si
departmentCode Codigo del departamento donde trabaja (tabla 5.4.2 de la resolucion) Int si
cityCode Código de la ciudad donde trabaja (tabla 5.4.3 de la resolución) Int si
address Dirección donde trabaja String si
workerCode Codigo del tabajador en la empresa o en su defecto su cedula Int si
isHighRiskPension Se debe colocar "true" o "false" dependiendo si el trabajador tiene alto riesgo de pensión String si
isIntegralsalary Se debe colocar "true" o "false" dependiendo si el trabajador cumple con un salario integral String si
salary Se debe colocar el Sueldo Base que el Trabajador tiene en la empresa Int si
IsDeleted Se debe colocar "true" o "false" dependiendo si el trabajador ya fue eliminado del comercio anteriormente String si
Active Se debe colocar "true" o "false" dependiendo si el trabajador se encuentra activo en el comercio String si

3.4 Método EnableCompany

Para ello se tiene el siguiente Endpoint de Pruebas:

https://apim-aeu-test-apimanagement.azure-api.net/NominaElectronicaPruebas/EnableCompany

3.4.1 Parametros de Entrada

Parametros Descripción Tipo Obligatorio
TestSetId Se debe digitar el código TestsetId Int si

3.5 Método CreatePayrollBatch

Para ello se tiene el siguiente Endpoint de Pruebas:

https://apim-aeu-test-apimanagement.azure-api.net/NominaElectronicaPruebas/CreatePayrollBatch

3.5.1 Parametros de Entrada

Parametros Descripción Tipo Obligatorio
xmlTypeCode Se debe digitar el codigo del tipo de xml (102 NominaIndividual, 103 NominaIndividualDeAjuste) Int si
payrollPeriodCode Corresponde al Codigo de Periodo de Nómina (tabla 5.5.1 de la resolucion) Int si
prefixCode Debe corresponder a un Prefijo elegido por el Emisor del documento String si
documentNumber Numero de documento Int si
countryCode Código alfa-2 del país de la compañía (tabla 5.4.1 de la resolución) String si
departmentCode Código del departamento de la compañía (tabla 5.4.2 de la resolución) Int si
cityCode Código de la ciudad de la compañía (tabla 5.4.3 de la resolución) Int si
postalZone Codigo postal del comercio Int si
address Direccion del comercio String si
beneficiaryDocumentTypeCode Codigo del tipo de documento del beneficiario Int si
admissionDate Se debe indicar la Fecha de Ingreso del trabajador a la empresa, en formato AAAA-MM-DD String si
startSettlementDate Se debe indicar la Fecha de Inicio del Periodo de Liquidación del documento, en formato AAAA-MM-DD String si
endSettlementDate Se debe indicar la Fecha de Fin del Periodo de Liquidación del documento, en formato AAAA-MM-DD String si
issueDate Debe ir la fecha de emision del documento String si
workedTime Se debe indicar el Tiempo laborado del trabajador en dias Int si
currencyCode Tipo de moneda String si
paymentMethodCode Se debe colocar el Codigo correspondiente al tipo de pago (tabla 5.3.3.2 de la resolucion) Int si
paymentMeanCode Se debe colocar el Codigo correspondiente a la forma de pago (tabla 5.3.3.1 de la resolucion) Int si
accountNumber Numero de la cuenta bancaria del empleado (En la ocasión que sea por transferencia bancaria) Int si
paymentDates Se debe diligenciar las fechas trabajadas en la nomina String si
workedDays Dias trabajados Int si
salaryWorked Dias trabajados en salario Int si
healthPercentage Debe corresponder al porcentaje de deducción de salud que paga el trabajador Int si
healthDeduction Valor Pagado correspondiente a Salud por parte del trabajador Int si
pensionPercentage Debe corresponder al porcentaje de deducción de fondo de pensión que paga el trabajador Int si
pensionDeduction Valor Pagado correspondiente a Pension por parte del trabajador Int si
rounding Se debe indicar el Redondeo según la definición establecida en el numeral 1.1.1 de la resolución. Int si
acrrualsTotal Total devengado Int si
deductionsTotal Total de deducciones Int si
total Total de la nomina Int si

4 Buscar Compañía Almacenada

4.1 Método AuthenticateERP

Para ello se tiene el siguiente Endpoint de Pruebas:

https://apim-aeu-test-apimanagement.azure-api.net/NominaElectronicaPruebas/MNGetCompanies

4.1.1 Parametros de Entrada

Parametros Descripción Tipo Obligatorio
ERPname Nombre del ERP String si
documentTypeCodeCompany Código del tipo de documento de la compañía Int si
documentNumberCompany Número del documento de la compañía Int si
username Nombre de usuario a autenticar String si
password Contraseña String si

4.2 Método MNGetCompany

Para ello se tiene el siguiente Endpoint de Pruebas:

https://apim-aeu-test-apimanagement.azure-api.net/NominaElectronicaPruebas/MNGetCompanies

4.2.1 Parametros de Entrada

Parametros Descripción Tipo Obligatorio
documentType Se debe digitar el código del tipo de documento Int si
documentNumber Se digita el número del documento Int si

5 Buscar Beneficiario Almacenado

5.1 Método Authenticate

Para ello se tiene el siguiente Endpoint de Pruebas:

https://apim-aeu-test-apimanagement.azure-api.net/NominaElectronicaPruebas/Authenticate

5.1.1 Parametros de Entrada

parametros Descripción Tipo Obligatorio
documentTypeCodeCompan Código del tipo de documento de la compañía Int si
documentNumberCompany Número del documento de la compañía Int si
user Nombre de usuario a autenticar String si
password password Contraseña si

5.2 Método GetBeneficiary

Para ello se tiene el siguiente Endpoint de Pruebas:

https://apim-aeu-test-apimanagement.azure-api.net/NominaElectronicaPruebas/GetBeneficiary[?documentTypeCode ][&documentNumber ]

4.2.1 Parametros de Entrada

parametros Descripción Tipo Obligatorio
documentTypeCodeCompan Se debe digitar el código del tipo de documento Int si
documentNumber Se digita el número del documento Int si

6 Obtener archivo XML y PDF de una nómina por medio del CUNE

6.1 Método Authenticate

Para ello se tiene el siguiente Endpoint de Pruebas:

https://apim-aeu-test-apimanagement.azure-api.net/NominaElectronicaPruebas/Authenticate

6.1.1 Parametros de Entrada

Parametros Descripción Tipo Obligatorio
documentTypeCodeCompany Código del tipo de documento de la compañía Int si
documentNumberCompany Número del documento de la compañía Int si
username Nombre de usuario a autenticar String si
password Contraseña String si

6.2GetFilesPayroll

Para ello se tiene el siguiente Endpoint de Pruebas:

https://apim-aeu-test-apimanagement.azure-api.net/NominaElectronicaPruebas/GetFilesPayroll/{cune}[?cune]

6.2.1 Parametros de Entrada

Parametros Descripción Tipo Obligatorio
Cune Se debe digitar el código único de la nómina electrónica String si