Перейти до основного вмісту

Фіскалізація (ПРРО)

Модуль Fiscal перетворює оплачені замовлення на фіскальні чеки через програмний РРО Вчасно.Каса (kasa.vchasno.ua). Нічого не надсилається синхронно: оплачене замовлення потрапляє в чергу чеків, черга опрацьовується у фоні, а покупець отримує лист із посиланням на чек. Модуль вбудований в ECMS9 і «увімкнений» рівно тоді, коли збережено токен каси — з порожнім токеном він не робить жодних запитів.

Сторінка налаштувань — Фіскалізація (ПРРО) у списку модулів (відкривається /admin/fiscal).

Що робить модуль​

  • Чеки продажу — реєструються, коли замовлення стає оплаченим.
  • Чеки повернення — стають у чергу, коли з уже фіскалізованого замовлення знімають оплату (окремий перемикач), або вручну по конкретному замовленню.
  • Зміни каси — перед першим чеком дня зміна відкривається автоматично; нічна задача її закриває (Z-звіт). Зміна ПРРО не може бути відкрита довше 24 годин.
  • Коди УКТ ЗЕД для підакцизних товарів (алкоголь, тютюн, пальне) беруться з кастом-поля товару і передаються в рядку чека.
  • PDF / друк чека — на сторінці замовлення картка «Фіскальний чек (ПРРО)» показує кожен чек із кнопками Відкрити чек (публічний переглядач Вчасно) і Друк чека (готовий PDF — друкуйте з переглядача).
  • Лист покупцю — після чека продажу покупець отримує лист за шаблоном fiscal_receipt з посиланням на чек і вкладеним PDF (якщо в замовленні коректний e-mail і є поштовий модуль).

Коли чек стає в чергу​

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

  • платіжний шлюз підтвердив оплату (LiqPay, Mono, WayForPay та інші онлайн- способи);
  • менеджер позначив замовлення оплаченим у формі замовлення або в списку;
  • менеджер перевів замовлення у статус, який означає «оплачено» (статус №2 за правилом магазину) — модуль перевіряє підсумковий прапорець оплати.

Кілька подій по одному замовленню не шкодять: черга дедуплікує за замовленням + типом чека. Чек повернення ставиться лише на явну зміну «оплачено → не оплачено» і лише якщо увімкнено відповідний перемикач — звичайні переходи статусів повернень не створюють.

Способи оплати, які не фіскалізуються

Накладений платіж у перевізника (Нова Пошта тощо) фіскалізує сам перевізник. Поставте таким способам Не фіскалізувати — замовлення позначиться в черзі як «Пропущено», чек не надсилається.

Налаштування​

Картка Підключення:

Налаштування модуля фіскалізації

ПолеЗначення
Токен касиТокен бойової каси з кабінету Вчасно.Каса (Торгові точки та каси → шестерня → Токен).
Токен тестової касиТокен тестової каси, яку видають при реєстрації.
Тестовий режим (використовувати тестову касу)Усе йде на тестову касу — для пробного прогону.
ПІБ касира (необов’язково)Друкується в чеку.
Мітка джерела (видно у Вчасно.Каса)Як сайт підписаний у кабінеті; типово CMS9.

Перевірити з'єднання перевіряє токен і показує стан зміни (відкрита / закрита).

Картка Поведінка:

ПолеТиповоЗначення
Автоматично фіскалізувати замовлення при оплатіувімк.Головний перемикач автоматичних чеків продажу.
Ставити чек повернення, коли з фіскалізованого замовлення знімають оплатувимк.Чек повернення на «оплачено → не оплачено».
Тип оплати за замовчуваннямБезготівкаБезготівка / Картка / Готівка — для способів оплати без власного зіставлення.
Податкова група за замовчуванням (з кабінету Вчасно.Каса)1Номер податкової групи, налаштованої в кабінеті.
Додавати платну доставку окремим рядком чекаувімк.Вартість доставки стає окремим рядком чека.
Кастом-поле товару з кодом УКТ ЗЕД (підакцизні товари)uktzedНазва кастом-поля товару; порожньо = код не передавати.
Мапа способів оплати—Для кожного способу оплати магазину: За замовчуванням / Безготівка / Картка / Готівка / Не фіскалізувати.
Робоча мапа

Картка й онлайн-оплати → Безготівка, готівка при самовивозі → Готівка, накладений платіж перевізника → Не фіскалізувати. Усе решта бере тип оплати за замовчуванням.

Фонові задачі​

Чергу опрацьовують дві задачі, які видно в Налаштування → Планувальник:

  • ПРРО: черга чеків (fiscal:process) — кожні 5 хвилин; реєструє чеки, що настали, і відкриває зміну, якщо треба. Невдалий чек повторюється зі зростаючою паузою (5 хвилин × кількість спроб), до 5 спроб, після чого позначається «Помилка».
  • ПРРО: закриття зміни (Z-звіт) (fiscal:close-shift) — щодня о 23:50; уже закрита зміна вважається успіхом.

Інструкція на сторінці налаштувань показує й рівнозначні крон-рядки для сервера, де ви волієте справжній cron. Кнопка Опрацювати чергу на сторінці налаштувань запускає чергу негайно, не чекаючи розкладу.

Стан черги та помилки​

Картка Черга чеків (останні 20) на сторінці налаштувань показує кожну задачу: замовлення, тип (Чек продажу / Чек повернення), статус (Очікує, Обробляється, Виконано, Помилка, Пропущено), кількість спроб, посилання Відкрити чек і текст останньої помилки. У задач зі статусом «Помилка» і «Пропущено» є кнопка Повторити, яка повертає їх у чергу. Те саме по одному замовленню видно в картці «Фіскальний чек (ПРРО)» на сторінці його редагування.

Перед запуском у бій

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