जब कोई भुगतान विफल होता है, तो Dodo Payments आपको एक मानकीकृत
error_code और एक मानव-पठनीय error_message के माध्यम से क्यों बताता है। यह गाइड दिखाता है कि उन फ़ील्ड्स को कैसे पढ़ें, यह निर्णय लें कि पुनः प्रयास सार्थक है या नहीं, और ग्राहकों को संवेदनशील जानकारी उजागर किए बिना भुगतान कैसे प्राप्त करें।Dodo Payments विफलता की रिपोर्ट कैसे करता है
हर विफल भुगतान — चाहे एक बार का चेकआउट हो या सदस्यता नवीकरण — भुगतान ऑब्जेक्ट पर समान विफलता फ़ील्ड्स ले जाता है:error_code और error_message null हैं जब तक कि वास्तव में कोई भुगतान विफल नहीं होता है। हमेशा पहले status की जाँच करें, फिर त्रुटि फ़ील्ड पढ़ें।payment.failed Webhook
Failure का पता लगाने का सबसे विश्वसनीय तरीका payment.failed webhook है। यह event पूरे payment object को data में wrap करता है:
payment.failed payload
error_code को पढ़ता है और उसके आधार पर route करता है:
तय करें कि Retry करना है या नहीं: Soft बनाम Hard Declines
error_code आपको बताता है कि उसी payment method को retry करना उपयोगी होगा या नहीं।
Transaction Failures reference हर
error_code के लिए decline type और recommended action की सूची देती है।
Checkout के दौरान बनाम Renewal पर Failures को Handle करना
आप recovery कैसे करेंगे, यह इस बात पर निर्भर करता है कि customer मौजूद है या नहीं।- At checkout (customer present)
- On subscription renewal (customer not present)
Customer actively checkout कर रहा है। एक स्पष्ट message दिखाएं और उसे तुरंत retry करने या किसी अन्य card का उपयोग करने दें।
requires_payment_method— customer ने कभी payment method प्रदान नहीं किया: उसने card details दर्ज नहीं कीं या उससे payment method देने को कहा गया, लेकिन उसने कोई action नहीं लिया। यह आमतौर पर decline नहीं, बल्कि checkout का drop-off होता है — payment पूरा करने के लिए customer से फिर संपर्क करें (देखें Abandoned Cart Recovery).requires_customer_action— अतिरिक्त authentication (जैसे 3DS) आवश्यक है; customer से इसे पूरा करने को कहें। देखें 3D Secure handling।
Failed Payment को Retry करना
- Subscriptions: बिना किसी integration work के soft declines recover करने के लिए Subscription Payment Retries enable करें। Customer से Update Payment Method API के माध्यम से अपना payment method update करवाकर भी recovery trigger कर सकते हैं; इससे कोई भी outstanding dues charge हो जाते हैं।
- One-time payments: checkout या
payment_linkफिर से भेजें, ताकि customer किसी अलग method से दोबारा प्रयास कर सके। One-time payments के लिए कोई automatic retry नहीं है।
Customers को Errors सुरक्षित रूप से दिखाना
Customers को friendly message दिखाएं — कभी भी rawerror_code नहीं और merchant-facing error_message भी नहीं।
Dodo Payments द्वारा नियंत्रित surfaces — checkout, Customer Portal और dunning emails — पर यह mapping आपके लिए पहले से की गई है, जिसमें fraud-related declines के लिए generic message का fallback भी शामिल है। नीचे दी गई mapping की आवश्यकता केवल तब है जब आप अपने product में failures render करते हैं।
Customer-facing messaging
संबंधित
Transaction Failures
हर decline code, उसका type और recommended action।
Error Codes
API और business-logic errors जो card declines नहीं हैं।
Subscription Payment Retries
Subscription renewals पर soft declines की automatic recovery।
Subscription Dunning
Hard declines को recover करने वाले email sequences।
Payment Webhooks
Payment events के लिए full payload schema।
Testing Failures
Declines और renewal failures को simulate करने वाले test cards।