Почему 1С не отправляет команду на эквайринговый терминал Сбербанка при оплате?

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

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

Проверка настроек РМК

Первое, на что необходимо обратить внимание — это настройки Рабочего места кассира (РМК). Даже если в разделе Администрирование -> Подключаемое оборудование устройство добавлено, протестировано и находится в статусе «Работает», это не гарантирует, что оно выбрано как активное для текущего пользователя.

  1. Перейдите в настройки рабочего места кассира.
  2. Найдите вкладку Эквайринговые терминалы.
  3. Убедитесь, что в списке терминалов установлена галочка Устройство используется.
  4. Проверьте, не активирована ли ошибочно опция Без подключения оборудования. Если эта галочка установлена, 1С будет имитировать процесс оплаты, ожидая ручного подтверждения, вместо обращения к драйверу терминала.

Конфликт разрядности библиотек и платформы

Одним из критических аспектов является соответствие битности (разрядности) операционной системы, платформы 1С и подключаемых библиотек (DLL). Часто возникают проблемы при попытке использовать 64-битную платформу с 32-битными библиотеками Сбербанка.

Если вы используете 32-битную платформу 1С (обычно именно она стабильнее работает с большинством торгового оборудования), убедитесь, что библиотеки SBRF*.dll также являются 32-битными. По сложившейся практике, для корректной регистрации таких библиотек в 64-битной Windows 10, их рекомендуется размещать в системной папке SysWOW64 и регистрировать через regsvr32.

Проверка прав доступа и путей к файлам

Рассмотрим вопрос взаимодействия 1С с папкой обмена (например, sc552). Приложение 1С должно обладать полными правами на чтение и запись в эту директорию, так как именно туда записываются временные файлы параметров оплаты (settings.ini) и туда же сохраняются результаты транзакций.

Если 1С не может записать файл, пин-пад не получит корректную сумму, и событие оплаты не сработает. Попробуйте выполнить следующие действия:

Анализ логов обмена

Если после проверки настроек РМК проблема сохраняется, проанализируйте логи драйвера. В папке, где расположены библиотеки Сбербанка, создаются текстовые файлы логов (обычно SBRF.log).

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

Настройка параметров эквайринга

В настройках самого эквайрингового терминала в 1С обратите внимание на следующие параметры:

В заключение, если все вышеперечисленные шаги не дали результата, рекомендуем полностью удалить текущую настройку эквайрингового терминала из справочника Подключаемое оборудование и выполнить настройку с нуля, предварительно очистив кэш 1С и перезагрузив пин-пад.

← На главную