كيفية إضافة Prodamus
لإضافة Prodamus، ستحتاج إلى عنوان URL لنموذج الدفع ومفتاح سري.
يتم تقديم عنوان URL لنموذج الدفع بعد التسجيل، ومثاله: demo.payform.ru.
يمكن الحصول على المفتاح السري من الحساب الشخصي، حيث يجب أيضًا تحديد عنوان 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.
عند الانتقال إلى صفحة الطلب، يتم عرض معلومات حول المنتج وسعره مسبقًا، ويقوم العميل فقط بإدخال بيانات الاتصال الخاصة به.
إذا تم تحديد البريد الإلكتروني و/أو هاتف المستخدم في إعدادات الزر، فسيتم عرض بيانات الاتصال الخاصة بالدافع ومعلومات حول المنتج وسعره على صفحة الطلب.

حقل «النص» – يتم عرض هذا النص في الرسالة على الزر الذي يحتوي على رابط الدفع.
حقل «الوظيفة» – لإنشاء زر يؤدي إلى رابط الدفع، نختار وظيفة «دفع».
حقل «نظام الدفع» – يتم عرض أنظمة الدفع المتصلة بالمشروع في القائمة.
إذا لم يتم توصيل أي نظام دفع بالمشروع، فلن يكون هذا النوع من الأزرار متاحًا.
حقل «اسم المنتج» (إلزامي) – يجب تحديد اسم دقيق للمنتج. على سبيل المثال: ليس «هاتف»، بل «هاتف Xiaomi، موديل …».
ملاحظة: لا يمكن استخدام علامات الاقتباس المزدوجة في اسم المنتج؛ قم بإزالتها أو استبدالها بعلامات اقتباس مفردة.
حقل «المبلغ» (إلزامي) – نحدد سعر المنتج.
قائمة «معلومات إضافية» – تفتح حقولًا إضافية لإنشاء رابط عند النقر على هذا الزر:
- وصف الطلب
- الخصم بالروبل
- متغير البريد الإلكتروني للمشتري
- متغير رقم هاتف المشتري
- مدة صلاحية الرابط
- معرف المنتج للاشتراك (لإجراء الدفع التلقائي)
- المحتوى المدفوع
خانة الاختيار «إعلام عند النقر» – يمكن تحديدها لتتبع الانتقال إلى رابط الدفع. في هذه الحالة، عند النقر على الزر، ستصل رسالة إلى حوار العميل في Salebot تفيد بأنه تم الانتقال إلى الرابط.

يمكن تكوين منطق العمل الإضافي للبوت بناءً على هذه الرسالة.
تدعم العديد من أنظمة الدفع ماكينات الصراف الآلي السحابية، المطلوبة وفقًا لمتطلبات 54-FZ.
اقرأ ميزات إعداد الإيصالات على موقع نظام الدفع المحدد، لتجنب المشاكل مع مفتشية الضرائب.
هذا هو شكل صفحة الدفع التي تفتح عند الانتقال عبر الرابط في زر «دفع»:

إعدادات إضافية لإنشاء رابط للدفع

