Multi PRRO Connector — фіскалізація чеків для OpenCart 2.3, 3.x & 4.x
Фіскалізація чеків OpenCart через Вчасно.Касу і Checkbox із резервним перемиканням: автоматичний чек за статусом замовлення, зміни за розкладом, журнал і лист покупцю. Збірки для 2.3, 3.x і 4.x. Базова версія безкоштовна; Pro додає чеки повернення на частину замовлення, повернення через API Вчасно, повтор чека з журналу і звірку змін із Z-звітом.
Що включено в ліцензії
| Функція | Free | Pro |
|---|---|---|
| Автоматичний фіскальний чек при переході замовлення в заданий статус | ✔ | ✔ |
| Дві каси в одному модулі: Вчасно.Каса і Checkbox, з резервним перемиканням | ✔ | ✔ |
| Відкриття та закриття зміни за розкладом, Z-звіт при закритті | ✔ | ✔ |
| Журнал чеків зі статусами, помилками й посиланням на чек | ✔ | ✔ |
| УКТЗЕД для окремих товарів і код за замовчуванням | ✔ | ✔ |
| Лист покупцю з посиланням на чек | ✔ | ✔ |
| Збірки для OpenCart 2.3, 3.x і 4.x — одна ліцензія на всі | ✔ | ✔ |
| Чек повернення на частину замовлення | — | ✔ |
| Повернення через API Вчасно.Каса | — | ✔ |
| Повтор невдалого чека з журналу | — | ✔ |
| Звірка змін: Z-звіт проти суми чеків | — | ✔ |
Multi PRRO Connector для OpenCart — модуль фіскалізації для OpenCart 2.3, 3.x та 4.x, який під’єднує магазин до українських програмних РРО і автоматично пробиває фіскальний чек, коли замовлення переходить у заданий статус (наприклад, «В обробці» після онлайн-оплати). Чеки, зміни каси, Z-звіти й сповіщення покупцю — все з адмінки OpenCart, без ручного копіювання даних у кабінет каси.
Модуль повністю безкоштовний. Завантажити з офіційного OpenCart marketplace: opencart.com/…/extension_id=48662.
Що отримує адмін





