error_code और मानव-पठनीय error_message प्रदान करता है। यह गाइड दिखाती है कि इन फ़ील्ड को कैसे पढ़ें, पुनः प्रयास करना है या नहीं यह कैसे तय करें, और भुगतान को सुरक्षित रूप से कैसे पुनर्प्राप्त करें।
Dodo Payments विफलता की रिपोर्ट कैसे करता है
हर विफल भुगतान में payment object पर ये फ़ील्ड होते हैं:error_code और error_message तब तक null रहते हैं, जब तक कोई भुगतान विफल न हो जाए। हमेशा पहले status जाँचें।payment.failed Webhook
विफलता का पता लगाने के लिए payment.failed webhook सबसे विश्वसनीय तरीका है। यह event पूरे payment object को data में लपेटता है:
payment.failed payload
error_code को पढ़ता है और उसके आधार पर route करता है:
तय करें कि Retry करना है या नहीं: Soft बनाम Hard Declines
error_code आपको बताता है कि उसी payment method को retry करना उपयोगी होगा या नहीं।
अस्वीकृति के प्रकारों और सुझाई गई कार्रवाइयों की पूरी सूची के लिए Transaction Failures देखें।
Checkout के दौरान बनाम Renewal पर Failures को Handle करना
आप recovery कैसे करेंगे, यह इस बात पर निर्भर करता है कि customer मौजूद है या नहीं।- At checkout (customer present)
- On subscription renewal (customer not present)
ग्राहक सक्रिय रूप से checkout कर रहा है। स्पष्ट संदेश दिखाएँ और उसे फिर से प्रयास करने या किसी अन्य card का उपयोग करने दें।
requires_payment_method— ग्राहक ने कोई payment method नहीं दिया। यह आमतौर पर checkout drop-off होता है, अस्वीकृति नहीं। भुगतान पूरा करने के लिए ग्राहक से दोबारा संपर्क करें (देखें Abandoned Cart Recovery)।requires_customer_action— अतिरिक्त authentication (जैसे 3DS) आवश्यक है। ग्राहक से इसे पूरा करने के लिए कहें। 3D Secure देखें।
Failed Payment को Retry करना
Subscriptions: Soft declines को अपने-आप recover करने के लिए Subscription Payment Retries सक्षम करें। Schedule का इंतज़ार करने के बजाय तुरंत retry करने के लिए dashboard या API से Manual Payment Retry का उपयोग करें। ग्राहक से Update Payment Method API के माध्यम से अपना payment method अपडेट करवाकर भी recovery trigger कर सकते हैं, जिससे कोई भी बकाया राशि charge हो जाती है। One-time payments: checkout याpayment_link फिर से भेजें, ताकि ग्राहक किसी अन्य method से दोबारा प्रयास कर सके। One-time payments के लिए कोई automatic retry नहीं है।
ग्राहकों को सुरक्षित रूप से त्रुटियाँ दिखाएँ
ग्राहकों को मित्रवत संदेश दिखाएँ, rawerror_code या Merchant के लिए दिखाई देने वाले 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, उसका प्रकार और सुझाई गई कार्रवाई।
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 के लिए पूर्ण payload schema।
Testing Failures
Declines और renewal failures को simulate करने वाले test cards।