Настройка модуля печати кассовых чеков

Материал из Меасофт
Перейти к: навигация, поиск

Модуль интеграции с фискальным регистратором (печати кассовых чеков) предназначен для обеспечения возможности взаимодействия системы MeaSoft с фискальными регистраторами. Он представляет собой службу Windows, которая подключается к БД системы и к фискальному регистратору.

Одна установка службы поддерживает один регистратор.

MeaSoft поддерживает неограниченное количество регистраторов, в том числе и зарегистрированных на одно юридическое лицо. Чтобы подключить несколько регистраторов, установите соответствующее количество модулей интеграции с ФР.

Модуль печати кассовых чеков состоит из следующих файлов:

  • CheckServiceExe.exe — исполняемый файл службы;
  • CheckServiceExe.ini — конфигурационный файл;
  • CheckServiceExe.log — файл журнала. Если его нет, создается при запуске службы.

Применение

Чековая служба нужна, если:

  • установлена касса Штрих-М — для печати чеков в офисной системе и мобильном приложении курьера.
При закрытии заказа курьером в мобильном приложении для печати чеков нужен модуль автоматизации, который будет отправлять чеки, поскольку прямой связи мобильного приложения с Штрих-М нет;
  • установлена касса LIFE PAY — для ручной печати чека из офисного приложения.

Для печати чека через LIFE PAY и Штрих-Нано-Ф при закрытии заказа курьером в мобильном приложении чековая служба не нужна.

Примечание. Касса Штрих-М работает с чековой службой только при подключении через COM-порт или USB и одновременно передает данные в ОФД. При подключении через USB на компьютере настраивается виртуальный COM-порт.

Установка чековой службы

  1. Скопируйте файл CheckServiceExe.exe в любую папку на компьютере:
    • для кассы Штрих-М — на тот компьютер, к которому физически подключена касса;
    • для кассы LIFE PAY – на любой компьютер, потому что у LIFE PAY облачная фискализация.
  2. Создайте ярлык для файла CheckServiceExe.exe.
  3. В свойствах ярлыка на вкладке Ярлык в поле Объект после имени файла добавьте /install:
    Установка чековой службы.png
  4. Сохраните и запустите ярлык от имени администратора. В результате служба появится в списке служб. Для просмотра списка в контекстном меню Мой компьютер выберите Управление > Службы.
  5. В папке с чековой службой создайте INI-файл или загрузите шаблоны: LIFE PAY, Штрих-М.
  6. Откройте INI-файл, укажите параметры для своей базы и сохраните изменения.
  7. В контекстном меню элемента Мой компьютер выберите Управление > Службы, убедитесь, что режим запуска службы установлен в положение «Автоматически», и запустите чековую службу. Если установка и настройка прошли успешно, то первый чек будет сразу распечатан на кассе.

Если чек не печатается, смотрите причины в файле логов чековой службы CheckServiceExe.log. Он находится в папке чековой службы. Подробнее см. раздел «Устранение неполадок».

Можно установить несколько независимых экземпляров службы на одну систему, переименовав exe-файл. Название службы в Windows, файлы настроек и логов будут иметь соответствующие имена.

Настройка чековой службы

Откройте файл CheckServiceExe.ini любым текстовым редактором, например блокнотом.

В разделе [COMMON] измените или добавьте следующие параметры:

Параметр Штрих-М LIFE PAY
Param
Дополнительные параметры фискального регистратора
Пример: Param=30, 6
Обязательный параметр, значения указываются через запятую.
Первое значение — пароль пользователя ФР, по умолчанию 30. Второе значение — скорость работы ФР. Чтобы узнать скорость, используйте утилиту «Тест драйвера», которая поставляется с кассой: откройте утилиту, нажмите на кнопку Настройка свойств > Поиск оборудования. Отобразится подключенный ФР и его скорость работы.
Пример: Param=91defdc4556fc182680982e1b2am8d6f, 79011111111,,64
Необязательный параметр. Если значения указаны в фискальном регистраторе, можно оставить строку в таком виде: #Param=
Первое значение — 32-значный АПИ-ключ из ЛК LIFE PAY.
Второе значение — номер телефона без +, на который зарегистрирован ЛК LIFE PAY.
Третье значение — пустое.
Четвертое значение — агентский признак, если есть.
Port
Номер COM-порта фискального регистратора. Если регистратор подключен через USB-порт, драйвер эмулятора порта все равно создает виртуальный COM-порт, номер которого устанавливается в его свойствах (в диспетчере устройств), а также номер порта меняется в зависимости от разъема USB, к которому подключено устройство.
Пример: Port=5
Обязательный параметр.
Пример: Port=1
Необязательный параметр, можно указывать значение 1.
CashRegister
Код фискального регистратора
в базе данных.
Пример: CashRegister=2
Обязательный параметр.
Что еще можно указать
ServerName
Имя или IP-адрес сервера, на котором находится БД MeaSoft. Сервер должен быть доступен по сети с компьютера, к которому подключена касса.
Пример: ServerName=srv01
Обязательный параметр.
DatabaseName
Имя базы данных (по умолчанию «courier»)
Пример: DataBaseName=courier
Обязательный параметр.
UserName
Имя пользователя базы данных
Пример: UserName=check
Обязательный параметр. Пользователя check нужно создать для определения запросов чековой службы, для этого обратитесь в техподдержку.
Password
Пароль пользователя базы данных
Пример: Password=password
Обязательный параметр.
DBPort
Порт базы данных
Пример: DBPort =3306
Обязательный параметр. По умолчанию 3306. Проверить порт можно в любом ярлыке офисной программы.
Device 1 — ФР Штрих-М (по умолчанию),
2 — чековый принтер Штрих-М (протокол Epson ESC/P)
3 — сервис фискализации LIFE PAY.
AgentFlags
Флаги тега 1057 для передачи в кассу при агентском чеке
Пример: AgentFlags=4
Обязательный параметр, если курьерская служба — платежный агент. Чтобы не передавать признаки платежного агента (если в кассе нет этого признака), укажите 0. Если параметр не указан, передается значение по умолчанию 4. Возможные значения
PrintKurier 1 — печать ФИО курьера на чеке.
PrintSeller 1 — печать заказчика на чеке.
Если включено, печатается юр. наименование, ИНН и телефон клиента.
В карточке клиента на вкладке Реквизиты должно быть заполнено поле Полное название.
Этот параметр никак не связан с тегами фискального документа 1225 и 1226 и просто выводит текстом на бумагу дополнительный текст там, где это возможно.
PrintCashier
Печатать имя кассира на чеке (тег 1021). По умолчанию 1.
1 — кассир берется из строки чека,
0 — не печатается,
другое число — код нужного сотрудника.
Можно писать подзапрос вида if(a.cl=1, 5, 6).
EmailPriority 1 — отправка чека по e-mail приоритетнее, чем SMS.
AddStr Пользовательская строка, которая печатается на всех чеках.

Настройка ФР Штрих-М

ShtrihTableList.png

Внимание. Для использования программы «Тест драйвера» нужно остановить службу «CheckService».

Обрезка чека

Обрезка чеков настраивается в таблице 1 фискального регистратора, параметр «Отрезка чека». Установите значение 1 чтобы ФР полностью отрезал каждый чек, или 2, чтобы он частично надрезал, чтобы чеки все-равно были лентой. Наша система не посылает на ККМ команду обрезки чека во избежание двойной обрезки.

Отчет по секциям

ShtrihZReportSect.png

В системе предусмотрено разнесение различных фискальных операций по секциям фискального регистратора. По-умолчанию суточные отчеты (X и Z-отчеты) отображают общие суммы по всем секциям. В ФР есть возможность сделать разбивку этих отчетов по секциям. Для этого в таблице 1 фискального регистратора, параметр «Тип суточного отчета» установите в значение 1.

Проверка корректности регистрации в ОФД