حقل «وصف الطلب» – يتم عرض المعلومات المدخلة في هذا الحقل في حقل بيانات إضافية على صفحة الدفع.
حقل «الخصم» – هنا يمكنك تحديد مبلغ الخصم بالروبل أو بالروبل والكوبيك. للتعيين بالكوبيك، استخدم النقطة كفاصل: 50.99
على صفحة الدفع، في حقل المبلغ المستحق، يتم عرض الخصم مع مراعاته، بينما يتم شطب سعر المنتج الأساسي.
حقل «متغير البريد الإلكتروني للمشتري» (اختياري، إذا تم تقديم رقم الهاتف) – هنا يتم تحديد البريد الإلكتروني للمستخدم (العميل). يمكن أيضًا استخدام متغير يتم فيه تخزين البريد الإلكتروني، على سبيل المثال: #{email}
حقل «متغير رقم هاتف المشتري» (اختياري، إذا تم تقديم البريد الإلكتروني) – هنا يمكنك استخدام متغير يتم فيه تخزين رقم هاتف المشتري، بالتنسيق: 79000000000، على سبيل المثال: #{phone}
يجب أن يكون البريد الإلكتروني و/أو الهاتف موجودين إلزاميًا.
حقل «مدة صلاحية الرابط» – يمكن تحديد التاريخ بتنسيق dd.mm.yyyy hh:mm (على سبيل المثال، 25.01.2021 11:00) أو تعيين تاريخ انتهاء صلاحية الرابط عبر متغير. على سبيل المثال: #{link_expired}
حقل «معرف المنتج للاشتراك» – لإجراء الدفع التلقائي، قم بتقديم قيمة معرف المنتج. لإنشاء اشتراك، يجب إنشاء منتج اشتراك.
الدليل الكامل: إنشاء وتهيئة اشتراكات Prodamus
إذا تم تقديم معرف المنتج للاشتراك، فلن يتم أخذ مبلغ الدفع في الاعتبار. يتم أخذ معلومات المنتج من بطاقة المنتج في لوحة تحكم Prodamus.
سيكون رقم الهاتف المحدد في الدفع ضروريًا لإدارة الاشتراك.
إذا تم تقديم معرف المنتج للاشتراك، فسيتم تقديم معرف هذا المنتج في رد الاتصال عند نجاح الدفع.
حقل «المحتوى المدفوع» (إلزامي مشروط) – هذه البيانات ضرورية لفرض الضرائب على الدفع عبر Prodamus، إذا لم يكن لديك ماكينة صراف آلي خاصة بك. في هذا الحقل، يتم تحديد وصف الشراء والسعر ورابط المحتوى.
على سبيل المثال: دورة ‘تضفير الضفائر’، السعر 3000 روبل، رابط صفحة الدورة: https://nbu.su/krasota/master-po-pleteniyu-kos/?yclid=13602995275739430911
زر مع وظيفة «دفع»
إذا قمت بتحديد مدة صلاحية الرابط، فسيحدث ما يلي:
إذا طلب المستخدم رابط الدفع خلال فترة صلاحيته (أي أن وقت الرابط لم ينته بعد) وكان موجودًا في الحوار، فلن يكون من الممكن إجراء الدفع، وسيتم عرض الرسالة التالية له:

يجب أن تكون مدة صلاحية الرابط بعد التاريخ الحالي، وإلا فلن يتمكن العميل من الدفع باستخدام هذا الرابط.
2. عندما يطلب المستخدم الرابط، إذا لم يكن نشطًا حاليًا
في هذه الحالة، لن يظهر الزر ببساطة. في متغيرات العميل، سيظهر متغير "error_payment_button"، وستكون قيمته كما يلي:
&#xNAN;"خطأ: يجب أن تكون مدة صلاحية الرابط بعد التاريخ الحالي".
لكي يتمكن المستخدم من إجراء الدفع بشكل صحيح، يُوصى بمعالجة إضافية لمثل هذه الحالة.
قم بإنشاء كتلة شرطية مثل:
إذا وصلت الرسالة التالية:
error_payment_button == "خطأ: يجب أن تكون مدة صلاحية الرابط بعد التاريخ الحالي"
فعندئذ اعرض النص التالي:
&#xNAN;"عذرًا، لم تتمكن من الدفع في الوقت المحدد، أصبح رابط الدفع غير صالح".


