Loadparm не запускается сбербанк

Обновлено: 01.05.2024

Shubin » 12 фев 2021, 08:06

Дано:
- эквайринговый терминал SP30 PAX | Inpas от «Сбербанка» подключенный через USB.
- Windows 10 64бит, Администратор.

Задача: состыковать терминал с ПК для последующей работы c 1С 8.3.
Сейчас ошибка в 1С при тестировании " «Тест не пройден. Статус=-1 (неизвестный статус транзакции)».
Примечание: инициализация оплаты через "LoadParm.exe 1 100" работает исправно.

Код: Выделить всё ComPort=3
;PinpadLog=1
;WaitPinpadSeconds=60
;PinpadIPAddr=10.73.27.24
;PinpadIPPort=8888
;TerminalID=00000000
;MerchantID=000000000000
;Header=Заголовок чека строка 1|Строка 2|Строка 3|Строка 4
;CardHolderSignatureImage=sign\\\-.jpg
Speed=115200
ShowScreens=1
Printerend=01
;PrinterType=Epson-TM950
;PrinterType=Generic_32_chars
;PrinterType=Generic_35_chars
;PrinterType=Generic_36_chars
;PrinterType=Generic_40_chars
;ForceTopMost=1
;PilotNtSeparateCancelAndRefund=1
NewProtocol=1

Проверяю драйвера и настройки портов, скорость все верно.

Устанавливаю INPAS Dual Connector 1.3.8.3 курю мануал в надежде увидеть в логах что то интересное.

Настройки файла DualConnector.xml:
Посмотреть

Запускаю для теста DC Control загружаю настройки из DualConnector.xml получаю ошибку при тесте:

И вот какая информация появляется в логе:
Код: Выделить всё 12.02.21 00:24:17.381 Log TYPE is 'ADVANCED' ID6
12.02.21 00:24:17.381 Call Exchange method. Ver.1.3.8.3, Emergency timeout(ms): 60000 ID6
12.02.21 00:24:17.382 SA packet:
[25] = '26'
[90] = 'Test'
---------- ID7
12.02.21 00:24:17.382 Mutex does not exist. ID7
12.02.21 00:24:17.384 Created the mutex. ID7
12.02.21 00:24:17.384 Wait for the mutex. ID7
12.02.21 00:24:17.386 Entered the mutex. ID7
12.02.21 00:24:17.386 In Serial :: Open() trying to open ID7
12.02.21 00:24:17.422 In Serial :: Write() trying to write ID7
12.02.21 00:24:17.422 COM3: Writen 17 bytes: ID7
12.02.21 00:24:18.955 COM3: Receive 1 bytes: ID7
12.02.21 00:24:18.956 In Serial :: Write() trying to write ID7
12.02.21 00:24:18.957 COM3: Writen 17 bytes: ID7
12.02.21 00:24:20.479 COM3: Receive 1 bytes: ID7
12.02.21 00:24:20.480 In Serial :: Write() trying to write ID7
12.02.21 00:24:20.481 COM3: Writen 17 bytes: ID7
12.02.21 00:24:21.942 COM3: Receive 1 bytes: ID7
12.02.21 00:24:21.943 ID7
12.02.21 00:24:21.943 In Serial :: Close() serial != null ID7
12.02.21 00:24:21.943 In Serial :: Close() serial is open ID7
12.02.21 00:24:21.944 In Serial :: Close() finished ID7
12.02.21 00:24:21.945 In Serial :: Close() mutex released ID7
12.02.21 00:24:21.957 Process ended with error: ERR_DEVICE_EXCHANGE ID8
12.02.21 00:24:22.083 Log closed. ID6

Судя по логу, возникает какая-то ошибка при обмене с устройством:
КОД:
Код: Выделить всё Process ended with error: ERR_DEVICE_EXCHANGE ID8

Номер терминала 23205191

central » 12 фев 2021, 16:57

А почему настраиваете его, как com тогда?
При подключении по USB pinpad.ini имеет следующий формат:
ComPort=9
EnableUSB=1
PrinterFile=cheque.txt
PinpadLog=0
Speed=115200
DailyReport=%s_inf.txt
NewProtocol=1

Добавлено спустя 8 минут 1 секунду:
+ у вас терминал может быть настроен на работу без кассы, поэтому не реагирует на команды.
Я правда не силён в банковских терминалах, но немного по работе приходится сталкиваться с ними.

Shubin » 12 фев 2021, 17:27


Он подключается по usb интерфейсу и далее эмуляция в COM порт. Просто многие подключают его по ethernet через TCP/IP по этому так написал.
Вроде пин-пад sp30 не умеет работать без кассы, интегрируется всегда (именно такую делали заявку в сбербанк), дело в том что он работает с инициализацией оплаты через софт сбербанка CMD "LoadParm.exe 1 100" оплата на 1 руб приходит на пин-пад. А проверить софтом PAX у меня не выходит. Возможно их софт сбербанка использует не все инструкции из драйвера в отличии pax и 1с. В 1С 8.3 поддержка этого оборудования по умолчанию есть и многие работают особо проблем на форумах я не нашел с ним, да и очень странная ошибка, на которую мои программисты разводят руками. Мб что то надо физически докрутить на терминале в настройках чтобы он адекватно начал общаться.

norad » 12 фев 2021, 17:38

У вас терминал от сбера со своим софтом, а кассовая обвязка от другого программного продукта, в этом вся проблема. Для сбера на 1с есть свой модуль. DCcontrol вам не нужен.

Shubin » 12 фев 2021, 18:04

norad писал(а): У вас терминал от сбера со своим софтом, а кассовая обвязка от другого программного продукта, в этом вся проблема. Для сбера на 1с есть свой модуль. DCcontrol вам не нужен.


Т.е. 1С 8.3 из коробки с пин-падом от сбербанка не получиться подружить? Думал что в 8.3 этого делать не нужно уже.
Драйвера в 1С 1.1.1.2 (Версия требований к разработке драйверов 1.1) + "AddIn.a_inpasDC1c83".

norad » 12 фев 2021, 20:34

Вон же у вас либа СБ РФ эквайринговые терминалы, это и есть сберовский модуль. Регать нужно только sbrfcom.dll, остальные для 1с не нужны.

Кто сейчас на конференции

Для того, чтобы настроить банковский терминал, сначала требуется вызвать специалиста Сбербанка (или другого банка) для установки драйверов на компьютер и на сервер (если они еще не установлены). Если этого не сделать, то сервер не будет «видеть» терминал.

Подключение терминала

Далее требуется зайти под Администратором (либо под другим пользователем с правами Администратора) в 1С.

Переход в справочник «Оборудование»: Справочники -> Розница и оборудование -> Оборудование.

Терминал 1-Путь.jpg

Нажатием на открывается «Мастер добавления оборудования».

1. На Шаге 1 требуется выбрать «Эквайринг-терминал» и нажать кнопку «Далее».

Терминал 2-Шаг 1.jpg

2. Шаг 2. Выбрать нужную модель оборудования (обычно эквайринг-терминал Сбербанк или эквайринг-терминал ВТБ) и нажать кнопку «Далее».

Терминал 3-Шаг 2.jpg

3. На Шаге 3 выбрать «СОЗДАТЬ НОВОЕ УСТРОЙСТВО» и нажать кнопку «Далее».

Терминал 4-Шаг 3.jpg

4. Открывается окно «Экземпляр оборудования»: нажать кнопку «Применить» (окно при этом закрывается).

Терминал 5-Настройка Экземпляра оборудования.jpg

5. Шаг 4. В «Мастере добавления оборудования» нажать кнопку «Готово».

Терминал 6-Шаг 4 Готово.jpg

В окне справочника «Оборудование» появляется терминал.

Терминал 7-Терминал в списке.jpg

Настройка терминала в Рабочем месте

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

В карточке рабочего места в поле «Оборудование» требуется добавить эквайринг-терминал и проставить галочку «Включать оборудование только при использовании (иначе включится автоматически при входе)». То есть, пользователи, которые работают с выбранным здесь в карточке оборудованием, будут его занимать, когда непосредственно будут пробивать и печатать чеки на кассе. Это нужно для того, чтобы не висела ошибка, что занято оборудование, – если через один терминал пробивают чеки несколько пользователей.

