Задача: Подключить оплату через СБП (Система быстрых платежей) от Т-Банка с возможностью оплаты по QR-коду напрямую из карточки заказа. Требование — использование только одной кнопки «Оплатить через СБП», без отображения других способов оплаты.
Платформа InSales не позволяет реализовать полноценную передачу ключей API и обработку статусов оплаты напрямую в браузере по соображениям безопасности (открытый доступ к TerminalKey и Password). Поэтому был создан внешний серверный сервис, обрабатывающий все запросы и управляющий статусами оплаты.
Основные этапы:
- Промежуточный backend для безопасной генерации токенов и передачи запросов в API Т-Банка.
- Реализовали вызовы методов /init и /getQr, генерирующих ссылку на оплату через СБП.
- Обеспечили передачу корректного состава заказа (единая строка: «Оплата по заказ-наряду за авто-мультимедиа/монтаж»).
- Учли налоговый режим «патент», передаваемый в чеке.
Интеграция с InSales:
- Создан внешний способ оплаты «Оплата через СБП» в панели InSales.
- Добавлены условия отображения кнопки «Перейти к оплате» только при определенном статусе заказа (“Ожидает оплату”).
- При генерации ссылки сохраняются поля с номером транзакции и URL для повтора в заказе InSales.
- Установлен таймер жизни ссылки на 20 часов — по истечении времени автоматически генерируется новая ссылка.
UX/UI-доработки:
- Кнопка оплаты появляется только при нужном статусе заказа.
- После оплаты добавлено всплывающее окно с уведомлением.
- Обновление статуса «Оплачен» происходит при проверке состояния платежа через API при загрузке страницы.
- ри нажатии на кнопку, если заказ уже создан, используется сохранённая ссылка на оплату, исключая ошибки дублирования.
Безопасность:
- Все критичные операции производятся с сервера.
- В коде страницы отсутствуют ключи или пароли.
- Учитываются особенности поведения покупателей (невернувшихся из банка на сайт, истекшие ссылки и др.).
Результаты:
- Успешно подключена и протестирована оплата по СБП от Т-Банка.
- Ссылка на оплату работает в браузере, почте и мессенджерах.
- Учет жизни платежной ссылки реализован через контроль времени создания.
- Доработана логика отображения кнопок и сообщений для покупателя.
- Обеспечена защита бизнес-процесса от ошибок в цепочке оплаты.
Комментарий разработчика:
«Первоначально клиент хотел обойтись без внешнего сервиса, но в процессе тестирования стало понятно, что полноценная реализация с контролем статуса, безопасной генерацией токенов и корректной обработкой откатов требует серверной логики. Мы нашли компромиссное решение, совместимое с платформой InSales, которое позволяет полноценно использовать СБП и масштабировать функционал в будущем.»
Хотите автоматизировать работу вашего интернет-магазина?
Свяжитесь с нами для консультации и разработки индивидуального решения под ваши задачи. Поможем оптимизировать бизнес-процессы и повысить эффективность вашего e-commerce проекта.