متغيرات العميل التي يتم إنشاؤها تلقائيًا عند استخدام زر مع وظيفة «دفع»
في اللحظة التي يتلقى فيها المستخدم كتلة تحتوي على زر «دفع»، يتم إنشاء متغيرات تلقائيًا للعميل:
متغير العميل الخدمي __payments – يخزن هذا المتغير المبلغ ومعرف الرابط الذي تم إنشاؤه وهو ضروري لتحديد الخطاف القادم من نظام الدفع.
لا يمكن حذف أو تغيير متغير العميل الخدمي
__payments!
متغير العميل error_payment_button يتم إنشاؤه تلقائيًا في حالة حدوث خطأ عند إنشاء الزر.
يتم كتابة نص الخطأ أو استجابة الخطأ من نظام الدفع في هذا المتغير.
تصبح قيم المتغيرات سارية عند الانتقال إلى الكتلة التالية.
كيفية معالجة النتيجة
الدفع الناجح
بعد إجراء الدفع بنجاح، يصل رد اتصال تلقائيًا إلى البوت، يتكون من أول 10 أحرف من المفتاح السري لنظام الدفع، وكلمة _success ومبلغ الدفع.
لاستخدامه في إعداد المخطط، يكفي نسخه.
على سبيل المثال: ovg58keefc_success 44، حيث:
-
ovg58keefc– أول 10 أحرف من المفتاح السري لنظام الدفع -
_success– نتيجة معالجة الطلب (دفع ناجح) -
44– مبلغ الدفع
لا يرى المستخدم ردود الاتصال (الرسائل) القادمة من نظام الدفع. يتم عرضها فقط في علامة التبويب «العملاء» وتكون مرئية للمشغل.
مثال على الاستخدام:
الخطوة 1. نضيف أزرارًا بوظيفة «دفع» إلى الكتلة «مع زر الدفع».
الخطوة 2. في حقل شرط الاتصال الذي ينتقل من هذه الكتلة إلى كتلة «الدفع الناجح»، نحدد رد الاتصال.
وبالمثل، إذا تم تحديد رد اتصال الدفع الناجح في شرط كتلة «الشرط الأولي»، فسيتم العمل بشكل مماثل.
مهم: اختر «مطابقة تامة» أو «بناءً على وجود الكلمات الرئيسية».
❗️إذا قررت التحقق من الدفع بدقة وفقًا للشرط المحدد في السهم، ففكر جيدًا في منطق مخططك. إذا غادر العميل الكتلة التي يمر بها وفقًا لشرط رد الاتصال، فلن يحدث الانتقال إلى الكتلة. من الأفضل استخدام طريقة التحقق هذه فقط إذا لم يغير العميل موقعه في القمع.
في المخططات التي يتحرك فيها العميل بين الكتل، يكون استخدام خيار تحديد رد الاتصال في كتلة «الشرط الأولي» أكثر فعالية.

الدفع الناجح للمنتجات ذات الاشتراك التلقائي
بعد إجراء الدفع بنجاح، يصل رد اتصال تلقائيًا إلى البوت، يتكون من أول 10 أحرف من المفتاح السري لنظام الدفع، وكلمة _success ومعرف منتج الاشتراك.
على سبيل المثال: 214009eefc_success 618117، حيث:
-
009eefc– أول 10 أحرف من المفتاح السري لنظام الدفع -
_success– نتيجة معالجة الطلب (دفع ناجح) -
618117– معرف منتج الاشتراك

