Page tree
Skip to end of metadata
Go to start of metadata

Описание

ПО банка "Хлынов" позволяет производить оплаты через Систему быстрых платежей как по подписке (см. настройки ниже), так и по кассовой платежной ссылке

Поскольку настройки Универсального интегратора идентичны как для оплаты по подписке, так и для оплаты по кассовой платежной ссылке, рекомендуем настроить сразу оба типа оплат. В таком случае, платежи покупателей с оформленной подпиской будут списываться с них автоматически при нажатии кнопки Расчет, а тем, у кого подписки нет, будет предложена оплата по кассовой ссылке.

Подписка на оплату по СБП – это возможность привязывать свой банковский счёт к магазину для дальнейших покупок. Покупатель, оформивший такую подписку, может производить оплату без сканирования QR-кода и захода в приложение банка: денежные средства при оформленной подписке автоматически списываются со счёта, который пользователь выбрал в ходе привязки.

Подписка оформляется покупателем на внешнем сервисе (путём его взаимодействия с Национальной Системой Платёжных Карт). Для проведения оплаты по подписке:

  • покупатель безопасно авторизуется в чеке по динамическому QR-коду (осуществляется через систему лояльности СуперМаг Loya);
  • LOYA передает на кассу всю необходимую техническую информацию для проведения оплаты по подписке СБП;
  • касса отправляет в Универсальный интегратор полученные от LOYA сведения;
  • через взаимодействие Универсального интегратора с процессинговым центром банка "Хлынов" и Национальной Системой Платёжных Карт, производится оплата по подписке.

Для наглядности, процесс оплаты по подписке приведен ниже в виде схемы:

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

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

  • qrbankhlynov_merchants – таблица для мерчантов в формате JSON
  • qrbankhlynov_stores – таблица конфигураций для магазинов
  • qrbankhlynov_terminals – таблица конфигураций для терминалов (касс) формате JSON
  • qrbankhlynov_transactions – журнал транзакций

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

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

url – адрес отправки запросов

ca – корневой сертификат

cert – сертификат мерчанта

pkey – ключ мерчанта

extEntityId – параметры для регистрации кассовой ссылки

merchantId – идентификатор зарегистрированного ТСП в СБП

account – номер счета: если у ТСП есть счет по умолчанию, то можно не указывать счет/синоним счета в запросе

accAlias – ID счета: применяется, чтобы не использовать фактическое значение номера счета; альтернатива указанию account

qrTtl – время жизни ссылки в минутах; по умолчанию, 5 минут

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

return_interval – интервал между запросами во время отмены; по умолчанию, 3 минуты

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

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

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

payload – ссылка на QR: если есть, то высвечивается на кассе

qrcId – идентификатор QR: если нет, то вычисляется из payload

qrTtl – переопределяет из конфигурации merchant

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

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

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

sudo systemctl stop qrpayd.service

sudo systemctl start qrpayd.service

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

________________________________________________

Название очереди RabbitMQ – qrbankhlynov.

________________________________________________

Удобный просмотр поля `id` в `qrbankhlynov_transactions`:

ALTER TABLE `qrbankhlynov_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 секунд. Так как касса является конечным звеном в цепочке узлов, участвующих в процессе проведения транзакции оплаты, значение данного таймаута ожидания должно быть строго больше, чем значение таймаута ожидания ответа от процессинга банка "Хлынов" (на 10 секунд больше).

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

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

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

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

Специфическими являются только следующие настройки:

В поле Модуль оплаты необходимо указать значение qrbankhlynov.

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

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

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

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

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

4. В разделе кассового сервера Справочники – Шаблоны ввода необходимо создать шаблон, благодаря которому, УКМ 4 будет принимать сведения о клиенте LOYA, авторизовавшемся в чеке по динамическому QR- коду:

В данном шаблоне, первые 6 символов отведены под динамический QR-код LOYA, а последующие 32 будут распознаваться как номер карты клиента LOYA, авторизованного по динамическому QR. Если QR-код будет не динамическим, то оплата по подписке не сработает.

Структуру шаблона можно менять, исходя из особенностей конкретной торговой сети. После создания, шаблон необходимо сохранить.