Vai al contenuto principale
VeriFactu

L'azione pianificata «Verifactu: Nightly Integrity Check»: cosa fa e cosa controllare

L'azione pianificata Verifactu: Nightly Integrity Check gira una volta al giorno, è attiva fin dall'installazione e, per ogni catena attiva, ricalcola l'impronta di tutti i suoi registri e la confronta con quella salvata. Se una non coincide, si ferma lì e lancia l'avviso di rottura della catena. Qui trovi cosa fa a ogni passata e cosa controllare se sembra non fare nulla.

FlexigoTech · Responsabile: Víctor Gómez · Aggiornato il 5 novembre 2026

In breve

Modulo
VeriFactu
Versioni
Odoo 17, 18, 19 e 20
Verificato
nel codice del modulo, versione 17.0 e 20.0 · nelle fonti collegate in fondo
Lettura
4 min

Cosa fa a ogni passata

L'azione cerca le catene attive e, per ciascuna, richiama la verifica di integrità. Tutto ciò che conta avviene dentro quella verifica: ricalcola l'impronta di ogni registro e la confronta con quella salvata. L'impronta è uno SHA-256 del registro concatenato con il precedente, e l'AEAT la ricalcola per conto suo: se non coincide, accetta il registro con un errore da correggere.

L'azione esiste in tutti i rami pubblicati del modulo (17.0, 18.0, 19.0 e 20.0), che è pubblicato su Odoo Apps per queste quattro versioni. Questo schema riassume l'azione e il menu da cui si aprono le catene:

Schema realizzato con codice, non una schermata di Odoo: in alto l'azione pianificata che gira una volta al giorno ed è attiva fin dall'installazione, sotto il menu Verifactu / SIF › Compliance Records › Chain State
Schema generato a partire dal codice del modulo, non uno screenshot di Odoo.

Dettagli che non si vedono nella scheda

Controlla solo le catene attive, una per una

L'azione non scorre tutte le catene esistenti: cerca soltanto quelle attive e lancia la verifica di ciascuna separatamente. Ogni catena appartiene a un'azienda. Nella scheda di All Chain States (Asesoría) hai il campo Company per sapere di quale si tratta.

Legge l'intera catena a ogni passata

La verifica esegue una query che unisce i registri di inserimento e quelli di annullamento dell'azienda e li ordina per numero di registro. Poi li scorre dall'inizio alla fine. Il codice non parte da un punto intermedio: ogni passata comincia dal primo registro.

Ricalcola ogni impronta da ciò che è salvato

Per ogni registro di inserimento, il codice ricostruisce l'impronta con questi dati salvati: NIF dell'emittente, numero di serie, data di emissione, tipo di fattura (F1 se è vuoto), quota totale calcolata a partire dalle basi imponibili, importo totale, impronta del registro precedente e data e ora di generazione con il suo fuso orario. Il primo registro parte da un'impronta precedente vuota.

Il NIF dell'emittente si usa senza il prefisso ES. Se l'azienda ha un NIF proprio per Verifactu, il codice lo preferisce alla partita IVA generale. Una modifica a uno qualsiasi di questi dati dopo la generazione del registro fa sì che l'impronta ricalcolata non coincida più con quella salvata.

Gli annullamenti si calcolano con altre etichette

I registri di annullamento usano una formula propria: non hanno tipo di fattura, quota né importo, e le loro etichette sono quelle della fattura annullata. Il codice ammette inoltre gli annullamenti generati prima della versione 1.3.4 del modulo, che erano calcolati con le etichette dei registri di inserimento: se l'impronta salvata coincide con quel vecchio calcolo, la dà per buona.

Si ferma alla prima rottura e avvisa

Non appena un'impronta salvata non coincide con quella ricalcolata, la verifica si ferma: non prosegue con i registri successivi di quella catena. Restituisce quanti registri aveva controllato fino a quel punto e il primo registro rotto, con il suo numero di registro, il suo numero di serie, l'impronta attesa e quella salvata.

Lo stesso passaggio lancia l'avviso di rottura della catena per l'azienda, con il numero di registro e il numero di serie in cui si è rotta. Se l'intera catena coincide, la verifica restituisce che è passata, insieme al totale dei registri controllati.

La frequenza è una volta al giorno, e in Odoo 17 si ripete senza fine

L'azione gira una volta al giorno ed è attiva fin dall'installazione. In Odoo 17.0 è inoltre configurata per ripetersi senza fine.

Se sembra che non faccia nulla

Prima di sospettare dell'azione, ripassa questi punti:

  • C'è almeno una catena attiva? Se non ce n'è nessuna, la ricerca non restituisce nulla e non c'è niente da verificare.
  • L'azione è ancora attiva? È attiva fin dall'installazione, quindi se non gira, controlla che sia ancora attiva.
  • Cosa aspettarsi da una passata corretta? L'azione richiama soltanto la verifica di ogni catena, e una catena integra restituisce che è passata con il suo totale di registri controllati. Una rottura è ciò che lancia l'avviso di rottura della catena.
  • Vedi il menu? Le schede di ogni catena si aprono da Verifactu / SIF › Compliance Records › Chain State. Ogni livello richiede permessi diversi.
Elenco di Verifactu / SIF › Compliance Records › Chain State, con una sola riga dell'azienda di demo, attiva e con i totali a zero
L'elenco, ancora senza registri: una sola riga e il resto della schermata vuoto.

I permessi del menu, livello per livello

Se non hai il permesso di un livello, non vedi quel livello. Questi sono quelli richiesti da ciascuno:

Livello del menuPermessi che lo mostrano
Verifactu / SIFAccountant, Asesoría Operator, Auditor (read-only), Privacy Officer, SIF Manager
Compliance RecordsAccountant, Auditor (read-only), SIF Manager
Chain StateAuditor (read-only), SIF Manager

Con il solo permesso Accountant si vedono i primi due livelli, ma non Chain State. Se qualcuno dice di non trovare il menu, guarda prima i suoi permessi.

Altre letture e aiuto

Se stai implementando Odoo e vuoi che VeriFactu si integri con la tua fatturazione, FlexigoTech implementa Odoo 17, 18, 19 e 20 e sviluppa connettori e integrazioni su misura. Puoi vedere il modulo nella sua scheda di Odoo Apps.

Continua a leggere

Cosa fa il pulsante «Run Pre-flight» di VeriFactu SpagnaCosa fa il pulsante Run Pre-flight di VeriFactu Spagna in Odoo: quando si vede, cosa controlla in ogni riga, cosa salva e quali errori può dare.
Verificato nel codice del modulo (versione 17.0 e 20.0) e nelle fonti collegate

Fonti