Prodamus (KZ)
Як підключити Prodamus
Щоб підключити Prodamus, вам знадобляться URL платіжної форми та секретний ключ.
URL платіжної форми надається після реєстрації, його приклад: demo.payform.ru.
Секретний ключ можна отримати в особистому кабінеті, там само потрібно вказати URL, на який будуть надсилатися сповіщення (notification).

Детальна інструкція про те, як це зробити
Адреса для сповіщень: https://chatter.mavibot.ai/prodamus_callback/result
Цю адресу потрібно вказати двічі в налаштуваннях.
На головній сторінці налаштувань можна вибрати режим роботи платіжної форми: деморежим без оплати або режим приймання платежів.

Адресу для сповіщень потрібно вказати двічі в налаштуваннях платіжної системи: «Налаштування форми» вкладка — для разових (звичайних) платежів і «Підписки» вкладка — для платежів за підпискою.

Адреса для сповіщень: https://chatter.mavibot.ai/prodamus_callback/result
Для налаштування роботи з платежами за підпискою «Підписки» перейдіть у вкладку та вкажіть адресу для сповіщень:
https://chatter.mavibot.ai/prodamus_callback/result

Увага! Після введення URL обов’язково «Зберегти» натисніть кнопку.
Щоб підключити Prodamus, «Еквайринг» потрібно перейти до розділу.

Далі достатньо ввести наведені вище дані у форму:

Важливо! Коли вказуєте URL платіжної форми, https:// не додавайте.
Так підключення завершено. Тепер розглянемо, як користуватися цією функціональністю.
Як створити посилання на оплату
Кнопка з функцією «Сплатити»
Посилання на оплату можна створити в кнопці з функцією «Сплатити».
Тепер розглянемо всі можливі параметри цієї кнопки.
Обов’язкові параметри кнопки «Сплатити» для Prodamus
Для створення посилання на оплату в налаштуваннях кнопки потрібно вказати обов’язкові параметри: «Сума», «Назва товару», а також параметр «Оплачений контент» — якщо у вас немає власної онлайн-каси й ви хочете отримувати чек від Prodamus.
При переході на сторінку оформлення замовлення наперед відображаються дані про товар і його ціну, а клієнт лише вводить свої контактні дані.
Якщо в налаштуваннях кнопки вказано Email та/або телефон користувача, на сторінці оформлення замовлення будуть відображені контактні дані платника та інформація про товар і його ціну.

Поле «Текст» — цей текст відображається в повідомленні на кнопці з посиланням на оплату.
Поле «Функція» — для створення кнопки, що дає посилання на оплату, обираємо функцію «Сплатити».
Поле «Платіжна система» — підключені до проєкту платіжні системи відображаються в списку. Якщо до проєкту не підключено жодної платіжної системи, цей тип кнопки буде недоступний.
Поле «Назва товару» (обов’язкове) — потрібно вказати точну назву товару. Наприклад: не «Телефон», а «Смартфон Xiaomi, модель …». Примітка: у назві товару не можна використовувати подвійні лапки; видаліть їх або замініть одинарними.
Поле «Сума» (обов’язкове) — вказуємо ціну товару.
Меню «Додаткова інформація» — при натисканні на цю кнопку відкриються додаткові поля для створення посилання:
Опис замовлення
Знижка в рублях
Змінна Email покупця
Змінна номера телефону покупця
Термін дії посилання
ID товару для підписки (для автоплатежу)
Оплачений контент
Чекбокс «Повідомляти про натискання» — можна увімкнути, щоб відстежувати перехід за посиланням на оплату. У цьому випадку при натисканні кнопки в діалог клієнта в Сейлботі надійде повідомлення про те, що було здійснено перехід за посиланням.

За цим повідомленням можна налаштувати подальшу логіку роботи бота. Багато платіжних систем підтримують хмарні онлайн-каси, які потрібні відповідно до вимог 54-ФЗ.
Ознайомтеся з особливостями оформлення чеків на сайті обраної платіжної системи, щоб не потрапити в неприємну ситуацію з податковою.
Ось так виглядає платіжна сторінка, що відкривається за посиланням у кнопці «Сплатити»:

Додаткові налаштування для створення посилання на оплату

