Сервіс працює

Перевірка фіскальних чеків одним запитом

REST API, що звертається до реєстру Державної податкової служби, повертає чек у текстовому та XML-вигляді, кешує результат і веде прозорий облік витрачених запитів.

HTTP Basic · JSON · без SDK і залежностей

200 OK · 1.08 c
$ curl -u login:pass \
   'https://chequechecker.tech/cheque_info?…'

{
  "success": true,
  "fromDFS": false,
  "error": null,
  "check": "ICAgINCi0J7QkiDCq9Cc0JjQlNCb…",
  "checkXml": "<CHECK>…</CHECK>"
}
Можливості

Усе, що потрібно для роботи з чеками

Один ендпоінт для перевірки, другий — для контролю залишку. Решту сервіс бере на себе.

Дані просто з реєстру

Сервіс звертається до реєстру фіскальних чеків ДПС і повертає відповідь без змін — у текстовому вигляді та повним XML.

Кеш без подвійної оплати

Уже перевірений чек віддається з локальної бази за мілісекунди й не списує баланс. Потрібні свіжі дані — додайте forced=1.

Прозорий облік

Знайдений чек — 1 запит, помилка реєстру — 0,5, кеш — безкоштовно. Залишок доступний окремим викликом і в панелі.

Панель зі статистикою

Дашборди, журнал запитів із розкодованим чеком, помилки, найактивніші каси та live-моніторинг подій у реальному часі.

Готова колекція

Postman і OpenAPI 3.0 з описами всіх полів і збереженими прикладами відповідей. Імпорт — і можна пробувати.

Проста автентифікація

HTTP Basic поверх TLS. Жодних токенів, оновлень і SDK — працює з будь-якої мови та з curl.

Як працює

Від реквізитів чека до відповіді

1

Реквізити чека

Зчитайте з QR-коду або самого чека чотири значення: ідентифікатор, дату й час, фіскальний номер каси та суму.

2

Запит до сервісу

Один GET із HTTP Basic. Сервіс спершу шукає чек у власній базі й лише потім звертається до реєстру.

3

Відповідь

JSON із текстовим чеком у base64 та XML. Поле fromDFS показує, звідки взято дані.

4

Контроль

Кожне звернення потрапляє в журнал панелі: статус, тривалість, списання з балансу.

Панель керування

Усе про ваші чеки — на одному екрані

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

01

Огляд

Головні цифри одразу на вході: скільки перевірок лишилося, скільки чеків пройшло сьогодні та на яку суму. Без звітів і вивантажень.

  • Одразу видно, чи не закінчуються перевірки
  • Графіки показують, коли чеків більше, а коли менше
  • Тиждень, місяць, квартал чи рік — одним натисканням
chequechecker.tech/admin/
Головна сторінка панелі: залишок перевірок, кількість чеків за день і графіки
02

Усе видно наживо

Кожна перевірка зʼявляється на екрані тієї ж миті, коли відбувається. Сторінку оновлювати не треба.

  • Стрічка показує кожен чек: касу, суму й результат
  • Лічильники за добу й за годину рахуються самі
  • Зручно тримати відкритою на другому екрані
chequechecker.tech/admin/#live
Сторінка «Наживо»: лічильники за добу та стрічка перевірок, що відбуваються зараз
03

Чеки з товарами, а не купа тексту

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

  • Натисніть рядок — побачите, що саме купували
  • Знайдіть усі чеки, у яких був потрібний товар
  • Відберіть за датою, продавцем чи касою
chequechecker.tech/admin/#cheques
Сторінка «Чеки»: таблиця чеків із розгорнутим переліком товарів
04

Перевірити чек — за пів хвилини

Скануйте QR-код із чека, вставте посилання — і дані заповняться самі. Відповідь читається як звичайний чек, а не як набір кодів.

  • Продавець, адреса, товари, оплата й податки — усе поруч
  • Одразу видно, чи такий чек узагалі є в ДПС
  • Нічого встановлювати не треба — працює у браузері
chequechecker.tech/admin/#checker
Сторінка «Перевірка»: форма з даними чека та відповідь у зрозумілому вигляді
Приклад

Інтеграція за кілька рядків

Жодних бібліотек — звичайний HTTP-запит із заголовком Authorization.


				
{
  "success": true,
  "errorMessage": null,
  "message": null,
  "fromDFS": true,        // дані з реєстру
  "error": null,
  "error_description": null,
  "check": "ICAgINCi0J7QkiDCq9Cc0JjQlNCb…",
  "checkXml": "<?xml version=\"1.0\"?><CHECK>…"
}

// check — це base64. Розкодування в JS:
new TextDecoder().decode(
  Uint8Array.from(atob(data.check), c => c.charCodeAt(0))
)

Колекція та специфікація

Postman Collection v2.1 і OpenAPI 3.0 з описом кожного параметра й поля відповіді, збереженими прикладами та готовими змінними оточення. Обидва файли генеруються з однієї специфікації, тож не розходяться з документацією.