الدفع الخاطئ
في حالة حدوث خطأ في إجراء الدفع، يصل رد اتصال تلقائيًا إلى البوت، يتكون من أول 10 أحرف من المفتاح السري لنظام الدفع، وكلمة _fail ومبلغ الدفع.
على سبيل المثال: ovg58keefc_fail 44، حيث:
-
ovg58keefc– أول 10 أحرف من المفتاح السري لنظام الدفع -
_fail– نتيجة معالجة الطلب (لم يتم تنفيذ الدفع أو حدث خطأ) -
44– مبلغ الدفع
هذا يعتمد على نظام الدفع. لا ترسل جميع أنظمة الدفع رد اتصال حول خطأ الدفع.
إذا كان المبلغ المحدد في إعدادات الزر يختلف عن المبلغ الذي دفعه العميل، يصل رد اتصال تلقائيًا إلى البوت. يتكون من أول 10 أحرف من المفتاح السري لنظام الدفع، وكلمة _different_amounts ومعرف الدفع الفريد.
Мысалы: ovg58keefc_different_amounts 123456, мұндағы:
-
ovg58keefc– төлем жүйесінің құпия кілтінің алғашқы 10 символы -
_different_amounts– сұраныстың өңделу нәтижесі (төлем сомасы сілтемедегі сомадан өзгеше) -
123456– төлемнің бірегей ID-сі
Калькулятордағы 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 |
Төлем сілтемесінің жарамдылық уақыты – Нақты уақытты көрсету де мүмкін: Стандартты айнымалыларды да қолдануға болады, мысалы, сілтеменің жарамдылығын 30 минутқа орнату:
Егер бұл параметрді өткізіп жібергіңіз келсе, орнына бір тырнақша, қос тырнақша немесе |
customer_phone |
Сатып алушының телефон нөмірі – міндетті емес, егер customer_email параметрі берілсе.Осы параметрді өткізіп жібергіңіз келсе, орнына бір тырнақша немесе қос тырнақша беруге болады. |
customer_email |
Сатып алушының Email мекенжайы – міндетті емес, егер customer_phone параметрі берілсе.Осы параметрді өткізіп жібергіңіз келсе, орнына бір тырнақша немесе қос тырнақша беруге болады. |
discount |
Жеңілдік мөлшері – параметрді бүтін сан немесе нүктесі бар сан ретінде беруге болады: 25 немесе 63.5.Бұл параметрді өткізіп жібергіңіз келсе, орнына бір тырнақша немесе қос тырнақша беруге болады. |
description |
Тауар сипаттамасы (егер көрсетілмесе, автоматты түрде 'Оплата счета order_id' толтырылады).Осы параметрді өткізіп жібергіңіз келсе, орнына бір тырнақша немесе қос тырнақша беруге болады. |
extra_params |
Қосымша параметрлер, осы функцияда жоқ параметрлер. Мысалы:
Бұл параметрді өткізіп жібергіңіз келсе, орнына бір тырнақша/қос тырнақша немесе |
products_for_receipt |
50-тен 4000 символға дейінгі жол форматында Бұл параметр міндетті, егер сізде өзіңіздің онлайн кассаңыз болмаса, 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_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 | Төлем сілтемесінің жарамдылық уақыты – |
| link_expired | Сонымен қатар, нақты уақытты көрсетуге болады, формат: |
| currency |
Төлем валютасы, әдепкі бойынша
Бұл параметр кіші әріптермен берілуі керек. |
| payment_title | Төлем тақырыбы (127 символға дейін). Егер көрсетілмесе, автоматты түрде келесі мәтінмен толтырылады: |
| payment_description | Төлемнің қысқаша сипаттамасы (127 символға дейін) |
| locale | Төлем бетінің тілі – |
| products_for_receipt |
50-тен 4000 символға дейінгі жол форматында Бұл міндетті параметр, егер сізде өзіңіздің онлайн кассаңыз болмаса, 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 | YooMoney |
| 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 | التقسيط عبر “VsegdaDa” لمدة 4 أشهر (لا يعمل مع available_payment_methods) |
| vsegdada_installment_0_0_6 | التقسيط عبر “VsegdaDa” لمدة 6 أشهر |
| vsegdada_installment_0_0_10 | التقسيط عبر “VsegdaDa” لمدة 10 أشهر |
| vsegdada_installment_0_0_12 | التقسيط عبر “VsegdaDa” لمدة 12 شهرًا |
| vsegdada_installment_0_0_24 | التقسيط عبر “VsegdaDa” لمدة 24 شهرًا |
| vsegdada_installment_0_0_36 | التقسيط عبر “VsegdaDa” لمدة 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 | التقسيط عبر “بنك MTS” لمدة 6 أشهر |
| mts_installment_0_0_10 | التقسيط عبر “بنك MTS” لمدة 10 أشهر |
| mts_installment_0_0_12 | التقسيط عبر “بنك MTS” لمدة 12 شهرًا |
| mts_installment_0_0_24 | التقسيط عبر “بنك MTS” لمدة 24 شهرًا |
| mts_installment_0_0_36 | التقسيط عبر “بنك MTS” لمدة 36 شهرًا |
| monetaworld | بطاقات البنوك العالمية، باستثناء روسيا |
| sbrf_bnpl | الدفع المؤجل عبر سبير |
يُسمح بفصل عدة قيم بخط عمودي.
مثال:
prodamus_available_payment_methods = "AC|PC|QW"
prodamus_currency – هذه معلمة إضافية أخرى تسمح بعرض المبلغ بعملة معينة.
العملات الممكنة:
-
kzt– للتنغي -
eur– لليورو -
usd– للدولار
وبالتالي، سيكون المبلغ المشار إليه في الرابط بالعملة المختارة.
عند استلام رد الاتصال payment_callback يجب الانتباه إلى المعلمتين currency و currency_sum، حيث يتم تحديد العملة والمبلغ.
إذا لم يتم تحديدها، فسيتم الانتقال إلى صفحة بدون طرق دفع.
يمكن إضافة طرق الدفع عبر الدعم. يمكن اختبار الطرق المضافة من إعدادات الصفحة أو عن طريق إنشاء رابط للدفع.