Поле «Опис замовлення» — інформація, введена в це поле, на сторінці оплати Додаткові дані відображається в полі.
Поле «Знижка» — тут можна вказати розмір знижки в рублях або в рублях і копійках. Для копійок використовуйте крапку як роздільник: 50.99 На сторінці оплати Сума до оплати поле відображається з урахуванням знижки, а базова ціна товару закреслюється.
Поле «Змінна Email покупця» (необов’язкове, якщо вказано номер телефону) — тут зазначається Email користувача (клієнта). Також можна використовувати змінну, у якій збережено Email, наприклад: #{email}
Поле «Змінна номера телефону покупця» (необов’язкове, якщо вказано Email) — тут можна використати змінну з номером телефону покупця, формат: 79000000000, наприклад: #{phone}
Обов’язково має бути Email та/або телефон.
Поле «Термін дії посилання» — дату дд.мм.рррр гг:хв можна вказати у форматі (наприклад, 25.01.2021 11:00) або встановити термін дії посилання через змінну. Наприклад: #{link_expired}
Поле «ID товару для підписки» — для автоплатежу вкажіть значення ID товару. Для створення підписки потрібно створити товар для підписки. Детальна інструкція: Створення та налаштування підписок Prodamus Якщо для підписки вказано ID товару, сума платежу не враховується. Інформація про товар береться з картки товару в кабінеті Prodamus. Номер телефону, вказаний у платежі, буде потрібен для керування підпискою. Якщо для підписки вказано ID товару, при успішній оплаті в callback буде передано ID цього товару.
Поле «Оплачений контент» (умовно обов’язкове) — ці дані потрібні для фіскалізації платежу через Prodamus, якщо у вас немає власної онлайн-каси. У цьому полі вказуються опис покупки, її ціна та посилання на контент.
Наприклад: Курс «Плетіння кіс», ціна 3000 рублів, посилання на сторінку курсу: https://nbu.su/krasota/master-po-pleteniyu-kos/?yclid=13602995275739430911
Кнопка з функцією «Сплатити»
Якщо ви вкажете термін дії посилання, станеться таке: Якщо користувач запросить платіжне посилання протягом терміну його дії (тобто коли час посилання ще не закінчився) і він перебуває в діалозі, здійснити оплату буде неможливо, і йому буде показано таке повідомлення:
Термін дії посилання має бути пізніше поточної дати, інакше клієнт не зможе оплатити за цим посиланням.
2. Коли користувач запитує посилання, якщо воно зараз неактивне
У цьому випадку кнопка просто не відображатиметься. У змінних клієнта "error_payment_button" з’явиться змінна, значення якої буде таким:
"Помилка: термін дії посилання має бути пізніше поточної дати".
Щоб користувач міг коректно оплатити, рекомендується додатково обробити таку ситуацію.
Створіть такий умовний блок:
Якщо надійде таке повідомлення:
error_payment_button == "Помилка: термін дії посилання має бути пізніше поточної дати"
Тоді виведіть такий текст: "Вибачте, ви не встигли вчасно оплатити, платіжне посилання стало недійсним".


Клієнтські змінні, які автоматично створюються при використанні кнопки з функцією «Сплатити»
Після того як користувач отримує блок із кнопкою «Сплатити», для клієнта автоматично створюються змінні:
Службова клієнтська змінна __payments — ця змінна зберігає суму й ідентифікатор створеного посилання та потрібна для визначення хука, що надходить від платіжної системи.
Службова клієнтська змінна __paymentsїї не можна видаляти або змінювати!
error_payment_button клієнтська змінна створюється автоматично, якщо під час створення кнопки виникла помилка.
У цю змінну записується текст помилки або помилкова відповідь від платіжної системи.
Значення змінних стають актуальними при переході до наступного блоку.
Як обробляти результат
Успішний платіж
Після успішної оплати до бота АВТОМАТИЧНО надходить КОЛБЕК який складається з перших 10 символів секретного ключа платіжної системи, _success слова та суми платежу.
Для використання в налаштуванні схеми достатньо просто скопіювати його.
Наприклад: ovg58keefc_success 44, де:
ovg58keefc— перші 10 символів секретного ключа платіжної системи_success— результат обробки запиту (успішний платіж)44— сума платежу
Користувач не БАЧИТЬ колбеки (сповіщення) від платіжної системи. Вони відображаються лише «Клієнти» вкладка і видимі оператору.
Приклад використання: Крок 1. Додаємо до блоку «Є кнопка з оплатою» кнопки з функцією «Сплатити». Крок 2. Коли з цього блоку до блоку «Успішний платіж» Умова зв’язку полі вказуємо колбек. Аналогічно, якщо вказати колбек успішної оплати в умові блоку «Початкова умова», робота відбуватиметься аналогічно.
Важливо: Оберіть «Повна відповідність» або «За наявністю ключових слів».
❗️Якщо ви вирішите перевіряти оплату в стрілці, зазначеній за точною умовою, ретельно продумайте логіку вашої схеми. Якщо клієнт залишить блок, через який колбек має проходити за умовою, переходу в блок не буде. Такий спосіб перевірки краще використовувати лише тоді, коли клієнт не змінює своє місце у воронці.
У схемах, де клієнт рухається між блоками, ефективніше використовувати колбек «Початкова умова» у блоці.

