Переход на онлайн-кассы (54-ФЗ) принес множество технических нюансов, связанных с сетевыми технологиями. Одной из самых популярных марок ККТ на рынке являются аппараты семейства Штрих-М (включая популярные модели Ритейл-01Ф, Штрих-ON-LINE, РР-Электро и др.). При их интеграции с платформой 1С специалисты часто сталкиваются со специфическими ошибками: зависанием чеков в очереди ОФД (статус информационного обмена 5h), потерей связи с аппаратом по TCP-сокету (тайм-аут соединения -8: Connect timed out), а также с тем, что на бумажном чеке номенклатура печатается, а в личном кабинете ОФД наименования товаров отсутствуют.
В этой статье мы подробно разберем, как правильно настроить подключение ККТ Штрих-М по сетевому протоколу RNDIS, как обеспечить стабильную отправку данных в ОФД, как исправить логику работы 1С со старыми драйверами для корректной выгрузки номенклатуры и как устранить сопутствующие системные ошибки.
---
Давайте разберем физический смысл этих состояний в тесте драйвера ККТ Штрих-М.
Статус информационного обмена 5h означает, что транспортное соединение с интернетом касса установила успешно, но в данный момент она находится в режиме ожидания ответного сообщения (квитанции) от сервера ОФД. Сами чеки сформированы в фискальном накопителе (ФН), они находятся в очереди на отправку, но ОФД не подтверждает их получение. Причиной этого чаще всего является либо блокировка пакетов брандмауэром/прокси-сервером, либо нестабильная работа службы общего доступа к интернету на хост-компьютере.
Ошибка -8: Connect timed out свидетельствует о том, что компьютер (или терминальный сервер) вообще не может достучаться до TCP-сервера кассы по указанному IP-адресу и сетевому порту (по умолчанию используется порт 7778). Это происходит, когда сетевой адаптер RNDIS «засыпает», отключается операционной системой для экономии энергии или блокируется антивирусным ПО.
---
По умолчанию производитель предлагает использовать службу общего доступа к интернету Windows (ICS — Internet Connection Sharing). Это самый простой, но в то же время самый нестабильный метод: служба ICS регулярно зависает после перезагрузки компьютера или отключения кассы. Проанализируем более надежное решение — создание Сетевого моста.
Выполним настройку по шагам:
1. Перезагрузите кассу.Remote NDIS based Internet Sharing Device).192.168.1.X, назначьте кассе IP-адрес 192.168.1.150.8.8.8.8 или 77.88.8.8. Без корректного DNS касса не сможет преобразовать доменное имя сервера ОФД в IP-адрес.192.168.1.150 с любого компьютера в сети.---
Довольно часто база 1С развернута на удаленном сервере терминалов, а ККТ подключена к локальному компьютеру кассира. Рассмотрим, как пробросить кассу, работающую по сетевому протоколу RNDIS, внутрь RDP-сессии.
Разберем алгоритм настройки:
192.168.137.1, а IP-адрес самой кассы — 192.168.137.111. Порт TCP-сервера по умолчанию — 7778.Kassa_RNDIS).192.168.137.111 (адрес кассы).7778.7778.7778.192.168.1.23).7778.Важное примечание для стабильности работы: если связь с ККТ в терминале периодически пропадает, помогает простой перезапуск общего доступа на локальной машине. Чтобы автоматизировать этот процесс, мы можем использовать скрипт на языке PowerShell, который принудительно перезапускает общий доступ к интернету (ICS):
# Регистрируем библиотеку управления сетями
regsvr32 hnetcfg.dll /s
# Создаем объект диспетчера сетевого доступа
$m = New-Object -ComObject HNetCfg.HNetShare
# Ищем наше основное подключение к интернету по его имени
$c = $m.EnumEveryConnection |? { $m.NetConnectionProps.Invoke($_).Name -eq "Подключение по локальной сети" }
# Получаем конфигурацию общего доступа
$config = $m.INetSharingConfigurationForINetConnection.Invoke($c)
# Принудительно выключаем и повторно включаем общий доступ
$config.DisableSharing()
Start-Sleep -Seconds 2
$config.EnableSharing(0)
---
Одной из самых частых проблем при переходе на онлайн-кассы со старых конфигураций 1С (например, старых релизов УТ 10.3, КА 1.1, УПП или самописных решений) является то, что чек пробивается, сумма сходится, на чековой ленте все названия товаров напечатаны корректно, но на сайте ОФД в чеке отображаются только цены и суммы, а строки номенклатуры пустые.
Проанализируем причину этой проблемы. В старых конфигурациях 1С использовался механизм работы с фискальными регистраторами как с «принтерами чеков». В старой обработке обслуживания ShtrihMFiscalPrinters_v2.epf для вывода строк номенклатуры применялся метод драйвера PrintString (Напечатать нефискальную строку). Этот метод просто отправляет текстовый поток на печатающую головку кассы. Но по требованиям ФФД 1.05 и ФФД 1.2 наименование товара является обязательным реквизитом чека (тег 1030) и должно записываться непосредственно в память фискального накопителя в структуре фискального документа.
Чтобы решить эту проблему, нам необходимо перестроить логику взаимодействия 1С с драйвером ККТ:
4.13.0.562 или более поздняя).ЗаписатьФискальнуюОперацию или НапечататьЧек, передавая туда XML-структуру со всеми товарными позициями, ставками НДС и признаками способа расчета.ItemName, Price, Quantity, Tax1 и метод Sale).---
При попытке открыть смену или пробить чек из 1С система может выдать критическую ошибку FFFFFFF8h с сообщением о неверном имени кассира. Код ошибки FFFFFFF8h — это стандартный код возврата драйвера Штрих-М при некорректном заполнении обязательных параметров транзакции.
Согласно требованиям законодательства, в фискальном документе должны быть обязательно заполнены ФИО кассира (тег 1021) и ИНН кассира (тег 1203). Если в 1С у текущего пользователя не заполнено физическое лицо, либо в карточке физического лица не указан ИНН, 1С передает драйверу пустые значения или системный идентификатор вместо ФИО.
Для исправления этой ошибки выполните следующие действия в 1С:
---
Иногда требования бухгалтерского учета или пожелания покупателей заставляют выводить ставку и сумму НДС отдельно по каждой строке товара в чеке, а не общей суммой в конце чека. Для регулирования этого поведения в кассах Штрих-М предусмотрены внутренние настройки таблиц ККТ.
Разберем, как включить детальную печать налогов:
1 (включено).Мы подробно разобрали ключевые аспекты настройки касс Штрих-М через драйвер и интеграцию с платформой 1С. Применение Сетевого моста вместо стандартного общего доступа к интернету, перевод ККТ в режим работы с передачей данных в настройках 1С и корректное заполнение ИНН и ФИО сотрудников позволят вам построить стабильную, отказоустойчивую систему фискализации продаж.