Wayforpay
Быстрая регистрация и подтверждение мерчанта
Регистрация мерчанта для физических лиц без сайта
Единая процентная ставка для физических и юридических лиц — 2,5%
Поддержка Google Play и ApplePay
Как подключить
Чтобы подключить платёжную систему wayforpay, вам понадобятся 3 значения:
логин мерчанта
секретный ключ мерчанта
доменное имя сайта мерчанта.
Перейдите в личный кабинет -> настройки магазина https://m.wayforpay.com/mportal/merchant/list

Скопируйте данные и перейдите к настройкам в Mavibot.
Откройте раздел "Эквайринг", выберите wayforpay.

Вам нужно ввести полученные данные в открывшуюся форму:

Чтобы сгенерировать ссылку на оплату, нужно задать значение payment_sum переменная (например, 150 или 100.55, если сумма дробная, то сумма разделяется точкой):

Сразу после этого появится wayforpay_pay_url переменная. Эту переменную можно вывести в сообщении со ссылкой или разместить на кнопке с текстом "Оплатить":
Вариант 1. Ссылка на оплату в кнопке:

Вариант 2. Ссылка на оплату находится в поле attachment url:

Ссылка выглядит так:
https://secure.wayforpay.com/invoice/id1bbb2ad0375
По умолчанию USD (доллары) установлен, если вам нужна другая валюта, необходимо задать значение переменной currency.
Также перед установкой значения payment_sum переменной можно задать следующие необязательные переменные для настройки платежа.
currency — валюта заказа по умолчанию, UAH (возможные значения: USD, EUR, RUB)
session_timeout — время жизни ссылки в секундах, по умолчанию 3600 (1 час)
product_name - название товара
language — язык страницы оплаты, по умолчанию UA (возможные значения: RU, EN) buyer_name — имя клиента
buyer_email — email клиента
buyer_first_name — имя клиента
buyer_last_name — фамилия клиента
Вот так выглядит ссылка на страницу оплаты.
Создадим ссылку для оплаты на сумму 1 USD и сроком действия 2 часа:

Обратите внимание: — Сначала укажите необязательные параметры product_name ад. и т. д. — И последним задайте значение payment_sum переменную.
Обратите внимание, что сначала мы задаём переменные для настроек, затем payment_sum. Переменные можно задавать раньше в цепочке, а не в одном блоке, это пример.
Далее, в следующем блоке, выводим wayforpay_pay_url переменную, которая содержит ссылку (например, ссылку в тексте):

Бот будет работать следующим образом:

Как обработать результат
После успешной оплаты в бот будут отправлены колбэки, по которым вы поймёте, что платёж прошёл успешно. В системе вы видите эти колбэки как сообщения от пользователя, чтобы пользователь не мог их отправить, они состоят из первых 10 символов секретного ключа и приписки _success, например: flk3409ref_success

Эти колбэки НЕ ВИДНЫ пользователю, они отображаются только оператору.
Тип сравнения должен быть "Полное совпадение"
Также после успешной оплаты переменной wayforpay_payment_completed присваивается значение True.
Например, вы можете обработать успешную оплату в условном блоке и показать пользователю соответствующее сообщение:


Если вы не хотите выбивать клиента из основной схемы чат-бота, используйте блок "Non state with a condition". Перейти в этот блок нельзя, поэтому после оплаты клиент не будет выброшен из основной воронки и получит уведомление об успешной оплате.
А если вам нужно продолжить воронку с реакцией на успешную оплату, тогда используйте блок "Стартовое условие", после чего клиент перейдёт из блока оплаты в блок "Стартовое условие", из которого вы сможете продолжить воронку.
Подробнее о conditional-блоках рассказано в одноимённой статье
После завершения платежа переменная wayforpay_callback_data переменная будет добавлена клиенту и будет содержать данные ответа платежной системы по завершенной транзакции. Из полученного словаря можно извлечь необходимые данные с помощью get .
Функции для работы с калькулятором
Для рекуррентных платежей
wayforpay_recurrent_payment(amount, currency, session_timeout, product_name, language, buyer_name, buyer_email, regular_date_next, regular_date_end, regular_count, regular_mode) — генерирует ссылку для рекуррентного платежа.
amount
сумма платежа
currency
валюта. По умолчанию: UAH (возможные значения: USD, EUR, RUB). Необязательный параметр.
session_timeout
время жизни ссылки в секундах. По умолчанию: 3600 (1 час). Необязательный параметр.
product_name
название товара. Необязательный параметр.
language
язык страницы оплаты. По умолчанию: UA (возможные значения: RU, EN). Необязательный параметр.
buyer_name
имя клиента. Необязательный параметр.
buyer_email
email клиента. Необязательный параметр.
regular_date_next
дата следующей автоматической транзакции. По умолчанию: через месяц после создания ссылки. Необязательный параметр.
regular_date_end
дата окончания автоматических транзакций. По умолчанию: через год после создания ссылки. Может быть опущен, если указан параметр regular_count. Необязательный параметр.
regular_count
количество автоматических транзакций. Если указан, параметр regular_date_end будет проигнорирован. Необязательный параметр.
regular_mode
интервал рекуррентного платежа. Необязательный параметр. Возможные значения: - once — разовый платёж - daily — ежедневно - weekly — еженедельно - quarterly — каждые 3 месяца после даты первого платежа - monthly — раз в месяц - bimonthly — раз в 2 месяца - halfyearly — раз в 6 месяцев - yearly — раз в год
Отмена рекуррентного платежа
wayforpay_delete_recurrent() — отменяет будущие автоматические платежи клиента. Возвращает "Ok" при успешном выполнении.

Также можно использовать блоки "Starting trigger" и "State" (в примере используются блоки "Non-state with condition" и "Non-state").
Если вы не хотите удалять клиента из основного потока чат-бота, используйте блок "Non-state with condition" — этот блок нельзя открыть вручную, поэтому после оплаты клиент останется в основной воронке и при этом получит уведомление об успешной оплате.
Если вам нужно продолжить воронку на основе успешной оплаты, используйте блок "Starting trigger". В этом случае клиент перейдёт из блока оплаты в блок "Starting trigger condition", из которого можно продолжить воронку.
Последнее обновление