Программа является маленьким HTTP web-сервером и имеет встроенные драйвера ККМ.
Позволяет печатать/регистрировать чеки с мобильных устройств / планшетов или с настольного ПК из 1с одновременно.
Позволяет печатать/регистрировать чеки на KKM подключенных к другим ПК.
Есть возможность печати этикеток с штрих-кодами на принтерах этикеток.
Так-же возможно использовать ККМ в качестве принтера этикеток.
Технология использования — HTTP(Ajax/REST) запрос, данные передаются через JSON;
Возможности: Печать/регистрация чеков из браузера IE/Chrome и т.п.;
Протокол передачи данных: Печать/регистрация чеков по HTTP протоколу;
У 1с сейчас начинает появляется похожий функционал, но у 1с всегда должна установлена и запущена платформа 1с что требует как минимум лицензии на 1 продукт 1с или сетевую лицензию. Эта-же программа позволяет работать без лицензии 1с, например: В магазине чеки регистрируются с мобильной платформы (планшет) оффлайн и для складских операций используется тонкий клиент для удаленной базы через интернет. Такая схема позволяет магазину быть безопасной от наличия интернета.
Возможности:
- Данные для печати чеков принимаются через HTTP запрос в формате JSON. Возможен запуск программы как windows-сервис.
- Печатать различных штрих-кодов (в начале чека, в конце, на товар) даже если это не умеет делать ККМ.
- Типы печатаемых ШК: EAN13, CODE39, CODE128, PDF417, QR .
- Объединение нескольких ККМ в один пул который будет выглядеть для пользователя как 1 ККМ.
При печати на пул чек будет регистрироваться на различных ККМ входящих в пул по очереди.
При возникновении ошибки на одной ККМ она может автоматически блокироваться в пуле. - Переадресация чека на другой "ККМ web-сервер" для удалённой регистрации чека.
- Печать чека на принтер-чеках и ККМ без фискального регистратора.
- Печать чека на дисплее для отладки.
- Излечение (на некоторых ККМ) фискальной подписи чека (КПК) и возвращение его клиенту.
- Снятие Х и Z отчетов.
- Фискализация (Регистрация) ККТ.
- Внесение и изъятие денежных средств из кассы.
- Открытие денежного ящика.
- Запрос количества наличных средств в ККМ (по учету в ККМ).
- Логин пароль для пользователей и отдельно для администратора.
- Защищенное HTTPS соединение по вашему сертификату.
- Задание любого IP порта для сервера (По умолчанию 5893).
- Синхронная / Асинхронная работа. При асинхронной работе сервер сразу вернет управление. Результат выполнения операции можно запросить отдельно позже.
- Поддержка кросс-доменных вызовов для браузеров.
Новая версия (поддержка 54-ФЗ):
- Добавлен новый функционал по поддержке ККТ по 54фз с ФН и передачей информации в ОФД:
- Передача адреса (Email или телефон) в данные чека.
- Получение Web-ссылки на зарегистрированный чек в ОФД.
- Передача произволных полей в чек, являющихся неотемлемой частью договора купли/продажи оформляемой чеком.
- Передача данных по оператору/банковского агента/банковского субагента перевода денежных средств
- Возможность не печати чека на ленту.
- Возможность работы по нескольким системам налогообложения: возможность указать в чеке применяемую СНО.
- Печать не фискальных строк 4 шрифтами.
- Регистрация и передача в ОФД наименования товаров и Штрих-Код EAN13
- Новый отчет "Состояние расчетов и состояние связи с ОФД"
- Новый тип чека — строно (коррекция). теперь можно отсторнировать продажу в любое время! (не злоупотреблять — налоговая не спит!)
- Регистрация ККТ в ОФД.
- Открытие закрытие ФН.
- Изменение регистрационных данных.
- Передача данных в ОФД через COM порт по протоколу PPP Ethernet over USB
- Подключение ККТ по Ethernet протоколу.
- Получение списка ККМ.
- Поиск сетевых и локальных ККТ.
- API полностью совместим с новой версией UnitServer и KkmFactory.
- Интеграция с ЕГАИС — при регистрации чека возможно отправление данных в ЕГАИС чрез систему "Универсальный транспортный модуль ЕГАИС (УТМ)"
Поддерживаемые устройства (ККМ):
-
Протокол АТОЛ:
АТОЛ-22Ф/FPrint-22ПТК, АТОЛ-25Ф, АТОЛ-90Ф, АТОЛ-55Ф/FPrint-55ПТК,
АТОЛ-11Ф/FPrint-11ПТК, АТОЛ-77Ф/FPrint-77ПТК, АТОЛ-30Ф, FPrint-190АК . -
Протокол ШТРИХ-М:
ШТРИХ-М-01Ф, ШТРИХ-ON-LINE, ШТРИХ-ЛАЙТ-01Ф, ШТРИХ-ЛАЙТ-02Ф, ШТРИХ-М-02-Ф,
ШТРИХ-МИНИ-02Ф, ШТРИХ-ФР-02Ф, ШТРИХ-МИНИ-01Ф, РИТЕЙЛ-01Ф, ШТРИХ-ФР-01Ф -
Протокол Сервис-Плюс (только старые ККМ, новые ККТ пока не поддерживаются):
СП-101 (СП-101 К, СП-101 ФР-К), СП-402 (СП-402 К, СП-402 ФР-К),
СП-412, СП-413, СП-601 (СП-601 К, СП-601 ФР-К) -
ESC/POS принтеры чеков:
Принтеры этикеток, принтеры чеков (без фискального регистратора)
работающие по протоколу ESC/POS (COM, LTP порты, windos спулер печати)Windows принтер:
Принтеры этикеток, Принтеры чеков (без фискального регистратора)
работающие через windos спулер печати
Требование к системе:
-
Никакие другие сторонние драйвера ККМ не нужны! В программу включены собственные драйвера ККМ!
-
Сторонний Web-сервер (apache, iis) не нужен! Программа сама является маленьким HTTP сервером!
-
Операционная система- Windows 7, Windows 8, Windows 10.
-
Требуется установить .NET Framework 4.5.1 (Наверняка у Вас уже установлено).
-
Прочие требования предъявляемые ККМ к системе.
Пример кода на JavaScript для печати фискального чека:
//************************************************************************************** // Вызов команды на KkmServer //************************************************************************************** function ExecuteCommand( Async, // false - сервер вернет ответ только после выполнения команды. Если true то сразу после постановки команды в очередь Data, // Данные команды FunSuccess, // Функция выполняемая при успешном соединении FunError, // Функция выполняемая при ошибке соединения timeout) { if (FunSuccess === undefined) { FunSuccess = ExecuteSuccess; } if (timeout === undefined) { timeout = 60000; //Минута - некоторые драйверы при работе выполняют интерактивные действия с пользователем - тогда увеличте тайм-аут. } var JSon = $.toJSON(Data); $.support.cors = true; var jqXHRvar = $.ajax({ type: 'POST', async: true, timeout: timeout, url: UrlServer + ((UrlServer == "") ? window.location.protocol + "//" + window.location.host + "/" : "/") + 'Execute/' + ((Async) ? "async" : "sync"), crossDomain: true, dataType: 'json', contentType: 'application/json; charset=UTF-8', processData: false, data: JSon, headers: (User != "" || Password != "") ? { "Authorization": "Basic " + btoa(User + ":" + Password) } : "", success: FunSuccess, error: FunError }); } //************************************************************************************** // Печать тестового чека продажи //************************************************************************************** function RegisterCheck(NumDevice, TypeCheck, IsBarCode, Print) { // Подготовка данных команды var Data = { // Команда серверу Command: "RegisterCheck", //*********************************************************************************************************** // ПОЛЯ ПОИСКА УСТРОЙСТВА //*********************************************************************************************************** // Номер устройства. Если 0 то первое не блокированное на сервере NumDevice: NumDevice, // ИНН ККМ для поиска. Если "" то ККМ ищется только по NumDevice, // Если NumDevice = 0 а InnKkm заполнено то ККМ ищется только по InnKkm InnKkm: "", //--------------------------------------------- // Заводской номер ККМ для поиска. Если "" то ККМ ищется только по NumDevice, KktNumber: "", // ********************************************************************************************************** // Время (сек) ожидания выполнения команды. //Если За это время команда не выполнилась в статусе вернется результат "NotRun" или "Run" //Проверить результат еще не выполненной команды можно командой "GetRezult" //Если не указано или 0 - то значение по умолчанию 60 сек. // Поле не обязательно. Это поле можно указвать во всех командах Timeout: 30, // Уникальный идентификатор команды. Любая строка из 40 символов - должна быть уникальна для каждой подаваемой команды // По этому идентификатору можно запросить результат выполнения команды // Поле не обязательно IdCommand: guid(), // Это фискальный или не фискальный чек IsFiscalCheck: true, // Тип чека; // 0 – продажа; 10 – покупка; // 1 – возврат продажи; 11 - возврат покупки; // 8 - продажа только по ЕГАИС (обычный чек ККМ не печатается) // 9 - возврат продажи только по ЕГАИС (обычный чек ККМ не печатается) TypeCheck: TypeCheck, // Аннулировать открытый чек если ранее чек не был завершен до конца CancelOpenedCheck: true, // Не печатать чек на бумагу NotPrint: (Print == true) ? false : true, //true, // Продавец, тег ОФД 1021 CashierName: "Kазакова Н.А.", // Телефон или е-Майл покупателя, тег ОФД 1008 // Если чек не печатается (NotPrint = true) то указывать обязательно ClientAddress: "client@server.ru", // Система налогообложения (СНО) применяемая для чека // Если не указанно - система СНО настроенная в ККМ по умолчанию // 0: Общая ОСН // 1: Упрощенная УСН (Доход) // 2: Упрощенная УСН (Доход минус Расход) // 3: Единый налог на вмененный доход ЕНВД // 4: Единый сельскохозяйственный налог ЕСН // 5: Патентная система налогообложения // Комбинация разных СНО не возможна // Надо указывать если ККМ настроена на несколько систем СНО TaxVariant: "", // Дополниельные реквизиты чека (не обязательно): //1005 Адрес оператора по переводу денежных средств (Строка 100) //1016 ИНН оператора по переводу денежных средств (Строка 12) //1026 Наименование оператора по переводу денежных средств (Строка 64) //1044 Операция банковского агента (Строка 24) //1045 Операция банковского субагента (Строка 24) //1073 Телефон банковского агента (Строка 19) //1074 Телефон платежного агента (Строка 19) //1075 Телефона оператора по переводу денежных средств (Строка 19) //1082 Телефон банковского субагента (Строка 19) //1083 Телефон платежного субагента (Строка 19) //1119 Телефон оператора по приему платежей (Строка 19) CheckProps: [ { Print: true, PrintInHeader: true, Teg: 1005, Prop: "Москва, ул. Трехгорка д.13" }, { Print: true, PrintInHeader: true, Teg: 1010, Prop: 10.25 }, { Print: true, PrintInHeader: true, Teg: 1073, Prop: "8(985)775-44-61" }, ], // Дополнительные произвольные реквизиты (не обязательно) пока только 1 строка AdditionalProps: [ //{ Print: true, PrintInHeader: false, NameProp: "Номер транзакции", Prop: "234/154" }, { Print: true, PrintInHeader: false, NameProp: "Дата транзакции", Prop: "10.11.2024 10:30" }, ], // Это только для тестов: ClientId: "23FG4GV4D2956", // КПП организации, нужно только для ЕГАИС KPP: "782543005", // Строки чека CheckStrings: [ // Строка с печатью штрих-кода { BarCode: { // Тип штрих-кода: "EAN13", "CODE39", "CODE128","QR", "PDF417". BarcodeType: "PDF417", // Значение штрих-кода Barcode: "12345DFG Proba pera, Print barcode 1234567890", }, }, //При вставке в текст символов ">#10#<" строка при печати выровнеется по центру, где 10 - это на сколько меньше станет строка ККТ { PrintText: { Text: ">#2#<ООО "Рога и копыта", Font: 1, }, }, // При вставке в текст в середину строки символов "<#10#>" Левая часть строки будет выравнена по левому краю, правая по правому, где 10 - это на сколько меньше станет строка ККТ // При вставке в текст в середину строки символов "<#10#>>" Левая часть строки будет выравнена по правому краю, правая по правому, где 10 - отступ от правого клая { PrintText: { Text: "Пример №1 печати поля:<#16#>154,41" }, }, // Строка с печатью текста определенным шрифтом { PrintText: { Text: "Шрифт № 1", Font: 1, // 1-4, 0 - по настройкам ККМ Intensity: 15, // 1-15, 0 - по настройкам ККМ }, }, // Строка с печатью фискальной строки { Register: { // Наименование товара 64 символа Name: "Сапоги женские DF-3099", // Количество товара Quantity: 3, // Цена за шт. без скидки Price: 100, // Конечная сумма строки с учетом всех скидок/наценок; Amount: 0.01, // Отдел, по которому ведется продажа Department: 0, // НДС в процентах или ТЕГ НДС: 0 (НДС 0%), 10 (НДС 10%), 18 (НДС 18%), -1 (НДС не облагается) Tax: 18, //Штрих-код EAN13 для передачи в ОФД (не печатется) EAN13: "1254789547853", // Данные для ЕГАИС системы, можно не указывать EGAIS: { Barcode: "22N0000154NUCPRZ3R8381461004001003499NKAQ0ZBUVDNV62JQAR69PEV878RO93V", Ean: "3423290167937", Volume: 0.7500, }, }, BarCode: { // Тип штрих-кода: "EAN13", "CODE39", "CODE128","QR", "PDF417". BarcodeType: "EAN13", // Значение штрих-кода Barcode: "1254789547853", }, }, ], // Наличная оплата Cash: 800, // Безналичная оплата типа 1 (по умолчанию - Оплата картой) CashLessType1: 0.01, // Безналичная оплата типа 2 (по умолчанию - Оплата кредитом) CashLessType2: 0, // Безналичная оплата типа 3 (по умолчанию - Оплата сертификатом) CashLessType3: 0, }; // Вызов команды ExecuteCommand(false, Data); // Возвращается JSON: //{ // "CheckNumber": 1, // Номер документа // "SessionNumber": 23, // Номер смены // "LineLength": -1, // "URL": "t=20240115T154700&s=0.01&fn=99078900002287&i=118&fp=549164494&n=1", // URL проверки чека, где: t-дата-время, s-сумма документа, fn-номер ФН, i-номер документа, fp-фискальная подпись, n-тип документа // "Info": null, // "Command": "RegisterCheck", // "Error": "", // Текст ошибки если была - обязательно показать пользователю - по содержанию ошибки можно в 90% случаях понять как ее устранять // "Status": 0 // Ok = 0, Run(Запущено на выполнение) = 1, Error = 2, NotFound(устройство не найдено) = 3, NotRun = 4 //} } //**************************************************************************************
Тестовый режим:
Для цели тестирования, разработки, обучения оплата не требуется.
При этом на чеках иногда будет отображаться информация о том, что программа не лицензирована.
Также иногда сумма чека будет не совпадать с указанной.
Для цели печати этикеток со штрих-кодом на принтерах этикеток лицензия и оплата не требуется.
Срок действия бесплатной техподдержки: не ограничен.
Работа с 1С предприятием:
Для печати чеков из конфигураций 1С есть драйвер для 1с.
В
Гарантия возврата денег
ООО «Инфостарт» гарантирует Вам 100% возврат оплаты, если программа не соответствует заявленному функционалу из описания. Деньги можно вернуть в полном объеме, если вы заявите об этом в течение 14-ти дней со дня поступления денег на наш счет.
Программа настолько проверена в работе, что мы с полной уверенностью можем дать такую гарантию. Мы хотим, чтобы все наши покупатели оставались довольны покупкой.
Для возврата оплаты просто свяжитесь с нами.