Исходная проблема: высокие издержки при провдении банковских транзакций
Один из наших заказчиков еще пару лет назад упоминал в разговоре, что очень ждет, когда банки запустят возможность приема платежей по куар-код (QR-коду) для бизнеса.
К тому моменту на сайте заказчика была возможность приема оплаты за услуги только с помощью банковской карты. С каждой транзакции списывалась существенная комиссия (комиссия банка + комиссия платежной системы Visa, Mastercard, Maestro). Не будем раскрывать обороты, но на одни только комиссии в год уходила очень приличная сумма. Поэтому желание заказчика сэкономить нам было понятно, оставалось дождаться появления такой возможности в банках.
Задача: подключить новую (на тот момент) технологию
Такая возможность появилась в 2021 году — заказчик пришел к нам с этой новостью, и попросил в ближайшее время быть во всеоружии. Опыт подключения разных платежных систем на сайты у нас огромный, и мы всегда уверенно брались за такую работу, а здесь — новый метод, по своему подходу отличающийся от обычных интеграций платежных систем всех видов, что требовало от нас полного фокуса на задаче. Более того, варианты покупки “готовых” модулей мы рассматривать не могли — у заказчика самописная система управления контентом (CMS), и никто кроме нас не мог написать такой модуль.
Отсюда начался наш тернистый путь по подключению системы быстрых платежей (СБП). В итоге закончившийся подключением всех видов СБП для нескольких банков, включая, кстати, вариант оплаты конкретной услуги с динамической ценой с помощью статичного распечатанного куар-кода, привязывающегося к текущей активной оплате на конкретном ресепшене/кассе.

Заказчик делится своей радостью с нами.
Масштаб задачи: что скрывалось «под капотом»
Хотим немного рассказать об особенностях системы, и почему нам предстояло много работы по исследованию, аналитике и планированию внедрения:
Сервис заказчика — система по аренде помещений для фото/видеосъемок, с огромным количестом функций “под капотом” в виде панели управления:
- Управление арендами (Перенос аренд в другое помещение/филиал; смена времени аренды; дополнительная аренда оборудования, влияющая на общую стоимость; скидки; наценки)
- Система лояльности клиентов
- Чаты поддержки клиентов
- Пользователи с гибкой системой ролей (от личного кабинета уборщиц и рядовых сотрудников с минимальным доступом к функциям, до бухгалтеров и старших менеджеров, имеющих доступ к денежным операциям и банковским транзакциям)
- Различная статистика и метрики (процент возврата клиентов, сравнение загруженности помещений, средний чек, среднее количество аренд и т.д.)
- Полный учет расходов-приходов (от покупки тапочек и оплаты за парковку, до зарплат сотрудников)
- Возможность наполнения сайта контентом, даже рядовым пользователям ПК
- Управление оповещением в помещениях: из панели управления (админ-панели) можно управлять заранее сформированным набором звуковых команд, которые озвучиваются в помещениях, например "До конца вашей аренды осталось n минут"



Особенность бизнеса: несколько владельцев — разные счета
У помещений для аренды могут быть разные владельцы, и при оплатах средства падают на расчетный счет, принадлежащий владельцу помещения. Для посетителей сайта этот нюанс незаметен, но нам нужно было обязательно учесть этот момент при внедрении СБП.
С заказчиком мы договорились, что на первом этапе мы введем возможность приема платежей только для одного владельца, обкатаем и затем “размножим” эту функцию на остальных.
Процесс интеграции: исследование, общение с банком и разработка
Первый владелец обслуживался в Альфа-Банке, и первым шагом с его стороны было оставить запрос в банке на подключение.
А мы начали с того, чтобы разобраться в принципиальной разнице СБП от оплат с помощью банковских карт. Заказчик полностью доверился нам и разрешил общаться с банком от лица своей компании:
Учитывая особенности работы системы, мы определились, что будем использовать динамические куар-коды (QR-коды). Такие куар-коды формируются с учетом суммы покупки, поэтому для оплаты покупателю достаточно будет отсканировать код (или просто перейти по сформированной ссылке) и нажать кнопку “Оплатить” в приложении банка.

Пример обращения нашего проектного менеджера в техподдержку Альфа-Банка
На будущее мы для себя отметили, что такие коды удобно будет рассылать например по почте или через мессенджер, то есть по факту это прямая ссылка на оплату, доступная отовсюду, требующая минимальных действий от покупателя.
Далее был этап написания ТЗ на задачу, оценки трудозатрат и сроков, его мы опустим в этой статье.

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


Результат: что получил заказчик по итогу работ по интеграции СБП
- Покупатели могут оплачивать аренду помещений с помощью СБП прямо из своего личного кабинета. Альтернативный вариант оплаты с помощью карты мы оставили.


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

- В системе заказчика уже был учет комиссии банка при онлайн оплатах, доработали логику, чтобы учитывалась комиссия при оплате с помощью СБП (кстати, она всего 0.7%)

- Добавили в статистику оплат информацию по проведенным/отклоненным оплатам с помощью куар-кода.

- Настроили фискализацию чеков при оплатах с помощью СБП

- И конечно же, сэкономили деньги заказчика, он уже начал анализировать, сколько удалось сэкономить с момента внедрения куар-кодов (QR-кодов) в систему
🙂
Кстати, после внедрения в систему и обкатки приема платежей для одного владельца, мы не остановились и подключили всех остальных. Один из владельцев обслуживался в Сбере, но после полученного опыта, задача по интеграции СБП от Сбера не заняла много времени:) В Сбере похожий алгоритм интеграции, единственное существенное отличие — владелец счета должен зарегистрироваться в отдельной системе Сбера https://api.developer.sber.ru/ и выпустить специальные системные ключи, необходимые для работы интеграции и передать их разработчикам.
Масштабирование и бонус: возможность принимать офлайн оплаты
После обкатки онлайн оплат по СБП, заказчик запросил возможность принимать офлайн оплаты. Первым нашим предложением была установка дополнительных мониторов на ресепшен, на которые будет выводиться динамический куар-код (QR-код) для клиентов. Этот вариант заказчик предложил отложить на крайний случай, аргументируя, что не все существующие ресепшены могут быть быстро расширены для установки мониторов. Статичные куар-коды от СБП нам тоже не очень подходили, так как оплаты по ним не привязывались к конкретной аренде, а нам надо было разработать максимально простую и удобную систему для контроля платежей.
Изучив вопрос, подхватили идею у коллег одного из московских ресторанов и сформировали такую систему:
После сканирования распечатанного куар-кода (QR-кода), покупатель попадал не на страницу оплаты от СБП, а на страницу-прослойку на сайте заказчика, на которой он видел краткую информацию по своей покупке и сумму для оплаты, которую предварительно настроил администратор на кассе (установил, чтобы по этому куар-коду (QR-коду) выводилась информация по покупке конкретного покупателя). На странице-прослойке была добавлена кнопка для оплаты, и по нажатию на неё, на телефоне покупателя открывалось приложение банка для подтверждения платежа. После оплаты, денежные приходы отображались в системе заказчика как было задумано, определенная аренда отмечалась как оплаченная.