كيفية معالجة النتيجة
الدفع الناجح
هام: بعد الدفع الناجح أو الفاشل، تصل ردود اتصال (callbacks) إلى البوت، والتي يمكنك من خلالها تحديد ما إذا كان الدفع قد تم بنجاح.
تبدو ردود الاتصال في النظام مثل الرسائل الواردة من المستخدم، لكن لا يمكن للمستخدم إرسالها. تكون على شكل مزيج من المفتاح السري والحالة. على سبيل المثال:
453e8fba8b7cef9ce58dc6e18e25b39ad5a05748175a3f205f2b084acbfc3b66_success
أو
453e8fba8b7cef9ce58dc6e18e25b39ad5a05748175a3f205f2b084acbfc3b66_fail
بعد الدفع الناجح، يأخذ المتغير prodamus_payment_completed القيمة True تلقائيًا.
ملاحظة: تصل ردود الاتصال مع تأخير بسيط، لذا يُنصح بإرسال رسالة للمستخدم بعد إرسال الرابط:
"بعد إتمام الدفع، انتظر تأكيد نجاح الدفع."
هيكل رد الاتصال
بالنسبة للروابط التي تم إنشاؤها عبر زر الدفع أو وظيفة في الآلة الحاسبة، يصل رد اتصال تلقائيًا إلى البوت بعد الدفع. يتكون من:
<مفتاح_سري>_success <مبلغ_الدفع>
مثال:
ovg58keefc_success
-
ovg58keefc– المفتاح السري الكامل لنظام الدفع -
_success– نتيجة معالجة الطلب (دفع ناجح)
التطبيق العملي
يمكن معالجة الدفع الناجح عبر كتلة شرطية وعرض الرسالة المناسبة للمستخدم.

يجب أن يكون نوع المقارنة "Full match" / "مطابقة تامة"
لإعادة الدفع، يجب بالضرورة تعيين المتغير payment_sum إلى الصفر وحذف الرابط الذي تم إنشاؤه سابقًا. بعد ذلك فقط يمكن تعيين قيمة جديدة للمتغير payment_sum والحصول على الرابط المحدث.
إلغاء تنشيط/إعادة تنشيط الاشتراك
بالإضافة إلى ذلك، توجد إشعارات في نظام Prodamus حول تفعيل أو إيقاف الاشتراك:

"المشترك ألغى الاشتراك" – إذا تم إيقاف الاشتراك يدويًا (على سبيل المثال، في حالة إلغاء الاشتراك).
قد يصل هذا الإشعار قبل انتهاء الفترة المدفوعة الحالية. يعتمد الإجراء على قرارك: تجاهل، مراقبة، أو محاولة إعادة المستخدم.
"المشترك أعاد تنشيط الاشتراك" – تم استعادة الاشتراك.
قد يصل هذا الإشعار إذا قام المستخدم باستعادة الاشتراك قبل انتهاء الفترة المدفوعة الحالية. يعتمد الإجراء على قرارك: تجاهل أو إزالة من قائمة المراقبة.
"إلغاء تنشيط الاشتراك" – في حالة إيقاف الاشتراك بعد عدة محاولات دفع فاشلة.
حفظ القيم من رد الاتصال
بعد وصول رسالة الدفع الناجح، يتم كتابة رد الاتصال من Prodamus إلى المتغير payment_callback، والذي يحتوي على جميع بيانات الدفع. يمكن حفظ هذه البيانات واستخدامها بالشكل الذي يناسبك.
مثال على رد الاتصال:
{
"date": "2021-03-30T11:44:43+03:00",
"order_id": "757679",
"order_num": "",
"domain": "demo.payform.ru",
"sum": "14.50",
"customer_phone": "+77777777777",
"customer_extra": "Товар",
"payment_type": "Пластиковая карта Visa, MasterCard, МИР",
"commission": "3.5",
"commission_sum": "0.51",
"attempt": "1",
"discount_value": "10.5",
"products[0][name]": "Доступ к обучающим материалам",
"products[0][price]": "14.50",
"products[0][quantity]": "1",
"products[0][sum]": "14.50",
"payment_status": "success",
"payment_status_description": "Успешная оплата",
"payment_init": "manual"
}
عند إنشاء الرابط، يمكنك تحديد المتغيرات product_name و payment_description. عندها، عند وصول رد الاتصال، يمكن الحصول عليها كالتالي:
product = get(payment_callback,'products[0][name]')
description = get(payment_callback,'customer_extra')

