अवलोकन
जब भुगतान का प्रयास विफल होता है, Dodo Payments एक मानकीकृत failure code लौटाता है, जो आपको इसका कारण बताता है। ये codes सभी payment methods और payment processors में समान होते हैं, इसलिए एक ही handling rules का सेट हर विफल भुगतान पर लागू होता है।payment.failed webhook और payment object विफल भुगतान के लिए ये fields उपलब्ध कराते हैं:
error_code: नीचे दी गई तालिका का एक मानकीकृत failure code।error_message: आपके लिए, यानी merchant के लिए, लिखा गया स्पष्टीकरण। जबerror_codeनीचे दिए गए मानकीकृत codes में से एक होता है, तो यह headline और recommended action होता है, payment processor का raw text नहीं।retry_attempt: मूल charge के लिए0, और प्रत्येक scheduled subscription renewal retry के लिए1या इससे अधिक। जो payments subscription renewals नहीं हैं, उनमें यह value0रहती है।
Merchant Copy बनाम Customer Copy
प्रत्येक मानकीकृत failure code दो messages से जुड़ा होता है—एक आपके लिए और एक आपके customer के लिए:Customer Portal customer wording को
error_message में लौटाता है, जबकि merchant API उसी payment के लिए merchant wording लौटाता है। दोनों में error_code समान होता है।Handle Payment Failures
इन codes को webhooks और API से पढ़ने, customers को दिखाने और retry करने का निर्णय लेने के लिए step-by-step developer guide।
Soft बनाम Hard Declines
प्रत्येक failure code या तो soft decline होता है या hard decline। इसका type बताता है कि क्या उन्हीं payment details के साथ बाद का प्रयास सफल हो सकता है, या customer को पहले कोई कार्रवाई करनी होगी।
Subscription renewals के लिए Dodo Payments इस classification को अपने-आप लागू करता है। Subscription Payment Retries soft declines का दोबारा प्रयास करता है। Hard decline retry chain को तुरंत समाप्त कर देता है; इसे Subscription Dunning से recover करें।
Transaction Failure Reasons
नीचे दी गई तालिका में प्रत्येक failure code, उसका decline type, यह जानकारी कि customer इसे resolve कर सकता है या नहीं, description और recommended action दिया गया है।User Error बताता है कि customer decline को resolve कर सकता है या नहीं।
Yes का अर्थ है कि customer समस्या ठीक कर सकता है, उदाहरण के लिए सही card details दर्ज करके। No का अर्थ है कि decline system-level issue या bank restriction के कारण हुआ और customer इसे सीधे resolve नहीं कर सकता।Issuing bank अपने risk engine द्वारा cardholder को high-risk के रूप में flag किए जाने के कारण भी card को decline कर सकता है, और यह merchant या transaction details से स्वतंत्र होता है। ऐसे declines आमतौर पर generic codes जैसे
DO_NOT_HONOR, GENERIC_DECLINE, CARD_DECLINED, TRANSACTION_NOT_APPROVED, या FRAUDULENT के रूप में दिखाई देते हैं। Bank specific reason साझा नहीं करता, और न ही Dodo Payments या merchant इस decision को override कर सकते हैं। Customer से flag को resolve करने के लिए अपने bank से contact करने, या किसी अलग card या payment method का उपयोग करने को कहें।Programmatically Handling Failures
error_code को payment.failed webhook या payment object से पढ़ें, उसे तालिका में दिए गए recommended action से map करें और तय करें कि retry करना है या नहीं। Subscription renewals के लिए Dodo Payments आपके लिए soft declines को retry करता है। Subscription Payment Retries देखें।
Card declines न होने वाली API और business-logic errors, जैसे PAYMENT_NOT_SUCCEEDED या REFUND_WINDOW_EXPIRED, के लिए Error Codes reference देखें।
Related
Handle Payment Failures
Failed payments का पता लगाने, उन्हें दिखाने और retry करने की end-to-end guide।
Error Codes
Non-decline failures के लिए API और business-logic error codes।
Subscription Payment Retries
Subscription renewals पर soft declines को recover करने वाले automatic retries।
Subscription Dunning
Payment method update का prompt देकर hard declines को recover करने वाले email sequences।