Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.

Оглавление

Настройки Универсального интегратора

Описание таблиц

    handlers -
  • handlers таблица для подключения QR-оплат
  • merchants -
  • merchants таблица для мерчантов в формате
  • json.
  • JSON
  • stores
  • stores -
  • таблица конфигураций для магазинов
  • terminals 
  • - таблица
  • – таблица конфигураций для терминалов (касс) формате
  • json
  • JSON
  • transactions
  • -
  • журнал транзакций

Структура таблиц

  • Якорь
    hand
    hand
    В таблице handlers находится соответствие между названием очереди, типом QR-оплаты и идентификатором оплаты в Универсальном интеграторе:
НазваниеЗначениеОписание

id


Идентификатор оплаты внутри Универсального интегратора

efts

1
2Тип QR-оплаты

Якорь
queue
queue
queue


Название очереди
  • В таблице stores
  • хранится соответствие
  • находится связка между идентификатором магазина из запроса и его конфигурацией.
  • Если
  • магазин отсутствует
  • магазина нет в таблице, то, по умолчанию, merchant = 0
  • .
  • :
НазваниеЗначениеОписание
handler
Идентификатор оплаты внутри Универсального интегратора
StoreID
Идентификатор магазина в торговой системе
merchant
Идентификатор конфигурации из merchants
  • В таблице merchants находятся настройки мерчантов в формате
  • json.
  • JSON:
НазваниеЗначениеОписание
handler
Идентификатор оплаты внутри Универсального интегратора
id
Идентификатор конфигурации
value
""

qrpay_url

" - адрес сервиса QRPay

– адрес сервиса "SmartPay"

qrpay_iv

" -

вектор инициализации для шифрования (значение должно быть "00000000"

, сделали настройкой на всякий случай}

)

timeout

"timeout" -

таймаут ожидания ответа от сервиса QR (в секундах

(

; по умолчанию, 30)

"

interval

" -

период повторения запроса на отмену в случае сетевой ошибки (в секундах

(

; по умолчанию, 5)

"

cancel_lifetime

" -

время существования запроса на отмену в часах (по умолчанию, 0

-

бесконечно)

Конфигурация в формате
json
JSON
  • В таблице terminals находятся настройки терминалов в формате json.JSON:
НазваниеЗначениеОписание
handler
Идентификатор оплаты внутри Универсального интегратора
TerminalID
Идентификатор терминала из запроса. Если запрос идет от УКМ 4, то соответствует cash_id
-
 идентификатор кассы в торговой системе
.
value
"

terminal_id

" -

идентификатор терминала в системе сервиса

QRPay

"SmartPay"

"

crypt_key

" -

 – ключ шифрования

Конфигурация в формате
json

Параметры подключения к тестовой среде банка

...

JSON

Дополнительная информация

После заполнения данных в БД демона необходим перезапуск

...

:

sudo systemctl stop qrpayd.service

sudo systemctl start qrpayd.service

...

RabbitMQ перезапускать не надо.

________________________________________________

Название очереди

...

 RabbitMQ  любое, заполняется в

...

таблице handlers.

________________________________________________

Удобный просмотр

...

поля id в transactions:

Блок кода
ALTER TABLE `transactions`

...


ADD COLUMN `RequetsID` char(38)

...


GENERATED ALWAYS AS (LOWER(CONCAT(

...


'{', HEX(LEFT(`id`, 4)), '-', HEX(MID(`id`, 5, 2)), '-', HEX(MID(`id`, 7, 2)), '-', HEX(MID(`id`, 9, 2)), '-', HEX(RIGHT(`id`, 6)), '}'

...


))) VIRTUAL AFTER `id`;

Настройки авторизации на кассовом сервере УКМ 4

Настройка оплаты на сервере УКМ 4

1. В настройках магазина нужно указать путь для параметра RabbitMQ сервер как amqp://ukm:xxxxxx@192.168.25.xxx:

Image Added

Измененные параметры магазина надо сохранить. 

2. Необходимо создать сервер авторизации QR оплата:

Image Added

Добавление сервера авторизации QR оплата происходит стандартным образом на странице Параметры магазина и настройка операций – Интеграция – Серверы авторизации (вкладка слева), закладка Оплаты:

Image Added

В настройках требуется указать следующие обязательные для заполнения параметры:

Image Added

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

Таймаут ожидания ответа, сек – время ожидания ответа от сервера указывается вручную, в секундах. Минимальное значение (оно же – значение по умолчанию) составляет 310 секунд. Так как касса является конечным звеном в цепочке узлов, участвующих в процессе проведения транзакции оплаты, значение данного таймаута ожидания должно быть строго больше, чем значение таймаута ожидания ответа от процессинга системы "SmartPay".

Таймаут соединения, сек – общая продолжительность соединения с сервером Универсального интегратора (указывается вручную, в секундах).

Настройки нужно сохранить.

3. Затем надо создать вид оплаты QR оплата:

Image Added

Вид оплаты для сервера авторизации QR оплата создается стандартным образом.

В поле Модуль оплаты следует указать название очереди из поля queue таблицы handlers интегратора. Данное название может быть произвольным; главное, чтобы в типе QR-оплаты на сервере УКМ

...

4 было указано такое же название в поле Модуль оплаты. Ниже приведен пример совпадения названия для сервиса оплаты Яндекс:

Image Added

Image Added

Также нужно включить чек-бокс Сканировать QR-код покупателя:

Image Added

Настройки необходимо сохранить.

Метки протоколирования

RabbitMQ – Работа с сервером RabbitMQ.

QR_PAYMENT – Средство оплаты QR оплата.

Особенности реализации

Не поддержаны кассовые операции "QR-оплата получение итогов за смену" и "QR-оплата запрос карты лояльности".