Rendiconto controllo inalterabilità dati

Tax authorities in some countries require companies to prove their posted accounting entries are inalterable, meaning that once an entry has been posted, it can no longer be changed.

To do so, Odoo can use the SHA-256 algorithm to create a unique fingerprint for each posted entry. This fingerprint is called a hash. The hash is generated by taking an entry’s essential data (the values of the name, date, journal_id, company_id, debit, credit, account_id, and partner_id fields), concatenating it, and inputting it to the SHA-256 hash function, which then outputs a fixed size (256-bit) string of characters. The hash function is deterministic (the same input always creates the same output): any minor modification to the original data would completely change the resulting hash. Consequently, the SHA-256 algorithm is often used, among others, for data integrity verification purposes.

In addition, the previous entry’s hash is always added to the next entry to form a hash chain. This is used to ensure a new entry is not added afterward between two posted entries, as doing so would break the hash chain.

Nota

Gli hash generati dall’algoritmo SHA-256 non sono teoricamente unici, poiché esiste un numero finito di valori possibili. Tuttavia, questo numero è eccezionalmente alto: 2²⁵⁶, che è molto più grande del numero di atomi dell’universo conosciuto. Per questo motivo gli hash sono considerati unici nella pratica.

Lock posted entries with hash

To start using the hashing function, go to Accounting ‣ Configuration > Journals. Open the journal for which you want to activate the feature, go to the Advanced Settings tab, and enable Lock Posted Entries with Hash.

Avvertimento

Once you post an entry on a locked journal, you cannot disable the feature anymore, nor edit any posted entry.

Download resoconto

Per scaricare il Rendiconto controllo inalterabilità dati, vai su Contabilità ‣ Configurazione ‣ Impostazioni ‣ Rendicontazione e fai clic su Scarica rendiconto controllo inalterabilità dati.

The report’s first section is an overview of all your journals and their configuration. Under the inalterability check column, you can see whether or not a journal’s posted entries are locked with a hash (V) or not (X). The coverage column tells you when a journal’s posted entries started being locked.

Configurazione resoconto per due registri

The second section gives you the result of the data consistency check for each hashed journal. You can view the first hashed entry and its corresponding hash and the last hashed entry and its corresponding hash.

Resoconto verifica accuratezza dati per un registro