GET /api/nomina/nomina/
GET /api/nomina/nomina/
Nómina electrónica y su nota de ajuste.
Comparte el ciclo de vida de los documentos electrónicos —borrador, firmado,
enviado, aceptado o rechazado— pero no su pipeline: la nómina no es UBL y va
por SendNominaSync.
Sin PUT ni PATCH, por lo mismo que en DocumentoViewSet: un
documento fiscal es un hecho con fecha, número y firma, y editarlo en sitio
abre la puerta a que lo que se emitió y lo que se guarda dejen de coincidir.
Mientras es borrador, corregirlo es borrarlo y volver a crearlo; una vez
emitido, lo que corrige una nómina es su nota de ajuste (tipo_xml
103), que la DIAN tiene prevista justamente para esto.
Lo que cambia el documento son las acciones, cada una con su regla. El estado no es un campo que se escriba.
operationId: nomina_nomina_list
Autenticación
Sección titulada «Autenticación»Cualquiera de estas credenciales:
- LlaveApi — Llave de API de una integración. El valor completo es
Api-Key <prefijo>.<secreto>, tal como lo imprimemanage.py crear_llave_api. La llave alcanza exactamente los mismos emisores que la persona a cuyo nombre se creó.
Parámetros
Sección titulada «Parámetros»| Nombre | En | Tipo | Obligatorio | Descripción |
|---|---|---|---|---|
ordering | query | string | no | Qué campo usar para ordenar los resultados. |
page | query | integer | no | Un número de página dentro del conjunto de resultados paginado. |
search | query | string | no | Un término de búsqueda. |
Ejemplo
Sección titulada «Ejemplo»curl "https://api.rededoc.uk/api/nomina/nomina/" \ -H "Authorization: <llaveapi>"Respuestas
Sección titulada «Respuestas»| Código | Descripción |
|---|---|
200 | |
401 | Error |
429 | Error |
200 — cuerpo
Sección titulada «200 — cuerpo»| Campo | Tipo | Descripción |
|---|---|---|
count | integer | |
next | string (uri) | Admite null. |
previous | string (uri) | Admite null. |
results | array<NominaLista> |
{ "count": 123, "next": "http://api.example.org/accounts/?page=4", "previous": "http://api.example.org/accounts/?page=2", "results": [ { "id": "00000000-0000-0000-0000-000000000000", "emisor": 1, "empleado": 1, "empleado_nombre": "texto", "estado": 1, "estado_nombre": "texto", "tipo_xml": null, "tipo_nota": null, "nomina_predecesora": "00000000-0000-0000-0000-000000000000", "prefijo": "texto", "consecutivo": 0, "numero": "texto", "periodo_nomina": 1, "fecha_liquidacion_inicio": "2026-01-31", "fecha_liquidacion_fin": "2026-01-31", "tiempo_laborado": 0, "fecha_generacion": "2026-01-31", "hora_generacion": "texto", "fecha_pago": "2026-01-31", "moneda": 1, "trm": "0.00", "notas": "texto", "novedad": true, "cune_novedad": "texto", "total_devengados": "0.00", "total_deducciones": "0.00", "redondeo": "0.00", "total_comprobante": "0.00", "cune": "texto", "envio": null, "track_id": "texto", "ambiente": null, "fecha_validacion": "2026-01-31T10:00:00-05:00", "codigo_trabajador": "texto", "alto_riesgo_pension": true, "salario_integral": true, "sueldo": "0.00", "tipo_trabajador": 1, "subtipo_trabajador": 1, "tipo_contrato": 1, "lugar_trabajo_pais": 1, "lugar_trabajo_departamento": 1, "lugar_trabajo_municipio": 1, "lugar_trabajo_direccion": "texto", "forma_pago": 1, "medio_pago": 1, "banco": "texto", "tipo_cuenta": null, "numero_cuenta": "texto", "fecha_retiro": "2026-01-31", "creado_en": "2026-01-31T10:00:00-05:00", "actualizado_en": "2026-01-31T10:00:00-05:00", "total_errores": 1 } ]}401 — cuerpo
Sección titulada «401 — cuerpo»| Campo | Tipo | Descripción |
|---|---|---|
detail | string | Mensaje para mostrar a la persona. |
errores | array<object> | Nunca vacía. Cada error trae codigo, que es lo que el cliente mapea —los de DRF tal cual (required, invalid, does_not_exist, not_found…) y los propios en español (campo_desconocido, solicitud_invalida…)—, y mensaje, para la persona. Si el error es de un campo, su ruta va delante del mensaje: detalles[0].impuestos[0].tributo: Este campo es obligatorio. |
{ "detail": "texto", "errores": [ { "codigo": "texto", "mensaje": "texto" } ]}429 — cuerpo
Sección titulada «429 — cuerpo»| Campo | Tipo | Descripción |
|---|---|---|
detail | string | Mensaje para mostrar a la persona. |
errores | array<object> | Nunca vacía. Cada error trae codigo, que es lo que el cliente mapea —los de DRF tal cual (required, invalid, does_not_exist, not_found…) y los propios en español (campo_desconocido, solicitud_invalida…)—, y mensaje, para la persona. Si el error es de un campo, su ruta va delante del mensaje: detalles[0].impuestos[0].tributo: Este campo es obligatorio. |
{ "detail": "texto", "errores": [ { "codigo": "texto", "mensaje": "texto" } ]}RedEDoc es un servicio de Semántica Digital S.A.S.