Успішна оплата для товарів з автопідпискою
Після успішної оплати до бота АВТОМАТИЧНО надходить КОЛБЕК який складається з перших 10 символів секретного ключа платіжної системи, _success слова та ID товару для підписки.
Наприклад: 214009eefc_success 618117, де:
009eefc— перші 10 символів секретного ключа платіжної системи_success— результат обробки запиту (успішний платіж)618117— ID товару для підписки

Помилка платежу
У разі помилки під час проведення платежу до бота АВТОМАТИЧНО надходить КОЛБЕК який складається з перших 10 символів секретного ключа платіжної системи, _fail слова та суми платежу.
Наприклад: ovg58keefc_fail 44, де:
ovg58keefc— перші 10 символів секретного ключа платіжної системи_fail— результат обробки запиту (платіж не виконано або сталася помилка)44— сума платежу
Це залежить від платіжної системи. Не всі платіжні системи надсилають колбек про помилку платежу.
Якщо сума, вказана в налаштуваннях кнопки, відрізняється від суми, сплаченої клієнтом, до бота АВТОМАТИЧНО надходить КОЛБЕК надійде. Вона складається з перших 10 символів секретного ключа платіжної системи, _different_amounts слова та унікального ID платежу.
Наприклад: ovg58keefc_different_amounts 123456, де:
ovg58keefc— перші 10 символів секретного ключа платіжної системи_different_amounts— результат обробки запиту (сума платежу відрізняється від суми в посиланні)123456— унікальний ID платежу
У калькуляторі get_prodamus_payment_url функція
get_prodamus_payment_url функціяДля створення посилання на оплату у блоці Калькулятора get_prodamus_payment_url функцію можна використовувати.
У полі Калькулятора присвоюємо змінній значення цієї функції: get_prodamus_payment_url.
Назву змінної ви обираєте самостійно. На скриншотах наведено приклади назв змінних.
У цю змінну записується посилання на оплату. Змінну можна показати в повідомленні як посилання або розмістити в кнопці з текстом «Сплатити».
Приклад посилання на оплату: https://payform.kz/7p3JR8/
Приклад 1:

