HairConnect Ръководство Вход

Касовият журнал

Обновено на 2026-08-22

Всеки приключен касов бон влиза в журнала. Този журнал е изграден така, че да може да се докаже, че по него не е пипано — за това не трябва да правите нищо сами, но то обяснява защо някои неща нарочно не са възможни.

Номерът на бона

Всеки приключен бон получава номер от поредицата на вашия салон, за тази финансова година: 2026-0148 — годината, тире и поредният номер с четири цифри.

  • Без пропуски. Номерът се раздава, докато поредицата е заключена. Приключат ли две каси в една и съща секунда, те изчакват коректно една друга.
  • Без дубликати. Никога не се смята с „най-високият номер плюс едно“.
  • На 1 януари номерацията започва отново от 1.

Веригата от хешове

Под всеки бон стои ред от рода на hash 3f9a2c…, с обяснението Elke bon ketent aan de vorige; zo is manipulatie zichtbaar. (Всеки бон се навързва към предишния; така манипулацията е видима.)

Хешът се изчислява върху предишния хеш плюс съдържанието на този бон: салонът, финансовата година, номерът, моментът на приключване, общите суми и ДДС, и за всеки ред — видът, служителят, описанието, количеството, единичната цена, процентът ДДС и общата сума на реда.

Промени ли се впоследствие дори един цент, хешът вече не съвпада — и оттам нататък цялата верига вече не съвпада. Веригата продължава и през смяната на годината.

Какво никога не е възможно

  • Изтриване на касов бон. Опитът се отхвърля: Kassabonnen worden nooit verwijderd. Gebruik void() met een reden. (Касовите бонове никога не се изтриват. Използвайте void() с причина.)
  • Промяна на приключен бон. Могат да се добавят само данните на сторниране. Всичко останало се отхвърля с: Een afgesloten kassabon mag niet meer wijzigen. Maak een tegenboeking. (Приключен касов бон повече не може да се променя. Направете сторниране.)

Коригирате следователно винаги със сторниране.

ДДС

ДДС се изчислява за всеки ред на бона и се закръгля в този момент, докато приемате плащането. Отчетите само събират тези центове; те никога не преизчисляват ДДС от дневната обща сума.

Това не е дребнавост: при три реда от € 3,33 преизчисляване от общата сума се отклонява с един цент от бона, който клиентът е получил в ръцете си — и тогава декларацията ви вече не съвпада с касата ви.

Подаръчните ваучери, клиентският кредит и отделните редове с отстъпка не носят ДДС. При подаръчен ваучер ДДС следва едва при използването му, върху това, което тогава се купува.

Къде намирате журнала

Екран За какво
Rapporten → Dagontvangsten (Отчети → Дневни постъпления) отчетът, който отива при счетоводителя: по дни, по ставка на ДДС, по платежно средство
Rapporten → Transacties (Отчети → Транзакции) всеки бон поотделно, с търсене; анулираните бонове стоят там по подразбиране, но не се броят
Rapporten → Kassaboek (Отчети → Касова книга) страната в брой: ресто, внасяния, изваждания, броения
Instellingen → Logboek (Настройки → Дневник на действията) кой кой бон е приключил и кой кой бон е сторнирал

Дневникът на действията пази кой какво е направил, не какво е стояло на бона. Последното стои в самия журнал.

Проверка

Съществува проверка, която пресмята наново номерацията и веригата от хешове за всеки салон и всяка финансова година. Тя не променя нищо и не поправя нищо — тя казва дали журналът излиза:

php artisan register:verify-journal --tenant=<slug> --year=2026

Отговорът е Journaal sluit. Geen gaten, geen gebroken hashes. (Журналът излиза. Няма пропуски, няма счупени хешове.) или изброяване на проблемите.

Често задавани въпроси

Какво става, ако касата е офлайн? Маркирането е позволено, плащането — не. Номерът на бона и хешът идват от сървъра: без връзка бонът не може да стане фискален документ. Черновата на бона остава на устройството ви и тръгва веднага щом връзката се появи.

Виждам сторниране в дневния си оборот. Брои ли се двойно? Не. В отчетите за оборота отпадат както оригиналът, така и сторнирането. Ако отпадаше само оригиналът, отрицателното сторниране би направило дневния оборот твърде нисък.