Как настроить работу нескольких эквайринговых терминалов Сбербанка в 1С через RDP?

Системный администратор 1С v8.3 (Обычные формы) 1С:Управление торговлей Торговля и дистрибуция
← На главную

При организации работы торговых точек часто возникает необходимость подключить к 1С сразу несколько эквайринговых терминалов (PIN-падов) Сбербанка, когда кассиры работают на одном удаленном сервере терминалов (RDP). В такой конфигурации штатные библиотеки Сбербанка могут вызывать сбои: 1С пишет, что подключенное оборудование не обнаружено, либо начинает направлять запросы на транзакции не на тот терминал.

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

Причины конфликтов при работе нескольких терминалов в RDP

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

  1. Глобальная регистрация библиотек в реестре Windows: Стандартный драйвер эквайринга (библиотека sbrf.dll или sbrfcom.dll) регистрируется в реестре системы глобально в ветке HKEY_CLASSES_ROOT. Если на сервере одновременно работают несколько кассиров, регистрация компонента из одной папки перетирает пути к библиотеке для других пользователей.
  2. Пересечение конфигурационных файлов: В стандартной поставке ПО Сбербанка настройки подключения к терминалу (номер COM-порта, параметры обмена) хранятся в конфигурационных файлах (например, pinpad.ini). Если все пользователи обращаются к единому каталогу драйвера, параметры порта одного кассира постоянно перезаписывают настройки другого.
  3. Сбои проброса COM-портов в RDP-сессиях: При переподключении RDP-сессий номера виртуальных COM-портов могут изменяться, что приводит к ситуациям, когда 1С теряет связь с физическим устройством.

Шаг 1. Создание индивидуальных папок для каждого PIN-пада на сервере

Разберем по шагам наиболее эффективный алгоритм настройки эквайрингового оборудования Сбербанка на RDP-сервере.

Первым делом создадим на RDP-сервере отдельные изолированные каталоги для каждого рабочего места кассира (для каждого подключенного PIN-пада). Например:

C:\Sberbank\Term1\
C:\Sberbank\Term2\
C:\Sberbank\Term3\

В каждый из этих каталогов необходимо скопировать весь комплект файлов дистрибутива драйвера Сбербанка (включая библиотеки sbrf.dll, pilot_nt.dll и конфигурационные файлы).

Шаг 2. Настройка прав доступа к папкам драйвера

На практике часто встречается ситуация, когда утилита Сбербанка видит терминал и выполняет сверку итогов, а 1С при попытке оплаты выдает ошибку. Одной из частых причин этого является недостаток прав у пользователя терминальной сессии на создание временных файлов и логов в папке драйвера.

Предоставим полные права доступа (чтение, запись, изменение) для конкретного кассира или группы кассиров на соответствующую папку эквайринга на сервере. Для этого кликаем правой кнопкой мыши по папке терминала, переходим в Свойства -> Безопасность и добавляем нужную учетную запись Windows с предоставлением полных прав.

Шаг 3. Индивидуальная настройка COM-портов в файлах конфигурации

Разберем настройку связи с терминалом. Каждому кассиру пробрасывается его локальный COM-порт, к которому физически подключен PIN-пад через USB/Serial кабель.

  1. На локальном компьютере кассира проверяем, какой COM-порт назначен утилите эквайринга (например, COM3).
  2. Настраиваем проброс портов в RDP-клиенте (настройка «Локальные ресурсы -> Локальные устройства и ресурсы -> Порты»).
  3. Заходим в соответствующую папку терминала на сервере (например, C:\Sberbank\Term1\) и открываем конфигурационный файл pinpad.ini.
  4. Задаем корректный номер проброшенного COM-порта и скорость передачи данных (рекомендуемые значения скорости: 19200 или 115200 бод).

Шаг 4. Настройка торгового оборудования в 1С

Теперь перейдем к настройке конфигурации 1С (например, 1С:Управление торговлей 10.3 или любых конфигурациях на базе БПО):

  1. Открываем справочник торгового оборудования и создаем новый экземпляр эквайринговой системы для первого рабочего места.
  2. В параметрах настройки оборудования указываем путь к обработке обслуживания и путь к драйверу/DLL-файлу из соответствующей индивидуальной папки (например, C:\Sberbank\Term1\sbrf.dll или C:\Sberbank\Term1\pilot_nt.dll).
  3. Повторяем данную процедуру для всех остальных кассиров, привязывая каждое рабочее место 1С к своей уникальной папке драйвера.

Шаг 5. Проверка работоспособности и сверка итогов

Проанализируем правильность выполнения настроек:

  1. Запустим утилиту тестирования из индивидуальной папки терминала под учетной записью соответствующего кассира и выполним операцию Сверка итогов или Проверка связи.
  2. Если тест утилиты прошел успешно, заходим в 1С под пользователем данного кассира и проверяем функцию сверки итогов непосредственно из 1С.
  3. Убеждаемся, что при отправке команды на оплату чек проходит именно через тот PIN-пад, который физически подключен к ПК данного пользователя.

Альтернативное решение: Перевод PIN-падов на IP-протокол (Ethernet)

Если проброс COM-портов через RDP работает нестабильно или периодически «отваливается» при обрывах интернет-соединения, рекомендуем перевести эквайринговые терминалы Сбербанка на работу по протоколу TCP/IP (Ethernet):

  1. Обратитесь в сервисную службу Сбербанка с запросом на прошивку и настройку терминалов для работы по протоколу Ethernet (TTK2).
  2. Каждому PIN-паду выделяется статический IP-адрес в локальной сети компании.
  3. 1С на сервере обращается к эквайринговому терминалу напрямую по IP-адресу, минуя механизмы проброса COM-портов RDP. Это полностью исключает конфликты портов и гарантирует высокую скорость обработки транзакций.
← На главную