Переменную #{webpay_pay_url} указывается через конструкцию #{} в поле url в настройках вложений, либо в настройках кнопки, либо в тексте сообщения:
В настройках кнопки:
Рис. 6. Указываем переменную #{webpay_pay_url} в поле url кнопки
Рис. 7. Настройки блока
В поле url в настройках вложения:
Рис. 8. Указываем переменную #{webpay_pay_url} в поле url вложения
В поле "Сообщение":
Рис. 9. Указываем переменную #{webpay_pay_url} в поле "Сообщение"
Также до установки значения переменной payment_sum, можно задать следующие необязательные переменные, для настройки платежа:
Внимание! По умолчанию установлена валюта Белорусский рубль, если нужна другая валюта, нужно установить значение переменной currency
currency — валюта заказа. Допустимые значения: BYN, USD, EUR, RUB
store_name — название магазина, которое будет отображаться на форме оплаты. По умолчанию берется из настроек биллинг-аккаунта
product_name – наименование товара
language — язык страницы оплаты, по умолчанию русский. Допустимые значения: russian, english
session_timeout — продолжительность жизни заказа в секундах. По умолчанию 1200 секунд (20 минут).
Рис. 10. Информация о платеже
Создадим ссылку на оплату в размере 10 бел. рублей (по умолчанию бел. рубль)
Рис. 11. Настройки калькулятора
Обратите внимание:
- Сначала указываете необязательные параметры product_name и т.д.
- И последней присваиваем значение переменной payment_sum
Обратите внимание, вначале задаем дополнительные переменные для настроек, затем payment_sum. Переменные можно задать и ранее в цепочке, а не в одном блоке, это пример.
Далее в нужном месте выводим переменную webpay_pay_url, в которой содержится ссылка (см. рис. 6 — 9).
Как обработать результат
После успешной оплаты в бот придут колбэки, по которым вы сможете понять, что была успешная оплата. Эти колбеки в системе вы видите как сообщения от пользователя, чтобы их не мог отправить пользователь, они состоят из 10 первых символов секретного ключа и приписки _success, например: 895f1840b9_success
Если секретный ключ менее 10 символов, то он будет использован полностью + приписка _success.
Рис. 12. Колбек об успешном платеже
Эти колбэки НЕ ВИДИТ пользователь, они отображаются только оператору.
Тип сравнения должен быть "Полное совпадение"
Также после успешной оплаты переменная webpay_payment_completed устанавливается в True.
Например, можно сделать обработку успешной оплаты блоком с условием и вывести соответствующее сообщение пользователю:
Пример 1:
Рис. 13. Указываем колбек в поле условие в блоке "Стартовое условие"
Пример 2:
Рис. 13. Указываем колбек в поле условие в блоке "Стартовое условие"
Если вы не хотите выбивать клиента из основной схемы чат-бота, воспользуйтесь блоком "Не состояние с условием" — в этот блок нельзя перейти, поэтому клиента после оплаты не выбьет из основной воронки и при этом он получит уведомление об успешной оплате.
А если вам нужно продолжить воронку с реакции на успешную оплату, то используйте блок "Стартовое условие", тогда клиент из блока оплаты перейдет в блок "Стартовое условие", с которого вы можете продолжить воронку.
Подробнее о блоках с условием рассказали в одноименной статье.
Для совершения повторного платежа обязательно необходимо обнулить payment_sum, ранее сформированную ссылку и уже после переназначить переменную payment_sum для получения свежей ссылки. Можно указать предыдущее значение.
После завершения оплаты клиенту добавится переменная webpay_callback_data, содержащая данные ответа платежной системы по совершенной операции. Из полученного словаря можно извлечь необходимые данные при помощи метода get.
Как тестировать
Для проведения тестовых платежей установите переменной test_payments значение 1