Як налаштувати Robokassa

Розгляньмо, як приймати платежі в боті через сервіс Robokassa.

  1. Створіть інтернет-магазин у своєму обліковому записі Robokassa та вкажіть такі технічні налаштування:

Створіть тестові паролі та виконайте початкове налаштування в тестовому режимі.

Як підключити Robokassa до MaviBot

Перейдіть до розділу Еквайринг і натисніть Підключити на картці Robokassa:

Заповніть форму у вікні, що відкриється:

  1. ID магазину — ідентифікатор магазину, який можна знайти в налаштуваннях магазину в обліковому записі Robokassa.
  2. Пароль №1 та Пароль №2 — унікальні згенеровані послідовності літер і цифр.
  3. Ставка ПДВ — вкажіть відповідний код для передачі значення ПДВ. Це поле встановлює податкову ставку в касовому апараті. Вона визначається окремо для кожного типу товару, але застосовується до всіх одиниць цього конкретного товару разом.

Доступні значення:

  • Без ПДВ.
  • ПДВ за ставкою 0%.
  • ПДВ за ставкою 5%.
  • ПДВ за ставкою 12%.
  • ПДВ за ставкою 16%.

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

Ви можете створити платіжне посилання в блоці, використовуючи ОДИН ІЗ доступних методів:

Кнопка Оплата

Ви можете створити платіжне посилання за допомогою кнопки з функцією Оплата.

Дізнайтеся, як створити кнопку з функцією Оплата, тут.

Розгляньмо всі доступні параметри кнопки.

Обов'язкові параметри кнопки Оплата

Щоб створити платіжне посилання, вкажіть такі обов'язкові параметри в налаштуваннях кнопки:

  • Сума
  • Назва товару

Сума — вкажіть ціну товару в рублях.

Назва товару — це поле може містити лише англійські або російські літери, цифри та розділові знаки. Максимальна довжина — 100 символів. Ця інформація відображається в інтерфейсі Robokassa та в електронному чеку, який отримує клієнт після успішної оплати.

НЕ використовуйте подвійні лапки в назві товару. Видаліть їх або замініть на одинарні лапки.

Прапорець автоматичного платежу — вмикає регулярні платежі.

Прапорець сповіщення про клік — вмикає відстеження кліків по платіжному посиланню. Якщо ввімкнено, сповіщення про клік з'явиться в розмові з клієнтом у MaviBot.

Ви можете налаштувати подальшу логіку бота на основі цього сповіщення.

Багато платіжних систем підтримують хмарні онлайн-каси, необхідні згідно з Федеральним законом № 54-ФЗ.

Ознайомтеся з вимогами до чеків на сайті вашого платіжного провайдера, щоб уникнути проблем із податковими органами.

Дані чека

Відкрийте меню Дані чека, щоб відобразити параметри чека:

Назва товару — обов'язково для створення чека.

НЕ використовуйте подвійні лапки в назві товару. Видаліть їх або замініть на одинарні лапки.

Загальна сума в рублях — вкажіть загальну суму платежу на основі кількості товару. Якщо кількість дорівнює 1, загальна сума в рублях дорівнює значенню, введеному в обов'язковому полі Сума.

Кількість — кількість або вага товару. Ви можете передати ціле число або десяткове число з крапкою, наприклад:

5

або

10.3

Змінні клієнта, які створюються автоматично під час використання кнопки Оплата

Як тільки користувач отримує блок, що містить кнопку Оплата, автоматично створюються такі змінні клієнта:

Службова змінна клієнта:

__payments

зберігає суму платежу та ідентифікатор створеного платіжного посилання. Вона необхідна для ідентифікації вебхука, отриманого від платіжного провайдера.

Службову змінну __payments НЕ МОЖНА видаляти або змінювати.

Змінна клієнта:

error_payment_button

створюється, якщо під час створення кнопки оплати сталася помилка.

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

Значення змінних стають актуальними після переходу користувача до наступного блоку.

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

Зверніть увагу

Robokassa надсилає сповіщення лише про успішні транзакції через URL результату.

Robokassa не надає зворотних викликів для неуспішних платежів.

URL невдачі — це лише сторінка неуспішного платежу, на яку перенаправляється платник, якщо на сторінці оплати сталася помилка.

Успішний платіж

Після правильного налаштування платежу та створення платіжного посилання протестуйте налаштування.

Якщо платіж успішний, зворотний виклик буде надіслано АВТОМАТИЧНО в розмову з клієнтом у розділі Клієнти.

Зворотний виклик складається з:

  • 10 символів секретного ключа платіжного провайдера;
  • слова _success;
  • суми платежу після пробілу.

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

Приклад:

ovg58keefc_success 2999

Де:

  • ovg58keefc — 10 символів секретного ключа платіжного провайдера;
  • _success — результат обробки запиту, що вказує на успішний платіж;
  • 2999 — сума платежу.

Виконання блоку:

Зворотний виклик:

Зворотні виклики платіжного провайдера НЕ ВИДНІ користувачеві.

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

