Как устранить ошибку 99 при работе с эквайринговым терминалом Сбербанка в 1С:Управление торговлей?

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

Ошибка 99 при использовании эквайринга Сбербанка является одной из самых «размытых» и часто встречающихся. Она сигнализирует об общей проблеме связи между учетной системой (1С) и банковским оборудованием. Это может быть как физический обрыв кабеля, так и логический конфликт драйверов или неправильная настройка портов. В данной статье мы подробно разберем, как продиагностировать систему и восстановить работоспособность терминала — кардинально проблему связи решает интеграция оплаты по QR-кодам Сбербанка без физического терминала.

Анализируем физическое подключение и настройки электропитания

Прежде чем приступать к программным настройкам, нам необходимо убедиться, что оборудование стабильно определяется операционной системой. Ошибка 99 часто возникает из-за того, что Windows в целях экономии энергии отключает USB-порты, к которым подключен пин-пад.

Проанализируем шаги по проверке физического уровня:

  1. Проверка кабелей: Убедимся, что USB-кабель плотно вставлен в разъем компьютера и самого терминала. Если используется модель PAX или Kozen P12, стоит попробовать сменить порт USB, желательно использовать разъемы на задней панели системного блока (для стационарных ПК), так как они имеют более стабильное питание.
  2. Настройка электропитания Windows: Перейдем в «Диспетчер устройств», найдем раздел «Контроллеры USB». Для каждого «Корневого USB-концентратора» необходимо открыть «Свойства», перейти на вкладку «Управление электропитанием» и снять галочку «Разрешить отключение этого устройства для экономии энергии».
  3. Перезагрузка оборудования: Выполним полную процедуру сброса: выключим терминал, вытащим USB-кабель, перезагрузим компьютер, и только после полной загрузки ОС вставим терминал обратно. Это заставит Windows заново инициализировать виртуальный COM-порт.

Проверяем виртуальные COM-порты и файл pinpad.ini

Наиболее распространенная причина ошибки 99 — несоответствие номера COM-порта в диспетчере устройств и в конфигурационном файле программного обеспечения Сбербанка (UPOS). Программное обеспечение Сбербанка обычно устанавливается в папку C:\sc552.

Разберем процесс синхронизации настроек:

  1. Откроем «Диспетчер устройств» и развернем ветку «Порты (COM и LPT)».
  2. Найдем наше устройство (обычно это USB-serial или конкретное название модели, например, PAX S300). Запомним номер порта (например, COM4).
  3. Перейдем в папку C:\sc552\ и найдем файл pinpad.ini.
  4. Откроем его через Блокнот и найдем строку ComPort=. Значение в этой строке должно строго соответствовать номеру из диспетчера устройств.

Пример правильного заполнения файла pinpad.ini:


[PinPad]
ComPort=4
Speed=115200
BusType=1

Если в файле указан ComPort=1, а в системе устройство «висит» на COM4, мы гарантированно получим ошибку 99. Также обратим внимание на параметр Speed (скорость). Она должна быть идентична той, что указана в свойствах порта в диспетчере устройств (стандарт — 115200).

Настройка драйверов и компонентов в 1С

В современных версиях 1С:Управление торговлей (начиная с 11.4) крайне важно использовать актуальные драйверы интеграции. Сбербанк предлагает несколько вариантов библиотек.

Проанализируем ситуацию с выбором драйвера:

В справочнике «Подключаемое оборудование» при создании эквайрингового терминала мы можем выбрать драйвер 1С:Эквайринговые терминалы Сбербанк или 1С:Эквайринговые терминалы Сбербанк 2.Х. Для новых терминалов и последних релизов конфигураций рекомендуется выбирать версию 2.Х. Она более стабильна и лучше поддерживает 64-битную платформу 1С.

Важный нюанс с разрядностью:

Если ваша база 1С запускается через 64-битный клиент, убедитесь, что компоненты Сбербанка (библиотеки sbrf.dll или sbrfcom.dll) также поддерживают эту разрядность. В некоторых случаях, если драйвер не «встает» или не проходит тест, помогает переход на 32-битную версию клиента 1С, так как многие старые библиотеки UPOS не имеют 64-битных аналогов.

Регистрация библиотек и права доступа

Иногда система не видит терминал из-за отсутствия регистрации необходимых компонентов в реестре Windows. Рассмотрим, как это исправить вручную.

Запустим командную строку от имени администратора и выполним регистрацию библиотеки из папки Сбербанка (для автоматизации таких настроек поможет централизованное администрирование рабочих мест и кассового оборудования):


regsvr32 C:\sc552\sbrfcom.dll

Если регистрация прошла успешно, появится соответствующее уведомление. Это позволит 1С обращаться к методам драйвера напрямую, корректно выполняя такие операции, как возврат денежных средств по эквайрингу Сбера.

Также проверим права доступа к папке C:\sc552. ПО Сбербанка постоянно записывает логи транзакций и временные файлы. Если у текущего пользователя Windows нет прав на запись в эту папку, или её блокирует антивирус, терминал выдаст ошибку 99. Добавим папку sc552 в исключения антивируса и дадим пользователю «Полный доступ» в свойствах безопасности папки.

Специфика новых терминалов (Kozen P12) и конфликты с ККТ

В последнее время Сбербанк активно заменяет старые терминалы на китайские модели Kozen P12. Эти устройства имеют свои особенности, которые могут приводить к ошибке 99 или «отвалу» кассового аппарата (например, Атол 22Ф или 55Ф).

Рассмотрим характерные проблемы Kozen:

Подводим итоги диагностики

Если все вышеперечисленные методы не помогли и ошибка 99 сохраняется, необходимо выполнить тестовую операцию через утилиту самого Сбербанка (обычно это sb_pilot.exe или запуск сверки итогов через loadparm.exe). Если вне 1С связь с банком проходит успешно (терминал пишет «Связь установлена»), значит проблема кроется в настройках подключения внутри 1С (неверный выбор драйвера или параметров порта). Если же и через утилиту Сбера связи нет — проблема в железе или прошивке, и в этом случае необходимо вызывать сервисного инженера банка для замены устройства.

← На главную