Дерево страниц
Перейти к концу метаданных
Переход к началу метаданных

Описание

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

Общий алгоритм процесса оплаты при помощи кассовой платежной ссылки описан здесь.

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

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

  • qralpha_variable_stores – таблица с соответствием номера магазина в настройках Универсального интегратора и торговой системы
  • qralpha_variable_merchants – таблица с настройками параметров соединения и взаимодействия с банком для каждого магазина
  • qralpha_variable_terminals – таблица конфигураций для терминалов (касс)
  • qralpha_variable_transactions – таблица для хранения данных по транзакциям

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

  • qralpha_variable_stores:

Название

Значение

Описание

StoreID

string(128)

Идентификатор магазина в торговой системе
merchantintИдентификатор конфигурации из таблицы qralpha_variable_merchants
  • qralpha_variable_merchants:

Название

Значение

Описание

idint

ID настройки для магазина.

0 – общая настройка для всех магазинов; значение зарезервировано

value string в формате JSON

Хранит настройки в формате JSON:

















urlАдрес взаимодействия с банком
pkey_alias

Алиас ключа для подписи запроса

pkey

Ключ для подписи запроса

ssl_local_cert

Локальный сертификат для организации соединения

ssl_pkey

Закрытый ключ для организации соединения

qrTtl

Время жизни запроса на оплату в минутах; значение по умолчанию = 5

interval

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

timeout

Таймаут сетевого соединения с банком

cancel_lifetim

Время жизни  запроса на отмену транзакции в часах; значение по умолчанию = 0 (бесконечно)

  • qralpha_variable_terminals:

Название

Значение

Описание

TerminalIDstring(128)

 ID кассы в торговой системе

valuestring в формате JSONХранит настройки в формате JSON:


payload

Ссылка для отображения

qrcId

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

Идентификатор терминала в системе СБП

  • qralpha_variable_transactions:

Название

Значение

Описание

op_datedatetime

 Дата обновления данных

idbin

Уникальный идентификатор операции в системе Универсального интегратора в двоичном виде

cancelbin

Уникальный идентификатор отмены операции в системе Универсального интегратора в двоичном виде

datastring в формате JSON

Данные по транзакции; фактически хранит ответ от банка без поля message и прочих ненужных полей

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

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

sudo systemctl stop qrpayd.service

sudo systemctl start qrpayd.service

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

________________________________________________

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

Важно! В связи с нестабильностью тестовой среды на стороне банка, на сервере интегратора единоразово потребуется прописать значение -i в следующей строке:

ExecStart=/usr/local/qrpay/qrpayd -d qrpayd -u qrpay -p xxxxxx 

sudo mcedit /etc/systemd/system/qrpayd.service

ExecStart=/usr/local/qrpay/qrpayd -d qrpayd -u qrpay -p xxxxxx -i

sudo systemctl daemon-reload

sudo systemctl restart qrpayd.service

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

4. Для корректной работы печати QR кода на фискальном устройстве, следует использовать стандартный профиль дизайна чеков – Сервис плюс:

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

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

Примечание. Поддержка печати QR-кода на чековой ленте осуществляется только для ККТ СП 802 и Пирит.

6. Для привязки драфта кассовой ссылки необходимо использовать кассовую операцию QR-Оплата - проверка статической ссылки:

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

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

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

Проверка кассовой платёжной ссылки

Для осуществления QR-оплат, некоторые банки используют многоразовую платёжную ссылку СБП. 

Считав сгенерированный QR-код, можно проверить соответствие считанной ссылки и ссылки в настройках Универсального интегратора, через который осуществляется взаимодействие с УКМ 4.

Проверка ссылки является специальной кассовой операцией и настраивается в разделе кассового сервера по адресу: Настройка сервера и оборудования – Оборудование ККМ – Раскладки клавиатуры (вкладка слева):

Кликнув на название используемой раскладки, можно перейти к окну с ее настройками, где необходимо выбрать клавишу, которая будет инициировать проверку кассовой ссылки, и в строке Функциональный под раскладкой нажать кнопку Поиск:

В появившемся окне нужно ввести (целиком или частично) название кассовой операции QR-оплата - проверка статической ссылки и выбрать верное соответствие из выпадающего списка:

Откроется следующее окно:

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

В окне с раскладкой нужно нажать кнопку Сохранить:

В окне подтверждения выполненных настроек следует выбрать опцию Да:

Клавиша запуска проверки кассовой ссылки настроена.

На touch-кассе Lillo проверка кассовой ссылки вызывается из интерфейса самой кассы:

На кассе УКМ 4 проверка статической ссылки происходит следующим образом:

Касса УКМ-клиентTouch-касса Lillo

1. Операция проверки ссылки вызывается нажатием специально запрограммированной клавиши, после чего открывается следующее диалоговое окно:

2. Как только QR-код будет считан сканером, появится сообщение о результатах проверки: 

либо:

1. Операция проверки ссылки вызывается нажатием специальной кнопки:

2. Откроется следующее диалоговое окно:

3. Как только QR-код будет считан сканером, появится сообщение о результатах проверки: 

либо:

Привязка платежной ссылки к юр.лицу/магазину/кассе

Как правило, каждая платежная ссылка, содержащиеся в QR-коде, привязываются к определенному юр. лицу, магазину и кассе путем механического ввода данных об этой ссылке оператором на кассе. Альфа-Банк решает проблемы промышленного тиражирования кассовых платёжных ссылок в крупных торговых сетях проще: подготовкой наклеек с QR-кодом, содержащих "пустую" кассовую ссылку, ещё не соотнесенную с конкретным клиентом (юр.лицом/магазином/кассой). Сначала такие наклейки размещаются на кассах в торговом зале, а затем с помощью кассовой операции QR-оплата - проверка статической ссылки через Универсальный интегратор осуществляется запрос, который привязывает платежную ссылку, содержащуюся в каждом конкретном QR-коде, к кассе, на которой она размещена, а также к конкретному юр.лицу и магазину.

При этом, может сложиться ситуация, когда в рамках одного магазина одновременно имеются как уже привязанные платежные ссылки, так и "пустые". В таком случае, операция QR-оплата - проверка статической ссылки будет работать следующим образом:

1. Если платежная ссылка уже привязана к кассе, то произойдет описанная выше штатная процедура проверки платежной ссылки СБП.

2. Если платежная ссылка еще не закреплена за определенной кассой, Универсальный интегратор выполнит запрос на привязку ссылки: 

 Сразу после считывания QR-кода, касса запросит ввод номера терминала:

Номера терминалов строго индивидуальны и генерируются на стороне Альфа-Банка при регистрации сделки СБП. Количество номеров терминалов выдается банком ритейлеру по количеству используемых в магазине КСО/киосков/касс. За корректность используемых номеров терминалов полностью ответственен ритейлер.

Номер терминала нужно ввести вручную, после чего – нажать Ввод:

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

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