भारत भुगतान विधियाँ क्यों महत्वपूर्ण हैं
UPI Dominance
UPI हर महीने 20 billion से अधिक transactions process करता है, और कई भारतीय ग्राहकों के पास international card नहीं होता।
Low-Value Payments
UPI अधिक मात्रा वाले, कम मूल्य के transactions के लिए उपयुक्त है।
Subscription Support
अधिकांश alternative payment methods के विपरीत, UPI और भारतीय-जारी कार्ड, जिनमें Visa, Mastercard और RuPay शामिल हैं, RBI mandates के माध्यम से recurring payments का समर्थन करते हैं।
समर्थित Methods
तालिका में प्रत्येक method और यह बताया गया है कि वह subscriptions का समर्थन करता है या नहीं:
*Subscriptions के लिए विशेष processing rules वाले RBI-compliant mandates आवश्यक हैं। सभी भारत में जारी किए गए कार्ड, UPI और Apple Pay पर recurring charges के लिए 48 घंटे की processing delay लागू होती है।
INR में billed payment कम से कम ₹5.00 और USD minimum के equivalent के बराबर होना चाहिए: one-time payments के लिए $0.50 और subscriptions के लिए $1.00। Minimum Amounts देखें।
Configuration
API Method Types
इन values कोallowed_payment_method_types में pass करें:
उदाहरण: India-Focused Checkout
यह session भारत में किसी ग्राहक को UPI, cards और Apple Pay प्रदान करता है और इसकी billing INR में होती है:UPI के लिए Requirements
UPI checkout पर तभी दिखाई देता है जब ये सभी बातें सही हों:- billing country India है (
IN)। - billing currency INR है।
- भारत के बाहर के merchants से subscriptions के लिए Adaptive Currency enabled है। यदि product की price INR में है, तो one-time checkouts के लिए इसकी आवश्यकता नहीं है।
RBI Mandates के साथ Subscriptions
UPI या भारतीय-जारी cards से paid subscriptions RBI (Reserve Bank of India) mandates पर चलते हैं, जो अन्य payment methods पर लागू न होने वाले rules जोड़ते हैं।RBI Mandates कैसे काम करते हैं
Customer subscription लेते समय mandate authorize करता है। इसके बाद प्रत्येक renewal charge, bank द्वारा funds debit करने से पहले pre-debit notification के बाद 48 घंटे तक प्रतीक्षा करता है:Mandate Types
Mandate type इस बात पर निर्भर करता है कि subscription amount mandate floor की तुलना में कैसी है:
Customer के bank के साथ registered amount
max(mandate_floor, billing_amount) है। जब billing amount floor से कम होती है, तो floor customer-facing authorization ceiling बन जाता है।
Plan changes: यदि upgrade से existing mandate limit से अधिक charge उत्पन्न होता है, तो charge fail हो जाता है और customer को फिर से authorize करना पड़ता है।
Configurable Mandate Floor
mandate_min_amount_inr_paise field के साथ INR e-mandates के लिए mandate floor सेट करें, INR paise में (₹1 = 100 paise)।
आप तीन levels पर ₹15,000 के system default को override कर सकते हैं:
Dodo Payments पहले set की गई value का उपयोग करता है: per-request override, फिर merchant setting, और फिर system default।
Floor सेट करने के लिए, checkout session बनाते समय request body में
mandate_min_amount_inr_paise pass करें। Deprecated Create Subscription endpoint भी इसी field को स्वीकार करता है।
अधिक ऊंचा floor आपको बाद में बड़े one-off charges, जैसे plan upgrades या usage-based overages, लेने देता है, बिना customers से फिर से authorize करने को कहे। कम floor customer के authorization को actual billing amount के करीब रखता है, लेकिन future variable charges के लिए कम जगह छोड़ता है।
48-Hour Processing Delay
किसी भारतीय card या UPI पर renewal charge, renewal date के लगभग 48 घंटे बाद complete होता है। यह international card payments से सबसे महत्वपूर्ण अंतर है:1
Charge Initiated (Day 0)
Scheduled renewal date पर Dodo Payments bank के साथ charge initiate करता है।
2
Pre-Debit Notification
Customer का bank उन्हें आगामी debit के बारे में notify करता है।
3
48-Hour Window
इस अवधि के दौरान customer अपने banking app में mandate cancel कर सकता है।
4
Debit Completed (~48-51 Hours)
48 घंटे के बाद, और bank processing के लिए अधिकतम 3 अतिरिक्त घंटे के बाद, bank funds debit करता है।
5
Webhook Sent
Dodo Payments actual debit के बाद
payment.succeeded webhook भेजता है, charge initiate होने पर नहीं।48-Hour Window को संभालना
Access renewal date से नहीं, payment webhook से grant करें:Indian Subscriptions के लिए Webhook Events
UPI या भारतीय-जारी cards से paid subscriptions के लिए इन events को handle करें:Testing
UPI Test IDs
Test mode में प्रत्येक outcome simulate करने के लिए ये UPI IDs enter करें:Indian Card Test Numbers
इन भारतीय-जारी test cards का उपयोग करें:Best Practices
Plan for the 48-hour delay
Plan for the 48-hour delay
अपने application को charge initiation और actual payment के बीच के अंतराल को संभालने के लिए बनाएं। इन बातों पर विचार करें:
- Subscription access के लिए grace periods
- Processing time के बारे में customers के साथ स्पष्ट communication
- Date-driven fulfillment के बजाय webhook-driven fulfillment
Handle mandate cancellations
Handle mandate cancellations
Customers अपने banking apps में किसी भी समय mandates cancel कर सकते हैं।
subscription.on_hold webhooks monitor करें और customers को फिर से subscribe करने या अपना payment method update करने के लिए prompt करें।Set appropriate mandate amounts
Set appropriate mandate amounts
Variable pricing, जैसे usage-based billing, के लिए जांचें कि mandate floor (default रूप से ₹15,000) पर on-demand mandate आपके सबसे बड़े charge को cover करता है या नहीं। यदि charges इससे अधिक हो सकते हैं, तो
mandate_min_amount_inr_paise के साथ floor बढ़ाएं। अन्यथा customers को नए mandate को authorize करना होगा।Offer UPI prominently
Offer UPI prominently
भारतीय customers के लिए UPI को primary payment option बनाएं। कई customers cards की तुलना में इसे पसंद करते हैं क्योंकि यह परिचित है और इसमें कम friction है।
Troubleshooting
UPI not appearing at checkout
UPI not appearing at checkout
जांचें:
- क्या billing country
INपर set है? - क्या billing currency
INRपर set है? - यदि आप भारत के बाहर के merchant हैं, तो क्या Adaptive Currency enabled है?
- क्या
upi_intent,allowed_payment_method_typesमें शामिल है?
country: "IN" और billing_currency: "INR" set करें। यदि Adaptive Currency disabled है, तो API billing_currency को ignore करता है, इसलिए product की price INR में रखें।Subscription charge failed after upgrade
Subscription charge failed after upgrade
कारण: New charge amount existing mandate limit से अधिक है: mandate floor (default रूप से ₹15,000), या यदि subscription amount अधिक है तो वह amount।समाधान: सही limit के साथ नया mandate set up करने के लिए customer को अपना payment method update करना होगा।
Subscription on hold but customer claims they didn't cancel
Subscription on hold but customer claims they didn't cancel
कारण: हो सकता है customer ने 48-hour window के दौरान mandate cancel कर दिया हो, या उनके bank ने debit decline कर दिया हो।समाधान: Customer को mandate फिर से authorize करना होगा या अपना payment method update करना होगा।
Payment deduction delayed beyond 48 hours
Payment deduction delayed beyond 48 hours
कारण: Bank API delays processing को 2–3 घंटे तक बढ़ा सकते हैं।समाधान: यह अपेक्षित है। अपने system को कुल मिलाकर लगभग 51 घंटे तक की delays संभालने के लिए बनाएं।
Mandate cancelled but subscription still active
Mandate cancelled but subscription still active
कारण: RBI regulations में edge case: processing window के दौरान mandate cancel करने से subscription तुरंत cancel नहीं होती।समाधान: अगला charge fail हो जाता है और subscription
on_hold में चली जाती है। payment.failed के लिए webhooks monitor करें।संबंधित Pages
Payment Methods Overview
सभी supported payment methods देखें।
Subscriptions
RBI mandates सहित complete subscription documentation।
Webhooks
Payment events के लिए webhook handling।
Testing Process
UPI IDs और Indian cards सहित सभी test data।