Настройка терминалов Сбербанка

Описание

Настройка терминалов обычно выполняется поставщиками терминала – обычно на компьютере пользователя. Но при работе через RDP или RemoteAPP необходима настройка на сервере. Для разных терминалов нужны разные драйвера. Но для корректной работы на сервере они должны работать через один универсальный драйвер.

Универсальный драйвер представляет собой папку SC552 в корне системного диска.

Подключение терминала Сбера-1 Файлы.jpg

  1. SBRFCOM.dll – Библиотека, которую нужно зарегистрировать через cmd, для работы с 1C
  2. sbrf.dll – Библиотека, которую нужно зарегистрировать через cmd, для работы с терминалом
  3. pinpad.ini – Настройки, от правильности которых зависит работоспособность терминала на сервере
  4. LoadParm.exe – Утилита сбербанка, для проверки работоспособности через «Сверку итогов»

Настройка терминала, подключенного по com порту к ПК пользователя

1. Настройка терминала на компьютере

Сотрудники Сбербанка поместили папку в корень системного диска на ПК пользователя, зарегистрировали, проверили, все работает.

В данном случае необходимо зайти в Управление компьютером –> диспетчер устройств –> Порты

Узнать, на какой порт подключен терминал: это важная информация (например, COM 4).

Запустить LoadParm.exe и сделать сверку. Если запускается, проходит, то переходим к настройке на сервере.

2) Терминал не настроен на ПК через COM или не работает сверка с ПК пользователя

Уточняем, точно ли через COM порт. Если да, то обращаемся в техподдержку Сбербанка для перенастройки хотя бы на компьютере пользователя, в идеале на сервере.

В случае отказа ищем драйвера USB для терминала в интернете. Это нужно для отображения терминала как com порт. Устанавливаем, подключенный терминал должен отобразится в диспетчере устройств в портах. Скачиваем папку SC552 из универсального драйвера, ставим на компьютер пользователя, регистрируем библиотеки, настраиваем ini файл (аналогично как на сервере, описание ниже).

Если не через COM, а сетевой, смотрим настройки сервера ниже.

Запускаем LoadParm.exe, запускаем сверку итогов, если она проходит нормально, то драйвер настроен и работает.

2. Настройка терминала на сервере

Проброс портов

Основной момент: при подключении по rdp или remoteapp должна стоять настройка проброса портов.

Для RDP на вкладке «Локальные ресурсы –> Подробнее» поставить галочку «Порты». Сохранить. Порт подхватывает при авторизации пользователя на сервере.

Подключение терминала Сбера-3 Настройка на сервере.jpg

Для Remoteapp redirectcomports:i:1

Копируем папку SC552, которую добавили на ПК сотрудники Сбербанка

Берем папку SC552 с компьютера пользователя и копируем на сервер на системный диск.

Регистрируем библиотеки на сервере

Запускаем cmd от админа. Переходим в папку SC552, регистрируем SBRFCOM.dll и sbrf.dll

Настраиваем pinpad.ini на сервере

Примерный текст. Номер порта тут должен соответствовать номеру порта терминала на ПК пользователя. (; в начале строки ее закомментирует)

Обычно текст настроек pinpad.ini на ПК пользователя и на сервере одинаков.

Проверяем в папке на сервере

Если запускается и сверка итогов проходит достаточно быстро, то переходим далее.

Если запускается, но при этом возникают проблемы, висит на проверке связи, либо попытки подключения, то скорее всего драйвер (папка sc552) не подходит для этого терминала. Пробуем качать «Последний адекватно работающий драйвер». Настраиваем его и на ПК и на сервере.

Если LoadParm.exe не запускается вообще, то проблема в номере ком порта, если сверили и они одинаковы на пк и сервере, то выйти из пользователя на сервере и зайти снова. Именно выйти из пользователя, а не просто закрыть РДП подключение. Порт подхватывает при авторизации пользователя на сервере.

Даем доступ к папке

Подключение терминала Сбера-6 Доступ к папке.jpg

