Бібліотека для роботи з Програмним реєстратором розрахункових операцій (ПРРО) відповідно до законодавства України. Реєструє та відправляє фіскальні чеки до сервера ДПС, друкує їх на ESC/POS-принтерах.
Доступна у двох варіантах:
| Варіант | Платформа | Інтерфейс | Файл |
|---|---|---|---|
| ProCheck (COM/OLE) | Windows | COM Automation | ProCheck.dll |
| CrossLib | Linux / Windows / Android / ARM | C-API (cdecl/stdcall) | libprocheck.so / procheck.dll |
📘 Повна документація API: документация OLE/COM API
☁️ Хмарний API: ProCheckCloud API для клієнтів та приклади клієнтів
Зокрема:
DataFields[Index] (розділ 8)Зареєструвати DLL від імені адміністратора:
regsvr32 ProCheck.dll
Використати з будь-якої мови, що підтримує COM:
// Delphi
uses ComObj;
var RRO: OleVariant;
begin
RRO := CreateOleObject('ProCheck.ProgramRRO');
RRO.Connect(4000154869, 'COM3', 115200);
RRO.OpenReceipt(0, '');
RRO.Sale(1001, 'Молоко', 35.50, 1, 1, 0, 0);
RRO.Pay(0, 0);
RRO.CloseReceipt;
ShowMessage('Чек #' + RRO.DataFields[4] + ' пробито');
end;
Покласти libprocheck.so поруч із застосунком і викликати через C-API:
#include "procheck.h"
int main() {
ConnectLan(4000154869LL, "192.168.1.100", 9100); // мережевий ESC/POS
OpenReceipt(0, "");
Sale(1001, "Молоко", 35.50, 1, 1, 0, 0);
Pay(0, 0);
CloseReceipt();
printf("Чек #%s пробито\n", GetDataField(4));
Disconnect();
}
Готові робочі приклади з повним циклом пробиття чека:
| Папка | Мова | Опис |
|---|---|---|
Demo/GCC/ |
C / GCC | Linux, з build.sh |
Demo/Python/ |
Python 3 | через ctypes |
Demo/CSharp/ |
C# / .NET 6+ | через P/Invoke |
Demo/Swift/ |
Swift (macOS / iOS) | через SPM + module.modulemap |
Кожен приклад: підключення → відкриття чека → дві позиції → оплата готівкою → закриття → читання результату через GetDataField.