Prodamus (KZ)
Продамусты қалай қосуға болады
Prodamus-ты қосу үшін сізге төлем формасының URL мекенжайы және құпия кілт қажет.
Төлем формасының URL мекенжайы тіркелгеннен кейін беріледі, оның үлгісі: demo.payform.ru.
Құпия кілтті жеке кабинеттен алуға болады, сол жерде хабарламалар (notification) жіберілетін URL мекенжайын да көрсету қажет.

Мұны қалай жасау керектігі туралы толық нұсқаулық
Хабарламаларға арналған мекенжай: 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 берілсе, сәтті төлем болған кезде колбэкте осы тауардың 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
Сатып алушының 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', '[email protected]', 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
Сатып алушының 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
Prodamus арқылы 3 айға бөліп төлеу
installment_6_28
Prodamus арқылы 6 айға бөліп төлеу
installment_10_28
Prodamus арқылы 10 айға бөліп төлеу
installment_12_28
Prodamus арқылы 12 айға бөліп төлеу
installment_0_0_3
Tinkoff арқылы 3 айға бөліп төлеу
installment_0_0_4
Tinkoff арқылы 4 айға бөліп төлеу
installment_0_0_6
Tinkoff арқылы 6 айға бөліп төлеу
installment_0_0_10
Tinkoff арқылы 10 айға бөліп төлеу
installment_0_0_12
Tinkoff арқылы 12 айға бөліп төлеу
installment_0_0_24
Tinkoff арқылы 24 айға бөліп төлеу
installment_0_0_36
Tinkoff арқылы 36 айға бөліп төлеу
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
«OTP Банкі» арқылы 6 айға бөліп төлеу
otp_installment_0_0_10
«OTP Банкі» арқылы 10 айға бөліп төлеу
otp_installment_0_0_12
«OTP Банкі» арқылы 12 айға бөліп төлеу
otp_installment_0_0_24
«OTP Банкі» арқылы 24 айға бөліп төлеу
otp_installment_0_0_36
«OTP Банкі» арқылы 36 айға бөліп төлеу
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-сін орнату қажет. Осыдан кейін автоматты түрде prodamus_pay_url айнымалысы пайда болады.

Қазақ тіліне аударма (деловой стиль):
prodamus_pay_url айнымалысын экранға сілтеме ретінде шығарып көрсетуге немесе «Төлеу» мәтіні бар батырмаға орналастыруға болады. Сілтеме мысалы: https://payform.kz/7p3JR8/
Нәтижені өңдеу біржолғы төлемдегідей жүзеге асады (жоғарыда оқығандай).
Сәтті жазылымнан кейін пайдаланушыға төлем кезінде енгізілген customer_phone айнымалысы қосылады. Телефон нөмірі жазылымды басқару үшін қажет.
Егер customer_email берілмесе, жазылымды басқару үшін customer_phone міндетті.
get_prodamus_subscription_url функциясымен жазылымға сілтеме қалай жасауға болады
get_prodamus_subscription_url функциясымен жазылымға сілтеме қалай жасауға боладыТауарға жазылым төлемінің сілтемесін құрудың басқа әдісін қарастырайық.
Продамус кабинетінен жазылымдық тауар құрылады. Толық нұсқаулықты мына сілтемеден қарауға болады: Қалай жазылым құру және баптау
Содан кейін жазылымдық тауардың 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-сі – Продамus кабинетінен көшіріп алуға болады (міндетті параметр).
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', '[email protected]', 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 = 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. Келесі 3 төлемге 2₽ жеңілдік беру мысалы (телефон нөмірі бос тырнақшамен берілген, себебі ол автоматты түрде customer_phone айнымалысынан алынады):
3. Жеңілдікті ондық бөлшекпен көрсету мысалы (бөлгіш – нүкте, мәндер дәйексөзсіз көрсетіледі), телефон нөмірін айнымалы арқылы беруге болады.

r = prodamus_subscription_discount(#{prodamus_subscription}, 10.25, #{customer_phone}, 3)
Жазылым бойынша келесі төлемнің датасын қалай орнату керек
Бұл әдіс арқылы жазылым бойынша келесі төлемнің датасын жылжытуға болады. Датаны тек қазіргі орнатылған келесі төлем датасынан «болашаққа» жылжытуға болады, осылайша клубтағы қатысу мерзімін ұлғайтуға болады.
Мысалы, бұл жазылушыларға бонус ретінде қолданылуы мүмкін.
Ол үшін келесі функцияны пайдалану қажет:
Параметрлері:
subscription_id– жазылымның идентификаторыdate– дд.мм.гггг чч:мм немесе дд.мм.гггг форматында дата; егер тек дд.мм.гггг берілсе, уақыт 00:00 боладыcustomer_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
❗️Тесттік шоттар арқылы төлем жасағанда, барлық бапталған воронкалар мен интеграциялар қалыпты төлемдегі сияқты жұмыс істейді❗️
Форма тексерілген
Нақты төлемдерді қабылдау үшін форма жұмыс режиміне ауысуы қажет. Яғни, демо режимінің ауыстырғышын ашық қызыл күйге келтіру керек.
Last updated