كيفية ربط نظام الدفع

نظام الدفع مدمج في تيليجرام.

لإجراء المدفوعات داخل المراسلة، تحتاج إلى:

  • ربط نظام الدفع بالبوت في بوت BotFather

  • الانتقال إلى إعدادات البوت المطلوب واختيار المدفوعات من القائمة

  • اتباع التعليمات لربط نظام دفع متاح ونسخ الرمز المميز الصادر

                                         ![](https://docs.mavibot.ai/files/1PhZiQDP4PjOrrnX1v6g)<br>
    

كيفية إصدار فاتورة للعميل

لإرسال فاتورة إلى تيليجرام، استخدم الطريقة التالية:

tg_send_invoice(provider_token, platform_id, title, description, currency, prices, photo_url, payload, protect_content, disable_notification, need_name, phone_number, need_email, reply_to_message_id, reply_markup, reply_id) - المعلمات المطلوبة محددة بالخط العريض

provider_token - الرمز المميز المستلم من BotFather بعد ربط نظام الدفع

platform_id - المستلم - معرف المستخدم أو المجموعة أو القناة

title - عنوان العنصر، من 1 إلى 32 حرفًا

description - وصف السلعة، من 1 إلى 255 حرفًا

currency - عملة الدفع (RUB, USD, UAH وغيرها https://core.telegram.org/bots/payments#supported-currencies)

payload - الجزء الأول من بيانات الدفع، افتراضيًا tg_payment

prices - تفصيل السعر (الوصف أدناه)

photo_url - رابط صورة المنتج

disable_notification - 1 للإرسال مع إشعار، 0 بدون إشعار

protect_content - 1 لحماية النسخ واللقطات، 0 بدون حماية

need_name - 1 إذا كنت بحاجة إلى اسم المستخدم الكامل لإتمام الطلب، 0 بدون طلب الاسم

need_phone_number - 1 إذا كنت بحاجة إلى رقم هاتف المستخدم لإتمام الطلب، 0 بدون طلب الرقم

need_email - 1 إذا كنت بحاجة إلى عنوان البريد الإلكتروني للمستخدم لإتمام الطلب، 0 بدون طلب البريد

reply_to_message_id - معرف الرسالة التي نرد عليها، '' تعني عدم الرد

reply_markup - لوحة المفاتيح، يجب أن يكون الزر الأول من نوع الدفع

إذا تم تحديد أحد المعلمات need_name أو need_phone_number أو need_email، فسيطلب النظام البيانات من المستخدم قبل الدفع ويحفظها في متغيرات العميل إذا نجح الدفع. في لقطة الشاشة أدناه، طلب إدخال جميع البيانات:

prices - مصفوفة من المصفوفات تحتوي على بيانات تكلفة السلع والخدمات الإضافية (التوصيل، التغليف، إلخ). تُعرض على صفحة الدفع. يجب تحديد المبلغ إما كعدد صحيح مثل 125 أو ككسر عشري باستخدام النقطة مثل 120.25 مثال: [["سلعة", 2000], ["ضريبة القيمة المضافة", 20.75], ["تغليف", 100]]

رد الاتصال عند الدفع

بعد الدفع الناجح، سيصل رد اتصال في الدردشة مع المستخدم بالشكل التالي:

phone_best 4737685 2120.75 UAH 1955518436

حيث phone_best - payload - من طلب إنشاء الفاتورة 473737685 - معرف الدردشة التي أُرسلت إليها الفاتورة أصلاً 2120.75 - المبلغ الكامل للدفع UAH - العملة 1955518436 - معرف الدفع في نظام التاجر

أيضًا، إذا طلبت الاسم و/أو الهاتف و/أو البريد الإلكتروني، سيسجل العميل المتغيرات التالية:

tg_payment_name و tg_payment_phone و tg_payment_email

في حالة النجاح، سيتم إرسال رد الاتصال إلى الرسائل الشخصية للمستخدم. للقيام بذلك، يجب أن يكون العميل والبوت متعاونين قبل الدفع (يجب أن يكون العميل مشتركًا في البوت)!

بعد استلام إشعار الدفع، سيتم تأكيد الدفع تلقائيًا عبر answerPreCheckoutQuery https://core.telegram.org/bots/api#answerprecheckoutquery.

أمثلة

prices = [["منتج", 2000], ["ضريبة القيمة المضافة", 20.75], ["حزمة", 100]]
result = tg_send_invoice('632593626:TEST:sandbox_i38014109763', platform_id, 'phoneW-200', 'أفضل موديل في السوق', 'UAH', prices, 'https://images11.popmeh.ru/cropped.jpg', 'phone_best', 0, 0, 1, 0, 1)

مثال مع الحد الأدنى من المعلمات

prices = [["منتج رائع", 20000]] result = tg_send_invoice('632593626:TEST:sandbox_i38014109763', platform_id, 'أفضل بوت على الإطلاق!',`` 'دورة رائعة! كن الأفضل!', 'UAH', prices)

مثال مع لوحة مفاتيح

prices = [["منتج", 2000], ["ضريبة القيمة المضافة", 20.75], ["حزمة", 100]] result = tg_send_invoice('632593626:TEST:sandbox_i38014109763', platform_id, 'هاتف W-200', 'أفضل موديل في السوق', 'UAH', prices, 'https://helpix.ru/news/200405/181746/gf200_2.jpg', 'phone_best', 0, 0, 1, 1, 1, '', '{"inline_keyboard": [[{"text":"ادفع", "pay":"True"}], [{"text":"زر إضافي", "callback_data": "زر إضافي"}]]}')