your_variable = get_prodamus_payment_url(amount, product_name, expired, customer_phone, customer_email, discount, description, extra_params, products_for_receipt)
Параметри функції:
amount
Сума платежу — може бути передана як ціле число або число з крапкою. Наприклад: 25 або 52.5. (обов’язковий параметр)
product_name
Назва товару (обов’язковий параметр)
expired
Термін дії платіжного посилання — дд.мм.рррр у форматі (наприклад, 25.01.2021).
Також, Калькулятор у полі можна вказати так:
expired = current_date + 2 (посилання буде дійсним 2 дні до 00:00).
Також можна вказати точний час: дд.мм.рррр гг:хв (наприклад, 25.01.2021 12:23).
Можна використовувати й стандартні змінні, наприклад, встановити термін дії посилання на 30 хвилин:
Якщо ви хочете пропустити цей параметр, натомість можна вказати одинарні лапки, подвійні лапки або None значення.
customer_phone
Номер телефону покупця — необов’язково, якщо customer_email параметр вказано.
Якщо ви хочете пропустити цей параметр, натомість можна вказати одинарні або подвійні лапки.
customer_email
Електронна адреса покупця — необов’язково, якщо customer_phone параметр вказано.
Якщо ви хочете пропустити цей параметр, натомість можна вказати одинарні або подвійні лапки.
discount
Розмір знижки — параметр можна передати як ціле число або число з крапкою: 25 або 63.5.
Якщо ви хочете пропустити цей параметр, натомість можна вказати одинарні або подвійні лапки.
description
Опис товару (якщо не вказано, автоматично 'Оплата рахунку order_id' заповнюється).
Якщо ви хочете пропустити цей параметр, натомість можна вказати одинарні або подвійні лапки.
extra_params
Додаткові параметри, параметри, яких немає в цій функції. Доступні додаткові параметри можна переглянути в документації з роботи з API платіжної системи: Prodamus REST API
Наприклад:
Якщо ви хочете пропустити цей параметр, натомість можна вказати одинарні/подвійні лапки або None значення.
products_for_receipt
рядок від 50 до 4000 символів у форматі "опис замовлення - ціна - посилання на ресурс, що купується".
Наприклад:
“Курс «Ловля ляща», ціна 4999 рублів, посилання на сторінку курсу: https://www.lovilescha.ru/courses/poimai_kilogram/"
Цей параметр є обов’язковим, якщо у вас немає власної онлайн-каси, і потрібен для фіскалізації платежу через Prodamus.
extra_params = {"payments_limit": "3"}
products_for_receipt = "Курс «Ловля ляща», ціна 4999 тенге, посилання на сторінку курсу: https://www.lovilescha.ru/courses/poimai_kilogram/"
link_prodamus_url = get_prodamus_payment_url(4999, 'Курс «Ловля ляща»', '27.03.2023 17:00', '79167777771', 'mail@mail.com', 20, 'Найкращий курс на ринку', extra_params, products_for_receipt
У цьому прикладі:
extra_params— додаткові параметри (наприклад, ліміт платежів).products_for_receipt— інформація про товар, що вказується в чеку.get_prodamus_payment_urlпосилання на оплату створюється за допомогою функції.
Якщо в блоці є кілька функцій отримання посилання і сталася помилка, значення помилки error_payment_func записується в змінну.
Помилка записується в Калькуляторі за останньою функцією.
payment_sum створення посилання за допомогою змінної та додаткових параметрів
payment_sum створення посилання за допомогою змінної та додаткових параметрівУвага: payment_sum значення змінної береться з останньої змінної, тобто після необов’язкових змінних: payment_description, product_name тощо.
Для створення посилання на оплату У полі Калькулятора payment_sum достатньо встановити значення змінної.
Після цього автоматично prodamus_pay_url з’являється змінна.
Приклад посилання на оплату: https://payform.ru/7p3JR8/
Цю змінну можна показати в повідомленні як посилання або розмістити в кнопці з текстом «Сплатити».
payment_sum Перед оголошенням змінної можна вказати такі необов’язкові змінні:
product_name
Назва товару (якщо не вказано, автоматично заповнюється "Оплата рахунку order_id" — нижче на скриншоті показано, де саме це відображається.)
payment_description
Опис товару (якщо не вказано, автоматично 'Оплата рахунку order_id' заповнюється) — нижче на скриншоті показано, де саме це відображається.
discount_value
Розмір знижки (наприклад, discount_value = 25 або discount_value = 50.25)
customer_phone
Номер телефону покупця — необов’язково, якщо вказано інший параметр.
customer_email
Електронна адреса покупця
link_expired
Термін дії платіжного посилання — дд.мм.рррр у форматі (наприклад, 25.01.2021).
Також, Калькулятор у полі можна вказати так:
link_expired = current_date + 2 (посилання буде дійсним 2 дні до 00:00).
link_expired
Також можна вказати точний час, формат: дд.мм.рррр гг:хв (наприклад, 25.01.2021 12:23).
Також можна використовувати стандартні змінні, наприклад, встановити термін дії посилання на 30 хвилин:
time = current_time + 30 link_expired = "#{current_date} #{time}"
currency
Валюта платежу, за замовчуванням "rub".
Повний список аргументів:
rubusdeurkzt
Цей параметр має бути вказаний малими літерами.
payment_title
Назва платежу (до 127 символів). Якщо не вказано, автоматично заповнюється таким текстом:
“Оплата рахунку payment_id” (payment_id — ідентифікатор замовлення в MaviBot).
payment_description
Короткий опис платежу (до 127 символів)
locale
Мова сторінки оплати — en-US, fr-XC і т. д. відображаються у форматі. Значення за замовчуванням — ru-RU.
Повний список можна переглянути за посиланням
products_for_receipt
рядок від 50 до 4000 символів у форматі "опис замовлення - ціна - посилання на ресурс, що купується".
Наприклад:
«Курс “Ловля ляща”, ціна 4999 тенге, посилання на сторінку курсу: https://www.lovilescha.ru/courses/poimai_kilogram/"
Це обов’язковий параметр, якщо у вас немає власної онлайн-каси, він потрібен для фіскалізації платежів через Prodamus.
payment_sum
(обов’язково) сума платежу
discount_value, customer_phone, customer_email і link_expired змінні також актуальні для підписок.

Приклад реалізації. У першому блоці встановлюємо суму платежу:

На наступному кроці там, де потрібно prodamus_pay_url виводимо посилання:

prodamus_available_payment_methods змінна payment_sum визначається перед публікацією.
Можливі значення:
AC
Оплата карткою, виданою в РФ
ACkz
Оплата карткою Казахстану
ACf
Оплата картками країн СНД, окрім РФ
ACEURNMBX
Оплата карткою EUR усіх країн, окрім Росії та Білорусі
SBP
Швидкий платіж без введення даних карти. Для російських карток
QW
Qiwi wallet
PC
Юmoney
GP
Платіжний термінал
sbol
Сбербанк Онлайн
invoice
Оплата за рахунком
installment
Розстрочка через Prodamus
installment_5_21
Розстрочка на 3 місяці через Prodamus
installment_6_28
Розстрочка на 6 місяців через Prodamus
installment_10_28
Розстрочка на 10 місяців через Prodamus
installment_12_28
Розстрочка на 12 місяців через Prodamus
installment_0_0_3
Розстрочка на 3 місяці через Tinkoff
installment_0_0_4
Розстрочка на 4 місяці через Tinkoff
installment_0_0_6
Розстрочка на 6 місяців через Tinkoff
installment_0_0_10
Розстрочка на 10 місяців через Tinkoff
installment_0_0_12
Розстрочка на 12 місяців через Tinkoff
installment_0_0_24
Розстрочка на 24 місяці через Tinkoff
installment_0_0_36
Розстрочка на 36 місяців через Tinkoff
credit
Кредит через Tinkoff
vsegdada_installment_0_0_4
Розстрочка на 4 місяці через «ВсегдаДа» (не працює з available_payment_methods)
vsegdada_installment_0_0_6
Розстрочка на 6 місяців через «ВсегдаДа»
vsegdada_installment_0_0_10
Розстрочка на 10 місяців через «ВсегдаДа»
vsegdada_installment_0_0_12
Розстрочка на 12 місяців через «ВсегдаДа»
vsegdada_installment_0_0_24
Розстрочка на 24 місяці через «ВсегдаДа»
vsegdada_installment_0_0_36
Розстрочка на 36 місяців через «ВсегдаДа»
sbrf_installment_0_0_6
Розстрочка на 6 місяців через Сбербанк
sbrf_installment_0_0_10
Розстрочка на 10 місяців через Сбербанк
sbrf_installment_0_0_12
Розстрочка на 12 місяців через Сбербанк
sbrf_installment_0_0_24
Розстрочка на 24 місяці через Сбербанк
sbrf_installment_0_0_36
Розстрочка на 36 місяців через Сбербанк
otp_installment_0_0_6
Розстрочка на 6 місяців через «OTP Банк»
otp_installment_0_0_10
Розстрочка на 10 місяців через «OTP Банк»
otp_installment_0_0_12
Розстрочка на 12 місяців через «OTP Банк»
otp_installment_0_0_24
Розстрочка на 24 місяці через «OTP Банк»
otp_installment_0_0_36
Розстрочка на 36 місяців через «OTP Банк»
mts_installment_0_0_6
Розстрочка на 6 місяців через «МТС Банк»
mts_installment_0_0_10
Розстрочка на 10 місяців через «МТС Банк»
mts_installment_0_0_12
Розстрочка на 12 місяців через «МТС Банк»
mts_installment_0_0_24
Розстрочка на 24 місяці через «МТС Банк»
mts_installment_0_0_36
Розстрочка на 36 місяців через «МТС Банк»
monetaworld
Карти світових банків, окрім Росії
sbrf_bnpl
Розстрочка через Сбер
Декілька значень через вертикальну риску дозволено розділяти. Наприклад:
prodamus_currency — це ще один додатковий параметр, який дозволяє вказати суму в певній валюті.
Можливі валюти:
kzt— для тенгеeur— для євроusd— для доларів
Отже, сума, вказана в посиланні, буде у вибраній валюті.
Колбек payment_callback при отриманні currency і currency_sum потрібно звернути увагу на параметри, у яких вказані валюта та сума.
Якщо не вказано, буде перехід на сторінку без способів оплати. Додати способи оплати можна через підтримку. Підключені способи можна переглянути в налаштуваннях сторінки або на тестовому посиланні оплати.


Як обробляти результат
Успішний платіж
Важливо: Після успішної або невдалої оплати в бота надходять колбеки (callback), за допомогою яких можна визначити, чи оплата пройшла успішно.
Колбеки в системі виглядають як повідомлення від користувача, але користувач не може їх надіслати. Вони мають вигляд зв’язки секретного ключа та статусу. Наприклад:
або
Після успішної оплати prodamus_payment_completed змінна автоматично True набуває значення.
Примітка: Колбеки надходять із невеликою затримкою, тому після надсилання посилання користувачу краще надіслати повідомлення:
«Після оплати дочекайтеся успішного завершення платежу.»
Структура колбека
Для посилань, створених через кнопку Оплата або через функцію в Калькуляторі, після платежу в бота автоматично надходить колбек. Його склад:
Наприклад:
ovg58keefc— повний секретний ключ платіжної системи_success— результат обробки запиту (успішний платіж)
Практичне застосування
Успішний платіж можна обробити через умовний блок і показати користувачу відповідне повідомлення.

Тип порівняння має бути "Full match" / "Повний збіг"
Для повторної оплати обов’язково payment_sum потрібно обнулити змінну і видалити раніше створене посилання. Лише після цього payment_sum можна присвоїти нове значення змінній
Деактивація/реактивація підписки
Також у системі Prodamus є повідомлення про те, що підписку активовано або зупинено:

«Підписку видалив користувач» — якщо підписку зупинено вручну (наприклад, у разі відмови від підписки). Це повідомлення може надійти ще до завершення поточного оплаченого періоду. Дії залежать від вашого рішення: ігнорувати, взяти під контроль або спробувати повернути користувача.
«Підписку повторно активував користувач» — підписку відновлено. Це повідомлення може надійти, якщо користувач відновить підписку до завершення поточного оплаченого періоду. Дії залежать від вашого рішення: ігнорувати або прибрати з моніторингу.
«Деактивація підписки» — якщо підписку зупинено після кількох невдалих платежів.
Збереження значень із колбека
Після повідомлення про успішну оплату payment_callback у змінну записується колбек від Prodamus, у якому містяться всі дані про платіж. Ці дані можна зберігати та використовувати так, як вам потрібно.
Приклад колбека:
Під час створення посилання product_name і payment_description можна вказувати змінні. Тоді при надходженні колбека їх можна отримати так:

Увага: payment_sum у змінну буде записано останнє значення, яке після необов’язкових змінних розташоване: payment_description, product_name.
Суму можна отримати так:
Доступні колбеки
Окрім основних колбеків про успішну оплату, у чат надходитимуть повідомлення, які не бачить користувач:
колбеки
Підписник деактивував підписку (докладніше тут)
Підписник реактивував підписку (докладніше тут)
Підписку завершено
Невдала оплата — примітка з поясненням (на скриншоті вище)
Повідомлення про майбутнє списання — дата і час майбутнього списання
Заявка на розстрочку зі статусом
Приклади колбеків у діалозі з клієнтом
Підписник деактивував підписку
Підписник реактивував підписку
Підписку завершено
Невдала оплата — недостатньо коштів.
Невдала оплата — термін дії картки закінчився.
Невдала оплата — перевищено ліміт по картці.
Невдала оплата — картку втрачено
Невдала оплата — системна помилка
Невдала оплата — операцію відхилено. Зверніться до банку, який випустив картку.
Невдала оплата — відмова в проведенні операції банком-емітентом.
Невдала оплата — відмова в проведенні операції банком.
Повідомлення про майбутнє списання — дд.мм.рррр гг:хх
Заявку на розстрочку схвалено
Заявку на розстрочку скасовано
Заявку на розстрочку відхилено
За бажанням можна налаштувати надсилання користувачу будь-яких повідомлень. Наприклад, надсилати повідомлення в разі невдалої автоматичної оплати.
Можна налаштувати блоки відповіді на повідомлення про невдалу оплату за конкретною причиною так:

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

У всіх колбеках, якщо в тексті «Платіж не пройшов» є це слово, користувачу буде надіслано повідомлення з текстом, який ви вкажете.
Як зробити оплату за підпискою
Як створити підписку
Щоб створити підписку, спочатку потрібно підписний товар створити. Повна інструкція: Як створити та налаштувати підписку
Потім з підписного товару копіюємо ID Наприклад, нижче показано, де його взяти:
Щоб створити посилання на оплату підписки, prodamus_subscription у змінну потрібно встановити ID ID підписного товару. Після цього автоматично prodamus_pay_url з’являється змінна.

Переклад українською мовою (діловий стиль):
prodamus_pay_url змінну можна вивести на екран як посилання або розмістити на кнопці з текстом «Сплатити». Приклад посилання: https://payform.kz/7p3JR8/
Обробка результату відбувається так само, як і в одноразовому платежі (як ви прочитали вище).
Після успішної підписки користувачу додається введений під час оплати customer_phone змінна. Номер телефону потрібен для керування підпискою.
Якщо customer_email не вказано, для керування підпискою customer_phone обов’язково.
get_prodamus_subscription_url як створити посилання на підписку за допомогою функції
get_prodamus_subscription_url як створити посилання на підписку за допомогою функціїРозгляньмо інший спосіб створення посилання на оплату підписки на товар.
У кабінеті Prodamus створюється підписний товар. Повну інструкцію можна переглянути за посиланням: Як створити та налаштувати підписку
Потім з підписного товару копіюємо ID Наприклад, нижче показано, де його взяти:
Для отримання посилання на оплату товару за підпискою в Калькуляторі вказуємо функцію
get_prodamus_subscription_url(subscription_id, product_name, expired, customer_phone, customer_email, discount, description, extra_params, products_for_receipt)
Приклад 1: Посилання на оплату товару за підпискою

link = get_prodamus_subscription_url(subscription_id, product_name, expired, customer_phone, customer_email, discount, description, extra_params, products_for_receipt)
Параметри функції:
subscription_id
ID підписного продукту — можна скопіювати з кабінету Prodamus (обов’язковий параметр).
product_name
Назва продукту (обов’язковий параметр).
expired
Термін дії платіжного посилання — у форматі дд.мм.рррр (наприклад, 25.01.2021).
Також можна вказати у полі «Калькулятор»:
expired параметр можна також вказати з точним часом, формат: дд.мм.рррр гг:хх (наприклад, 25.01.2021 12:23).
Також можна використовувати стандартні змінні, наприклад, встановити час дії посилання на 30 хвилин:
Якщо хочете пропустити цей параметр, замість нього вкажіть одинарні або подвійні лапки, або None значення.
customer_phone
Номер телефону платника — необов’язково, якщо customer_email якщо задано параметр.
Якщо хочете пропустити цей параметр, замість нього вкажіть одинарні або подвійні лапки.
customer_email
Email платника — необов’язково, якщо customer_phone якщо задано параметр.
Якщо хочете пропустити цей параметр, замість нього вкажіть одинарні або подвійні лапки.
discount
Розмір знижки — параметр можна вказати як ціле число або десяткове число: 25 або 63.5.
Якщо хочете пропустити цей параметр, замість нього вкажіть одинарні або подвійні лапки.
description
Опис товару — якщо не вказано, за замовчуванням 'Оплата рахунку order_id' заповнюється.
Якщо хочете пропустити цей параметр, замість нього вкажіть одинарні або подвійні лапки.
extra_params
Додаткові параметри, це параметри, яких немає в цій функції. Можливі додаткові параметри можна переглянути в документації API платіжної системи: Керівництво з Prodamus REST API
Приклад:
Якщо хочете пропустити цей параметр, замість нього вкажіть одинарні/подвійні лапки або None значення.
products_for_receipt
рядок із 50–4000 символів, формат: "опис замовлення - ціна - посилання на ресурс, що купується"
Приклад: Курс «Ловля ляща», ціна 4999 тенге, посилання на сторінку курсу: https://www.lovilescha.ru/courses/poimai_kilogram/.
Цей параметр обов’язковий, якщо у вас немає власної онлайн-каси, він потрібен для фіскалізації платежів через Prodamus.
extra_params = {"payments_limit": "3"}
products_for_receipt = "Курс ‘Ловля ляща’, вартість щомісячної підписки 2000 тенге, посилання на сторінку курсу: https://www.lovilescha.ru/courses/poimai_kilogram/"
link_prodamus_sub = get_prodamus_subscription_url(618988, 'Курс ‘Ловля ляща’', '27.03.2023 17:02', '79167777771', 'mail@mail.com', 20, 'Найкращий курс на ринку', extra_params, products_for_receipt)
Якщо в блоці виникла помилка під час отримання посилання через кілька функцій, значення помилки error_payment_func у змінну запишеться.
Помилка записується в Калькуляторі за останньою функцією.
Як керувати статусом підписки
Цей спосіб призначений лише для реальних підписок, у демо-режимі прив’язка картки відсутня.
Для керування підпискою обов’язково customer_phone або customer_email потрібно передати один із параметрів.
Щоб відписати користувача від підписки, потрібно створити блок і викликати таку функцію: delete_subscription_prodamus
Приклад параметрів:
url– URL платіжної форми, отриманий із налаштувань у конструкторіsecret_key– секретний ключ, отриманий із налаштуваньid_subscription– ID товару підпискиcustomer_phone– телефон власника підпискиswitcher– керування підпискою:0– зупинка підписки,1– повторна активація підпискиprofile_id– ID профілю в системі Продамус
Примітка:
Якщо передано ID профілю, він profile_id зберігається у змінній.
profile_id функцію customer_phone або customer_email можна передати та зупинити підписку.
Приклад: налаштування блоків підписки

Зверніть увагу, функція status повертає status, його можна зберегти та обробити на власний розсуд. У разі успішної зупинки або повторної активації підписки status = ok буде.
Функція для керування підпискою
prodamus_subscription_switch_status(subscription_id, switcher, customer_phone, customer_email, profile_id) Параметри:
subscription_id – ID підписки
switcher – керування підпискою: 0 – зупинити підписку, 1 – повторно активувати підписку
customer_phone – телефон власника підписки; необов'язково, якщо вказано customer_email
customer_email – email-адреса власника підписки; необов'язково, якщо вказано customer_phone
profile_id – ID профілю в системі Продамус

Переклад українською мовою (діловий стиль):
Приклад 1: customer_phone параметр задано, customer_email пропущено:
Приклад 2: customer_email параметр задано, customer_phone пропущено:
Якщо всі операції успішно завершено, ok повертає його або, у разі помилки, її опис.
Керування знижками в підписці
Ця функція встановлює розмір знижки на наступні платежі за підпискою. Знижка може бути обмеженою або необмеженою за кількістю платежів.
Параметри:
subscription_id– ID підпискиdiscount– десяткове число з точністю до двох знаків після крапки; значення має бути більшим за нуль і не перевищувати базову вартість підпискиcustomer_phone– номер телефону клієнта, формат:+79999999999(необов'язково, якщоcustomer_emailзмінна присутня; вона з'являється після першого платежу)num– кількість платежів, до яких застосовуватиметься знижка (необов'язково; якщо не вказано, знижка застосовується до всіх платежів)profile_id– ID профілю в системі Продамус
Якщо запит виконано успішно, функція 'ok' повертає його; якщо сталася помилка, функція повертає її опис.
Розмір знижки та інтервал перезаписуються лише у разі повторного виклику функції з новими значеннями!
Приклади:
1. Надати знижку 1₽ на всі наступні автоплатежі (номер телефону не вказується, оскільки він автоматично customer_phone береться зі змінної; сума знижки за замовчуванням застосовується на весь строк підписки):
2. Приклад надання знижки 2₽ на наступні 3 платежі (номер телефону передається в порожніх лапках, оскільки він автоматично customer_phone береться зі змінної):
3. Приклад указання знижки десятковим дробом (роздільник — крапка, значення вказуються без лапок), номер телефону можна передати через змінну.

r = prodamus_subscription_discount(#{prodamus_subscription}, 10.25, #{customer_phone}, 3)
Як встановити дату наступного платежу за підпискою
За допомогою цього методу можна перенести дату наступного платежу за підпискою. Дату можна переносити лише від поточно встановленої дати наступного платежу «у майбутнє» , щоб збільшити строк участі в клубі.
Наприклад, це можна використати як бонус для підписників.
Для цього потрібно використати таку функцію:
Параметри:
subscription_id– ідентифікатор підпискиdate– дата у форматі дд.мм.рррр гг:хх або дд.мм.рррр; якщо вказано лише дд.мм.рррр, час буде 00:00customer_phone– необов'язково; якщо не вказано,customer_phoneбереться зі змінної; якщо не знайдено, функція не працюватимеprofile_id– ID профілю в системі Продамус
Як передати параметри до Prodamus
Щоб передати потрібні параметри (наприклад, дату початку підписки, вимкнення розстрочки тощо) до системи Prodamus, до назви змінної prodamus_ додайте префікс.
Після цього, коли створюватимете платіжне посилання, параметри з цієї змінної автоматично будуть передані до платіжної системи.
Як протестувати платіж
Тестуємо лише платіж!
Щоб під час налаштування інтеграції та платіжних воронок з вашого рахунку не списувалися кошти, можна використовувати тестові картки.
Спочатку переведіть вашу платіжну сторінку у ДЕМО-режим ⤵ Не забудьте натиснути кнопку «Зберегти».

Для здійснення тестового платежу можна використовувати тестові рахунки.
Тестові картки Сбербанку:
МИР Номер картки: 2202 2050 0001 2424 Термін дії: 05/35 Код перевірки на звороті (CVV): 669
MasterCard Номер картки: 5469 9801 0004 8525 Термін дії: 05/26 Код перевірки на звороті (CVV): 041 Код перевірки 3-D Secure: 111111
Visa Номер картки: 4006 8009 0096 2514 Термін дії: 05/26 Код перевірки на звороті (CVV): 941 Код перевірки 3-D Secure: 111111
❗️Під час оплати через тестові рахунки всі налаштовані воронки та інтеграції працюють так само, як і при звичайній оплаті❗️
Форма перевірена
Форма для приймання реальних платежів у робочий режим потрібно перевести. Тобто перемикач демо-режиму світло-червоний стан.
Останнє оновлення