Skip to content

2.7.6 — Smerch

Choose a tag to compare

@bruhxax bruhxax released this 21 Oct 16:43
· 41 commits to main since this release

Добавлена платёжная система Smerch для Telegram и кабинета.

Подключение

  1. В Админка → Интеграции → Smerch введите рабочий API-ключ live_….
  2. Скопируйте показанный Webhook URL в кабинет Smerch, включите webhook и сохраните интеграцию.
  3. Настройте методы в Тарифы → Способы оплаты → Smerch → карандаш. Для отдельных кнопок СБП и криптовалюты создайте копию Smerch и назначьте каждой её метод.

Секрет вебхука необязателен. Если он уже выдан Smerch, его можно указать в свёрнутом разделе «Дополнительно: подпись вебхука». Обычное сохранение Link-Bot не меняет секрет в Smerch.

Возможности

  • Оплата тарифов, подарков, устройств и трафика.
  • Копии Smerch с отдельными методами, названиями, описаниями и логотипами в редакторе тарифов.
  • Оригинальный логотип, история платежей, финансовая статистика и выбор способов для «Мой налог».

Подтверждение оплаты

  • Запросы к API подписываются HMAC v2, суммы передаются целыми копейками.
  • Перед выдачей покупки бот обязательно запрашивает транзакцию через защищённый API Smerch и сверяет ID, заказ, сумму, RUB, метод и статус paid.
  • Если секрет вебхука сохранён, дополнительно проверяется подпись исходного тела. Неверная или отсутствующая подпись в этом режиме отклоняется.
  • Повторные уведомления не начисляют покупку повторно. Тестовые, неполные и возвращённые платежи не выдают подписку. Временные ошибки допускают повторную доставку.

Исправлено в этом же релизе

  • Убрано обязательное заполнение webhook secret, отсутствующего в показанной форме кабинета Smerch.
  • Убраны дублирующие галочки методов из интеграции. Выбор методов полностью остаётся в существующем редакторе тарифов.
  • Сохранённые предыдущей версией настройки интеграции не ограничивают методы, назначенные отдельным копиям Smerch.
  • Дополнительный выбор покупателю показывается только если администратор назначил несколько методов одной строке в тарифах. При одном методе он открывается сразу.

Метод должен поддерживать RUB и возвращать payment_url. H2H-реквизиты без ссылки и рекурренты не входят в эту интеграцию. Подробнее: инструкция, документация Smerch.

Проверено: Go-тесты проекта, проверки интерфейса оплаты и сборка Linux/amd64. Создание и подтверждение платежей проверены на локальном HTTP-стенде; реальный платёж без ключей мерчанта не проводился.

Обновление:

cd /opt/Link-Bot && bash ./update.sh