Это старая версия документа!
Кассовый эквайринг Arcus2
Установка
Arcus2 должен быть установлен строго в директорию C:\Arcus2
В ином случае интеграция работать не будет!
Установка и настройка производится специалистами банка!
Для интеграции используется утилита командной строки: CommandLineTool.exe, по сути приложение запускает ее с нужными параметрами и считывает выходные файлы:
- chek.out- файл со слипом
- output_ex.datи- output_ex.txt- файлы с данными ответа от операции
Все файлы считываются в кодировке Windows 1251!
Используемый код валюты: 643
Пути
Ниже перечислены пути и файлы которые должны существовать после установки Arcus2
- C:\Arcus2
- C:\Arcus2\dll\Arccom.dll
- C:\Arcus2\CommandLineTool\bin\CommandLineTool.exe
- C:\Arcus2\ini\ops.ini
- C:\Arcus2\ini\cashreg.ini
Файлы ответа (chek.out, output_ex.dat и output_ex.txt) должны формироваться в C:\Arcus2
Настройка
При подключении по USB: Запрет отключения устройства для экономии электропитания
cashreg.ini
Файл должен быть расположен в C:\Arcus2\ini\, содержит основные настройки соединения с пин-падом:
- PORT - имя COM порта, по которому подключен пин-пад. Обычно физически пин-пад подключен к компьютеру через USB, при этом устройство встает как виртуальный ком порт. Данная настройка должна совпадать с номером порта в системе. Если вы не можете определить какой из виртуальных портов пин-пад - выключите его, один из портов должен пропасть, потом включите, он снова должен появиться, используйте его номер для настройки.
Заголовок
Номер порта должен быть меньше 9! Если он больше, смените в настройках системы его номер на другой!
Смена настройки порта:
Реализуемые операции
Arcus2 настраивает кассовые операции в файле C:\Arcus2\ini\ops.ini (консольной утилите передается код операции, далее по этому коду уже всё выполняется пин-падом). Касса при первом обращении к пин-паду считает данный файл и определит из него настройки операций. Если данного файла нет, или в нем нет требуемой операции, то будет использовано значение по умолчанию. Ниже приведены реализованные операции в мнемонике: <код операции по умолчанию>=<класс операции>,<идентификатор операции>.
- Продажа:1=1,1
- Отмена последней операции:2=2,3
- Возврат:3=1,11
- Универсальная отмена:4=1,5
- Закрытие дня (сверка итогов):10=2,1
Фактически это означает, что касса «подстроится» под текущие настройки Arcus2. В случае если, в C:\Arcus2\ini\ops.ini определено несколько кодов операции для одной пары класс+идентификатор операции будет, использован первый определенный код.
Определение RRN
В ходе тестирования выявлено, что в файлах ответа не всегда появляется идентификатор операции (RRN), т.е. он банально не заполнен. Данный идентификатор обязателен для корректной отмены операции (и/или возврата в течение текущего дня).
В случае если в файлах ответа не содержится RRN, программа будет искать в чеке первую строку вида «RRN 123456789012» и цифровое значение следующее после «RRN», длиной не менее 6 символов будет считаться как RRN операции.
Журнал операций
Arcus2 не поддерживает возможности просмотра журнала операций пин-пада.
Проблемы
Деньги с карты списались, но программа сочла это ошибкой
После списания денег с карты программа выдала ошибку, с текстом 992: УСПЕШНО (цифра может быть другой, текст тоже, но чисто семантически мы понимаем что вроде как всё должно быть хорошо, или же клиент нам показывает, что деньги то с него списались). Это значит, что пинпад вернул программе статус 992, который он по каким-то причинам считает успехом, а программа - нет.
В протоколе Arcus2 успешным считается только статус операции 000, все остальные - ошибка. 
В настройках Arcus2 (которые должен делать банк) есть два файла:
 * rc_res.ini - в нем содержится текстовое описание статусов (т.е. там должна быть запись 992=УСПЕШНО)
 * rc_conv.ini - этот файл отвечает за преобразование статусов (т.е. он позволяет сказать что тот или иной статус является по сути успехом), так вот в этом файле в таком случае должна быть запись 992=000.
В эти файлы лезть категорически нельзя! Нужно что бы банк разобрался с настройками Arcus2 в соответствии со своими правилами.



 ili
 ili