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

Ключ

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

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

Примечание. Если в магазине настроена оплата по кассовой ссылке банка (по статическому QR-коду), но у покупателя оформлена оплата по подписке, то касса проигнорирует наличие подписки и запросит произвести оплату по кассовой ссылке. Если же настроена оплата по подписке, а у покупателя ее нет, то касса сообщит о невозможности провести оплату по подписке и предложит оплатить чек штатным образом. 

Оглавление

Описание

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

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

...

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

Оглавление

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

...

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

sudo systemctl stop qrpayd.service

sudo systemctl start qrpayd.service

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

...

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

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`;

Настройки на сервере УКМ 5

...

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

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