انتبه: يتم تعيين القيمة الأخيرة للمتغير payment_sum، والتي تقع بعد المتغيرات الاختيارية: payment_description، product_name.
يمكن الحصول على المبلغ كالتالي:
summa = get(payment_callback, 'sum')
ردود الاتصال المتاحة
بالإضافة إلى ردود اتصال الدفع الناجح الرئيسية، تصل رسائل غير مرئية للمستخدم في الدردشة على النحو التالي:
ردود الاتصال
- المشترك ألغى الاشتراك (مزيد من التفاصيل هنا)
- المشترك أعاد تنشيط الاشتراك (مزيد من التفاصيل هنا)
- تم إنهاء الاشتراك
- دفع غير ناجح - ملاحظة مع توضيح (في لقطة الشاشة أعلاه)
- إشعار بالخصم القادم - تاريخ ووقت الخصم القادم
- طلب تقسيط مع الحالة
أمثلة على ردود الاتصال في حوار مع العميل
- المشترك ألغى الاشتراك
- المشترك أعاد تنشيط الاشتراك
- تم إنهاء الاشتراك
- دفع غير ناجح - رصيد غير كاف.
- دفع غير ناجح - انتهت صلاحية البطاقة.
- دفع غير ناجح - تجاوز الحد المسموح به للبطاقة.
- دفع غير ناجح - البطاقة مفقودة
- دفع غير ناجح - خطأ في النظام
- دفع غير ناجح - تم رفض العملية. يرجى الاتصال بالبنك المصدر للبطاقة.
- دفع غير ناجح - رفض إجراء العملية من قبل البنك المصدر.
- دفع غير ناجح - رفض إجراء العملية من قبل البنك.
- إشعار بالخصم القادم - dd.mm.yyyy hh:mm
- تمت الموافقة على طلب التقسيط
- تم إلغاء طلب التقسيط
- تم رفض طلب التقسيط
يمكنك، حسب رغبتك، ضبط إرسال أي رسالة إلى المستخدم. على سبيل المثال، إرسال رسالة في حالة فشل الدفع التلقائي.
يمكن ضبط كتل الرد على رسالة الفشل بسبب محدد على النحو التالي:

يمكنك تكوين إرسال رسالة لجميع حالات الدفع الفاشلة، بغض النظر عن السبب، على النحو التالي:

