Immutable Ledger
1. Introduction
Introduced in ERPNext Version 13, there was a significant shift in the functioning of the Accounting Ledger (General Ledger) and Stock Ledger. Previously, backdated entries would change existing data by reposting ledgers. In Version 13 and later, ledgers are immutable (unmodifiable).
2. Why Immutable Ledger?
Some of the main reasons for ledgers being made immutable are:
- Reposting future entries is computationally costly. For a backdated transaction, all subsequent entries would have to be recalculated.
- In the Stock Ledger (FIFO method), backdated entries would disrupt valuations and profits of future transactions.
- Taxes previously paid for a duration might be altered if backdated entries can be made.
3. Influence on Day-to-Day Transactions
3.1 Reverse Entries on Cancellation of Transactions
General Ledger
On cancellation of any transaction, rather than removing GL entries, ERPNext will now send reverse entries on the cancellation date. This guarantees that history is not compromised and audit trails are never severed.
Document Delete
As GL entries associated with a transaction will never be deleted, cancelled transactions and associated documents also cannot be deleted.
3.2 Denial of Posting Backdated Stock Entries
As ledgers are Immutable now, subsequent transactions cannot be reposted or updated. This implies that users no longer post backdated stock transactions.
Example Let a stock transaction be posted for Item A with posting time: 19-06-2020 23:00:10
You cannot post another transaction for Item A having posting time earlier than this timestamp after this transaction.