Существует штатный механизм для печати чеков по факту прихода в биллинг произвольного платежа, т.е. не только добавления оператором вручную. В основном это может быть полезно для реализации печати электронных чеков. Или можно перевести на автопечать и печать тех чеков, которые добавляет оператор (или как альтернатива: настроить чтобы он не мог снять галочку в интерфейсе), тогда оператор не должен ставить галочку (можно настроить недоступность её).
Конфигурация целиком:
# маппинг типов платежей для автопечати # autoprint.pt.<тип платежа>.fr=<на какой ККТ печатать> # autoprint.pt.<тип платежа>.pass=<пароль на ККТ> autoprint.pt.666.fr=100 autoprint.pt.666.pass=01 fr.N.title=... fr.N.connector=... # автозакрытие смены, используется соответствующим таском fr.N.autoclose=1 # пароль, под которым заходит в ККМ при автозакрытии смены, скорее всего нужен админский fr.N.autoclose.pass=30
Маппинг настраивается аналогично ручным платежам, только указывается не разрешённые регистраторы, а один конкретный. Также указывается пароль для регистратора. с которым надо заходить на ККТ.
Далее при приходе платежа из любого источника проверяется маппинг и если тип платежа настроен - вызывается метод addPaymentAuto обычного дин.кода указанного в checkbuilder= (параметр "динамический класс для формирования вида чека") похожим способом, как это делается для обычных ручных платежей.
Для автоплатежей актуален вопрос автоматического закрытия дня на ККТ. Для этого существует задача "CashCheck => автоматическое закрытие дня (снятие z-отчёта)". Можно настроить на середину ночи, например. Настройки этой задачи централизованно находятся в конфиге плагина и дополняют настройки каждого регистратора (см. выше). Может быть настроено на автозакрытие любое количество ККТ, все они закроются последовательно одним запуском задачи.
Если будут проблемы с печатью чеков или снятием отчёта - будет отправлено оповещение по стандартной системе алармов, убедитесь, что она корректно настроена.