Приклад налаштування відповіді на зворотний виклик

В умовному блоці, наприклад, блоці Стартова умова або Нестандартний з умовою, вкажіть зворотний виклик, отриманий після оплати.

Виберіть тип збігу Точний збіг або Містить ключові слова.

Після оплати клієнт отримає повідомлення з блоку, налаштованого на відповідь на зворотний виклик:

Помилка суми платежу

Якщо сума, вказана в налаштуваннях кнопки, відрізняється від суми, сплаченої клієнтом, бот автоматично отримає зворотний виклик, що складається з:

  • 10 символів секретного ключа платіжного провайдера;
  • _different_amounts;
  • унікального ідентифікатора платежу після пробілу.

Приклад:

ovg58keefc_different_amounts 123456

Де:

  • ovg58keefc — 10 символів секретного ключа платіжного провайдера;
  • _different_amounts — вказує, що сплачена сума відрізняється від суми в платіжному посиланні;
  • 123456 — унікальний ідентифікатор платежу.

Функція get_robokassa_payment_url у Калькуляторі

Ви можете створити платіжне посилання за допомогою функції get_robokassa_payment_url у блоці Калькулятор.

У полі Калькулятор призначте результат функції get_robokassa_payment_url змінній.

Ви можете вибрати назву змінної самостійно. На скріншотах показано приклади назв змінних.

Платіжне посилання буде збережено в цій змінній.

Ви можете відобразити змінну як посилання в повідомленні або розмістити її в кнопці з текстом, наприклад, Оплатити.

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

https://auth.robokassa.ru/Merchant/Index.aspx?MerchantLogin=test_salebot&OutSum=800&InvId=1412&IsTest=1&SignatureValue=0427369c3bd068bae30935f896060dda

Багато платіжних систем підтримують хмарні онлайн-каси, необхідні згідно з Федеральним законом № 54-ФЗ.

Ознайомтеся з вимогами до чеків на сайті вашого платіжного провайдера, щоб уникнути проблем із податковими органами.

Калькулятор

Приклад 1:

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

get_robokassa_payment_url(amount, description, products_for_receipt, recurrent, currency)

Параметри функції

Параметр Опис
amount Сума платежу. Вкажіть ціну товару в рублях. Обов'язковий параметр.
description Назва товару. Це поле може містити лише англійські або російські літери, цифри та розділові знаки. Максимальна довжина — 100 символів. Ця інформація відображається в інтерфейсі Robokassa та в електронному чеку, який отримує клієнт після успішної оплати. Обов'язковий параметр.
products_for_receipt Параметри створення чека. Докладніше тут.
recurrent Вмикає регулярні платежі. Передайте 1, якщо регулярні платежі ввімкнено, або None, якщо вимкнено.
currency Трилітерний код валюти. Значення має суворо відповідати параметрам, прийнятим Robokassa.

USD — долар США;
EUR — євро;
KZT — тенге.

Приклади коду

Приклад 1: Платіжне посилання без чека

res = get_robokassa_payment_url(100, 'Buy me')

Приклад 2: Платіжне посилання з чеком

receipt = [{"name":"DDDDDDDD","amount":"44","quantity":"1","vat_code":"5","method":"full_payment","object":"commodity"}]
res = get_robokassa_payment_url(100, 'Buy me', receipt, '3', 1, 1)

Ви можете відобразити змінну як посилання в повідомленні або розмістити її в кнопці з текстом, наприклад, Купити.

Якщо блок містить кілька функцій платіжного посилання і сталася помилка, значення помилки буде збережено в змінній:

error_payment_func

Буде збережено помилку з останньої функції в Калькуляторі.

Після правильного налаштування платежу та створення платіжного посилання протестуйте налаштування.

Як додати опис платежу

Ви можете додати опис платежу, встановивши змінну:

payment_description

Опис буде відображатися на формі оплати та в чеку.

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

Якщо платіж успішний, зворотний виклик буде надіслано АВТОМАТИЧНО в розмову з клієнтом у розділі Клієнти.

Зворотний виклик складається з:

  • 10 символів секретного ключа платіжного провайдера;
  • _success;
  • суми платежу після пробілу.

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

Приклад:

ovg58keefc_success 1500

Де:

  • ovg58keefc — 10 символів секретного ключа платіжного провайдера;
  • _success — результат обробки запиту, що вказує на успішний платіж;
  • 1500 — сума платежу.

Зверніть увагу

Зворотний виклик видимий лише вам у розмові з клієнтом.

Зворотний виклик не видимий клієнту, але ви можете налаштувати відповідь на успішний платіж.

Приклад

Налаштування блоку з використанням функції get_robokassa_payment_url:

1. Відображення посилання в тексті повідомлення

Важливо

Платіжне посилання є унікальним. Ви не повинні копіювати його та надсилати іншим клієнтам.

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

Зворотний виклик після успішної оплати:

2. Відображення посилання в кнопці

Виконання блоку:

Зворотний виклик після успішної оплати: