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

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

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

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

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

id


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

efts

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

queue


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

user-token – ключ продавца

duration время существования запроса на кассе (в секундах; по умолчанию, 600)

interval интервал между перезапросами (в секундах; по умолчанию, 2)

return_intervalвремя ожидания отмены заявки на возврат со стороны СБП (в минутах; по умолчанию, 3)

timeoutтайм-аут ожидания ответа на POST (в секундах; по умолчанию, 30)

cancel_lifetime – время существования запроса на отмену (в часах; по умолчанию, 0 – бесконечно)

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

qrcId идентификатор QR-кода (32 символа)

Конфигурация в формате 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:

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

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

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

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

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

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

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

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

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

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

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

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

В этом же окне необходимо включить чек-бокс Финальное состояние корзины после возврата:

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

4. Опциональная настройка для вывода QR-кода на консоль или дисплей покупателя:

Если получателем QR-кода является ID-касса с консолью, то QR-код выводится на консоль, если киоск – то QR-код выводится на основной дисплей; во всех остальных случаях QR-код печатается на ККТ.

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

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

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



  • Нет меток