Інтегровані каси
- Вчасно.Каса — чеки продажу, відкриття/закриття касової зміни з Z-звітом, перевірка ключа.
- Checkbox — чеки продажу та повернення, зміни, перевірка ключа.
Основна каса + резервна (fallback): якщо основна недоступна, чек автоматично йде через запасну — замовлення не залишиться без фіскалізації через збій одного сервісу.
Як це працює — крок за кроком
- Покупець оплачує замовлення — карткою онлайн чи післяплатою; модуль сам визначає за списком методів оплати, що фіскалізувати як готівку, а що як безготівку.
- Замовлення переходить у статус-тригер (наприклад, «В обробці» після callback-а платіжки).
- Модуль формує чек — позиції, доставка (за бажанням), коди УКТЗЕД, пропуск нульових позицій — і надсилає його в основну касу; якщо вона мовчить, спрацьовує резервна.
- Фіскальний номер повертається у замовлення і пишеться у журнал чеків в адмінці.
- Покупець отримує чек на email та, опційно, SMS через TurboSMS.
- При поверненні замовлення у статус повернення модуль пробиває чек повернення.
Що входить у безкоштовну версію, а що в Pro
Сама фіскалізація безкоштовна й лишається такою: автоматичний чек за статусом замовлення, дві каси з резервним перемиканням, зміни за розкладом і Z-звіт, журнал чеків, лист покупцю, УКТЗЕД по товарах. Це те, що вже лежить у каталозі OpenCart, і воно нікуди не переїжджає.
Pro-ліцензія додає те, що потрібно магазину, коли починаються повернення:
- Чек повернення на частину замовлення. В OpenCart немає окремої сутності повернення, тому сума задається прямо в журналі: повернули одну позицію, доставку або довільну суму — модуль пробиває окремий чек і привʼязує його до чека продажу. Кілька часткових повернень одного замовлення — кілька документів.
- Повернення через API Вчасно.Каса. Без Pro такий чек доводиться пробивати руками в кабінеті сервісу.
- Повтор чека з журналу. Каса була недоступна або зміна закрилась — одна кнопка на рядку. Чек, який уже пройшов, повторно в ПРРО не піде.
- Звірка змін. Кожен Z-звіт проти суми чеків журналу (продажі мінус повернення) з підсвіченою розбіжністю — саме там видно чек, пробитий повз магазин.
Скільки коштує
2 490 грн — разова покупка. Ліцензія безстрокова: платите один раз, оновлення й технічна підтримка входять у ціну. Один ключ — один домен і його піддомени.
Переносите магазин на інший домен — деактивуйте ліцензію на старому й активуйте на новому самостійно в кабінеті.
Що під капотом
- API-ключі й паролі шифруються у БД через sodium_crypto_secretbox; значення, зашифроване в адмінці, читається і в catalog-, і в cron-контексті.
- Архітектура адаптерів: спільний інтерфейс провайдера, реєстр кас і ланцюжок основна → резервна.
- Керування зміною: ручні кнопки, авто-відкриття на першому продажу дня та розклад через системний cron — точний час HH:MM, а не «раз на годину» від планувальника OpenCart.
- Журнали в адмінці: окремо чеки й окремо зміни/Z-звіти — видно, що і коли пробилося, без входу в кабінет каси.
Як встановити
- Завантажте
prro_connector.ocmod.zipчерез «Розширення → Інсталятор». Для OpenCart 3.0.x — збіркуprro_connector-oc3.ocmod.zip, для 2.3 —cc_prro-oc2.ocmod.zip. - OpenCart 2.3: штатний Інсталятор тієї версії копіює файли тільки по FTP, тому вміст теки
upload/з архіву заливається в корінь магазину вручну, а далі — «Розширення → Модулі → Install». - Увімкніть модуль у «Розширення → Модулі» і відкрийте його налаштування.
- На вкладці каси введіть API-ключ і фіскальний номер ПРРО з кабінету Вчасно або Checkbox, натисніть «Перевірити зв’язок».
- У загальних налаштуваннях оберіть статус-тригер, основну/резервну касу та методи оплати, що йдуть як готівка.
- Пробийте тестовий чек на копійчаному замовленні й перевірте журнал чеків — має з’явитися рядок з фіскальним номером.
Історія версій
- 1.1.0 — серпень 2026
- Зʼявився Pro-рівень; безкоштовна частина не змінилась. Pro: чек повернення на частину замовлення прямо з журналу, повернення через API Вчасно.Каса замість ручного чека в кабінеті, повтор невдалого чека і звірка змін із Z-звітом. Повторна фіскалізація стала ідемпотентною: документ, який уже пройшов, удруге в касу не відправляється, а повернення завжди йде через ту касу, що пробила продаж.
- 1.0.0 — 5 серпня 2026
- Код УКТЗЕД тепер задається в картці товару (раніше працював лише код за замовчуванням). Виправлено сумісність із PHP 7.4 — через тип
mixedу обробнику події фіскалізація на 7.4 не спрацьовувала взагалі. Виправлено авто-керування зміною: OpenCart виконує всі прострочені cron-задачі в одному проході, через що зміна відкривалась і одразу закривалась Z-звітом. Додано cron-токен для ендпоінтів зміни, перевірку прав на сторінках і кнопці «Перевірити зв’язок», людські назви кас і статусів у журналах. - 1.0.1 — 10 серпня 2026 (OpenCart 4.x і 2.3)
- Виправлено переведення сум чека в гривню: гілка перерахунку не виконувалась узагалі через помилку в умові, тож магазин із негривневою базовою валютою пробивав чек на число базової валюти. Перевірено на стенді: замовлення на 180 USD тепер іде чеком на 7 470 грн.
- 1.0.0 — 10 серпня 2026 (OpenCart 3.x)
- Збірка для OpenCart 3.0.x підтягнута до рівня версій 4.x і 2.3. Код УКТЗЕД тепер задається в картці товару: таблиця для нього була, чек її читав, але записати код було нічим — працював лише код за замовчуванням. Суми чека переводяться в гривню за курсом замовлення — раніше гілка перерахунку не виконувалась узагалі через помилку в умові, тож магазин із негривневою базовою валютою пробивав чек на число базової валюти. Значення з форми (токен каси, пароль, cron-токен) більше не зберігаються екранованими, тому символи «&» і лапки в ключах працюють. Cron-ендпоінти зміни отримали токен, перевірку часу і захист від повторного виклику за добу. Нотатки в історії замовлення та лист покупцю тепер перекладаються мовою магазину.
- 1.0.0 — 9 серпня 2026 (OpenCart 2.3)
- Окрема збірка під OpenCart 2.3.0.0 – 2.3.0.2 з тим самим функціоналом. Суми чека тепер переводяться в гривню за курсом замовлення — магазин із негривневою базовою валютою пробивав чек на число базової. Системний cron для зміни каси, Захист cron-ендпоінтів токеном.
- 0.4.1 — липень 2026
- Перший публічний реліз для OpenCart: автофіскалізація при зміні статусу замовлення, каси Вчасно.Каса і Checkbox з fallback, чеки повернення, керування зміною (ручне, за розкладом, авто-відкриття на першому продажу), журнали чеків і Z-звітів, шифрування ключів у БД, УКТЗЕД-коди, email/SMS-чек покупцю. Збірки під OpenCart 4.0.2 – 4.1.x та 3.0.2 – 3.0.5.0.
Часті питання
Чи чіпає модуль вітрину або checkout?
Ні. Уся робота — в адмінці та на подіях зміни статусу замовлення. Тема і чекаут магазину не змінюються.
Що як зміна каси закрита, коли прийшло замовлення?
Модуль вміє авто-відкривати зміну на першому продажу дня, а також відкривати/закривати її за розкладом через системний cron. Ручні кнопки на сторінці «Зміни» теж є.
Як розділяються готівкові та безготівкові чеки?
У налаштуваннях задається список методів оплати, які трактуються як готівка (наприклад, cod для післяплати) — решта фіскалізується як картка/безготівка.
Чи підтримуються чеки повернення?
Так, через Checkbox — при переході замовлення у статус повернення. Для Вчасно.Каса повернення поки робиться в кабінеті сервісу.
У мене OpenCart 3 або 2.3 — підійде?
Так. Є окрема збірка під OpenCart 3.0.2 – 3.0.5.0 і окрема під 2.3.0.0 – 2.3.0.2 з тим самим функціоналом. У 2.3 немає власного планувальника, тому зміну каси за розкладом відкриває системний cron — два готові URL модуль показує прямо в налаштуваннях.
У якій валюті пробивається чек?
Завжди у гривні. Якщо базова валюта магазину не UAH, суми переводяться за курсом того замовлення — тобто чек збігається з тим, що покупець бачив на вітрині.
Що залишиться після видалення модуля?
Замовлення OpenCart не змінюються, а всі пробиті чеки і Z-звіти зберігаються у кабінеті вашого ПРРО-сервісу — фіскальні дані не втрачаються.
Чи вміє модуль пробивати чеки повернення?
Так. У безкоштовній версії чек повернення на всю суму замовлення пробиває Checkbox за статусом «повернено», а для Вчасно замовлення отримує нагадування зробити це в кабінеті. Pro пробиває чек повернення сам — у тому числі на частину замовлення й для Вчасно через API.
Питання щодо модуля?
Пишіть у Telegram — відповімо протягом робочого дня. Допоможемо з налаштуванням, сумісністю та активацією ключа.
Поки що жодного відгуку. Будь першим — нижче.
Залишити відгук
Відгук модерується перед публікацією — це звичайно займає до 24 годин.
Поки питань немає. Запитай — ми відповімо протягом 24 годин.
Поставити питання
Зазвичай відповідаємо протягом 24 годин у робочий час.
Купівля модуля
—