Для удовлетворения большинства потребностей наших клиентов в правильной фискализации в соответствии с 54-ФЗ, необходимо иметь ФР с фискальным накопителем (ФН) поддерживающие версию фискальный документ (ФД) версии 1.05. Так же необходимо зарегистрировать ФР в ОФД с признаком агента (тег 1057), так как курьерские службы обычно выступают в качестве платежного агента. Для соблюдения всех этих требований нужно обратиться в организацию, обслуживающую ваш фискальный регистратор с соответствующей просьбой. В некоторых случаях для поддержки может понадобиться перепрошивка ФР, замена ФН, перерегистрация в ОФД. После этих операций, можно убедиться, что все признаки, нас интересующие, установлены корректно. Для этого сначала нужно узнать номер документа фискализации. В программе «Тест драйвера» слева откроем раздел «11. ФН», в закладках «Фискализация ФН», нажмем кнопку «Запрос итогов фискализации» (см. скрин-шот). В результирующем отчете видим номер фискального документа о фискализации. Затем идем на закладку «Данные», Вводим номер документа, ставим галку «Показ. номера тегов», и нажимаем «Прочитать документ». В результирующем тексте убеждаемся в использовании версии ФД 1.05 — теги 1209 «Версия ФФД» и 1189 «Версия ФФД ККМ» должны иметь значения 2, тег 1057 «Призн. плат. агента» — должен быть, вероятно, 4 (это регистр битов, значение «4» соответствует установленному биту 2 «Платежный агент»).

Внимание. Данные фискального документа хранятся в фискальном накопителе 30 дней, после этого срока посмотреть документ регистрации (перерегистрации) в ФН будет невозможно.

Проверка корректности передачи тегов в ОФД

Убедиться в корректности передаваемых в ОФД значений тегов можно следующим образом: Сначала узнаем номер фискального документа — его можно посмотреть в чеке (как бумажном, так и электронном), или в приложении «Тест драйвера» в разделе «11. ФН», в закладках «Состояние ФН», нажмем кнопку «Запрос статуса ФН» и посмотрим «Номер последнего ФД» (см. скрин-шот). Далее на закладке «Данные» введем этот номер в поле «№Док.», и нажмем «Прочитать документ». В результирующем тексте убеждаемся в отправке тегов 1008, 1057, 1073, 1171, 1215 и прочих (см. скрин-шот).

Теги 1225 и 1226 (Наименование и ИНН поставщика) поддерживаются Штрих-М в прошивке от 24.10.2018 и версией чековой службы от 19.03.2019

К сожалению, эти передаваемые данные далеко не всегда отображаются в бумажном и/или электронном чеках, это зависит от самого ФР и/или ОФД соответственно. Однако по данной инструкции мы можем убедиться, что со своей стороны передали все данные, необходимые для соответствия 54-ФЗ.

Удаление службы

Для корректного удаления службы запустите исполняемый файл CheckServiceExe.exe с параметром командной строки /uninstall.

Примечания

Поскольку при запуске служба открывает подключение к фискальному регистратору, и использует его все время своей работы, другие программы (например «Тест драйвера» и т. д.) при попытке подключения выдадут ошибку «Невозможно открыть порт, он используется другим приложением». Чтобы избежать этого, остановите службу модуля на время использования других программ.

Устранение неполадок

1. В случае сбоя работы кассы ошибку можно посмотреть в файле CheckServiceExe.log

2. Ошибки условно можно разделить на 3 категории:

Ошибка Симптомы Возможные причины Способы устранения
Нет связи с сервером Касса не печатает, в логе сообщения вида «Unknown MySQL server host » или «Can’t connect to MySQL server on…». Неверно настроено подключение к серверу, не работает сервер, сеть. Проверить настройки подключения в файле CheckServiceExe.ini, проверить доступность сервера с этого компьютера.
Нет связи с фискальным регистратором Касса не печатает, в логе сообщения вида «Нет связи код: −1, Режим: 0, Подрежим: 0» ФР Выключен, ФР подключен не к тому разъему, ФР настроен не на ту скорость Проверьте, что ФР включен, подключен к компьютеру, именно в тот порт, в котором он настраивался. Попробуйте отключить службу чеков, открыть программу «Тест драйвера», выполнить поиск оборудования. Если она находит ФР — сравнить настройки подключения, найденные тестом драйвера с тем, что прописано в CheckServiceExe.ini. В единичных случаях проблема может заключаться в драйвере переходника COM-USB, попробуйте удалить этот переходник в диспетчере устройств windows, и попросить его поискать устройства заново.
Некорректная работа фискального регистратора. Касса печатает заголовок чека, потом ошибку, потом надпись «Чек аннулирован», и так бесконечно по кругу. Аппаратная ошибка ФР, некорректный чек, сформированный системой. Если текст ошибки, который печатается на чеке (он же сохраняется и в лог-файл) содержит информацию об ЭКЛЗ (например «ЭКЛЗ: Неверные дата или время код: 168, Режим: 3, Подрежим: 0») — нужно обратиться в компанию, с которой у вас заключен договор о поддержке кассы, сообщить им текст ошибки. В остальных случаях — обратиться в службу поддержки «Курьерская служба 2008» для выяснения причины и ее устранения.
Ошибка при формировании отчета без гашения (X-отчет) Касса печатает X-отчет бесконечно по кругу. В протоколе работы чековой службы выдается сообщение «Команда не поддерживается в данном режиме код: 115, Режим: 6, Подрежим: 0». В кассовом аппарате не установлены дата и время. Необходимо через драйвер ФР установить текущую дату и время, затем cохранить настройку. В остальных случаях — обратиться в службу поддержки «Курьерская служба 2008» для выяснения причины и ее устранения.