Механика тут такая: при пробитии чека в 1С, Драйвер под залогиненным пользователем записывает его изначально в файл “p” в папке, потом он идет на кассу. Если у него не будет доступа к папке, то у него не будет в 1С пробиваться чек.

Проверяем в 1С на сервере

Добавляем терминал в справочник «Оборудование», в рабочее место пользователя.

Запускаем 1С, пробиваем чек на 1 р. по безналу.

Важно: При этом у пользователя право «Разрешить ручную авторизацию безналичных платежей» должно стоять в значении «Нет»*.

*Без этого не будет работать.

Если запрещена ручная авторизация, чек пробивается, не выходит ошибок, напечатался чек на кассе, провелся чек в 1C, то все настроено.

* 1С: Предприятие Управление Торговлей УТ 11.1.6.26, которая работает в качестве фронта на кассах в розничных магазинах, где по умолчанию наших настроек терминалы не работают - приходится набивать суммы и в программе и в самом терминале.

* Эквайринговый терминал VX 820 от Сбербанка, выданный Сбербанком для разработки и тестирования под проект СПАСИБО.
Первым делом подключим терминал, чтобы он заработал со своими встроенными программами типа UpWin.exe. Терминал в нашем случае подключается через переходник USB


  1. Терминал пока не подключаем к компьютеру. От Сбербанка у нас есть папка \sc552. Внутри есть папка \Vx_1.0.48_B3. Здесь запускаем файл silence.bat
    Дожидаемся пока установится драйвер. После этого подключаем терминал к компьютеру. Терминал сам еще чего-то поищет в центре обновления Windows и что-то установит.

  1. Теперь необходимо проверить на каком порту установлен терминал. Должны совпадать порты как в диспетчере задач у устройства на COM порте

  1. Запускаем от имени администратора системы cmd и регистрируем компоненты из этой папки bin - SBRF.dll и SBRFCOM.dll





  1. Запускаем из этой же папки сбербанковскую приблуду LoadParm.exe. Должно появиться окно вида


  1. Запускаем 1С и идем в Администрирование – РМК и Оборудование – Подключаемое оборудование – Эквайринговые терминалы – Создать.

  1. Далее настраиваем этот элемент по кнопке Настройка

  1. Создадим фискальный регистратор. РМК и Оборудование – Подключаемое оборудование – Фискальный регистратор – Создать. Выбираем драйвер нашего оборудования. Для примера – эмулятор от 1С. Не забыть потом настроить элемент по кнопке Настроить и установить драйвер

. интегрируется всегда (именно такую делали заявку в сбербанк), дело в том что он работает с инициализацией оплаты через софт сбербанка CMD " LoadParm .exe 1 100" оплата на 1 руб приходит на пин-пад. А проверить софтом PAX у меня не выходит. Возможно их софт сбербанка использует не все .

Ошибка при подключение SP30 к ПК

. ошибка в 1С при тестировании " «Тест не пройден. Статус=-1 (неизвестный статус транзакции)». Примечание: инициализация оплаты через " LoadParm .exe 1 100" работает исправно. Конфиг pinpad.ini ComPort=3 ;PinpadLog=1 ;WaitPinpadSeconds=60 ;PinpadIPAddr=10.73.27.24 ;PinpadIPPort=8888 .

Напишу в этой теме чтобы не плодить новую, VX-820 подключен по ethernet через девай как у ТС. Все работает. Проблема в том, что не открывается интерфейс loadparm . Showscreen 1 - прописано. Кто-то сталкивался?

. Попробуй скачать TLV из терминала после УЗ TLVEdit не удалось заставить загрузить с терминала. Выкидывает ошибки 12 и 23. Хотя всё работает, loadparm загружается. В ТП Сбербанка ты просишь настроить PCI DSS через комбобокс Сделал заявку, сделают перенастройку, отпишусь. насчет ошибок лучше .

. в каждом варианте связи добавить пункт "Режим работы порта : Использовать PPP. " Алгоритм такой: Касса запускает как обычно через loadparm .exe, но терминал выходит в инет через интернет общий другой линии. :good:

