Руководство
Раздел: Печать чеков
Настройка чекового принтера Epson с чеками и логотипом
С Epson Server Direct Print или Star CloudPRNT принтер сам забирает чеки с нашего сервера по HTTPS – с ID и паролем, без проброса портов и без ПК у стойки. Руководство охватывает всё: от подходящего принтера до первого чека с логотипом клуба. Оно также показывает маршруты печати, которые отправляют чеки заказов на кухню и в бар, экран заказов и что делать, если не получается. Недорогие чековые принтеры ESC/POS с отрезчиком подключаются через небольшой прокси печати – по USB или сети, как Docker-контейнер, например на Raspberry Pi.
7 минут чтения
Сначала: что нужно знать
- Принтер опрашивает наш сервер каждые несколько секунд. Поэтому чеки приходят с задержкой в несколько секунд – в зависимости от заданного интервала.
- Адрес опроса содержит секретный ключ. Кто его знает, получает чеки этого принтера. Не передавайте его; в случае сомнений создайте новый.
- Список подходящих моделей взят из документации Epson. Более старые устройства TM-i и TM-DT часто тоже поддерживают Server Direct Print, но только начиная с определённой версии прошивки.
Что нужно
- Чековый принтер Epson с Server Direct Print и сетевым подключением (LAN или Wi-Fi), например TM-m30III, TM-m30II-H/-NT/-S/-SL, TM-m50/TM-m50II, TM-T88VII, TM-T88VI, TM-L100, TM-H6000V, TM-T70II-DT2, TM-T88VI-DT2.
- Доступ в интернет для принтера – достаточно обычного роутера, проброс портов не нужен.
- Термобумага шириной 80 или 58 мм, подходящая для принтера. Чековые принтеры и экраны заказов настраиваются только здесь, а не в админ-разделе WebApp или приложения.
- Учётная запись владельца или администратора клуба в разделе «Администрирование» (/admin).
Добавить принтер в /admin
- Откройте /admin, выберите слева список и перейдите в «Работа» → «Чековые принтеры».
- Нажмите «Добавить чековый принтер» и введите название, например «Стойка».
- В поле «Список» выберите список (или оставьте пустым для всех) и в поле «Ширина бумаги» – 80 мм или 58 мм.
- В разделе «Что печатает этот принтер?» отметьте, что печатается автоматически: «Кассовые чеки», «Z-отчёт» и «Чеки заказов» – подробнее в разделе «Маршруты печати» ниже. Без отметок принтер печатает только тестовые страницы и явно выбранные чеки.
- Нажмите «Сохранить». Окно остаётся открытым и показывает адрес опроса, «ID (пользователь)» и пароль – пароль только сейчас: скопируйте его кнопкой «Копировать пароль». «Новый адрес» и «Новый пароль» делают прежние недействительными.
Настройка на принтере
- Узнайте IP-адрес принтера: при выключенном принтере удерживайте кнопку подачи (FEED) и включите его – на листе состояния будет IP-адрес.
- Откройте http://IP-адрес в браузере компьютера в той же сети – это веб-интерфейс принтера (Web Config, на старых устройствах EpsonNet Config). Перейдите в «Advanced Settings» → «Administrator Login» и войдите: на новых моделях пароль – серийный номер принтера (пользователь, если спросят, «epson»). У моделей TM-i и TM-DT тот же путь.
- Сначала обновите корневые сертификаты принтера: наш сервер использует сертификат Let's Encrypt (цепочка YR1 → ISRG Root YR → ISRG Root X1). Старые списки сертификатов в принтере его не знают – тогда https:// молча не работает, и до нас не доходит ни один запрос. Откройте «Advanced Settings» → «Network Security» → «Root Certificate Update» и нажмите «Update»; принтер загрузит актуальный список от Epson. Либо импортируйте в «Network Security» → «CA Certificate» PEM-файлы «ISRG Root X1» и «ISRG Root YR» с letsencrypt.org/certificates.
- Откройте «TMI Settings» → «Server Direct Print» и установите «Server Direct Print» (в руководстве Epson «Use Server Direct Print») в «Enable».
- Введите в «URL» скопированный адрес, в «Interval» 5 секунд, а в поля «ID» и «Password» – пользователя и пароль из /admin. Принтер входит с ними по HTTP Digest, как описано в руководстве Epson; наш сервер принимает Digest и Basic. Без верных данных он отвечает «401», и принтер ничего не получает. Меньше 5 секунд ничего не даёт: наш сервер принимает не более одного запроса каждые 400 мс на принтер.
- Нажмите «Apply», а затем в «TM-i Settings» (адрес /webconfig-i) – «Apply & Restart»: только тогда принтер применит Server Direct Print и перезагрузится. После этого выйдите через «Administrator Logout»: пока кто-то вошёл как администратор, принтер находится в режиме настройки и ничего не печатает.
- В /admin нажмите «Тестовая печать» в строке принтера. Тестовый чек придёт при следующем опросе – то есть не позже чем примерно через 5 секунд, – а в столбце «Статус» появится «последний контакт» со временем.
Как вариант: принтеры Star с CloudPRNT
- Вместо Epson подойдёт и чековый принтер Star с CloudPRNT, например TSP143IV, TSP100IV, mC-Print3 или mC-Print2. При добавлении выберите «Star CloudPRNT (принтер сам забирает чеки)».
- Откройте веб-интерфейс принтера Star (IP-адрес из самотеста) и войдите как администратор.
- Включите CloudPRNT, в «Server URL» введите адрес из /admin, интервал опроса 5–10 секунд, а в аутентификации (Basic) – пользователя и пароль из /admin.
- Сохраните, перезапустите принтер и нажмите «Пробная печать» в /admin. При первом обращении сервер запоминает MAC-адрес принтера; другое устройство с тем же адресом отклоняется.
Недорогие чековые принтеры через прокси печати (USB или сеть)
- Вместо принтера Epson или Star с облачной функцией подойдёт и недорогой чековый принтер ESC/POS – по USB или в сети, например Epson TM-T20, Xprinter, Munbyn или Rongta. Нужен автоматический отрезчик: каждый чек заканчивается отрезом. Принтеры без отрезчика (с отрывной кромкой, многие мобильные 58 мм) не поддерживаются.
- Для этого в сети клуба работает небольшой прокси печати в Docker-контейнере – на Raspberry Pi (в том числе старых моделях начиная с Pi 2; Pi 1 и первый Pi Zero не подходят), NAS или ПК. Он сам подключается к нашему серверу, проброс портов не нужен.
- В /admin откройте «Работа» → «Чековые принтеры» → «Прокси печати», введите название и нажмите «Подключить прокси». Токен устройства показывается только сейчас. Если принтер подключён к прокси по USB, отметьте «Принтер по USB на прокси (/dev/usb/lp0)». Скопируйте готовую команду запуска (docker run …) кнопкой «Копировать команду». Либо вкладка «docker compose» показывает те же настройки в виде docker-compose.yml: скопируйте их кнопкой «Копировать YAML», сохраните в папке и выполните там «docker compose up -d».
- Выполните команду на Raspberry Pi или компьютере. При первом запуске Docker сам загрузит образ drinklist/print-proxy с Docker Hub (https://hub.docker.com/r/drinklist/print-proxy, для amd64, arm64 и arm/v7). Контейнер сам перезапускается после перезагрузки или отключения питания; вскоре прокси в /admin будет «подключён». Совет: с добавкой --test-print и IP-адресом принтера (или /dev/usb/lp0) образ печатает тестовую страницу без сервера – так можно проверить кабель, адрес и отрезчик.
- Затем добавьте принтер: подключение «Прокси печати: недорогой принтер ESC/POS по USB или сети (Docker, Raspberry Pi)», выберите прокси и в «Подключение к прокси» сеть (IP-адрес принтера в сети клуба, порт 9100) или USB (/dev/usb/lp0). Отметьте «У принтера есть автоматический отрезчик», сохраните и нажмите «Пробная печать». Маршруты печати, повторная печать и задания работают как у любого другого принтера.
- Если прокси не подключён (питание, интернет), чеки ждут и печатаются, как только он снова в сети – чеки старше двух часов уже не печатаются, повторная печать остаётся возможной. Колонка «Статус» показывает отсутствие бумаги или открытую крышку, если принтер это сообщает; многие недорогие принтеры этого не делают. «Новый токен» делает старый недействительным, «Убрать» окончательно отключает прокси.
Маршруты печати: еда на кухню, напитки на бар
- В разделе «Что печатает этот принтер?» каждый принтер определяет, что печатает автоматически: «Кассовые чеки» после каждой продажи за наличные, «Z-отчёт» при закрытии кассы и «Чеки заказов» для новых заказов через QR. Несколько принтеров могут печатать одно и то же, например чеки на баре и в офисе.
- Кухня: добавьте принтер «Кухня», отметьте «Чеки заказов» и в поле «Только эти группы товаров (категории)» выберите категорию блюд, например «Еда» – так, как она указана у товаров.
- Бар: у принтера «Бар» отметьте «Кассовые чеки» и «Чеки заказов», а также «Все остальные товары (категория без своего принтера)». Без категории и без этой отметки принтер печатает каждый заказ целиком.
- Заказ из 2 пива и 1 шницеля теперь даёт два чека: шницель на кухне, пиво на баре – каждый с номером заказа, столом или точкой, временем, гостем и заметками. Позиции без подходящего принтера не печатаются. По желанию есть «Цены на чеке заказа» и «Печатать отменённые заказы как чек отмены».
- Кнопка «Маршруты печати» показывает обзор: какой документ для какого списка и группы товаров выходит на каком принтере. Если у принтера не выбран список, поле «Для списка» в окне принтера ограничивает его маршруты одним списком.
Экран заказов вместо чеков: для кухни и бара
- Откройте «Работа» → «Экраны заказов» и нажмите «Добавить экран заказов». Имя, например «Кухня», и как у принтера «Только эти группы товаров (категории)» или «Все остальные товары (категория без своего принтера)» – экраны и принтеры подчиняются одним правилам.
- Откройте ссылку или QR-код на планшете или ТВ и выберите «На экран «Домой»». Экран запустится как отдельное приложение без входа, во весь экран, и не будет гаснуть. Одно касание включает звук новых заказов.
- Каждый открытый заказ показан большой плиткой с номером, столом или точкой, гостем, заметками и только позициями для этого экрана. Время идёт, и плитка становится жёлтой после «Жёлтый через минут» и красной после «Красный через минут».
- Нажмите «В работе», чтобы взять заказ (бар видит его взятым), и «Готово», чтобы убрать его с этого экрана, – 10 секунд можно «Отменить». Выдача и оплата остаются на баре. «Новая ссылка» делает старую недействительной, например если планшет потерян.
Логотип для чеков, PDF и ТВ-экрана
- В /admin откройте «Организация» → «Основные данные» и прокрутите до раздела «Логотип».
- Нажмите «Загрузить логотип» и выберите изображение JPG или PNG до 2 МБ. Оно автоматически поворачивается и уменьшается.
- Выберите, где показывать логотип: «На чеках (принтер), сверху по центру», «На экране ТВ/проектора, сверху справа» и «В PDF клуба, сверху справа (чеки, выписки, отчёты)».
- Совет: чековый принтер печатает только чёрным по белому, поэтому логотип переводится в точки. Лучше всего на чеке выглядит простой логотип с чёткими контурами и высоким контрастом на светлом фоне.
Печать чеков
- Чек содержит логотип, позиции с буквой ставки НДС, скидки и ценовые правила, итог, способ оплаты и НДС по ставкам.
- «Журналы и счета» → «Журнал платежей»: «Печать чека» в строке платежа отправляет чек на выбранный принтер, без выбора – на первый принтер с «Кассовые чеки». PDF-чек по-прежнему доступен.
- «Работа» → «Касса и Z-отчёт»: «Печать Z-отчёта» в строке закрытой кассовой смены печатает Z-отчёт на бумаге.
- «Работа» → «Чековые принтеры» → «Задания»: все задания со статусом и ошибкой. «Напечатать снова» печатает чек ещё раз.
Если не получается
- В столбце «Статус» по-прежнему «ещё ни разу не опрашивал»: адрес не введён или введён неверно, Server Direct Print не включён или принтер не выходит в интернет. Проверьте также дату и время на принтере – если они неверны, соединение HTTPS не устанавливается. Если не удаётся войти в веб-интерфейс, сбросьте принтер к заводским настройкам кнопкой FEED, как описано в руководстве Epson.
- Задания остаются «ожидает» или «отправлено»: принтер включён, бумага есть, крышка закрыта? Принтер забирает задания при следующем опросе; без ответа они отправляются повторно и после нескольких попыток помечаются как неудачные. Если /admin показывает у принтера «Создайте новый пароль (нужно для Epson)», пароль создан до перехода на Digest: создайте новый и введите его в принтере.
- Ошибка с сообщением принтера: обычно кончилась бумага или открыта крышка. Устраните причину – задание будет отправлено снова автоматически.
- Текст обрезан или слишком узкий: ширина бумаги в /admin должна совпадать с заправленной бумагой (80 или 58 мм).
- Неправильные буквы или спецсимволы: проверьте, что прошивка принтера обновлена – старые версии поддерживают не все кодировки.
Epson: поиск неисправностей из практики
- На сервер не приходит ни одного запроса, хотя всё введено: чаще всего принтер не знает сертификат Let's Encrypt нашего сервера (встречалось на TM-m30III с прошивкой TM-i 01.39 и корневыми сертификатами 02.03). Выполните «Advanced Settings» → «Network Security» → «Root Certificate Update» → «Update» или импортируйте «ISRG Root X1» и «ISRG Root YR» (letsencrypt.org/certificates) в «Network Security» → «CA Certificate». Затем «Apply & Restart» в «TM-i Settings».
- Изменённые настройки не действуют: Server Direct Print применяет изменения только после «Apply & Restart» в «TM-i Settings» (/webconfig-i).
- Принтер печатает листок «WebConfig Start» и больше ничего: кто-то вошёл в веб-интерфейс как администратор, и принтер находится в режиме настройки. Всегда выходите через «Administrator Logout».
- Самотест печатается, но из сети ничего не выходит – даже ePOS или порт 9100 принимают данные без печати: зависла внутренняя связь между сетевой частью и печатающим механизмом. Отключите питание примерно на 30 секунд.
- Вводите адрес с https://, а не http://: запросы по http:// перенаправляются, а Epson не следует перенаправлениям.
- В /admin в «Работа» → «Чековые принтеры» поле «Letzter Kontakt» (последний контакт) в окне принтера показывает последние запросы с результатом; эта диагностика выводится на немецком. «Anmeldung angefordert (401 – bei Digest normal)» (запрошен вход) – нормально для первого запроса. При «Digest-Anmeldung falsch (ID/Passwort prüfen)» (неверный вход Digest) создайте новый пароль и введите его в принтере. Если там «seit dem letzten Serverstart kein Abruf angekommen» (ни одного запроса с последнего запуска сервера), принтер не достигает нашего сервера – проверьте https://, корневые сертификаты и сеть.
Не получилось?
Если инструкция оставила вопрос или что-то выглядит иначе, чем описано, откройте заявку — мы ответим в ней. Поддержка работает только через заявки, а не по электронной почте.