أهمية طرق الدفع في الهند
UPI Dominance
تُجري UPI أكثر من 20 مليار معاملة شهريًا، ولا يملك العديد من العملاء الهنود بطاقة دولية.
Low-Value Payments
تناسب UPI المعاملات ذات الحجم الكبير والقيمة المنخفضة.
Subscription Support
على عكس معظم طرق الدفع البديلة، تدعم UPI والبطاقات المُصدرة في الهند، بما في ذلك Visa وMastercard وRuPay، المدفوعات المتكررة من خلال mandates الخاصة بـ RBI.
الطرق المدعومة
يسرد الجدول كل طريقة وما إذا كانت تدعم الاشتراكات:
*تتطلب الاشتراكات تفويضات متوافقة مع RBI مع قواعد معالجة خاصة. ينطبق تأخير المعالجة لمدة 48 ساعة على الرسوم المتكررة على جميع البطاقات المُصدرة في الهند وUPI وApple Pay.
يجب ألا تقل قيمة الدفعة المفوترة بالروبية الهندية (INR) عن ₹5.00، كما يجب ألا تقل عن ما يعادل الحد الأدنى بالدولار الأمريكي: $0.50 للدفعات لمرة واحدة و$1.00 للاشتراكات. راجع الحدود الدنيا للمبالغ.
الإعداد
أنواع طرق API
مرّر هذه القيم فيallowed_payment_method_types:
مثال: Checkout مخصص للهند
تقدم هذه الجلسة UPI والبطاقات وApple Pay إلى عميل في الهند، مع الفوترة بالروبية الهندية (INR):متطلبات UPI
تظهر UPI عند Checkout فقط عند تحقق جميع الشروط التالية:- أن تكون دولة الفوترة هي الهند (
IN). - أن تكون عملة الفوترة هي INR.
- بالنسبة إلى الاشتراكات من التجار خارج الهند، يجب تمكين Adaptive Currency. لا تحتاج عمليات Checkout لمرة واحدة إلى ذلك إذا كان سعر المنتج محددًا بالروبية الهندية.
الاشتراكات باستخدام تفويضات RBI
تعمل الاشتراكات المدفوعة باستخدام UPI أو البطاقات المُصدرة في الهند وفق تفويضات RBI (Reserve Bank of India)، التي تضيف قواعد غير موجودة في طرق الدفع الأخرى.كيفية عمل تفويضات RBI
يفوض العميل تفويضًا عند الاشتراك. بعد ذلك، تنتظر كل رسوم تجديد 48 ساعة بعد إشعار الخصم المسبق قبل أن يخصم البنك الأموال:أنواع التفويضات
يعتمد نوع التفويض على مقارنة مبلغ الاشتراك بحد التفويض الأدنى:
المبلغ المسجل لدى بنك العميل هو
max(mandate_floor, billing_amount). عندما يكون مبلغ الفوترة أقل من الحد الأدنى، يصبح هذا الحد سقف التفويض الظاهر للعميل.
تغييرات الخطة: إذا نتج عن الترقية رسم يتجاوز حد التفويض الحالي، تفشل العملية ويجب على العميل التفويض مرة أخرى.
حد التفويض الأدنى القابل للتهيئة
عيّن حد التفويض الأدنى للتفويضات الإلكترونية بالروبية الهندية باستخدام الحقلmandate_min_amount_inr_paise، بوحدة paise بالروبية الهندية (₹1 = 100 paise).
يمكنك تجاوز القيمة الافتراضية للنظام، وهي ₹15,000، على ثلاثة مستويات:
يستخدم Dodo Payments أول قيمة مهيأة: التجاوز لكل طلب، ثم إعداد التاجر، ثم القيمة الافتراضية للنظام.
لتعيين الحد الأدنى، مرّر
mandate_min_amount_inr_paise في نص الطلب عند إنشاء جلسة Checkout. وتقبل نقطة النهاية Create Subscription المهجورة الحقل نفسه.
يتيح لك الحد الأدنى الأعلى إجراء رسوم أكبر لمرة واحدة لاحقًا، مثل ترقيات الخطط أو الرسوم الإضافية المستندة إلى الاستخدام، دون مطالبة العملاء بالتفويض مرة أخرى. يحافظ الحد الأدنى الأقل على قرب تفويض العميل من مبلغ الفوترة الفعلي، لكنه يترك مساحة أقل للرسوم المتغيرة المستقبلية.
تأخير المعالجة لمدة 48 ساعة
تكتمل رسوم التجديد على بطاقة هندية أو عبر UPI بعد نحو 48 ساعة من تاريخ التجديد. وهذا هو الفرق الأهم مقارنة بمدفوعات البطاقات الدولية:1
Charge Initiated (Day 0)
في تاريخ التجديد المجدول، يبدأ Dodo Payments عملية الخصم مع البنك.
2
Pre-Debit Notification
يُخطر بنك العميل العميل بالخصم الوشيك.
3
48-Hour Window
خلال هذه الفترة، يمكن للعميل إلغاء التفويض من تطبيقه المصرفي.
4
Debit Completed (~48-51 Hours)
بعد 48 ساعة، إضافةً إلى مدة تصل إلى 3 ساعات أخرى لمعالجة البنك، يخصم البنك الأموال.
5
Webhook Sent
يرسل Dodo Payments webhook
payment.succeeded بعد الخصم الفعلي، وليس عند بدء الرسوم.التعامل مع نافذة الـ48 ساعة
امنح الوصول من webhook الدفع، وليس من تاريخ التجديد:أحداث Webhook للاشتراكات الهندية
تعامل مع هذه الأحداث للاشتراكات المدفوعة باستخدام UPI أو البطاقات المُصدرة في الهند:الاختبار
معرّفات اختبار UPI
في وضع الاختبار، أدخل معرّفات UPI التالية لمحاكاة كل نتيجة:أرقام اختبار البطاقات الهندية
استخدم بطاقات الاختبار المُصدرة في الهند التالية:أفضل الممارسات
Plan for the 48-hour delay
Plan for the 48-hour delay
صمّم تطبيقك للتعامل مع الفجوة بين بدء الرسوم والدفع الفعلي. ضع في الاعتبار:
- فترات سماح للوصول إلى الاشتراك
- توضيح وقت المعالجة للعملاء
- تنفيذ يعتمد على Webhook، وليس على التاريخ
Handle mandate cancellations
Handle mandate cancellations
يمكن للعملاء إلغاء التفويضات من تطبيقاتهم المصرفية في أي وقت. راقب Webhooks الخاصة بـ
subscription.on_hold، واطلب من العملاء الاشتراك مرة أخرى أو تحديث طريقة الدفع.Set appropriate mandate amounts
Set appropriate mandate amounts
بالنسبة إلى التسعير المتغير، مثل الفوترة المستندة إلى الاستخدام، تحقق مما إذا كان تفويض عند الطلب عند حد التفويض الأدنى (₹15,000 افتراضيًا) يغطي أكبر رسوم لديك. إذا كان من المحتمل أن تتجاوز الرسوم هذا الحد، فارفع الحد باستخدام
mandate_min_amount_inr_paise. وإلا، فسيتعين على العملاء تفويض جديد.Offer UPI prominently
Offer UPI prominently
بالنسبة إلى العملاء الهنود، اجعل UPI خيار الدفع الأساسي. يفضله العديد منهم على البطاقات لأنه مألوف وأسهل استخدامًا.
استكشاف الأخطاء وإصلاحها
UPI not appearing at checkout
UPI not appearing at checkout
تحقق من التالي:
- هل تم تعيين دولة الفوترة إلى
IN؟ - هل تم تعيين عملة الفوترة إلى
INR؟ - إذا كنت تاجرًا خارج الهند، فهل تم تمكين Adaptive Currency؟
- هل تم تضمين
upi_intentفيallowed_payment_method_types؟
country: "IN" في عنوان الفوترة وbilling_currency: "INR". إذا كانت Adaptive Currency معطلة، تتجاهل API القيمة billing_currency، لذا سعّر المنتج بالروبية الهندية بدلًا من ذلك.Subscription charge failed after upgrade
Subscription charge failed after upgrade
السبب: يتجاوز مبلغ الرسوم الجديدة حد التفويض الحالي: حد التفويض الأدنى (₹15,000 افتراضيًا)، أو مبلغ الاشتراك إذا كان أعلى.الحل: يجب على العميل تحديث طريقة الدفع لإعداد تفويض جديد بالحد الصحيح.
Subscription on hold but customer claims they didn't cancel
Subscription on hold but customer claims they didn't cancel
السبب: ربما ألغى العميل التفويض أثناء نافذة الـ48 ساعة، أو رفض بنكه الخصم.الحل: يحتاج العميل إلى تفويض التفويض مرة أخرى أو تحديث طريقة الدفع.
Payment deduction delayed beyond 48 hours
Payment deduction delayed beyond 48 hours
السبب: يمكن أن تؤدي تأخيرات API البنك إلى تمديد المعالجة لمدة ساعتين أو ثلاث ساعات.الحل: هذا متوقع. صمّم نظامك للتعامل مع تأخيرات تصل إجمالًا إلى نحو 51 ساعة.
Mandate cancelled but subscription still active
Mandate cancelled but subscription still active
السبب: حالة خاصة في لوائح RBI: لا يؤدي إلغاء التفويض أثناء نافذة المعالجة إلى إلغاء الاشتراك فورًا.الحل: تفشل الرسوم التالية، وينتقل الاشتراك إلى
on_hold. راقب Webhooks الخاصة بـ payment.failed.الصفحات ذات الصلة
Payment Methods Overview
اطّلع على جميع طرق الدفع المدعومة.
Subscriptions
اطّلع على وثائق الاشتراكات الكاملة، بما في ذلك تفويضات RBI.
Webhooks
التعامل مع Webhook لأحداث الدفع.
Testing Process
جميع بيانات الاختبار، بما في ذلك معرّفات UPI والبطاقات الهندية.