Saltar al contenido principal
VeriFactu

La tarea «Verifactu: Comprobación Nocturna de Integridad»: qué hace y qué mirar

La tarea Verifactu: Comprobación Nocturna de Integridad (Verifactu: Nightly Integrity Check) corre una vez al día, viene activa al instalar y, para cada cadena activa, recalcula la huella de todos sus registros y la compara con la guardada. Si una no casa, se detiene ahí y lanza el aviso de rotura de cadena. Aquí tienes qué hace en cada pasada y qué mirar si parece no hacer nada.

FlexigoTech · Responsable: Víctor Gómez · Actualizado el 5 de noviembre de 2026

Lo esencial

Módulo
VeriFactu
Versiones
Odoo 17, 18, 19 y 20
Comprobado
en el código del módulo, versión 17.0 y 20.0 · en las fuentes enlazadas al final
Lectura
4 min

Qué hace en cada pasada

La tarea busca las cadenas activas y, para cada una, llama a la verificación de integridad. Todo lo importante ocurre dentro de esa verificación: recalcula la huella de cada registro y la compara con la que se guardó. La huella es un SHA-256 del registro encadenado con el anterior, y la AEAT la recalcula por su cuenta: si no casa, acepta el registro con un error que hay que subsanar.

La tarea existe en todas las ramas publicadas del módulo (17.0, 18.0, 19.0 y 20.0), que está publicado en Odoo Apps para esas cuatro versiones. Este esquema resume la tarea y el menú desde el que se abren las cadenas:

Esquema hecho con código, no una pantalla de Odoo: arriba la tarea programada que corre una vez al día y viene activa al instalar, debajo el menú Verifactu / SIF › Registros de Cumplimiento › Estado de la Cadena
Esquema generado a partir del código del módulo, no una captura de Odoo.

Detalles que no se ven en la ficha

Solo revisa las cadenas activas, una por una

La tarea no recorre todas las cadenas que existan: busca únicamente las activas y lanza la verificación de cada una por separado. Cada cadena pertenece a una empresa. En la ficha de Todos los Estados de Cadena (Asesoría) (All Chain States (Asesoría)) tienes el campo Empresa (Company) para saber de cuál se trata.

Lee la cadena entera en cada pasada

La verificación hace una consulta que junta los registros de alta y los de anulación de la empresa y los ordena por número de registro. Después los recorre de principio a fin. El código no parte de un punto intermedio: cada pasada empieza por el primer registro.

Recalcula cada huella desde lo que hay guardado

Para cada registro de alta, el código reconstruye la huella con estos datos guardados: NIF del emisor, número de serie, fecha de expedición, tipo de factura (F1 si está vacío), cuota total calculada a partir de las bases imponibles, importe total, huella del registro anterior y fecha y hora de generación con su huso horario. El primer registro parte de una huella anterior vacía.

El NIF del emisor se usa sin el prefijo ES. Si la empresa tiene un NIF propio para Verifactu, el código lo prefiere al número de IVA general. Un cambio en cualquiera de esos datos después de generar el registro hace que la huella recalculada ya no coincida con la guardada.

Las anulaciones se calculan con otras etiquetas

Los registros de anulación usan su propia fórmula: no llevan tipo de factura, cuota ni importe, y sus etiquetas son las de la factura anulada. El código admite además las anulaciones generadas antes de la versión 1.3.4 del módulo, que se calcularon con las etiquetas de los registros de alta: si la huella guardada coincide con ese cálculo antiguo, la da por buena.

Se detiene en la primera rotura y avisa

En cuanto una huella guardada no coincide con la recalculada, la verificación para: no sigue con los registros siguientes de esa cadena. Devuelve cuántos registros había comprobado hasta ahí y el primer registro roto, con su número de registro, su número de serie, la huella esperada y la guardada.

Ese mismo paso lanza el aviso de rotura de cadena para la empresa, con el número de registro y el número de serie donde se rompió. Si la cadena entera casa, la verificación devuelve que ha pasado, junto con el total de registros comprobados.

La frecuencia es una vez al día, y en Odoo 17 se repite sin fin

La tarea corre una vez al día y viene activa al instalar. En Odoo 17.0 está configurada además para repetirse sin fin.

Si parece que no hace nada

Antes de sospechar de la tarea, repasa esto:

  • ¿Hay alguna cadena activa? Si no hay ninguna, la búsqueda no devuelve nada y no hay nada que verificar.
  • ¿Sigue activa la tarea? Viene activa al instalar, así que si no corre, comprueba que sigue activa.
  • ¿Qué cabe esperar de una pasada correcta? La tarea solo llama a la verificación de cada cadena, y una cadena íntegra devuelve que ha pasado con su total de registros comprobados. Una rotura es lo que lanza el aviso de rotura de cadena.
  • ¿Ves el menú? Las fichas de cada cadena se abren desde Verifactu / SIF › Registros de Cumplimiento › Estado de la Cadena (Verifactu / SIF › Compliance Records › Chain State). Cada tramo pide permisos distintos.
Lista de Verifactu / SIF › Registros de Cumplimiento › Estado de la Cadena, con una sola fila de la empresa de demostración, activa y con los totales a cero
La lista, aún sin registros: una única fila y el resto de la pantalla vacío.

Los permisos del menú, tramo a tramo

Si no tienes el permiso de un tramo, no ves ese tramo. Estos son los que pide cada uno:

Tramo del menúPermisos que lo muestran
Verifactu / SIFContable (Accountant), Operador de Asesoría (Asesoría Operator), Auditor (solo lectura) (Auditor (read-only)), Responsable de Privacidad (Privacy Officer), Gestor SIF (SIF Manager)
Registros de Cumplimiento (Compliance Records)Contable, Auditor (solo lectura), Gestor SIF
Estado de la Cadena (Chain State)Auditor (solo lectura), Gestor SIF

Con solo el permiso Contable se ven los dos primeros tramos, pero no Estado de la Cadena. Si alguien dice que no encuentra el menú, mira primero sus permisos.

Más lecturas y ayuda

Si estás implantando Odoo y quieres que VeriFactu encaje con tu facturación, FlexigoTech implanta Odoo 17, 18, 19 y 20 y desarrolla conectores e integraciones a medida. Puedes ver el módulo en su ficha de Odoo Apps.

Sigue leyendo

Qué hace el botón «Ejecutar Comprobación Previa» de VeriFactu EspañaQué hace el botón Ejecutar Comprobación Previa de VeriFactu España en Odoo: cuándo se ve, qué revisa en cada fila, qué guarda y qué errores da.
Comprobado en el código del módulo (versión 17.0 y 20.0) y en las fuentes enlazadas

Fuentes