При подключении онлайн-касс АТОЛ (например, АТОЛ 11Ф, 30Ф, 22Ф, 55Ф) к компьютеру по интерфейсу USB в диспетчере устройств Windows появляются два виртуальных последовательных порта (например, COM5 и COM6). Нередко пользователи и администраторы сталкиваются с ситуацией, когда программа 1С:Розница видит кассу только на одном из портов, а при попытке настроить службу передачи чеков в ОФД возникает конфликт: либо блокируется работа кассового модуля 1С, либо не отправляются фискальные документы.
Разберем детально, почему так происходит, как устроена работа кассы через виртуальные порты и как правильно настроить оборудование.
Проанализируем внутреннее устройство обмена данными по USB в прошивках АТОЛ. При установке стандартного USB-драйвера касса эмулирует два независимых канала связи:
Частая ошибка заключается в попытке подключить 1С к порту передачи данных либо в назначении командного порта службе передачи данных. 1С и служба EoU не могут одновременно использовать один и тот же порт: попытка занять один порт двумя приложениями приводит к ошибке «Порт занят» или «Ошибка инициализации ККТ».
Разберем по шагам правильный порядок настройки рабочего места кассира:
Временно остановим службу передачи данных Ethernet-over-USB (через утилиту «Управление драйверами» или оснастку служб Windows services.msc). Запустим тест драйвера ККТ и выполним проверку связи поочередно на обоих портах (например, COM5 и COM6). Порт, на котором касса успешно отвечает и выдает номер модели и заводской номер, является командным. Второй порт — это порт для ОФД.
Откроем 1С:Розница, перейдем в раздел Администрирование > Подключаемое оборудование > ККТ с передачей данных. В параметрах экземпляра ККТ укажем найденный командный порт (в рассматриваемом примере — COM5) и скорость обмена (по умолчанию 115200). Нажимаем «Тест подключения» — проверка должна завершиться успешно.
Запустим утилиту «Управление драйверами АТОЛ» или откроем конфигурационный файл settings.xml в папке службы EoU. Укажем для ККТ второй порт (в рассматриваемом примере — COM6). Запустим службу и установим для нее тип запуска «Автоматически».
Если служба передачи данных запущена на корректном порту, но чеки не уходят (в логах фиксируется ошибка ERROR или на чеках печатается сообщение о непереданных ФД), выясним причину в личном кабинете ОФД. Распространенная причина — неоплаченный или истекший срок действия подписки ОФД, блокирующий прием пакетов со стороны сервера оператора.
Посмотрим на настройки электропитания Windows, влияющие на стабильность работы USB-соединения:
Рассмотрим дополнительные способы исключить конфликты виртуальных COM-портов: