Чтобы использовать платежную платформу EBANX в Mavibot, необходимо получить Integration Key из вашего аккаунта EBANX и ввести его в настройках оплаты.

EBANX — это агрегатор локальных способов оплаты по всей Латинской Америке. Платежи обрабатываются на защищенной платежной странице, размещенной на серверах EBANX, где клиентам отображаются доступные в их стране способы оплаты (например, PIX и boleto в Бразилии, OXXO и SPEI в Мексике, PSE в Колумбии, кредитные/дебетовые карты и другие).

Получение Integration Key

Заключите соглашение с EBANX и получите доступ к EBANX Business Portal (вашему торговому дашборду).

В процессе регистрации выберите страны, в которых вы хотите принимать платежи. Клиенты смогут оплачивать только из стран, включенных в вашем аккаунте EBANX.

В настройках интеграции скопируйте ваш Integration Key. Он понадобится для подключения EBANX к Mavibot.

Для тестирования EBANX предоставляет отдельную песочницу с собственным Integration Key. См. раздел «Тестовый режим» ниже.

Подключение EBANX

В настройках платежных систем выберите EBANX и введите следующее:

  • Integration Key — скопированный Integration Key EBANX.
  • Country — страна платежа по умолчанию (двухбуквенный код страны строчными буквами: br для Бразилии, mx для Мексики, co для Колумбии, cl для Чили, pe для Перу, ar для Аргентины и т.д.). Это определяет, какие способы оплаты увидят клиенты на платежной странице. Выбранная страна должна быть включена в вашем аккаунте EBANX.
  • Test Mode — включите эту опцию для тестирования интеграции с использованием среды песочницы EBANX. Когда тестовый режим включен, используйте Integration Key из вашего аккаунта песочницы. Для приема реальных платежей отключите тестовый режим и используйте ваш рабочий Integration Key.

Настройка завершена.

Генерация платежной ссылки

Функция калькулятора:

get_ebanx_payment_url(amount, description, currency, customer_email, full_name, country)

Параметры

  • amount — сумма платежа. Обязательно.

  • customer_email — адрес электронной почты клиента. Обязательно. EBANX не может создать платеж без него. Клиент также получит подтверждение платежа на этот адрес.

  • full_name — полное имя клиента. Обязательно.

  • description — описание платежа. Необязательно.

  • currency — валюта платежа. Вы можете использовать:

    • локальную валюту страны платежа (например, BRL, MXN, COP, CLP, PEN, ARS и т.д.), или
    • валюту вашего аккаунта EBANX (обычно USD), в этом случае EBANX конвертирует сумму по своему курсу.

    Необязательно. Значение по умолчанию — USD.

  • country — страна платежа (двухбуквенный код страны строчными буквами). Необязательно. Если не указано, будет использоваться страна по умолчанию, заданная в настройках платежа.

Функция возвращает URL платежа.

Примечание: Выбранная валюта должна быть совместима со страной платежа. Это должна быть либо локальная валюта страны, либо валюта вашего аккаунта EBANX. Например, для br (Бразилия) допустимы BRL и USD, а MXN — нет.

Кнопка платежной ссылки

Чтобы отправить кнопку оплаты, выберите тип «Кнопка оплаты» и укажите EBANX в качестве платежной системы.

Введите:

  • название товара;
  • сумму платежа;
  • валюту;
  • переменные, содержащие полное имя и адрес электронной почты клиента.

При необходимости укажите страну платежа.

Пример 1: Настройка сценария

Шаг 1. Создайте блок Start.

Блок Start обычно используется для отображения первого приветственного сообщения в сценарии, а также любой вводной информации, необходимой пользователю.

Шаг 2. Создайте блок, как показано ниже.

Шаг 3. Перейдите в настройки Connection.

Вам понадобится следующее регулярное выражение, чтобы проверить, что клиент ввел корректный адрес электронной почты:

^[-\w.]+@([A-z0-9][-A-z0-9]+.)+[A-z]{2,4}$

Также включите опцию User enters data и введите customer_email.

Шаг 4. Введите сообщение во втором блоке.

Шаг 5. Создайте третий блок и откройте настройки Connection между вторым и третьим блоками.

Включите таймер для автоматического перехода к следующему блоку.

Шаг 6. В третьем блоке введите функцию в Calculator.

Пример для копирования:

amount = 1000
description = "Product1 is product of great reliability!"
currency = "BRL"
link = get_ebanx_payment_url(amount, description, currency, customer_email, full_name, country)

Если вы хотите принимать платежи в валюте, отличной от USD, укажите валюту, как показано ниже.

Пример 2. Кнопка оплаты

Этот пример почти идентичен Примеру 1.

Однако вместо создания третьего блока с функцией для генерации платежной ссылки вы можете создать кнопку во втором блоке.

В открывшемся окне:

  • Введите текст кнопки.
  • Выберите функцию Billing.
  • Выберите EBANX в качестве платежного провайдера.

Затем введите следующее:

  • Product Name.
  • Payment Amount.
  • Currency (необязательно).
  • Client Full Name (необязательно). Вы можете настроить это так же, как вы настраивали ввод адреса электронной почты клиента.
  • Customer Email — введите переменную #{customer_email}.

Затем нажмите Add.

Уведомления после оплаты

После того как клиент откроет платежную ссылку и завершит оплату, при успешном платеже в диалог отправляется следующий callback:

SDJ91MTKTT_success 100

Где:

  • SDJ91MTKTT — первые 10 символов вашего Integration Key.
  • 100 — сумма платежа.

Если платеж отменен, отправляется следующий callback:

SDJ91MTKTT_fail 100

Для офлайн-способов оплаты (например, boleto, OXXO и т.д.) подтверждение платежа происходит не сразу. EBANX отправляет callback только после получения средств, что может занять 1–3 рабочих дня. Callback будет доставлен автоматически после подтверждения платежа.

Как отправить ответ на успешный или неудачный платеж

Шаг 1. Создайте блок Trigger.

Шаг 2. В поле условия введите текст уведомления SDJ91MTKTT_success — без суммы платежа — если вы хотите реагировать на каждый платеж.

В этом случае Match Type должен быть установлен в By Keywords.

Или введите полный текст callback в поле Trigger, если вы хотите реагировать на конкретный платеж. В этом случае Match Type должен быть установлен в Exact Match.

Если вы хотите продолжить сценарий после успешного платежа, вы можете создать блок Start вместо блока Trigger и продолжить построение потока бота оттуда.

Переменные клиента после успешного платежа

Переменная Значение
ebanx_callback_data Информация о платеже, полученная от платёжной системы
ebanx_payment_completed "True" — платёж обработан как успешный
ebanx_payment_hash Идентификатор платежа в EBANX (hash)