في جميع عمليات الاسترجاع، إذا كان النص يحتوي على كلمة "الدفع فاشل"، فسيتم إرسال رسالة إلى المستخدم بالنص الذي حددته.
كيفية إجراء الدفع عن طريق الاشتراك
كيفية إنشاء اشتراك
لإنشاء اشتراك، يجب أولاً إنشاء منتج اشتراك.
الدليل الكامل: كيفية إنشاء وتهيئة اشتراك
ثم نقوم بنسخ معرّف منتج الاشتراك. على سبيل المثال، موضح أدناه من أين نحصل عليه:
لإنشاء رابط دفع الاشتراك، يجب تعيين معرّف منتج الاشتراك للمتغير prodamus_subscription. بعد ذلك، سيظهر المتغير prodamus_pay_url تلقائيًا.
يمكن عرض المتغير prodamus_pay_url على الشاشة كرابط أو وضعه في زر نصه "ادفع". مثال على الرابط: https://payform.kz/7p3JR8/
تتم معالجة النتيجة بنفس الطريقة المتبعة في الدفع لمرة واحدة (كما قرأت أعلاه).
بعد الاشتراك الناجح، سيتم إضافة المتغير customer_phone الذي أدخله المستخدم أثناء الدفع. رقم الهاتف ضروري لإدارة الاشتراك.
إذا لم يتم تقديم customer_email، فإن customer_phone إلزامي لإدارة الاشتراك.
كيفية إنشاء رابط للاشتراك باستخدام الدالة get_prodamus_subscription_url
لننظر إلى طريقة أخرى لإنشاء رابط دفع الاشتراك لمنتج.
- يتم إنشاء منتج اشتراك في لوحة تحكم Prodamus.
يمكن الاطلاع على الدليل الكامل من خلال الرابط التالي:
كيفية إنشاء وتهيئة اشتراك - ثم نقوم بنسخ معرّف منتج الاشتراك. على سبيل المثال، موضح أدناه من أين نحصل عليه:
للحصول على رابط دفع منتج عن طريق الاشتراك في الحاسبة، نحدد الدالة
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 |
معرّف منتج الاشتراك – يمكن نسخه من لوحة تحكم Prodamus (معامل إلزامي). |
product_name |
اسم المنتج (معامل إلزامي). |
expired |
مدة صلاحية رابط الدفع – بتنسيق dd.mm.yyyy (مثال: 25.01.2021). يمكن أيضًا تحديده في حقل "الحاسبة":
يمكن أيضًا تحديد المعامل يمكن أيضًا استخدام المتغيرات القياسية، على سبيل المثال، تعيين مدة صلاحية الرابط إلى 30 دقيقة:
إذا كنت ترغب في تخطي هذا المعامل، يمكنك تمرير قيمة فارغة (علامات اقتباس مفردة أو مزدوجة) أو |
customer_phone |
رقم هاتف الدافع – اختياري، إذا تم تقديم المعامل إذا كنت ترغب في تخطي هذا المعامل، قم بتمرير علامات اقتباس مفردة أو مزدوجة بدلاً منه. |
customer_email |
البريد الإلكتروني للدافع – اختياري، إذا تم تقديم المعامل إذا كنت ترغب في تخطي هذا المعامل، قم بتمرير علامات اقتباس مفردة أو مزدوجة بدلاً منه. |
discount |
مبلغ الخصم – يمكن تمرير المعامل كعدد صحيح أو عدد عشري: 25 أو 63.5. إذا كنت ترغب في تخطي هذا المعامل، قم بتمرير علامات اقتباس مفردة أو مزدوجة بدلاً منه. |
description |
وصف المنتج – إذا لم يتم تحديده، فسيتم تعبئته افتراضيًا بـ إذا كنت ترغب في تخطي هذا المعامل، قم بتمرير علامات اقتباس مفردة أو مزدوجة بدلاً منه. |
extra_params |
معاملات إضافية، وهي معاملات غير موجودة في هذه الدالة. مثال:
إذا كنت ترغب في تخطي هذا المعامل، يمكنك تمرير علامات اقتباس مفردة/مزدوجة أو قيمة |
products_for_receipt |
سلسلة نصية من 50 إلى 4000 حرف، التنسيق: مثال: هذا المعامل إلزامي، إذا لم يكن لديك ماكينة صراف آلي خاصة بك، وذلك لترقيم الفواتير عبر 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
مثال على المعاملات:
{
"customer_phone": "#{customer_phone}",
"id_subscription":"#{prodamus_subscription}",
"url":"https://demo.payform.ru/",
"secret_key":"453e8fba8b7cef9ce58dc6e18e25b39ad5a05748175a3f205f2b084acbfc3b66",
"switcher":"0",
"profile_id":"12345"
}
-
url– رابط نموذج الدفع، مأخوذ من الإعدادات في المنشئ -
secret_key– المفتاح السري المأخوذ من الإعدادات -
id_subscription– معرّف منتج الاشتراك -
customer_phone– هاتف مالك الاشتراك -
switcher– إدارة الاشتراك:0– إيقاف الاشتراك،1– إعادة تنشيط الاشتراك -
profile_id– معرّف الملف الشخصي في نظام Prodamus
ملاحظة:
إذا تم استلام معرّف الملف الشخصي، فسيتم حفظه في المتغير 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 – معرّف منتج الاشتراك
switcher – إدارة الاشتراك: 0 – إيقاف الاشتراك، 1 – إعادة تنشيط الاشتراك
customer_phone – هاتف مالك الاشتراك؛ اختياري، إذا تم تحديد customer_email
customer_email – عنوان البريد الإلكتروني لمالك الاشتراك؛ اختياري، إذا تم تحديد customer_phone
profile_id – معرّف الملف الشخصي في نظام Prodamus

