Nordlet

← Documentatie / Woordenlijst

Wat is een onveranderbaar grootboek? Audit Trails en waarom het verwijderen van boekingen een bug is

Waarom geboekte boekingen nooit mogen worden bewerkt of verwijderd, hoe correcties werken in een append-only grootboek, en wat periodevergrendelingen en audit logs daadwerkelijk garanderen.

Een onveranderbaar grootboek (immutable ledger) is een grootboek waarin geboekte boekingen nooit worden gewijzigd en nooit worden verwijderd. Correcties worden doorgevoerd door nieuwe boekingen toe te voegen die de oude omkeren of aanpassen, zodat de geschiedenis van de administratie zelf deel uitmaakt van de administratie.

Dit is geen technische voorkeur. Dit is wat administratieve gegevens bewijsmateriaal maakt in plaats van een huidige mening over het verleden, en het is waarom "voeg een verwijderknop toe voor journaalposten" een verzoek is dat moet worden geweigerd.

Waarom bewerken en verwijderen alles kapotmaken

De audit trail is het product. Het doel van dubbel boekhouden is dat elk saldo uiteenvalt in de boekingen die het hebben veroorzaakt. Als boekingen stiekem kunnen worden gewijzigd, bewijst de ontleding niets: de trail toont wat iemand er het laatst van vond dat deze moest tonen.

Aangiften komen niet meer overeen met de administratie. Een btw-aangifte die in maart is ingediend, citeert de cijfers van maart. Bewerk je in juni een maart-factuur, dan komt je grootboek niet meer overeen met een document dat al bij de belastingdienst is ingediend. Niemand merkt dit op tot een aflettering (reconciliation), en tegen die tijd ligt de oorzaak maanden aan transacties achter ons.

Fraude wordt onzichtbaar. Het detecteren van manipulatie is afhankelijk van het vermogen om te zien dat er iets is veranderd. Waar boekingen ter plaatse kunnen worden bewerkt, is er niets te zien, en dat is precies waarom belastingdiensten in de EU vereisen dat administratieve gegevens manipulatiebestendig (tamper-evident) zijn, en waarom verschillende landen facturatiesoftware specifiek op deze eigenschap certificeren.

Gedistribueerde status loopt uiteen. Als een factuur naar een klant is verzonden, is geëxporteerd naar een bankbestand, is verzonden naar een e-facturatie-platform en is gelezen door de API van een partner, verandert het bewerken van jouw kopie niets aan die van hen. Je hebt geen fout gecorrigeerd; je hebt een discrepantie gecreëerd.

Hoe correcties daadwerkelijk werken

Elke legitieme correctie is een toevoeging:

Situatie Correct mechanisme
Verkeerde journaalpost Boek de tegenboeking, gevolgd door de juiste boeking
Verkeerd gefactureerd bedrag Reik een creditnota uit, en zo nodig een nieuwe factuur
Verkeerde periode Boek in de huidige open periode, gedateerd op het moment dat de correctie plaatsvond
Schatting achterhaald Keer de overlopende post (accrual) om, boek de werkelijke waarde - zie nog te ontvangen omzet

Het resultaat leest als een verhaal: dit is wat we dachten, dit is wanneer we beter wisten, dit is de correctie. Een auditor die vraagt "wat is er gebeurd met factuur S-1041?" krijgt een volledig antwoord in plaats van een getal dat blijkbaar altijd al dat getal is geweest.

De prijs hiervoor is dat het grootboek voor altijd fouten bevat. Dat is precies de bedoeling: een onderneming wiens administratie geen enkele correctie toont, heeft óf buitengewoon veel geluk óf bewerkt de administratie.

Wat onveranderbaarheid niet is

  • Niet "er kan niets worden gecorrigeerd." Alles kan worden gecorrigeerd; dit gebeurt door toe te voegen, niet door te overschrijven.
  • Geen blockchain. Cryptografische koppeling (cryptographic chaining) is één implementatie van manipulatiebestendigheid; een relationeel grootboek dat alleen toevoegingen toestaat (append-only) met afgedwongen restricties en een audit log levert de boekhoudkundige eigenschap op zonder de bagage van gedistribueerde consensus.
  • Niet hetzelfde als een audit log. Een audit log legt vast wie wat heeft gedaan. Onveranderbaarheid betekent dat de boekhoudkundige gegevens zelf niet veranderen. Je wilt beide, en ze beantwoorden verschillende vragen.
  • Niet van toepassing op concepten. Een conceptfactuur is een werkdocument en kan vrijelijk worden bewerkt. Onveranderbaarheid begint bij de uitgifte, het moment waarop het document echt wordt voor iemand anders.

