Начиная с версии 4.6.202 значение параметра url необходимо задавать в виде "https://<localhost>/api".
Модуль Raiffeisensbp предназначен для выполнения оплаты с помощью клиентского приложения. Покупателю необходимо отсканировать QR-код с экрана кассы или распечатанного слипа. QR-код рассчитан только на 1 платеж.
Типы поддерживаемых операций:
- оплата,
- отмена оплаты для чека продажи,
- возврат по чеку продажи.
Для оплаты чека продажи покупателю необходимо отсканировать QR-код.
В случае неполучения успешного статуса оплаты кассой или других ошибках оплаты в подытоге, кассой формируется команда на отмену данного платежа. Оплата в чек при этом не добавляется. При обработке команды отмены повторно проверяется статус оплаты, и если на момент повторной проверки транзакция оплаты завершена успешно (получен статус о проведении платежа), то кассой генерируется запрос на возврат.
Обращаем внимание на то, что команды на отмену и возврат платежа могут обрабатываться банком длительное время. По вопросам возврата денежных средств просим обращаться в банк.
Также стоит учитывать следующее:
1. Информация на смартфоне клиента не является фактом подтверждения платежа и может быть недействительной.
2. Подтверждением платежа является только получение ПО Artix информации об успешном прохождении оплаты.
Конфигурирование модуля
Для использования модуля необходимо установить пакет artix-raiffeisensbp
.
aptitude install artix-raiffeisensbp
Запрос к процессинговой системе Raiffeisensbp выполняется при выборе специального типа оплаты. Для добавления типа оплаты необходимо выполнить конфигурирование модуля. Номер типа оплаты задается в процессе конфигурирования.
dpkg-reconfigure artix-raiffeisensbp
Настройки процессинга задаются в файле /linuxcash/cash/paysystems/raiffeisensbp/raiffeisensbp.conf
в секции [Main]
.
Наименование | Тип данных | Описание | Примечания |
---|---|---|---|
url | строковый | Адрес сервера | По умолчанию http://localhost . |
timeout | целочисленный | Время ожидания ответа от сервера (в секундах) | По умолчанию 10 секунд. |
sbpMerchantId | строковый | Идентификатор зарегистрированного партнера в СБП | |
secretKey | строковый | Секретный ключ для авторизации | |
currency | строковый | Валюта | По умолчанию RUB . |
qrCodeLifetime | целочисленный | Cрок действия QR-кода (в секундах) | По умолчанию Допустимые значения от 20 секунд до 259200 секунд (3-х дней). |
waitPaymentByQRCodeDuration | целочисленный | Время ожидания оплаты по QR-коду (в секундах) | По умолчанию 60 секунд. |
intervalBetweenStatusRequests | целочисленный | Интервал между запросами статуса оплаты по QR-коду (в секундах) | По умолчанию 1 секунда. |
getInfoDuration | целочисленный | Продолжительность выполнения запросов на получение информации по платежу или возврату (в секундах) | По умолчанию 60 секунд. |
getInfoFrequency | целочисленный | Интервал между запросами на получение информации по платежу или возврату (в секундах) | По умолчанию 10 секунд. |
additionalInfoMask | строковый | Маска для поля дополнительной информации | По умолчанию "%(document.shopCode[04d])/%(document.cashCode[02d])/%(document.shift[04d])/%(document.num[07d]) ". |
staticQrId | строковый | Идентификатор статического QR-кода | Необходимы для оплаты с использованием статического QR-кода (кассовой ссылки) |
staticQrPayload | строковый | Данные статического QR-кода для отображения на кассе |
[Main] ; Настройки процессинга Системы Быстрых Платежей (СБП) Райффайзен Банка ; Адрес сервера ; По умолчанию http://localhost ;url = http://localhost ; Время ожидания ответа от сервера (в секундах) ; По умолчанию 10 секунд ;timeout = 10 ; Идентификатор зарегистрированного партнёра в СБП ; По умолчанию "" ;sbpMerchantId = "" ; Секретный ключ для авторизации ; По умолчанию "" ;secretKey = "" ; Валюта ; По умолчанию "RUB" ;currency = "RUB" ; Cрок действия QR-кода в секундах ; Допустимые значения от 20 секунд до 259200 секунд (3-х дней) ; По умолчанию 60 секунд ;qrCodeLifetime = 60 ; Время ожидания оплаты по QR-коду (в секундах) ; По умолчанию 60 ;waitPaymentByQRCodeDuration = 60 ; Интервал между запросами статуса оплаты по QR-коду (в секундах) ; По умолчанию 1 ;intervalBetweenStatusRequests = 1 ; Продолжительность выполнения запросов на получение информации по платежу или возврату (в секундах) ; По умолчанию 60 ;getInfoDuration = 60 ; Интервал между запросами на получение информации по платежу или возврату (в секундах) ; По умолчанию 10 ;getInfoFrequency = 10 ; Маска для поля дополнительной информации ; По умолчанию %(document.shopCode[04d])/%(document.cashCode[02d])/%(document.shift[04d])/%(document.num[07d]) ;additionalInfoMask = "%(document.shopCode[04d])/%(document.cashCode[02d])/%(document.shift[04d])/%(document.num[07d])" ; Идентификатор статического QR-кода ;staticQrId = "" ; Данные статического QR-кода для отображения на кассе ;staticQrPayload = ""
Передача данных об оплате
В кассовом ПО реализована возможность разрешать передачу данных об оплате в поле paymentDetails
с помощью параметра fillPaymentDetails
в конфигурационном файле /linuxcash/cash/paysystems/raiffeisensbp/raiffeisensbp.conf
в секции [Main]
:
- при значении
true
на сервер процессинга будет отправлен запрос, который содержит данные об оплате в json-формате "paymentDetails":"{\"identifier\":\"3478820800920000010\",\"sbpmerchantID\":\"MA0000039051\"}
", - при значении
false
данные об оплате переданы не будут.
Наименование | Тип данных | Возможные значения | Описание | Примечания |
---|---|---|---|---|
fillPaymentDetails | логический |
| Заполнять поле paymentDetails | По умолчанию true |
[Main] ... ; Заполнять поле paymentDetails ; По умолчанию true ;fillPaymentDetails = true
При закрытии чека в БД Documents
таблицу Moneyitem
в поле additionaldata
записываются в json-формате идентификатор QR-кода оплаты и идентификатор зарегистрированного в СБП партнера.
Печать QR-кода для оплаты
В кассовом ПО Artix реализована возможность печати слипа с QR-кодом для оплаты. Печать QR-кода задается параметром printQrPaymentSlip
в конфигурационном файле /linuxcash/cash/conf/ncash.ini
в секции [Check]
:
- при значении
true
будет осуществлена печать QR-кода на слипе, затем на экран будет выведен диалог "Отсканируйте QR-код для оплаты", - при значении
false
на экран будет выведен диалог "Отсканируйте QR-код для оплаты", печать слипа с QR-кодом не осуществляется.
Наименование | Тип данных | Возможные значения | Описание | Примечания |
---|---|---|---|---|
printQrPaymentSlip | логический |
| Печатать слип с QR-кодом для оплаты | По умолчанию false |
[Check] ... ; Печатать слип с QR-кодом для оплаты ; По умолчанию false ;printQrPaymentSlip = false
Отображение QR-кода на экране
В кассовом ПО Artix реализована возможность отображения QR-кода в форме оплаты. Отображение QR-кода задается параметром visible
в конфигурационном файле /linuxcash/cash/conf/ncash.ini
.d/gui.ini
в секции [UI.ScanQrCodeForm.qrCode]
:
- при значении
true
на экран будет выведен диалог сканирования QR-кода, QR-код отображен в диалоге, - при значении
false
на экран будет выведен диалог сканирования QR-кода, QR-код не отображен в диалоге.
Наименование | Тип данных | Возможные значения | Описание | Примечания |
---|---|---|---|---|
visible | логический |
| Отображение QR-кода в форме оплаты по коду | По умолчанию true |
[UI.ScanQrCodeForm.qrCode] ; Отображение QR-кода в форме оплаты по коду ; По умолчанию true ;visible = true
Логирование
Журнал запросов к процессинговой системе Raiffeisensbp ведется в основном логе /linuxcash/logs/current/terminal.log
.