مثال 1: تم تقديم المعامل customer_phone، وتم تخطي customer_email:
stat = prodamus_subscription_switch_status('618117', '0', '75431312321')
مثال 2: تم تقديم المعامل customer_email، وتم تخطي customer_phone:
stat = prodamus_subscription_switch_status('618117', '0', '', '[email protected]')
تُرجع الدالة
okإذا تمت جميع العمليات بنجاح، أو تُرجع وصف الخطأ في حالة حدوث خطأ.
إدارة الخصومات في الاشتراك
تقوم هذه الدالة بتعيين مبلغ الخصم للدفعات التالية في الاشتراك. يمكن أن يكون الخصم محدودًا أو غير محدود بعدد الدفعات.
prodamus_subscription_discount(subscription_id, discount, customer_phone, num, profile_id)
معاملاتها:
-
subscription_id– معرّف الاشتراك -
discount– رقم عشري بدقة منزلتين عشريتين بعد الفاصلة؛ يجب أن تكون قيمته أكبر من الصفر وألا تتجاوز التكلفة الأساسية للاشتراك -
customer_phone– رقم هاتف العميل، التنسيق:+79999999999(اختياري، إذا كان المتغيرcustomer_emailموجودًا؛ سيظهر بعد الدفعة الأولى) -
num– عدد الدفعات التي سيتم تطبيق الخصم عليها (اختياري؛ إذا لم يتم تحديده، سيتم تطبيق الخصم على جميع الدفعات) -
profile_id– معرّف الملف الشخصي في نظام Prodamus
إذا تم تنفيذ الطلب بنجاح، تُرجع الدالة 'ok'؛ في حالة حدوث خطأ، تُرجع الدالة وصف الخطأ.
يتم إعادة كتابة مبلغ الخصم والفاصل الزمني فقط عند استدعاء الدالة مرة أخرى بقيم جديدة!
أمثلة:
1. منح خصم قدره 1₽ على جميع الدفعات التلقائية التالية (لا يتم تحديد رقم الهاتف لأنه مأخوذ تلقائيًا من المتغير customer_phone؛ يتم تطبيق مبلغ الخصم افتراضيًا على كامل مدة الاشتراك):
r = prodamus_subscription_discount('624034', '1')
2. مثال على منح خصم قدره 2₽ على الدفعات الثلاث التالية (تم تمرير رقم الهاتف بعلامات اقتباس فارغة لأنه مأخوذ تلقائيًا من المتغير customer_phone):
r = prodamus_subscription_discount('624034', '2', '', '3')
3. مثال على تحديد الخصم بعلامة عشرية (الفاصل هو النقطة، يتم تحديد القيم بدون علامات اقتباس)، يمكن تمرير رقم الهاتف عبر متغير.

r = prodamus_subscription_discount(#{prodamus_subscription}, 10.25, #{customer_phone}, 3)
كيفية تعيين تاريخ الدفعة التالية للاشتراك
باستخدام هذه الطريقة، يمكنك تأجيل تاريخ الدفعة التالية للاشتراك. يمكن تأجيل التاريخ فقط إلى المستقبل مقارنة بتاريخ الدفعة التالية المحدد حاليًا، وبالتالي زيادة مدة المشاركة في النادي.
على سبيل المثال، يمكن استخدام هذا كمكافأة للمشتركين.
للقيام بذلك، يجب استخدام الدالة التالية:
prodamus_subscription_payment_date(subscription_id, date, customer_phone, profile_id)
المعلمات:
-
subscription_id– معرف الاشتراك -
date– تاريخ بصيغة dd.mm.yyyy hh:mm أو dd.mm.yyyy؛ إذا تم تقديم dd.mm.yyyy فقط، فسيكون الوقت 00:00 -
customer_phone– اختياري؛ إذا لم يتم تحديده، يتم أخذه من المتغيرcustomer_phone؛ إذا لم يتم العثور عليه، لن تعمل الدالة -
profile_id– معرف الملف الشخصي في نظام Prodamus
كيفية إرسال المعلمات إلى Prodamus
لإرسال المعلمات المطلوبة (مثل تاريخ بدء الاشتراك، تعطيل الدفع بالتقسيط، إلخ) إلى نظام Prodamus، أضف البادئة prodamus_ إلى اسم المتغير.
بعد ذلك، عند إنشاء رابط الدفع، سيتم إرسال المعلمات الموجودة في هذا المتغير تلقائيًا إلى نظام الدفع.
كيفية اختبار الدفع
نقوم فقط باختبار الدفع!
عند إعداد التكامل وقنوات الدفع، يمكنك استخدام بطاقات الاختبار لتجنب خصم الأموال من حسابك.
أولاً، قم بتحويل صفحة الدفع الخاصة بك إلى وضع DEMO ⤵
لا تنس الضغط على زر "حفظ".

يمكنك استخدام حسابات الاختبار لإجراء دفعة اختبارية.
بطاقات اختبار سبيربنك:
МИР
رقم البطاقة: 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
❗️عند الدفع باستخدام حسابات الاختبار، تعمل جميع قنوات الدفع والتكاملات المكونة كما في الدفع العادي❗️
تم التحقق من النموذج
لقبول المدفوعات الحقيقية، يجب تحويل النموذج إلى وضع التشغيل. أي، يجب ضبط مفتاح وضع الديمو على الحالة الحمراء المفتوحة.