
Fiskalizacija HR для WooCommerce — фіскалізація чеків у CIS Porezne uprave (ZKI, JIR, QR)
Хорватська фіскалізація чеків для WooCommerce: захисний код ZKI, підписаний запит у сервіс CIS податкової (Porezna uprava) вашим аплікаційним сертифікатом, JIR і QR-код у замовленні, на сторінці подяки й у листах клієнту. Нумерація без пропусків, ПДВ за ставками, пізня доставка, коли CIS недоступний, реєстр чеків. Pro — storno-чеки на повернення, OIB покупця на чекауті, PDF Invoices, CSV і сповіщення.
- Сумісність
- WooCommerce 7.0+ (перевірено на 11.2) · WordPress 6.2+ (перевірено на 7.1) · PHP 7.4+ з OpenSSL (прогін на 7.4 і 8.3) · HPOS · класичний і блоковий чекаут · CIS: специфікація v2.7, WSDL/XSD 1.10
- Ліцензія
- один сайт, річна
- Тріал
- 7 днів, без картки, один на сайт
- Оновлено
- жовтень 2026
Що є в Free,
а що дає Pro
Безкоштовна версія працює без обмеження в часі. Pro додає решту функцій з таблиці.

Тріал стартує, коли ви попросите
Свіжий інстал — безкоштовна версія, нічого не вмикається само. Кнопка «Спробувати Pro 7 днів» → e-mail → ключ одразу у вікні і листом.

Один ключ — один сайт
Переносите магазин — відв’яжіть ліцензію на старому домені й активуйте на новому самі. Для студій — ключі на 5, 25 сайтів або без обмежень.
Технічні вимоги
WooCommerce 7.0+ (перевірено на 11.2), класичний або блоковий чекаут, сумісність з HPOS
WordPress 6.2+ (перевірено на 7.1) · PHP 7.4+ з OpenSSL і DOM (прогін на PHP 7.4 і 8.3)
Валюта магазину — EUR; замовлення в інших валютах і на 0 € плагін пропускає
Аплікаційний сертифікат для фіскалізації на ваш OIB (FINA або інший довірений постачальник): DEMO для тесту, робочий для продакшну. Старі .p12 з шифруванням RC2/3DES PHP з OpenSSL 3 не читає — плагін підкаже перевипустити або перепакувати файл
Пословний простір вебмагазину, зареєстрований у ePorezna
Податки WooCommerce з хорватськими ставками (25/13/5/0 %)
Не робить: eRačun і Fiskalizacija 2.0 між фірмами, eIzvještavanje, реєстрацію пословного простору; продажі OSS з іноземними ставками ПДВ CIS не приймає — такі замовлення не фіскалізуються, причину видно в реєстрі
Мови плагіна: англійська й хорватська. Українською інтерфейс не перекладено — плагін зроблено для хорватських магазинів.
Історія версій
Фіскалізація чеків у CIS за специфікацією v2.7 і WSDL/XSD 1.10.
Разом з Fiskalizacija HR для WooCommerce купують
4 модулі одним замовленням — на 40% дешевше, ніж окремо


Nova Poshta Premium — Нова Пошта для WooCommerce

Mono Acquiring — оплата карткою monobank для WooCommerce

