You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Current »

Модуль Сбербанк предназначен для выполнения оплаты платежными картами с использованием банковских терминалов и ПИН клавиатур, которые предоставлены Сбербанком России.

Функционал поддержан для кассового ПО Artix на базе Ubuntu 14.04 и 18.04.

Модуль представляет собой клиентское приложение sb_pilot и набор файлов и библиотек, необходимых для обращения к процессинговому центру. При проведении оплаты платежной картой кассовая программа вызывает клиентское приложение sb_pilot. Параметрами для этого приложения передаются:

  • тип операции (оплата, возврат, сверка итогов и т.д.),
  • сумма оплаты,
  • дополнительные параметры, которые зависят от выполняемой операции.

Для корректной работы необходимо настроить отображение диалогов на экране пинпада.

После завершения работы приложения, создаются файлы с результатом выполнения операции (файл e) и образом квитанции, которую необходимо распечатать (файл p). Кассовая программа анализирует результат выполнения и при необходимости печатает на чековой ленте содержимое печатного образа.

Типы поддерживаемых операций:

  • оплата,
  • возврат,
  • отмена последней операции,
  • сверка итогов,
  • печать полного и краткого отчетов.

Запрещена отмена оплаты чека возврата или возврата по чеку продажи. При попытке совершить операцию на экран будет выведена ошибка "Отмена оплаты не доступна".

Конфигурирование модуля

Для использования модуля необходимо установить пакет artix45-plugin-sb

aptitude install artix45-plugin-sb

Вызов клиентского приложения выполняется при выборе специального типа оплаты. Для добавления типа оплаты необходимо выполнить конфигурирование модуля. Номер типа оплаты задается в процессе конфигурирования.

Конфигурирование модуля
dpkg-reconfigure artix45-plugin-sb

Файлы, необходимые для функционирования модуля, располагаются в директории /linuxcash/cash/paysystems/sb. 

ФайлОписание
sb_call.shСкрипт для вызова клиентского приложения
sb_pilotКлиентское приложение, которое отвечает за обращение к процессинговому центру
.screenrcНастройки для корректного отображения информации на экране при запуске клиентского приложения через sb_call.sh
ttyS99Символьная ссылка на файл устройства (необходима при подключении через USB)

Файлы клиентского приложения предоставляются сотрудниками банка. Одна из версий приложения включена в состав пакета, ее файлы располагаются в директории /linuxcash/cash/paysystems/sb/files. Для использования данной версии приложения файлы необходимо скопировать в директорию /linuxcash/cash/paysystems/sb.

При необходимости выполнения операций, минуя кассовую программу, достаточно запустить скрипт sb_call.sh с нужными параметрами. Данный скрипт вызывает клиентское приложение в специально подготовленном окружении для корректного отображения информации на экране.

Если на экране отображается нечитаемый текст, нужно проверить кодовую страницу, которая указана в настройках терминала и файле .screenrc.

Параметры настройки для минивыписок (слипов) и кодовых страниц, в которых клиентское приложение возвращает результат, задаются в файле /linuxcash/cash/conf/artixsb.conf в секции [main].

Параметры вызова клиентского приложения

НаименованиеТип данныхВозможные значенияОписаниеПримечания

encoding

строковый
  • koi8-r
  • ibm866
  • cp1251
  • UTF-8
  • и т.д.
Кодовая страница файлов с результатом вызоваПо умолчанию koi8-r

limit

числовой
Порог суммы оплаты, ниже которого печатается один слип (в копейках)
dialogsOnPinpad

логический

  • true

  • false

Если установить параметр true, то диалоги будут отображаться на пинпаде. В противном случаем диалоги будут отображаться на кассе

По умолчанию true.

Для взаимодействия с диалогом на кассе при помощи клавиатуры необходимо установить openbox.

Пример настройки
[main]
encoding=koi8-r
limit=0
 
; Отображать диалоги на пинпаде
; В противном случаем диалоги будут отображаться на кассе
; По умолчанию - true
;dialogsOnPinpad = true

Логирование

Журнал вызовов клиентского приложения из кассовой программы ведется в основном логе кассовой программы /linuxcash/logs/current/terminal.log. Для идентификации данных, записанных модулем Сбербанк, используется логгер с именем payment. В журнал заносятся параметры вызова, результат выполнения и образ слипа, который предназначен для печати.

Настройка пинпада

Необходимо настроить параметры взаимодействия пинпада с ККМ

  • Интерфейс кассира на пинпаде

  • Печатать один образ чека с цифрой впереди

  • При успешной операции не ждать подтверждения от кассира

Настройка пинпада PAX SP30

Терминалы PAX SP30 для оплаты по безналичному расчету через модуль Сбербанка используют пакет ttypos, который необходимо установить отдельно от пакета artix45-plugin-sb!

При установке пакета ttypos создается директория /opt/ttyPos, в которой хранятся конфигурационные файлы.

Параметры для подключения пинпада настраиваются в файле /opt/ttyPos/conf.ini.

НаименованиеТип данныхВозможные значенияОписаниеПримечания
ttypos_port
строковый
Путь до пинпада
com_port
строковый

COM-порт для работы с usb-устройством (ссылка на ttyPos-устройство)

После редактирования требуется либо переподключить usb-устройство, либо запустить скрипт /opt/ttyPos/setport.sh

Использование одного терминала для нескольких организаций

Начиная с версии 4.6.94 для кассового ПО реализована возможность отправки единого запроса на оплату товара по нескольким юридическим лицам с использованием процессинга Сбербанк.

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

Указание номера отдела реализовано в sb_pilot версии 11.41.04 и выше.

Прочитать о настройке программы для оплаты несколькими юридическими лицами можно в статье "Банковские платежные системы".

Особенности использования терминала Сбербанк для нескольких юридических лиц:

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

  • После снятия отчета по безналу в другой кассовой смене возврат по безналу проходит запросом возврата.

Возможные ошибки при оплате по б/н

На кассе

Для корректного функционирования модуля оплаты на кассе осуществляется проверка наличия файла sb_call.sh и наличия прав на его исполнение. При невыполнении одного из условий на экран будет выведено соответствующее сообщение. 

При корректном запуске скрипта sb_call.sh вызывается файл клиентского приложения sb_pilot. Выполняется проверка наличия файла и наличие прав на его исполнение.

При отсутствии файла sb_pilot или невозможности его исполнения на экран выдается сообщение "Ошибка чтения файла статуса операции".

На пинпаде

Если настроены диалоги на пинпаде, то файл sb_call.sh не используется, вызывается файл sb_pilot. При невыполнении одного из условий на экран будет выведено соответствующее сообщение.

При выведении ошибок на экран нужно проверить конфигурации модуля.

  • No labels