Як налаштувати Paypal
Для роботи з Paypal потрібно отримати два ключі: client_id та secret.
Перейдіть на сторінку https://developer.paypal.com/developer/applications/
Виберіть зі списку або створіть новий застосунок:
Угорі змініть перемикач на режим Live та виберіть потрібний застосунок. Відкриється сторінка з налаштуваннями, де ви знайдете потрібні дані:
Скопіюйте дані та вставте їх у відповідні поля в налаштуваннях Mavibot - Платіжні системи - Paypal:
На цьому підключення завершено.
Як створити платіжне посилання
Щоб згенерувати платіжне посилання, потрібно встановити значення змінної payment_sum, і одразу з'явиться змінна paypal_pay_url.
payment_title не є обов'язковою змінною, це назва товару. Якщо не вказати, заповнюється текстом: "Payment account order_id" (order_id - ідентифікатор замовлення на сервері).
payment_description - опис товару, необов'язково.
Крім того, перед тим як вказати payment_sum, ви можете вказати мову, якою буде відображатися платіжна сторінка. Для цього потрібно встановити змінну locale, за замовчуванням російська (ru-RU). Усі можливі варіанти: da-DK, he-IL, id-ID, ja-JP, no-NO, pt-BR, ru-RU, sv-SE, th-TH, zh-CN, zh-HK, zh-TW.
Третій додатковий параметр — company_name — назва вашої компанії, відображається в самому верху сторінки (приклад нижче, company).
Також можна вказати валюту, в якій приймається платіж. Для цього вказуємо змінну currency, за замовчуванням встановлено рубль (RUB), для долара вкажіть значення USD (currency = USD). Можливі варіанти валют можна знайти за посиланням https://developer.paypal.com/docs/api/reference/currency-codes/
Третій додатковий параметр — company_name — назва вашої компанії, відображається в самому верху сторінки (приклад нижче, company).
Змінну paypal_pay_url можна відобразити у вигляді посилання або розмістити на кнопці "Оплатити".
Посилання має вигляд: https://ww.paypal.com/checkoutnow?token=07N53571YM296381N
Приклад реалізації.
Встановіть суму платежу 444 та назву компанії.
Примітка: змінна payment_sum встановлюється останньою, після необов'язкових payment_title, company_name тощо.
Як обробити результат
Після успішної оплати в бот надійдуть колбеки, за якими можна зрозуміти, що оплата пройшла успішно. Ці колбеки в системі ви бачите як повідомлення від користувача, тому їх не може надіслати користувач. Вони складаються з перших 10 секретних символів та домашньої сторінки зі статусом, наприклад: EHsWHYOoWV_success.
Також після успішної оплати змінна paypal_payment_completed встановлюється в True.
Ці колбеки НЕ ВИДНО користувачеві, вони відображаються лише оператору.
Тип порівняння має бути "Повний збіг".
Щоб здійснити повторний платіж, потрібно скинути payment_sum, раніше згенероване посилання, а після скидання змінної payment_sum отримати нове посилання. Можна вказати попереднє значення.
Колбеки надходять із затримкою, тому після надсилання посилання на оплату користувачеві рекомендуємо надіслати повідомлення на кшталт: "Після оплати зачекайте на повідомлення про успішне завершення платежу".
Наприклад, ви можете створити блок обробки успішної оплати з умовою та вивести відповідне повідомлення користувачеві:
Тип порівняння має бути "Повний збіг".
Після завершення оплати до клієнта буде додано змінну paypal_callback_data, яка містить дані відповіді платіжної системи про виконану транзакцію. Ви можете витягти необхідні дані зі словника за допомогою методу get.