Думаю, достаточно сверки будет делать.

. к кассам, значит работает. Мне нужно подключить терминал к 1С, если пингуется, параметры подгружает от Сбербанка, значит должно работать. loadparm .exe не загружается, посмотрим, как поведёт себя 1С.

Подгрузил, перезагрузил, терминал пингуется. А loadparm .exe то теперь запускается ? "Видит" терминал по IP? Вообще то в ТТД у него заявлен интерфейс только RS232 и USB. Возможно, что по IP-адресу касса его и не увидит никогда, если только .

Pax SP30 подключение по Ethernet

. подключение видит, пинги до терминала не проходят. В отчёте терминала LAN (Y) Куда копать? Дополню. Подключаю терминал по usb терминал работает, loadparm .exe запускается. Подключаю по Ethernet, пинга до терминала нет, loadparm .exe не запускается, делаем вывод, что терминал не видит по сети.

UPOS Повтор чека - sbrf.dll NFun(?)

. из контрольной ленты, выбрать из старых лент. Какой номер функции NFun и параметры. Или может быть есть отдельный аргумент для запуска через loadparm .exe

pam12 писал(а): Решение подсказали, если доступ идет к vx820 по USB, то в этом случае необходимо в pinpad.ini прописать: EnableUSB=0


Ну как бы на винде этот параметр не критичен в отличии от DOS
Что вы пытаетесь сделать командой LoadParm .exe 1 1.01?

Verifone vx820 и Ingenico iCT250 на одном ПК

. этом в"C:\Program Files\sc552\pinpad.ini": ComPort=7 PinpadLog=1 PrinterEnd=01 Speed=115200 ShowScreens=1 NewProtocol=1 А вызов команды LoadParm .exe 1 1.01, журнал показывает: 22.03 11:12:48 LOADPARM : Loading GATE.DLL 22.03 11:12:48 GATE: SB_KERNEL.DLL is loaded 22.03 11:12:48 GATE: .

. Номер ссылки обязательно вводить или можно опустить этот параметр и программа сама его запросит? Так же вы пишите про upwin.exe и pilot, но у меня loadparm или это тоже самое?

Все, теперь 1с ок работает - кроме запроса сверки при закрытии кассовой смены/зетника по 1с и по фискальнику. Пока сверку проводим через loadparm , В УТ11, эта функция называется "Сверка итогов по картам". Находится в разделе "Продажи", по умолчанию отключена. Нужно добавить .

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

Терминал у меня прописан так:


При входе в параметры подключения у меня выдавались вот такие параметры:


В демо-базе БПО 3.1 окно подключения такое же.

Тест подключения не проходил, это и не удивительно, в каталоге поставки от сбербанка файла pilot_nt нет:


В интернете пишут что sb_pilot используется для Linux.

Тогда я решил посмотреть, как выглядит это меню в типовой демо-базе Розницы:


Как видно, тут просто указан путь к дистрибутиву, а не путь к sb_pilot.

Тогда я подумал, что в Рознице используется другой драйвер оборудования, но нет, там такой же драйвер с идентификатором Драйвер1СЭквайринговыеТерминалыСбербанк.

Я сохранил общий макет Драйвер1СЭквайринговыеТерминалыСбербанк из обоих конфигураций, они оказались идентичными:


Я посмотрел, как прописан драйвер в обоих базах. В моей:



Сейчас вижу, что не заполнено поле имя макета, но скорее всего дело не в этом.

Получил ошибку, т.к. не все общие модули перенес из БПО:



Перенес этот модуль (и связанные) в итоге не смог установить драйвер:


Отладил код подключения в Рознице, он шел по отмеченными рамками шагам:


Причем в рознице параметры правильные определялись:

В общем, ничего не дало мне использование компоненты вместо макета.

Тогда поменял обратно на «Драйвер подключается из макета» и о чудо, настройки стали нормальными:


Возможно, нужно было очистить поле «Загруженный драйвер», при смене метода он очистился? Не знаю…

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

Автор статьи

Куприянов Денис Юрьевич

Куприянов Денис Юрьевич

Юрист частного права

Страница автора

Читайте также: