Ситуация, когда на одном рабочем месте в 1С ведется торговля от имени двух разных организаций, требует подключения двух кассовых аппаратов и двух эквайринговых терминалов. Однако стандартная настройка через драйвер Arcus2 часто приводит к конфликту: при попытке оплаты 1С активирует не тот пин-пад, который нужен, даже если в настройках указаны разные каталоги с файлами конфигурации. Рассмотрим подробно причины этой проблемы и пути ее решения. В случаях, когда подключение выполняется в конфигурациях прошлых поколений, может потребоваться специализированная обработка обслуживания терминалов Ingenico IPP320 для УТ 10.х.
Проанализируем техническую сторону работы драйверов семейства Ingenico. Основная проблема заключается в механизме инициализации библиотеки ingenico_comm.dll (или ее аналогов). Когда 1С обращается к драйверу (будь то эквайринг или планшет для подписи), операционная система загружает библиотеку в память процесса. Если для обоих терминалов используется один и тот же программный идентификатор драйвера, 1С создает экземпляр объекта, который привязывается к определенным путям в файловой системе или реестре Windows.
Основные факторы конфликта:
cashreg.ini, cheque.ini) по пути, указанному в системной переменной окружения CASHREG. Если она задана в Windows, драйвер будет игнорировать настройки пути, указанные в интерфейсе 1С.Это наиболее правильный и современный способ, который поддерживается драйвером Arcus2 и конфигурацией 1С:Бухгалтерия КОРП. Вместо того чтобы пытаться запустить два разных экземпляра драйвера, мы настраиваем работу нескольких организаций через один или два терминала в рамках единой конфигурации.
Разберем шаги настройки:
cashreg.ini (который находится в папке с Arcus) необходимо настроить секции для разных мерчантов. Это позволяет разделять потоки платежей на уровне банковского ПО.Этот метод исключает конфликт путей к папкам, так как используется один общий программный интерфейс, а разделение идет по логическим идентификаторам внутри драйвера. Чтобы автоматизировать дальнейшую обработку поступающих оплат, можно использовать инструмент для загрузки операций эквайринга из банка с разделением по организациям на основе номеров мерчантов.
Если вариант с мультимерчантом не подходит по условиям банка, можно попробовать «обмануть» систему, создав два разных элемента в справочнике драйверов оборудования.
Выполним следующие действия:
_Org2 к именам dll) и отредактируем файл manifest.xml, изменив идентификатор типа оборудования и наименование.Благодаря этому 1С будет воспринимать их как два абсолютно разных программных продукта и выделит под них разные области памяти, что минимизирует риск пересечения путей к файлам .ini.
Проанализируем состояние системных настроек Windows. Чтобы 1С корректно передавала путь к папке Arcus, убедимся в отсутствии жестких привязок в системе:
CASHREG. Если она есть — удалим ее.HKEY_CURRENT_USER\Software\Argo (или аналогичную для вашей версии Arcus). Если там прописаны жесткие пути к папкам EXE или INI, их стоит удалить или очистить, чтобы драйвер брал параметры из настроек, передаваемых из 1С.Если штатные средства не помогают, можно прибегнуть к программной доработке через расширение. Суть метода заключается в том, чтобы перед каждым вызовом метода оплаты принудительно менять текущий рабочий каталог системы на папку нужного терминала.
Рассмотрим пример кода, который можно внедрить в процедуру обработки оплаты:
// Перед вызовом методов драйвера эквайринга
ИмяПапкиТерминала = "C:\Arcus2_Org1"; // Или получаем из настроек оборудования
УстановитьТекущийКаталог(ИмяПапкиТерминала);
// Далее идет штатный вызов выполнения операции по эквайрингу
// Результат = ОбъектДрайвера.ОплатитьПлатежнойКартой(...);
Этот нехитрый прием заставляет библиотеку ingenico_comm.dll искать файл cashreg.ini в текущем активном каталоге процесса, что решает проблему путаницы, даже если пути в настройках 1С прописаны, но драйвер их игнорирует.
При настройке двух терминалов в интерфейсе 1С (раздел Администрирование — Подключаемое оборудование) обязательно проверьте следующие параметры в окне «Параметры подключения»:
C:\Arcus2_1 и C:\Arcus2_2).cashreg.ini в каждой папке параметр DeviceID уникален и соответствует настройкам в 1С.Подведем итог: наиболее стабильным решением является использование режима Мультимерчант, если банк-эквайер его поддерживает. Если же необходимо использовать две разные копии Arcus2, критически важно изолировать их на уровне имен драйверов в 1С и исключить влияние системных переменных Windows.