O que é um livro-razão imutável? Trilhas de auditoria e por que eliminar lançamentos é um erro
Por que os lançamentos contabilizados nunca devem ser editados ou eliminados, como funcionam as correções num razão de apenas adição, e o que os fechos de período e os registos de auditoria garantem na realidade.
Um livro-razão imutável é aquele em que os lançamentos contabilizados nunca são alterados nem eliminados. As correções são feitas através da adição de novos lançamentos que revertem ou ajustam os anteriores, de modo que o histórico da contabilidade faz parte da própria contabilidade.
Isto não é uma preferência técnica. É o que transforma os registos contabilísticos em prova em vez de numa opinião atual sobre o passado, e é por isso que o pedido para "adicionar um botão de eliminação para lançamentos de diário" deve ser recusado.
Porque é que a edição e a eliminação estragam tudo
A trilha de auditoria (audit trail) é o produto. O objetivo da escrituração de partidas dobradas é que cada saldo se decomponha nos lançamentos que o originaram. Se os lançamentos puderem ser alterados silenciosamente, a decomposição deixa de provar o que quer que seja: a trilha mostra aquilo que alguém decidiu recentemente que ela devia mostrar.
Os valores submetidos deixam de coincidir com a contabilidade. Uma declaração de IVA submetida em março apresenta os números de março. Se editar uma fatura de março em junho, o seu razão deixa de coincidir com um documento já entregue à autoridade tributária. Ninguém dá por isso até haver uma conciliação e, nessa altura, a causa está a meses de distância em termos de transações.
A fraude torna-se invisível. A deteção de manipulações depende da capacidade de verificar que algo mudou. Quando os lançamentos podem ser editados diretamente, não há nada para ver, o que explica exatamente porque é que as administrações fiscais em toda a UE exigem que os registos contabilísticos sejam à prova de adulteração (tamper-evident) e porque é que vários países certificam o software de faturação especificamente com base nesta propriedade.
O estado distribuído diverge. Se uma fatura foi enviada a um cliente, exportada para um ficheiro bancário, transmitida a uma plataforma de faturação eletrónica e lida pela API de um parceiro, a edição da sua cópia não altera nada na deles. Não corrigiu um erro; criou uma discrepância.
Como funcionam realmente as correções
Todas as correções legítimas consistem numa adição:
| Situação | Mecanismo correto |
|---|---|
| Lançamento de diário incorreto | Contabilize a respetiva reversão e, em seguida, o lançamento correto |
| Montante faturado incorreto | Emita uma nota de crédito e, se necessário, uma nova fatura |
| Período incorreto | Contabilize no período aberto atual, com a data em que a correção ocorreu |
| Estimativa substituída | Reverta o acréscimo e contabilize o valor real - veja proveitos a receber |
O resultado lê-se como uma narrativa: eis o que pensávamos, eis quando soubemos o oposto, eis a correção. Um auditor que pergunte "o que aconteceu à fatura S-1041?" obtém uma resposta completa em vez de um número que, aparentemente, sempre foi esse número.
O custo é que o razão contém erros para sempre. Esse é o objetivo: uma empresa cujos livros não mostram correções é excecionalmente sortuda ou está a editá-los.
O que a imutabilidade não é
- Não significa "nada pode ser corrigido". Tudo pode ser corrigido; a correção é feita por adição e não por substituição.
- Não é uma blockchain. O encadeamento criptográfico é uma das formas de implementar a prova de adulteração; um razão relacional de apenas adição (append-only) com restrições aplicadas e um registo de auditoria confere-lhe a propriedade contabilística sem o encargo do consenso distribuído.
- Não é o mesmo que um registo de auditoria (audit log). Um registo de auditoria regista quem fez o quê. A imutabilidade significa que os próprios dados contabilísticos não mudam. O ideal é ter ambos, uma vez que respondem a perguntas diferentes.
- Não se aplica a rascunhos. Uma fatura em rascunho é um documento de trabalho e pode ser editada livremente. A imutabilidade começa na emissão, o momento em que o documento passa a ser real para terceiros.
Como o Nordlet aplica a imutabilidade
Três mecanismos, todos estruturais em vez de baseados em convenções:
Os lançamentos contabilizados são de apenas adição. Os lançamentos de diário são registados uma única vez. Não existe nenhum endpoint que edite ou elimine uma transação contabilizada, e a instrução POST /v1/ledger/journal/transactions/create valida os dados antes de os gravar: os débito devem igualar os créditos, as contas devem existir e aceitar lançamentos, e o período deve estar aberto. Um razão desequilibrado não é um estado que a base de dados consiga representar.
Os períodos ficam bloqueados. O comando POST /v1/ledger/periods/lock fecha um mês e qualquer transação com data num período bloqueado é rejeitada, quer provenha de um lançamento manual, de uma fatura, de uma importação bancária ou de um processo de reconhecimento automatizado. O bloqueio é o que faz com que uma declaração submetida coincida permanentemente com a contabilidade, sendo o desbloqueio, por si só, uma ação auditada. O artigo sobre o período contabilístico explica este fluxo de trabalho.
Tudo é auditado. As operações que alteram o estado são registadas num registo de auditoria com indicação do interveniente (actor), da ação, da entidade e de um comparativo (diff), incluindo as operações automatizadas, que registam um interveniente do sistema em vez de fingirem que a ação foi realizada por um humano. Quando o espelhamento entre empresas (intercompany mirroring) cria uma fatura, os registos de ambas as empresas mostram essa operação.
Os documentos seguem a mesma regra: a emissão de uma fatura de vendas atribui um número de uma série contínua sem saltos e efetua o lançamento; corrigi-la posteriormente implica emitir uma nota de crédito e nunca uma edição. A fatura original, a nota de crédito e o saldo resultante permanecem visíveis no histórico do cliente.
Os documentos em rascunho continuam a ser totalmente editáveis e a eliminação corresponde a uma eliminação lógica (soft delete), ou seja, um carimbo temporal deletedAt que oculta o registo das consultas ativas, mas preserva-o.
FAQ
O que é um livro-razão imutável?
Um razão contabilístico em que os lançamentos contabilizados nunca são modificados nem eliminados. As correções são feitas através da adição de lançamentos de reversão ou de ajuste, de modo que todo o histórico - incluindo os erros e respetivas correções - continua a fazer parte do registo.
Porque é que não posso simplesmente eliminar um lançamento de diário incorreto?
Porque o lançamento pode já estar refletido numa declaração fiscal submetida, num documento enviado a um cliente ou nos registos de outro sistema. Eliminá-lo faz com que a sua contabilidade deixe de coincidir silenciosamente com todos eles. Revertê-lo corrige os números enquanto deixa uma prova do que aconteceu.
Um livro-razão imutável requer blockchain?
Não. A blockchain é uma das formas de tornar os registos à prova de adulteração. O design de uma base de dados de apenas adição com restrições de saldo aplicadas, bloqueios de período e um registo de auditoria oferece as propriedades contabilísticas essenciais, sem necessidade de consenso distribuído.
Posso editar uma fatura em rascunho?
Sim. A imutabilidade aplica-se a partir do momento em que um documento é emitido e se torna real para terceiros. Os rascunhos são documentos de trabalho e podem ser alterados ou eliminados livremente.
Como posso corrigir um lançamento num período fechado?
Contabilize a correção no período aberto atual, com a data em que a correção ocorreu. Se os valores comunicados do período fechado estavam materialmente incorretos, a alternativa passa por reabri-lo deliberadamente, corrigi-lo, voltar a comunicá-lo e bloqueá-lo novamente, constituindo uma ação auditada e a forma correta de proceder à reexpressão (restatement).