Как настроить подключение ККТ Атол по Ethernet в терминальном режиме 1С 7.7?

Системный администратор 1С v7.7 Торговля и дистрибуция
← На главную

При эксплуатации контрольно-кассовой техники в терминальной среде (RDP) классическое подключение через виртуальные или физические COM-порты нередко сопровождается сбоями, зависаниями сессий и потерей связи с устройством. Использование сетевого интерфейса Ethernet на фискальных регистраторах (например, Атол 55Ф) позволяет отказаться от капризных виртуальных портов и обращаться к кассе напрямую по протоколу TCP/IP. Рассмотрим особенности сетевого подключения ККТ, требования к безопасности и специфику интеграции с платформой «1С:Предприятие 7.7».

Сетевые параметры и режим работы ККТ по Ethernet

Фискальные регистраторы с аппаратным портом Ethernet работают в локальной сети как TCP-серверы. Проанализируем базовые параметры сетевого интерфейса:

  1. IP-адрес по умолчанию: касса обычно имеет предустановленный статический адрес вида 192.168.10.1 или получает его по протоколу DHCP. Для стабильной работы в терминальной среде настоятельно рекомендуется задать постоянный статический IP-адрес из подсети предприятия либо настроить резервирование адреса по уникальному MAC-адресу на DHCP-сервере маршрутизатора.
  2. Порт управления: по умолчанию обмен данными с драйвером ККТ осуществляется по TCP-порту 5555.
  3. Собственный канал для ОФД: при прямом подключении кассы через проводную локальную сеть передача фискальных документов оператору фискальных данных (ОФД) происходит самим устройством напрямую. Это полностью исключает необходимость настройки и постоянного контроля дополнительных служб трансляции (таких как Ethernet over USB).

Безопасность удаленного подключения: VPN против прямого проброса портов

Разберем вопрос организации доступа, если терминальный сервер 1С и кассовый аппарат находятся в разных сегментах сети или удалены друг от друга через интернет:

  1. Опасность прямого проброса портов (NAT/Port Forwarding): категорически не рекомендуется открывать порт 5555 фискального регистратора наружу в сеть Интернет. Кассовые протоколы не рассчитаны на публичный доступ, и обычный пароль оператора не защищает от перехвата пакетов или злонамеренных манипуляций с фискальным накопителем.
  2. Организация шифрованного VPN-туннеля: корректным и безопасным способом является объединение удаленного сервера и локальной подсети с кассой в единый закрытый контур через VPN-канал (например, IPsec, OpenVPN, WireGuard). В этом случае терминальный сервер обращается к кассе по внутреннему локальному IP-адресу, исключая риски несанкционированного доступа.

Ограничение многопользовательского доступа и блокировка порта

Выясним ключевую техническую особенность сетевого модуля ККТ: устройство способно одновременно поддерживать только одно активное TCP-соединение. Если один пользователь или фоновый процесс монопольно захватывает кассу, все остальные сеансы будут получать ошибку тайм-аута или занятости устройства.

Для предотвращения взаимных блокировок в многопользовательской среде терминала необходимо использовать принцип пакетного подключения: обработка обслуживания в 1С должна открывать логическое соединение с ККТ только непосредственно в момент печати фискального чека или снятия отчета (X/Z-отчета) и сразу же закрывать/освобождать соединение после завершения операции.

Особенности настройки и программного взаимодействия в 1С 7.7

Типовые конфигурации платформы «1С:Предприятие 7.7» (включая конфигурацию «Торговля и склад 7.7») изначально не содержат полей для указания сетевых параметров (IP-адреса и TCP-порта) в стандартных формах настройки торгового оборудования. Интеграция выполняется через доработанную внешнюю обработку обслуживания (ERT), которая взаимодействует с 32-разрядной (x86) COM-библиотекой драйвера ККТ.

Посмотрим на типовую логику программной инициализации сетевого подключения через объект драйвера в коде внешней обработки:


// Создаем объект драйвера ККТ
Драйвер = СоздатьОбъект("AddIn.FprnM45");

// Настройка подключения по TCP/IP
Драйвер.DeviceEnabled = 0;
Драйвер.Port = 1004; // Режим работы по TCP/IP (Ethernet)
Драйвер.IPAddress = "192.168.1.150"; // Статический IP-адрес кассы
Драйвер.IPPort = 5555; // Сетевой порт ККТ
Драйвер.Timeout = 3000; // Таймаут ожидания ответа в мс

// Установка логического соединения
Драйвер.DeviceEnabled = 1;
Если Драйвер.ResultCode <> 0 Тогда
    Предупреждение("Ошибка подключения к кассе: " + Драйвер.ResultDescription);
Иначе
    // Выполнение операций печати чека
    // ...
    
    // Обязательное освобождение сетевого соединения
    Драйвер.DeviceEnabled = 0;
КонецЕсли;

Альтернативный вариант: локальный прокси-сервис печати

Если прокладка кабеля Ethernet к кассе затруднена, либо касса физически подключена по интерфейсу USB к локальному компьютеру кассира, можно использовать специализированный сервис удаленного подключения или локальный веб-сервер печати. В этом случае сеанс 1С 7.7 на терминальном сервере передает данные чека по протоколу HTTP/HTTPS локальной службе, которая взаимодействует с кассой локально. Это также позволяет полностью уйти от зависаний, присущих стандартному пробросу COM-портов через протокол RDP.

← На главную