Модуль Uzum Pay предназначен для выполнения оплаты с помощью клиентского приложения Uzum Pay, которое генерирует QR-код для оплаты. QR-код рассчитан только на 1 платёж, повторно совершить платеж по QR-коду невозможно.
Типы поддерживаемых операций:
- оплата всей суммы чека,
- отмена оплаты для чека продажи,
- полный возврат по чеку продажи.
Для оплаты чека продажи необходимо отсканировать QR-код.
Частичный возврат по чеку продажи запрещен.
При возврате по чеку продажи, содержащему маркированные или акцизные товары (алкогольную или табачную продукцию, обувные товары или лекарственные препараты), необходимо:
- включить возможность выбора товара для возврата и формировать чек возврата по чеку продажи вручную,
- отключить выбор валюты для возврата.
Конфигурирование модуля
Для использования модуля необходимо установить пакет artix-uzumpay
командой:
aptitude install artix-uzumpay
Запрос к процессинговой системе Uzum Pay выполняется при выборе специального типа оплаты. Для добавления типа оплаты необходимо выполнить конфигурирование модуля. Номер типа оплаты задается в процессе конфигурирования.
dpkg-reconfigure artix-uzumpay
Настройки процессинга задаются в файле /linuxcash/cash/paysystems/uzumpay/uzumpay.conf
в секции [UzumPay]
.
Наименование | Тип данных | Возможные значения | Описание | Примечания |
---|---|---|---|---|
host | строковый | Адрес сервера | По умолчанию https://mobile.apelsin.uz/ | |
path | строковый | Путь до сервиса | По умолчанию /api/apelsin-pay/merchant/payment | |
timeout | целочисленный | Время ожидания ответа от сервера (в миллисекундах) | По умолчанию 10000 | |
payDuration | целочисленный | Продолжительность опроса состояния выполнения оплаты (в миллисекундах) | По умолчанию 300000 | |
frequency | целочисленный | Частота опроса состояния оплаты (в миллисекундах) | По умолчанию 10000 | |
merchantId | строковый | Идентификационный номер мерчанта | По умолчанию "" | |
merchantServiceId | целочисленный | Идентификационный номер филиала мерчанта | По умолчанию "" | |
merchantServiceUserId | целочисленный | Идентификационный номер кассы филиала | По умолчанию "" | |
merchantSecretKey | строковый | Токен для авторизации | По умолчанию "" | |
paymentProvider | целочисленный | Код провайдера услуг по оплате по QR-коду | По умолчанию 161 |
[UzumPay] ; Настройки процессинга Uzum Pay ; Адрес сервера ; По умолчанию https://mobile.apelsin.uz/ ;host = https://mobile.apelsin.uz/ ; Путь до сервиса ; По умолчанию /api/apelsin-pay/merchant/payment ;path = /api/apelsin-pay/merchant/payment ; Время ожидания ответа от сервера (в миллисекундах) ; По умолчанию 10000 ;timeout = 10000 ; Продолжительность опроса состояния выполнения оплаты(в миллисекундах) ; По умолчанию 300000 ;payDuration = 300000 ; Частота опроса состояния оплаты(в миллисекундах) ; По умолчанию 10000 ;frequency = 10000 ; Идентификационный номер мерчанта ; По умолчанию "" ;merchantId = "" ; Идентификационный номер филиала мерчанта ; По умолчанию "" ;merchantServiceId = "" ; Идентификационный номер кассы филиала ; По умолчанию "" ;merchantServiceUserId = "" ; Токен для авторизации ; По умолчанию "" ;merchantSecretKey = "" ; Код провайдера услуг по оплате по QR-коду ; По умолчанию 161 ;paymentProvider = 161
После сканирования QR-кода запрос статуса документа будет отправляться на сервер в течение времени, указанного в параметре payDuration
, с частотой, указанной в параметре frequency
. Если по истечении времени, указанного в параметре payDuration
, оплата не прошла, то на экран будет выведена ошибка "Данные переданы на сервер, но ответ не был получен".
Логирование
Журнал запросов к процессинговой системе Uzum Pay ведется в основном логе /linuxcash/logs/current/terminal.log
.