При работе с государственными электронными сертификатами (ЭС) для приобретения технических средств реабилитации (ТСР) пользователи 1С:Управление торговлей 11 часто сталкиваются с аппаратными и программными сложностями. Одной из самых распространенных ошибок является сообщение «Терминал не поддерживает данную операцию», которое возникает в момент нажатия кнопки «Проверить» в чеке ККМ. Разберем детально, почему это происходит и как настроить связку 1С и эквайринга Сбербанка для корректной работы с НСПК МИР.
Когда мы нажимаем кнопку «Проверить» в интерфейсе рабочего места кассира (РМК), система 1С инициирует сложную цепочку запросов. Сначала программа обращается к драйверу эквайринговой системы, который, в свою очередь, дает команду терминалу войти в режим работы с электронным сертификатом. Терминал должен запросить данные у НСПК, чтобы подтвердить наличие доступных средств на карте МИР для конкретных кодов ТРУ (Товаров, Работ, Услуг).
Ошибка «Терминал не поддерживает данную операцию» на этапе проверки означает, что либо драйвер в 1С не умеет передавать специфические команды для работы с ЭС, либо ПО самого терминала (прошивка) настроено без учета этого функционала. Простая оплата по карте при этом может работать идеально, так как она использует стандартный банковский протокол, не требующий обращения к ГИС ЭС.
Одной из главных причин проблемы является использование устаревшего COM-драйвера Сбербанка. Для работы с электронными сертификатами критически важно использовать технологию NativeApi. Рассмотрим, как это проверить и настроить:
Sberbank_Native.Драйвер Sberbank NativeApi (обычно это компонента SberAcquiring_Native.zip) поддерживает расширенный протокол обмена данными, который позволяет передавать 30-значные коды ТРУ и получать ответ от системы ФСС.
Даже если в 1С все настроено верно, терминал может «отбивать» запрос. Проанализируем ситуацию со стороны банковского ПО. Для успешного приема сертификатов должны быть соблюдены следующие условия:
sb_pilot.ini) должен быть активирован протокол версии 12 или выше, что позволяет осуществлять контроль оплаты эквайринга по организациям.Рекомендуем настоять на визите инженера Сбербанка и попросить его проверить именно активацию сервиса «Электронный сертификат» для конкретного ID терминала (TID).
Если терминал начал реагировать, но проверка всё равно не проходит, выясним причину в данных товара. Система крайне чувствительна к формату передачи кодов. Разберем основные требования:
Рассмотрим пример правильного заполнения кода ТРУ в системе:
30.11.12.110.01.01.01.01.01.01 — это лишь часть кода, полный идентификатор в ГИС ЭС гораздо длиннее, и 1С должна видеть его целиком в соответствующем поле.
Иногда проблема кроется в правах доступа или регистрации библиотек в Windows. Выполним следующие действия для стабилизации связи:
Проанализируем папку с банковским ПО (обычно это C:\sc552). В ней должны находиться актуальные файлы pilot_nt.dll и gate.dll. В настройках драйвера в 1С путь к этим файлам должен быть указан абсолютно точно. Попробуйте запустить 1С от имени администратора один раз, чтобы драйвер смог корректно зарегистрировать свои компоненты в реестре системы.
Если штатный драйвер Сбербанка из списка 1С продолжает выдавать ошибку поддержки операции, можно прибегнуть к методу «Своего решения». Для этого:
SberAcquiring).Это позволяет обойти ограничения стандартной БПО, если ваша версия 1С:УТ 11.5 еще не полностью поддерживает последние изменения в протоколах НСПК.
Резюмируем: Основное решение проблемы заключается в синхронизации версии драйвера (обязательно NativeApi) и версии прошивки терминала (не ниже 32.xx). Без выполнения обоих условий кнопка «Проверить» будет выдавать ошибку, так как терминал не понимает специфическую команду инициализации сессии с сертификатами.