Hoe Nordlet dit afdwingt

Drie mechanismen, alle drie structureel in plaats van conventioneel:

Geboekte boekingen zijn append-only. Journaalposten worden eenmalig geschreven. Er is geen endpoint dat een geboekte transactie bewerkt of verwijdert, en POST /v1/ledger/journal/transactions/create valideert voorafgaand aan het schrijven: debet moet gelijk zijn aan credit, grootboekrekeningen moeten bestaan en beboetbaar zijn, de periode moet open zijn. Een onuitgebalanceerd grootboek is geen status die de database kan vertegenwoordigen.

Periodes sluiten. POST /v1/ledger/periods/lock sluit een maand, en elke transactie die is gedateerd in een vergrendelde periode wordt afgewezen, ongeacht of deze afkomstig is van een handmatige boeking, een factuur, een bankimport of een geautomatiseerde verwerkingsrun. Vergrendeling zorgt ervoor dat een ingediende aangifte permanent overeenkomt met de administratie, en ontgrendeling is op zich al een gecontroleerde actie (audited action). Het artikel over de boekhoudperiode behandelt deze workflow.

Alles wordt gecontroleerd (audited). Statuswijzigende operaties worden weggeschreven naar een audit log met de actor, de actie, de entiteit en een diff, inclusief geautomatiseerde operaties die een systeemactor vastleggen in plaats van te pretenderen dat een mens het heeft gedaan. Wanneer intercompany mirroring een factuur aanmaakt, tonen de logboeken van beide ondernemingen dit.

Documenten volgen dezelfde regel: het uitreiken van een verkoopfactuur wijst een nummer toe uit een lunateen seriereeks en boekt het; dit achteraf corrigeren betekent een creditnota, nooit een bewerking. De originele factuur, de creditnota en het resulterende saldo blijven allemaal zichtbaar in de historie van de klant.

Conceptdocumenten blijven volledig bewerkbaar, en verwijderen is een soft delete, een deletedAt timestamp die het record verbergt voor actieve queries terwijl het bewaard blijft.

FAQ

Wat is een onveranderbaar grootboek?

Een grootboek waarin geboekte boekingen nooit worden gewijzigd of verwijderd. Correcties worden doorgevoerd door tegenboeking- of correctieposten toe te voegen, zodat de volledige geschiedenis, inclusief fouten en de bijbehorende correcties, onderdeel blijft van de administratie.

Waarom kan ik een verkeerde journaalpost niet gewoon verwijderen?

Omdat de boeking al kan zijn verwerkt in een ingediende belastingaangifte, een naar een klant verzonden document of de administratie van een ander systeem. Het verwijderen hiervan zorgt ervoor dat jouw administratie stiekem niet meer overeenkomt met al deze bronnen. Het tegenboeken corrigeert de cijfers en laat tegelijkertijd bewijs achter van wat er is gebeurd.

Vereist een onveranderbaar grootboek blockchain?

Nee. Blockchain is één manier om gegevens manipulatiebestendig te maken. Een database-ontwerp dat alleen toevoegingen toestaat (append-only) met afgedwongen saldorestricties, periodevergrendelingen en een audit log levert de relevante boekhoudkundige eigenschappen op, zonder gedistribueerde consensus.

Kan ik een conceptfactuur bewerken?

Ja. Onveranderbaarheid is van toepassing vanaf het moment dat een document wordt uitgereikt en echt wordt voor iemand anders. Concepten zijn werkdocumenten en kunnen vrijelijk worden gewijzigd of verwijderd.

Hoe corrigeer ik een boeking in een gesloten periode?

Boek de correctie in de huidige open periode, gedateerd op het moment dat de correctie plaatsvond. Als de gerapporteerde cijfers van de gesloten periode materieel onjuist waren, is het alternatief om deze bewust te heropenen, te corrigeren, opnieuw te rapporteren en opnieuw te vergrendelen, wat een gecontroleerde actie (audited action) is en de eerlijke manier is om cijfers te herzien (restate).