Печать чеков

При предоплате

Если продавец передаёт предоплаченный товар курьерской службе, чек на предоплату формирует продавец. Курьерская служба должна оформить чек на передачу товара, так как ККТ обязано использовать лицо, осуществляющее расчёты с покупателем (п. 1 ст. 4.3 54-ФЗ).

Поскольку передача заказа в зачёт предоплаты относится к расчётам и этим занимается курьер, пробить кассовый чек должен именно он.

В таком случае покупатель получает два чека: первый чек выдаётся, когда клиент вносит предоплату, а второй чек — когда он получает товар. Подробнее см. в статье.

В офисном приложении

Чековая служба не запрашивает печать бумажного чека, если заказ доставлен курьером: бумажный чек тратит бумагу, и если бумага закончится, то печать чеков остановится. А эту бумагу курьер все равно получателю отдать не сможет.

Если клиент находится перед вами, в офисе, то чек печатается — соблюдается одно из условий:

  • вы отмечаете доставленным отправление, у которого выбрана доставка в пункт выдачи, совпадающий с текущим ответственным филиалом;
  • вы принимаете оплату за доставку заказа от заказчика, в этом случае вы вносите платеж на вкладке Заказы в карточке заказа.

LIFE PAY: отличия между чеками в офисном и мобильном приложении

Отличие Офисное приложение Мобильное приложение
Авторизация. Тег login Общий номер телефона

Его можно указать в ini-файле чековой службы или 2-м параметром в поле Cерийный номер в карточке ФР в программе.
Чекопечатающее устройство (ЧПУ) в этом случае не предполагается, а авторизация нужна.
Мобильный телефон курьера

По этому параметру LIFE PAY определяет, на какой чековый принтер отправлять копию чека.
Имя кассира. Тег cashier_name Параметр PrintCashier в ini-файле

Если включено, передается ФИО сотрудника, инициировавшего печать.
Офисные сотрудники обычно официально трудоустроены, поэтому поле заполняется.
Не указывается

В большинстве случаев курьеры не оформлены официально, показывать налоговой их не нужно.
Режим печати чека. Тег mode. Печать на бумаге на ФР и отправка SMS или по электронной почте

В офисе предполагается, что это самовывоз — покупатель стоит перед вами, и вы пробиваете чек и сразу из ФР его отдаете покупателю
Отправка SMS или по электронной почте

Когда курьер доставляет заказ, он печатает бумажный чек на ЧПУ. Бумажные чеки в отсутствие ЧПУ в офисе не печатаются. Фискализировать чек, не отправляя его ни на бумагу, ни на ФР, ни по почте/SMS, невозможно, это аппаратно не позволяет делать ФР. Можно на уровне ОФД отключить SMS, если они не нужны, и вам достаточно бумажного чека из ЧПУ.

Потенциально могут быть еще небольшие различия в заполнении данных агента, поставщика. Если есть пожелания к конкретным полям, обращайтесь.

Ошибка фискализации (ошибка программирования реквизита 1226)

Ошибка тега 1226 означает, что не был передан ИНН поставщика.

ИНН передается, если:

  1. Передан признак агента.
  2. ИНН поставщика указан в карточке клиента в Measoft или в контейнере вложения в API-запросе (параметр suppINN).
  3. Наименование поставщика указано в карточке клиента в Measoft (поле Полное наименование) или в контейнере вложения в API-запросе (параметр suppcompany).

Приоритет имеет значение, указанное в контейнере вложения.