Многие пользователи и администраторы систем на базе 1С:Розница 1.0 сталкиваются с серьезной проблемой: конфигурация давно не обновлялась, а банковские технологии ушли далеко вперед. Переход на версию 2.0 или 3.0 часто невозможен из-за глубоких доработок системы или бюджетных ограничений. В этой статье мы подробно разберем, как интегрировать современные платежные решения, такие как эквайринг Газпромбанка, Тинькофф и Систему быстрых платежей (СБП), в «старую добрую» первую Розницу.
Для «Розницы 1.0» подключение терминалов Газпромбанка через протокол Arcus2 остается одним из самых надежных методов. Проанализируем техническую сторону этого процесса. В основе взаимодействия лежит внешняя компонента, которая позволяет 1С обмениваться данными с банковским ПО.
Для успешной реализации нам необходимо выполнить следующие шаги:
Arcus2Com.dll. В операционных системах Windows (особенно 64-битных) крайне важно правильно зарегистрировать этот файл. Для этого запустите командную строку от имени администратора и выполните команду:
regsvr32 "C:\Путь_к_папке_Arcus2\Arcus2Com.dll"
epf-файл. Обычно используется стандартная обработка «Газпромбанк: Эквайринговая система», но стоит обратить внимание на версию. Если используется версия 2.17 и выше, убедитесь, что в папке обмена с банком присутствуют актуальные исполняемые файлы (например, cashier.exe).Если вы решили перейти на эквайринг от Тинькофф, ситуация усложняется тем, что современные драйверы банка ориентированы на Библиотеку подключаемого оборудования (БПО) версии 2.0 и выше. В Рознице 1.0 этой библиотеки нет, так как она построена на старой архитектуре «обработок обслуживания».
Рассмотрим, как решить эту задачу:
Как правило, Тинькофф использует протокол Inpas Smart Sale. Чтобы он заработал в Рознице 1.0, программисты часто применяют «промежуточные» внешние обработки. Эти обработки эмулируют старый интерфейс (методы Подключить(), ВыполнитьОперацию()), но внутри себя вызывают функции современного драйвера Inpas. Выясним причину популярности этого метода: он позволяет не переписывать логику проведения чека в самой конфигурации.
При настройке важно проверить версию драйвера. Если терминал современный (например, PAX или Verifone), убедитесь, что установлена актуальная версия ПО Smart Sale от Inpas, которая умеет пробрасывать команды через виртуальный USB-порт.
СБП становится наиболее универсальным решением, так как не требует наличия физического терминала и карты. Однако Розница 1.0 «из коробки» не поддерживает работу с API банков по современным протоколам безопасности (TLS 1.2 и выше).
Проанализируем работу через сервис-посредник, такой как «QRСервис» (QR Manager):
Для удобства покупателей в Рознице 1.0 можно реализовать вывод QR-кода на отдельное устройство. Разберем, как это работает по шагам:
Важное уточнение по поводу NFC: Существует заблуждение, что NFC — это только оплата смартфоном. На самом деле технология Near Field Communication используется и в пластиковых картах, и в гаджетах. Если ваш терминал или QR-дисплей поддерживает бесконтактную передачу данных, он сможет считать как чип карты, так и данные из приложения Mir Pay или платежного стикера.
Разберем ситуацию с фискализацией. По закону 54-ФЗ данные о безналичном расчете должны обязательно попасть в ОФД. В старой Рознице логика часто разорвана:
РезультатЭквайринга = Терминал.Оплатить(Сумма);
Если РезультатЭквайринга Тогда ПрoбитьЧекНаККМ(); КонецЕсли;
Выясним причину возможных расхождений: если банк одобрил транзакцию, но в этот момент в кассовом аппарате закончилась лента или произошел сбой связи, деньги у клиента спишутся, а фискальный чек не пробьется. При использовании современных «прослоек» для СБП и эквайринга в Рознице 1.0 старайтесь выбирать те обработки, которые умеют объединять эти две операции или корректно обрабатывать ситуацию «отката» (Void) транзакции при ошибке принтера чеков.
Таким образом, даже устаревшая 1С:Розница 1.0 может полноценно работать с современными методами оплаты. Главное — правильно подобрать библиотеку (DLL) или использовать современные облачные сервисы-посредники, которые возьмут на себя сложные протоколы шифрования и связи с банками.