Nordlet

← Документація / Глосарій

Що таке незмінний головний журнал? Ревізійні сліди та чому видалення проведень є помилкою

Чому проведені бухгалтерські операції ніколи не можна редагувати чи видаляти, як працюють виправлення в журналі лише з можливістю додавання, і що насправді гарантують закриття періодів та журнали подій.

Незмінний головний журнал (immutable ledger) - це журнал, у якому проведені операції ніколи не змінюються та не видаляються. Виправлення вносяться шляхом додавання нових операцій, які сторнують або коригують старі, тож історія обліку сама по собі є частиною обліку.

Це не технічна вподобання. Це те, що робить бухгалтерські записи доказом, а не поточною думкою про минуле, і саме тому запис „додайте кнопку видалення для проводки“ є вимогою, яку слід відхилити.

Чому редагування та видалення ламають усе

Ревізійний слід (audit trail) — це і є продукт. Мета подвійного запису полягає в тому, що кожне сальдо розкладається на проводки, які його сформували. Якщо записи можна непомітно змінювати, таке розкладання нічого не доводить: слід показує те, що хтось щойно вирішив там бачити.

Подані показники перестають збігатися з обліком. ПДВ-декларація, подана в березні, містить березневі цифри. Відредагуйте березневий рахунок у червні, і ваш журнал більше не збігається з документом, уже поданим до податкового органу. Цього ніхто не помічає до звірки, а на той момент причина вже ховається за місяцями транзакцій.

Шахрайство стає невидимим. Виявлення маніпуляцій залежить від можливості побачити, що щось змінилося. Там, де записи можна редагувати на місці, дивитися ні на що, і саме тому податкові органи по всьому ЄС вимагають, щоб бухгалтерські записи мали захист від несанкціонованого втручання (tamper-evident), а кілька країн сертифікують програмне забезпечення для виставлення рахунків саме на основі цієї властивості.

Розподілений стан розходиться. Якщо рахунок було надіслано клієнту, експортовано до банківського файлу, передано на платформу електронного виставлення рахунків та прочитано через партнерський API, редагування вашої копії нічого не змінює в їхній. Ви не виправили помилку, ви створили розбіжність.

Як насправді працюють виправлення

Кожне легітимне виправлення є додаванням:

Ситуація Правильний механізм
Хибна бухгалтерська проводка Проведіть її сторно, а потім правильну проводку
Неправильна сума в рахунку Виставте кредитове ното, а за потреби — новий рахунок
Неправильний період Проведіть у поточному відкритому періоді з датою фактичного внесення виправлення
Оцінка втратила актуальність Сторнуйте нарахування, відобразіть фактичну суму — дивіться нараховані доходи

Результат читається як розповідь: ось що ми думали, ось коли ми дізналися інакше, ось виправлення. Аудитор, який запитує „що сталося з рахунком S-1041?“, отримує повну відповідь замість цифри, яка, судячи з усього, завжди була саме такою.

Ціною цього є те, що журнал назавжди містить помилки. У цьому й сенс: компанія, чий облік не містить жодних виправлень, або надзвичайно щаслива, або редагує їх.

Чим незмінність не є

  • Не означає „нічого не можна виправити“. Виправити можна будь-що; виправлення здійснюється шляхом додавання, а не перезапису.
  • Не блокчейн. Криптографічне ланцюжкове зв'язування — це лише один із способів забезпечення захисту від втручання; реляційний журнал лише з можливістю додавання (append-only), із жорсткими обмеженнями та журналом подій, надає необхідні бухгалтерські властивості без зайвого багажу розподіленого консенсусу.
  • Не те саме, що журнал подій (audit log). Журнал подій фіксує хто що зробив. Незмінність означає, що самі облікові дані не змінюються. Вам потрібні обидві речі, і вони відповідають на різні запитання.
  • Не стосується чорнеток. Чернетка рахунка є робочим документом і може вільно редагуватися. Незмінність починається з моменту виставлення — коли документ стає реальністю для когось іншого.

Як Nordlet забезпечує незмінність

Три механізми, і всі вони є структурними, а не базуються на домовленостях:

Проведені записи приймають лише додавання. Бухгалтерські проводки записуються один раз. Не існує жодного ендпоінту, який редагує або видаляє проведену транзакцію, а POST /v1/ledger/journal/transactions/create виконує перевірку перед записом: дебети мають дорівнювати кредитам, рахунки повинні існувати та приймати проводки, а період має бути відкритим. Незбалансований журнал — це стан, який база даних не може відобразити.

Періоди закриваються. POST /v1/ledger/periods/lock закриває місяць, і будь-яка транзакція з датою в закритому періоді відхиляється — незалежно від того, чи надходить вона з ручного введення, рахунка, банківського імпорту чи автоматизованого процесу визнання. Закриття періодів — це те, що гарантує постійну відповідність поданої звітності обліку, а саме розблокування є аудитною дією. Стаття про обліковий період описує цей робочий процес.

Усе підлягає аудиту. Операції, що змінюють стан, записуються до журналу подій із зазначенням суб'єкта (actor), дії, сутності та різниці (diff), зокрема й автоматизовані операції, які записують системного суб'єкта замість того, щоб удавати, ніби це зробила людина. Коли міжкомпанійне відображення створює рахунок, журнали обох компаній показують це.

Документи дотримуються того ж правила: виставлення рахунка на продаж виділяє номер із неперервної послідовності та проводить операцію; його подальше коригування означає кредитове ното, але ніколи — редагування. Оригінальний рахунок, кредитове ното та отримане сальдо залишаються видимими в історії клієнта.

Документи в статусі чорнетки залишаються повністю доступними для редагування, а видалення є м'яким видаленням (soft delete) — міткою часу deletedAt, яка приховує запис від активних запитів, водночас зберігаючи його.

FAQ

Що таке незмінний головний журнал?

Бухгалтерський журнал, у якому проведені операції ніколи не змінюються та не видаляються. Виправлення вносяться шляхом додавання сторнуючих або коригувальних проводнок, тому повна історія, включно з помилками та їх виправленнями, залишається частиною обліку.

Чому не можна просто видалити помилкову бухгалтерську проводку?

Оскільки ця проводка вже може бути відображена в поданій податковій декларації, документі, надісланому клієнту, або в записах іншої системи. Її видалення призведе до того, що ваш облік мовчки розійдеться з усіма цими даними. Сторнування виправляє цифри, залишаючи при цьому докази того, що сталося.

Чи вимагає незмінний журнал використання блокчейну?

Ні. Блокчейн — це лише один зі способів захистити записи від втручання. Дизайн бази даних лише з можливістю додавання, із жорсткими обмеженнями балансу, закриттям періодів та журналом подій забезпечує необхідні бухгалтерські властивості без розподіленого консенсусу.

Чи можу я відредагувати чорнетку рахунка?

Так. Незмінність діє з моменту виставлення документа, коли він стає реальністю для когось іншого. Чорнетки є робочими документами й можуть вільно змінюватися або видалятися.

Як виправити проводку в закритому періоді?

Зробіть виправлення в поточному відкритому періоді з датою фактичного внесення виправлення. Якщо звітні показники закритого періоду були суттєво помилковими, альтернативним варіантом є навмисне відкриття цього періоду, внесення виправлень, повторне подання звітності та повторне закриття — це аудитована дія, яка є чесним способом перерахунку звітності.