Bepaid

Як підключити

Щоб підключити bePaid платіжну систему, вам знадобиться Store ID, секретний ключ, і публічний ключ. Після того як ви отримаєте ці облікові дані, перейдіть до налаштувань у Salebot.

circle-info

Щоб отримати Store ID, секретний ключ, і публічний ключ, будь ласка, зверніться до baPaid технічної підтримки за допомогою.

У MaviBot, відкрийте "Платіжна система" розділ і виберіть bePaid. Потім введіть отримані вами облікові дані.

Зверніть увагу, що останнє поле — це перемикач, який вибирає хостинг API залежно від країни використання: Білорусь або Росія.

Як згенерувати платіжне посилання

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

Після того як payment_sum змінну буде встановлено, bepaid_pay_url змінна автоматично з’явиться. Ви можете відобразити цю змінну на екрані як посилання або помістити її на кнопку з текстом "Оплатити".

Платіжне посилання матиме такий вигляд: https://checkout.bepaid.by/widget/hpp.html?token=a05eabd3f9368725efbc175614c7d469da08f198cc51916b07fb75e53f9a3e1aarrow-up-right

Перед встановленням payment_sum змінної ви також можете визначити такі необов’язкові змінні для налаштування платежу.

circle-info

За замовчуванням валюта встановлена як білоруський рубль. Якщо вам потрібно використовувати іншу валюту, задайте значення для currency змінної.

Параметри функції
Опис
Додаткова інформація

currency

Валюта платежу у форматі ISO 4217

Наприклад: USD

language

Мова платіжної сторінки За замовчуванням: en.

Дозволені значення:

  • en – англійська

  • es – іспанська

  • tr – турецька

  • de – німецька

  • it – італійська

  • ru – російська

  • zh – китайська

  • fr – французька

  • da – датська

  • sv – шведська

  • no – норвезька

  • fi – фінська

  • pl – польська

  • ja – японська

  • uk – українська

  • be – білоруська

  • ka – грузинська

  • ro – румунська

payment_description

Опис платежу

link_expired

Термін дії платіжного посилання Встановіть дату закінчення у форматі дд.мм.рррр (наприклад: 25.06.2025). За замовчуванням платіж потрібно завершити протягом 24 годин.

Ви також можете використати "Призначити змінні при редиректі" поле, щоб встановити:

  • link_expired = current_date + 2 — посилання буде дійсним 2 дні до 00:00.

  • Ви також можете вказати точну дату й час закінчення у форматі дд.мм.рррр гг:хв (наприклад: 25.06.2025 12:23). За замовчуванням платіж потрібно завершити протягом 24 годин.

Також можна використовувати стандартні змінні. Наприклад, щоб встановити термін дії посилання на 30 хвилин: time = current_time + 30 link_expired = "#{current_date} #{time}"

russian_host

Індикатор для магазину, зареєстрованого на російському хості bePaid Встановіть цей параметр у 1 якщо ваш магазин зареєстровано на bepaid.tech.

Якщо потрібно перемкнути хост на Білорусь, встановіть цей параметр у "" (порожнє значення).

test_payments

Ця змінна використовується для тестових платежів. Щоб виконати тестовий платіж, додайте її з будь-яким значенням.

bepaid_attempts

Визначає кількість спроб платежу. За замовчуванням 1 спроба дозволена.

сustomer_data

Масив, що містить ім’я, прізвище, і emailплатника. Ці дані потрібні для надсилання квитанції на email платника і можуть бути змінені на платіжній сторінці.

Параметр має передаватися як список пар ключ-значення у форматі JSON. Наприклад: customer_data = ‘{“first_name”: “Sam”, “last_name”: “Smith”, “email”: “[email protected]” }’

bepaid_contract (умовно обов’язково)

Призначення платежу за токеном

Очікувані значення:

  • “recurring” – для регулярних платежів із заданою періодичністю

  • “card_on_file” – для одноразових або нерегулярних платежів, наприклад, післяплати за послугу

Після завершення платежу bepaid_callback_data змінна буде додана для клієнта. Вона містить відповідь платіжної системи щодо завершеної транзакції. Ви можете витягнути потрібні дані з цього словника за допомогою get методу.

Як тестувати платежі

Щоб виконати тестовий платіж, перед встановленням payment_sum змінної встановіть test_payments змінну з будь-яким значенням. Не забудьте видалити її під час запуску бота в бойовому режимі!

Тестові картки:

  • 4200000000000000 — успіх

  • 4005550000000019 — невдача

Якщо щось не працює, порівняйте свої дані з офіційною документацією: https://docs.bepaid.by/ru/test-integration#test-card-numberarrow-up-right

Приклад створення платіжного посилання

Створімо платіжне посилання для 100 білоруських рублів (валюта за замовчуванням).