Telegram-сповіщення і Viber/SMS покупцям для WooCommerce
Повний опис модуля
Fiskalizacija HR для WooCommerce — плагін для інтернет-магазинів у Хорватії, які продають на WooCommerce. У Хорватії кожен чек кінцевому покупцеві має бути фіскалізований, хоч би як він платив: з 1 січня 2026 року це стосується й оплати на рахунок. Магазин рахує захисний код ZKI, надсилає підписаний чек у сервіс фіскалізації CIS податкової (Porezna uprava) і друкує на чеку ідентифікатор JIR та QR-код. Плагін робить це для замовлень WooCommerce напряму в CIS вашим аплікаційним сертифікатом, без стороннього сервісу рахунків посередині й без щомісячної підписки.
Магазин на OpenCart? Для нього є окрема версія — Fiskalizacija HR для OpenCart (4.x, 3.x і 2.3), з тим самим підписом, ZKI і форматом запиту; ліцензія для OpenCart — одна оплата, назавжди.
Що потрібно від вас. OIB фірми або обрту; вебмагазин, зареєстрований як пословний простір у ePorezna (плагін цього не робить — потрібна лише позначка простору, наприклад WEB1); аплікаційний сертифікат для фіскалізації, виданий на ваш OIB довіреним постачальником, наприклад FINA. Тестове середовище CIS приймає лише DEMO-сертифікати, робоче — лише робочі. Валюта магазину — EUR.
Чесно про перевірку. Плагін перевірено за офіційною технічною специфікацією CIS «Tehnička specifikacija za korisnike» v2.7 і схемою FiskalizacijaSchema / WSDL 1.10: кожен згенерований запит — звичайні чеки, пізня доставка, storno з мінусами, чеки з OIB покупця — пройшов офіційну XSD і незалежну перевірку підпису, кожен ZKI перераховано окремо. Повний прогін ішов на локальному магазині WooCommerce (PHP 7.4 і 8.3, HPOS увімкнено й вимкнено, класичний і блоковий чекаут) з моделлю відповідей CIS: успіх, відмови s001–s006 і s013, недоступність, зламані відповіді. Справжній тестовий сервер CIS відповідав нам лише без DEMO-сертифіката: щоб отримати його, потрібен хорватський OIB, якого в CatCode нема. Тому живий JIR ви отримаєте у своєму 7-денному тріалі Pro з DEMO-сертифікатом FINA — податкова й так радить щонайменше два дні стабільної роботи в тестовому середовищі перед переходом на робоче. Якщо CIS відповість не так, як описано в специфікації, виправимо оперативно.
Відповідальність за дані чека лишається за магазином. Плагін бере суми й податки із замовлення WooCommerce, а систему ПДВ, позначки приміщення й пристрою, оператора, способи оплати й категорію для рядків без ПДВ — з ваших налаштувань. Звірте ці налаштування з бухгалтером до переходу на робоче середовище.
Як це виглядає для покупця
Після оплати на сторінці подяки з’являється блок «Fiskalizirani račun»: номер чека у форматі broj/prostor/uređaj, дата й час, спосіб оплати, оператор, ZKI, JIR і QR-код з посиланням на перевірку чека на porezna.gov.hr. Той самий блок є в «Мій акаунт» у замовленні клієнта.
Фіскальні дані й QR-код ідуть і в листи WooCommerce клієнту — «В обробці», «Виконано», рахунок, повернення. QR-код у листі — картинка PNG. Блок на сторінці й у листах можна вимкнути окремо.
Pro. На класичному і блоковому чекауті з’являється поле «OIB tvrtke (za B2B račun)» — для фірм, що платять карткою чи готівкою й хочуть свій OIB на чеку. Плагін перевіряє контрольну цифру OIB: хибний номер не дасть оформити замовлення, з поясненням хорватською. Поле можна сховати, зробити необов’язковим або обов’язковим для B2B-магазину.
Що отримує адмін
- WooCommerce → Fiskalizacija з вкладками «Receipts», «Settings» і «Licence» (у хорватській адмінці — Računi, Postavke, Licenca).
- Реєстр чеків: номер і дата, замовлення, сума, спосіб оплати, статус («Fiskaliziran (JIR)», у черзі, відхилений), ZKI і JIR, текст помилки CIS; фільтр за статусом і пошук за номером чи замовленням.
- «Deliver waiting receipts now» надсилає чергу одразу, не чекаючи крону, а «Send all refused receipts again» і «Send again» на окремому чеку — відхилені чеки після виправлення налаштувань.
- Зверху сторінки видно середовище (TEST або PRODUCTION) і повідомлення, якщо CIS відхилив чеки.
Сторінка чека показує все, що пішло в CIS і повернулось: середовище, статус, ZKI, JIR, чи перевірено підпис відповіді, кількість спроб, ідентифікатор останнього повідомлення, а нижче — останній запит і остання відповідь XML. У тестовому середовищі є кнопка «Check at CIS test» — метод provjera, яким CIS звіряє чек без фіскалізації.
У кожному замовленні — блок «Fiskalizacija» з номером, сумою, статусом, ZKI, JIR і QR-кодом, а нотатки замовлення фіксують кожен крок: видано чек, фіскалізовано, у черзі, відхилено.
Як це працює — крок за кроком
- Пословний простір. Ви реєструєте вебмагазин у ePorezna і записуєте його позначку (наприклад, WEB1) — у плагіні вона має бути точно такою.
- Налаштування. OIB обвезника, чи ви в системі ПДВ, позначка простору, номер пристрою, послідовність нумерації (за простором або пристроєм), рестарт 1 січня, оператор, статус замовлення, на якому видається чек, і останній використаний номер, якщо продовжуєте серію з іншої програми.
- Сертифікат. Завантажте .p12 з паролем — для тесту DEMO, для робочого середовища робочий. Плагін показує власника й строк дії сертифіката, попереджає, якщо OIB у ньому не збігається з OIB обвезника (CIS відхилив би такі чеки з s005), і зберігає приватний ключ зашифрованим. «Check connection to CIS» перевіряє зв’язок методом echo.
- Замовлення. Коли замовлення стає «В обробці» або «Виконано» (як оберете), плагін перевіряє суми й ставки локально, лише тоді бере наступний номер, рахує ZKI, будує й підписує RacunZahtjev і надсилає його в CIS.
- Відповідь. CIS повертає JIR — плагін перевіряє підпис відповіді, зберігає JIR у замовленні й показує чек клієнту. Помилка s001–s005 чи s013 — чек «відхилено», причину видно в реєстрі, «Send again» після виправлення.
- Збій зв’язку. CIS не відповів за кілька секунд (типово 8) — чек уже дійсний із ZKI, клієнт його бачить, а плагін доставляє його пізніше з позначкою NakDost і новим ідентифікатором повідомлення, з наростаючою паузою між спробами.
ПДВ береться з податкових рядків кожного замовлення й групується за ставкою — 25 %, 13 %, 5 % або 0 %. Ставку, якої CIS не приймає (наприклад, 19 %), плагін зупиняє ще до відправки, номер не витрачається. Рядки без податку йдуть як звільнення від ПДВ, «не підлягає оподаткуванню» або 0 % — як оберете; збори з назвою на кшталт «povratna naknada» — як Naknade. Копійки округлення між рядками й підсумком замовлення плагін зводить так, щоб сума чека збігалась до цента. Спосіб оплати задається для кожного шлюзу: G готівка, K картка, T рахунок, O інше.
Pro. Повернення WooCommerce — повне, часткове по позиціях або лише сумою — дає storno-чек з мінусовими сумами за тими самими ставками ПДВ; кожне наступне повернення «лише сумою» рахується від залишку після попередніх storno. Фіскальні дані й QR-код (25×25 мм) додаються в рахунки плагіна PDF Invoices & Packing Slips. Реєстр вивантажується в CSV (UTF-8 з BOM, роздільник «;», десяткова кома), а на вказану адресу приходять листи, коли CIS відхилив чек або недоступний.
Що під капотом
- CIS: RacunZahtjev (фіскалізація), ProvjeraZahtjev (перевірка, лише тест), echo (зв’язок); адреси cistest.apis-it.hr:8449 і cis.porezna-uprava.hr:8449.
- ZKI — MD5 від підпису RSA-SHA256 рядка OIB + дата й час + номер + простір + пристрій + сума, як у розділі 12 специфікації v2.7.
- Підпис запиту — enveloped XMLDSig: Exclusive C14N, RSA-SHA256, дайджест SHA-256. RSA-SHA1 не використовується: тестовий CIS відхиляє його з 1 липня 2026, робочий — з 1 січня 2027.
- TLS і відповідь: з’єднання перевіряється за вкладеними сертифікатами FINA (Fina RDC 2020, Fina Demo CA 2020), підпис відповіді — за сертифікатом fiskalcis. Після заміни CA сертифікати оновлюються з новою версією або фільтром
ccfh_ca_file. - Нумерація з блокуванням: паралельні замовлення не отримують однакового номера й не лишають дірок; окремі лічильники для тесту й продакшну.
- Черга — Action Scheduler WooCommerce (або WP-Cron) з наростаючою паузою; чеки старші за 30 днів не надсилаються (CIS їх відхиляє).
- Сертифікат: приватний ключ зберігається в базі зашифрованим AES-256 ключем, похідним від солей сайту, або як файл поза веб-коренем через
CCFH_CERT_FILEіCCFH_CERT_PASSWORDу wp-config.php. - Модель CIS: константа
CCFH_CIS_MOCK(ok, down, s002, s004, s006, s013) моделює відповіді лише в тестовому середовищі — щоб перевірити магазин до отримання сертифіката. - Видалення плагіна прибирає сертифікати й завдання крону; реєстр, лічильники й налаштування лишаються як податкові записи. Константа
CCFH_DELETE_DATAприбирає й їх.
Як встановити
- Плагіни → Додати новий → Завантажити плагін: оберіть
catcode-fiskalizacija-hr-for-woocommerce-1.0.0.zipі активуйте (WooCommerce має бути активний). - Зареєструйте вебмагазин як пословний простір у ePorezna і запишіть його позначку.
- WooCommerce → Fiskalizacija → Settings: OIB обвезника, система ПДВ, позначка простору, номер пристрою, оператор, способи оплати.
- Завантажте DEMO-сертифікат .p12 з паролем і натисніть «Check connection to CIS».
- Оформіть тестові замовлення, перевірте чеки в реєстрі й кнопкою «Check at CIS test».
- Покажіть налаштування бухгалтеру, перемкніть середовище на Production і завантажте робочий сертифікат.
- Для Pro: вставте ліцензійний ключ з листа після оплати або запустіть 7-денний тріал у вкладці «Licence».
Питання
про модуль
Не знайшли відповідь? Напишіть у Telegram — відповімо протягом робочого дня.
Що потрібно, щоб почати?
OIB вашої фірми або обрту, вебмагазин, зареєстрований як пословний простір у ePorezna, і аплікаційний сертифікат для фіскалізації від довіреного постачальника (наприклад, FINA). Для тестового середовища CIS — DEMO-сертифікат, для робочого — робочий. Валюта магазину — EUR.
На чому плагін перевірено?
За офіційною технічною специфікацією CIS v2.7 і схемою FiskalizacijaSchema / WSDL 1.10: кожен згенерований запит пройшов офіційну XSD і перевірку підпису, кожен ZKI перераховано незалежно. Відповіді CIS у тесті моделювались — з успіхом, відмовами s001–s013, недоступністю. Справжній тестовий сервер CIS ми досягали лише без DEMO-сертифіката: для нього потрібен хорватський OIB. Живий JIR отримаєте у своєму 7-денному тріалі Pro з DEMO-сертифікатом FINA.
Що як CIS не відповідає, коли покупець платить?
Чек видається з ZKI (він є і в QR-коді) і доставляється автоматично, щойно CIS відповідає, з позначкою пізньої доставки. Закон (Zakon o fiskalizaciji NN 89/2025, čl. 21) дає на це два робочі дні від збою; чеки старші за 30 днів CIS технічно відхиляє.
Які ставки ПДВ підтримуються?
Ті, що приймає CIS: 0, 5, 13 і 25 %. Рядки без податку йдуть як звільнення, «не підлягає оподаткуванню» або 0 % — як оберете в налаштуваннях. Яка категорія правильна для ваших товарів, вирішує бухгалтер.
Чи робить плагін e-рахунки між фірмами (eRačun, Fiskalizacija 2.0 B2B)?
Ні. Плагін фіскалізує чеки кінцевим покупцям. eRačun, eIzvještavanje і реєстрацію пословного простору в ePorezna він не робить.
Хто відповідає за дані чека?
Магазин. Плагін бере дані з замовлення WooCommerce і з ваших налаштувань: системи ПДВ, позначки приміщення й пристрою, способів оплати, оператора. Звірте налаштування з бухгалтером до переходу на робоче середовище.
Поки що жодного відгуку. Будьте першим.
Поки питань немає. Запитай — ми відповімо протягом 24 годин.
Не той варіант, що шукаєте?
Робимо кастомні модулі під WordPress, WooCommerce, OpenCart і Shopify. Розкажіть про задачу — підготуємо оцінку.
Замовити кастомний модуль
Купівля модуля
—



