Dónde va tu NIF en cada envío
- ObligadoEmision, en la cabecera
- El nombre de la empresa, con 120 caracteres como máximo, y su NIF. Una vez por petición.
- IDEmisorFactura, en cada registro
- El mismo NIF, dentro del identificador de cada factura.
En Odoo, ese NIF sale del campo NIF for Verifactu de la empresa o, si está vacío, del NIF de la empresa. El documento de validaciones de la AEAT pide dos cosas: que el NIF del obligado esté identificado en la AEAT y que el de cada factura coincida con el de la cabecera.

Los códigos de la cabecera
Si el problema está en la cabecera, la AEAT rechaza la petición completa: ninguna factura de ese envío entra.
| Código | Texto de la AEAT |
|---|---|
| 4104 | Error en la cabecera: el valor del campo NIF del bloque ObligadoEmision no está identificado. |
| 4107 | El NIF no está identificado en el censo de la AEAT. |
| 4109 | El formato del NIF es incorrecto. |
| 4115 | El valor del campo NIF del bloque ObligadoEmision es incorrecto. |
| 4116 | Error en la cabecera: el campo NIF del bloque ObligadoEmision tiene un formato incorrecto. |
Los códigos de cada registro
Estos rechazan solo la factura afectada. El 1108 dice que el NIF del IDEmisorFactura debe ser el mismo que el del ObligadoEmision, y el 1120, 1217, 1219 y 1240 avisan de un IDEmisorFactura mal tipado, sin identificar o incorrecto. El 1172 salta cuando el NIF o el obligado llegan vacíos y el 1215 es el error genérico del bloque ObligadoEmision. El 1282 pide el nombre cuando el NIF de la cabecera es de una persona física.
Con nuestro módulo, el 1108 no debería darse: cabecera e IDEmisorFactura se rellenan con el mismo NIF en el mismo momento. Y el nombre siempre viaja, porque es el de la empresa.

Cómo se corrige
- Abre la empresa en Odoo y revisa NIF for Verifactu. Si lo dejas vacío, se usa el NIF de la empresa, así que revisa también ese.
- El NIF va sin espacios y con su letra. Si es de una persona física, comprueba que el nombre de la empresa en Odoo es el suyo.
- Si no tiene NIF, el módulo ni siquiera envía: para con
Company … has no NIF for Veri*Factu. - Con lo ya publicado, cuidado antes de reenviar. La cabecera y el IDEmisorFactura se arman en cada envío con el NIF que tenga la empresa en ese momento, pero la huella de cada factura se calculó al publicarla, con el NIF de entonces, y no cambia. Si la reenvías desde Envío a AEAT › Errores AEAT con Reintentar Selección, la AEAT recalcula la huella con el NIF nuevo, no le cuadra y contesta con el 2000, que el módulo publicado no subsana. Escríbenos a comercial@flexigobe.com antes de reenviar.
Los códigos de esta página, con el texto de la AEAT
Cada código con su texto literal, tal como lo da la lista de errores de la AEAT:
| Código | Texto de la AEAT |
|---|---|
| 4104 | Error en la cabecera: el valor del campo NIF del bloque ObligadoEmision no está identificado. |
| 4107 | El NIF no está identificado en el censo de la AEAT. |
| 4109 | El formato del NIF es incorrecto. |
| 4115 | El valor del campo NIF del bloque ObligadoEmision es incorrecto. |
| 4116 | Error en la cabecera: el campo NIF del bloque ObligadoEmision tiene un formato incorrecto. |
| 1108 | El NIF del IDEmisorFactura debe ser el mismo que el NIF del ObligadoEmision. |
| 1120 | Valor de campo IDEmisorFactura del bloque IDFactura con tipo incorrecto. |
| 1172 | El valor del campo NIF u ObligadoEmision son nulos. |
| 1215 | Error en el bloque de ObligadoEmision. |
| 1217 | Error identificando el IDEmisorFactura. |
| 1219 | El valor del campo IDEmisorFactura es incorrecto. |
| 1240 | Error en el bloque de IdEmisorFactura. |
| 1282 | Si el NIF de la cabecera es persona fisica se debe informar tambien de su NombreRazon |
Los rechazos de cabecera dejan los envíos en Failed y no se reintentan solos. Los de cada registro sí se reintentan, con el mismo registro y con el NIF que tenga la empresa en cada intento: si corriges el NIF mientras tanto, los reintentos también vuelven con el 2000.
¿Qué pasa si el error es de 4107 y el NIF está bien escrito?
Que la AEAT no lo encuentra en su censo. Con el NIF de tu propia empresa es raro; comprueba que el entorno de la AEAT al que envías es el que toca y escríbenos a comercial@flexigobe.com con la respuesta.
Sigue leyendo
Comprobado en el código del módulo (versión 20.0) y en las fuentes enlazadas
Fuentes
- www.agenciatributaria.es/static_files/AEAT_Desarrolladores/EEDD/IVA/VERI-FACTU/Validacione
- Código del módulo: flexigo_spain_verifactu 20.0 (aa2ea3d2): models/verifactu_aeat_client.py
- Código del módulo: flexigo_spain_verifactu 20.0 (aa2ea3d2): models/verifactu_cola_envio.py
- Código del módulo: flexigo_spain_verifactu 20.0 (aa2ea3d2): data/verifactu_crons.xml
- prewww2.aeat.es/static_files/common/internet/dep/aplicaciones/es/aeat/tikeV1.0/cont/ws/err
- Código del módulo: flexigo_spain_verifactu 20.0 (aa2ea3d2): models/verifactu_cadena.py