Примітка: спочатку встановіть додаткові змінні для налаштування, потім встановіть payment_sum. Змінні також можна встановити раніше у сценарії, не обов’язково в тому самому блоці — це лише приклад.

Нарешті, відобразіть bepaid_pay_url змінну в потрібному місці; вона містить згенероване платіжне посилання.

Керування підписками

Інтеграція платіжної системи дає змогу створювати підписки для ваших клієнтів.

Перед використанням цієї функції в Salebotстворіть тарифний план у своєму bePaid акаунті.

circle-exclamation

Створення підписки та генерування платіжного посилання

Використайте get_bepaid_subscription_url функцію, передавши параметр plan_id де…

plan_id

plan_id — це ID плану в bePaid системі.

У результаті функція створить підписку та поверне платіжне посилання.

Надішліть посилання клієнту та дочекайтеся завершення платежу.

Після успішного платежу підписку буде активовано. У угоду буде додано bepaid_subscription_id та bepaid_subscription_status змінні, а до бота буде надіслано callback (див. розділ “Як обробити результат” ).

Отримання інформації про підписку

Щоб отримати поточні деталі підписки для клієнта, викличте get_bepaid_subscription_info функцію та передайте subscription_id параметр (значення можна взяти зі bepaid_subscription_id змінної).

Скасування підписки

Щоб скасувати підписку, використайте cancel_bepaid_subscription функцію.

Ця функція приймає один параметр: subscription_id (значення можна взяти зі bepaid_subscription_id змінної).

Після успішного скасування bepaid_subscription_status змінна буде встановлена у “canceled”, а до бота буде надіслано callback (див. розділ “Як обробити результат” ).

Статуси підписок

trial

Активна або скасована триального періоду підписка.

active

Активна підписка з своєчасно здійсненим платежем.

failed

Невдала підписка. bePaid не вдалося обробити наступний платіж.

error

Сталася помилка під час bePaid спроби обробити платіж.

canceled

Підписку було canceled і вона більше не активна.

Регулярні платежі

Ви також можете налаштувати систему підписки без створення плану у своєму bePaid акаунті.

Для цього вам знадобиться токен картки.

Картка токен payment_sum.

Перед встановленням payment_sum значення, встановіть bepaid_contract змінну, щоб вказати призначення майбутніх платежів за токеном:

  • “recurring” – для регулярних платежів із заданою періодичністю

  • “card_on_file” – для одноразових або нерегулярних платежів, наприклад, післяплати за послугу

circle-exclamation

Після успішного платежу bepaid_client_card_token змінна буде додана до угоди, зберігаючи токен картки клієнта. Цей токен дає змогу списувати кошти з картки клієнта без його участі.

Далі налаштуйте свою воронку та вкажіть дату або умову для автоматичного списання, потім викличте make_bepaid_token_payment функцію, передавши необхідні параметри.

Порядок параметрів: amount → currency → description → contract

Опис параметрів

amount (обов’язково)

Сума платежу – очікуване значення — це ціле або десяткове число, наприклад: 100 або 100.5.

currency (обов’язково)

Валюта платежу у ISO 4217 форматі, наприклад: “USD”.

description (обов’язково)

Опис списання, наприклад: “Щотижневий платіж за підпискою для участі в гуртку за інтересами”.

contract (обов’язково)

Призначення платежу за токеном. Очікувані значення: “recurring” або “card_on_file”.

circle-exclamation

Якщо платіж успішний, функція поверне повідомлення “Успішне списання через токен bePaid”, ви отримаєте callback про успішний платіж, а змінна угоди bepaid_token_payment_completed буде встановлена у “True”.

Якщо платіж не вдасться, функція поверне повідомлення з причиною невдалого платежу, callback із суфіксом “_fail” буде надіслано до бота, а змінна угоди bepaid_token_payment_completed буде встановлена у “False”.

circle-exclamation

Як обробити результат

У відповідь на дії клієнта бот отримуватиме callback-и, що складаються з перших 20 символів секретного ключа і суфікса, який залежить від типу та результату операції.

У системі callback відображається як повідомлення від користувача, але користувач його не бачить.

Для платежів

Для платежів не пов’язаних із підписками, ви отримаєте одне з таких повідомлень:

  • keyNumber_success – для успішного платежу

  • keyNumber_fail – для невдалого платежу

Ви також можете відстежувати статус останнього платежу за допомогою змінних:

  • bepaid_payment_completed – для платежів за участю клієнта

  • bepaid_token_payment_completed – для автоматичних платежів за токеном картки

Для підписок

Після успішної активації підписки, під час першого або повторного платежу, бот отримає повідомлення keyNumber_success.

Якщо підписку скасовано, ви отримаєте keyNumber_canceled.

У разі невдалого платежу за підпискою буде надіслано повідомлення keyNumber_fail .

Last updated