मुख्य सामग्री पर जाएं

अवलोकन

Dodo Payments API मानक HTTP स्थिति कोड और कस्टम त्रुटि कोड का उपयोग करता है ताकि API अनुरोधों की सफलता या विफलता को इंगित किया जा सके। जब कोई त्रुटि होती है, तो API एक उपयुक्त HTTP स्थिति कोड और त्रुटि के बारे में विस्तृत जानकारी प्रदान करने वाले JSON प्रतिक्रिया को लौटाता है। प्रत्येक त्रुटि प्रतिक्रिया में शामिल हैं:
  • एक HTTP स्थिति कोड जो त्रुटि की सामान्य श्रेणी को इंगित करता है
  • एक विशिष्ट त्रुटि कोड जो त्रुटि की सटीक प्रकृति की पहचान करता है
  • एक मानव-पठनीय त्रुटि संदेश जो बताता है कि क्या गलत हुआ
  • जब लागू हो, तो त्रुटि के बारे में अतिरिक्त विवरण
इन त्रुटि कोडों और उनके अर्थ को समझना महत्वपूर्ण है:
  • एकीकरण मुद्दों को डिबग करने के लिए
  • अपने एप्लिकेशन में उचित त्रुटि हैंडलिंग लागू करने के लिए
  • अंतिम उपयोगकर्ताओं को अर्थपूर्ण फीडबैक प्रदान करने के लिए
  • एक मजबूत भुगतान प्रसंस्करण प्रणाली बनाए रखने के लिए
निम्नलिखित अनुभाग मानक HTTP स्थिति कोड और विशिष्ट त्रुटि कोड के बारे में विस्तृत जानकारी प्रदान करते हैं जो आप Dodo Payments API का उपयोग करते समय सामना कर सकते हैं।

मानक API त्रुटि कोड

त्रुटि कोडHTTP स्थितिविवरण
400खराब अनुरोधअनुरोध गलत था या इसमें अमान्य पैरामीटर थे
401अनधिकृतप्रमाणीकरण विफल रहा या API कुंजी अमान्य है
403निषिद्धAPI कुंजी को अनुरोधित संसाधन तक पहुँचने की अनुमति नहीं है
404नहीं मिलाअनुरोधित संसाधन मौजूद नहीं है
405विधि की अनुमति नहीं हैHTTP विधि इस एंडपॉइंट के लिए समर्थित नहीं है
409संघर्षअनुरोध संसाधन की वर्तमान स्थिति के साथ संघर्ष करता है
422असंसाध्य इकाईअनुरोध अच्छी तरह से निर्मित था लेकिन इसमें अर्थ संबंधी त्रुटियाँ थीं
429बहुत अधिक अनुरोधदर सीमा पार हो गई
500आंतरिक सर्वर त्रुटिहमारे सर्वरों पर एक अप्रत्याशित त्रुटि हुई
502खराब गेटवेसर्वर को एक अपस्ट्रीम सर्वर से अमान्य प्रतिक्रिया मिली
503सेवा अनुपलब्धसेवा अस्थायी रूप से अनुपलब्ध है
504गेटवे टाइमआउटसर्वर अपस्ट्रीम प्रतिक्रिया की प्रतीक्षा करते समय टाइमआउट हो गया

त्रुटि प्रतिक्रिया प्रारूप

जब कोई त्रुटि होती है, तो API निम्नलिखित संरचना के साथ JSON प्रतिक्रिया लौटाता है:
{
  "code": "UNSUPPORTED_COUNTRY",
  "message": "Country AI currently not supported"
}

त्रुटि कोड संदर्भ

  • ACTIVATION_LIMIT_LESS_THAN_CURRENT_AMOUNT
    • Trigger: लाइसेंस-की सक्रियण: नया सीमा < मौजूदा उदाहरण संख्या
    • Message: नई सक्रियण सीमा मौजूदा उदाहरण संख्या से कम नहीं हो सकती
  • ADDONS_IN_USAGE_BASED_BILLING_NOT_SUPPORTED
    • Trigger: उपयोग-आधारित बिलिंग सब्सक्रिप्शन में ऐड-ऑन जोड़ने का प्रयास
    • Message: सब्सक्रिप्शन में ऐड-ऑन उपयोग आधारित बिलिंग के लिए समर्थित नहीं हैं
  • ADDONS_NOT_ALLOWED_FOR_ON_DEMAND
    • Trigger: ऑन-डिमांड सब्सक्रिप्शन में ऐड-ऑन जोड़ने का प्रयास
    • Message: ऑन-डिमांड सब्सक्रिप्शन के लिए ऐड-ऑन की अनुमति नहीं है
  • BRAND_MISMATCH
    • Trigger: कार्ट आइटम विभिन्न ब्रांडों से संबंधित हैं
    • Message: उत्पाद कार्ट में सभी आइटम को एक ही ब्रांड से संबंधित होना चाहिए
  • BRAND_NOT_ENABLED
    • Trigger: ब्रांड अक्षम या सक्रिय नहीं है
    • Message: प्रदान किया गया ब्रांड सक्षम नहीं है
  • BRAND_SUBMISSION_NOT_ENABLED
    • Trigger: ब्रांड सत्यापन पुनः प्रस्तुत करने की सुविधा सक्षम नहीं है
    • Message: ब्रांड सत्यापन पुनः प्रस्तुत करना सक्षम नहीं है
  • CHARGE_NOT_ALLOWED_FOR_SCHEDULED_CANCELLATION
    • Trigger: रद्दीकरण के लिए निर्धारित सब्सक्रिप्शन पर चार्ज करने का प्रयास
    • Message: सब्सक्रिप्शन रद्दीकरण के लिए निर्धारित है
  • CHECKOUT_SESSION_CONSUMED
    • Trigger: चेकआउट सत्र ने पहले ही एक भुगतान उत्पन्न किया है
    • Message: चेकआउट सत्र पहले ही उपयोग किया जा चुका है
  • DISCOUNT_CODE_ALREADY_EXISTS
    • Trigger: डुप्लिकेट छूट कोड निर्माण
    • Message: छूट कोड पहले से मौजूद है
  • DISCOUNT_CODE_EXPIRED
    • Trigger: छूट कोड अपने expires_at दिनांक से पहले है
    • Message: छूट कोड समाप्त हो गया
  • DISCOUNT_CODE_USAGE_LIMIT_EXCEEDED
    • Trigger: छूट पुनः उपयोग की गई जब usage_limit पहुँचा
    • Message: उपयोग सीमा मौजूदा उपयोग की संख्या से कम नहीं हो सकती / छूट कोड उपयोग सीमा पहुँची
  • DISCOUNT_NOT_AVAILABLE_FOR_ON_DEMAND
    • Trigger: कोड ऑन-डिमांड सब्सक्रिप्शन पर लागू किया गया
    • Message: छूट कूपन ऑन-डिमांड सब्सक्रिप्शन के लिए उपलब्ध नहीं है
  • DISCOUNT_NOT_AVAILABLE_FOR_PRODUCT
    • Trigger: कोड अप्रासंगिक उत्पादों पर लागू किया गया
    • Message: छूट कूपन इस उत्पाद के लिए उपलब्ध नहीं है
  • DUPLICATE_LINE_ITEMS_IN_REQUEST
    • Trigger: समान item_id दो बार items[] में दिखाई देता है
    • Message: आइटम्स एरे में निर्दिष्ट डुप्लिकेट item_ids
  • DUPLICATE_METER_IDS_IN_REQUEST
    • Trigger: अनुरोध में समान मीटर आईडी कई बार दिखाई देती है
    • Message: डुप्लिकेट मीटर आईडी की अनुमति नहीं है
  • EXCHANGE_RATE_NOT_FOUND
    • Trigger: from → to मुद्रा जोड़ी के लिए कोई FX दर नहीं है
    • Message: मुद्रा से मुद्रा में परिवर्तित करने के लिए विनिमय दर नहीं मिली
  • EXISTING_REFUND_REQUEST_PROCESSING
    • Trigger: पिछले रिफंड अनुरोध पर अभी भी प्रक्रिया चल रही है
    • Message: “लंबित” स्थिति के साथ एक रिफंड अनुरोध अभी भी प्रक्रिया में है
  • INACTIVE_LICENSE_KEY
    • Trigger: कुंजी स्थिति ≠ ACTIVE
    • Message: लाइसेंस कुंजी सक्रिय नहीं है
  • INACTIVE_SUBSCRIPTION_PLAN_CHANGE_NOT_SUPPORTED
    • Trigger: निष्क्रिय सब्सक्रिप्शन पर योजना परिवर्तन
    • Message: निष्क्रिय सब्सक्रिप्शन के लिए योजनाएँ बदलना समर्थित नहीं है
  • INSUFFICIENT_WALLET_FUNDS
    • Trigger: वॉलेट बैलेंस < डेबिट राशि
    • Message: वॉलेट में अपर्याप्त धन
  • INTEGER_CONVERSION_FAILURE
    • Trigger: कोई भी पूर्णांक ↔ स्ट्रिंग/दशमलव रूपांतरण जो सर्वर-साइड पर विफल होता है
    • Message: पूर्णांक रूपांतरण विफलता
  • INTERNAL_SERVER_ERROR
    • Trigger: अनकैच्ड अपवाद; आपको सर्वर-साइड पर विवरण लॉग करना चाहिए
    • Message: कोई सार्वजनिक संदेश नहीं (सामान्य 500)
  • INVALID_DISCOUNT_CODE
    • Trigger: कोड मौजूद नहीं है / लागू नहीं है
    • Message: अमान्य छूट कोड / छूट कोड को कार्ट में किसी भी उत्पाद पर लागू नहीं किया जा सकता
  • INVALID_PERCENTAGE
    • Trigger: प्रतिशत राशि > 100% (या 10,000 आधार अंक)
    • Message: प्रतिशत राशि 10000 से अधिक नहीं हो सकती / छूट कोड राशि 100% से अधिक नहीं हो सकती
  • INVALID_QUANTITY
    • Trigger: उपयोग-आधारित मूल्य निर्धारण के लिए निर्दिष्ट अमान्य मात्रा
    • Message: उपयोग आधारित मूल्य उत्पादों में केवल 1 मात्रा की अनुमति है
  • INVALID_QUERY_PARAMS
    • Trigger: आपस में विशेष / गलत क्वेरी पैरामीटर
    • Message: क्वेरी पैरामीटर में केवल या तो time_frame या (start, end) होना चाहिए
  • INVALID_REQUEST_BODY
    • Trigger: गलत JSON या स्कीमा उल्लंघन
    • Message: आपका अनुरोध बॉडी अमान्य है। कृपया अपने अनुरोध हेडर और ऑब्जेक्ट की जांच करें।
  • INVALID_REQUEST_PARAMETERS
    • Trigger: अर्थशास्त्र गलत (जैसे, अतीत में तिथि)
    • Message: अगले_billing_date को अतीत के समय में बदलना संभव नहीं है
  • INVALID_SUGGESTED_PRICE
    • Trigger: PWYW मूल्य < न्यूनतम अनुमत मूल्य
    • Message: सुझाया गया मूल्य न्यूनतम मूल्य से कम नहीं हो सकता। यदि आप जो चाहें वह भुगतान करते हैं, तो मूल्य को न्यूनतम स्वीकृत राशि के रूप में माना जाता है
  • INVALID_TAX_ID
    • Trigger: VAT/GST/TIN मान्यता विफल
    • Message: कर आईडी अमान्य है
  • LICENSE_KEY_LIMIT_REACHED
    • Trigger: सक्रियण = सीमा
    • Message: लाइसेंस कुंजी सक्रियण सीमा पहुँच गई
  • LICENSE_KEY_NOT_FOUND
    • Trigger: उदाहरण आईडी या कुंजी आईडी अमान्य
    • Message: लाइसेंस कुंजी उदाहरण नहीं मिला या इस लाइसेंस कुंजी से संबंधित नहीं है
  • LINE_ITEM_FULLY_REFUNDED
    • Trigger: पहले से पूरी तरह से रिफंड की गई लाइन आइटम पर रिफंड का प्रयास
    • Message: लाइन आइटम को पूरी तरह से रिफंड किया गया है, इसे और रिफंड नहीं किया जा सकता।
  • LINE_ITEM_NOT_FOUND
    • Trigger: आइटम आईडी संदर्भित भुगतान का हिस्सा नहीं है
    • Message: लाइन आइटम भुगतान में नहीं मिला
  • LINE_ITEM_PRORATED
    • Trigger: एक प्रोरटेड लाइन पर रिफंड या अपडेट का प्रयास किया गया
    • Message: लाइन आइटम को रिफंड नहीं किया जा सकता क्योंकि यह प्रोरटेड है
  • LINE_ITEM_REFUND_AMOUNT_TOO_HIGH
    • Trigger: रिफंड राशि > भुगतान राशि (कर सहित)
    • Message: लाइन आइटम के लिए अनुरोधित रिफंड राशि कर सहित है जो भुगतान राशि से अधिक है
  • LINE_ITEM_REFUND_AMOUNT_TOO_LOW
    • Trigger: रिफंड राशि न्यूनतम सीमा से नीचे
    • Message: लाइन आइटम के लिए अनुरोधित रिफंड राशि है जो बहुत कम है
  • MAXIMUM_KEYS_REACHED
    • Trigger: मेटाडेटा / कस्टम-फील्ड 50 जोड़े से अधिक हो गए
    • Message: 50 कुंजी-मूल्य जोड़े से अधिक है
  • MERCHANT_NOT_LIVE
    • Trigger: व्यवसाय अभी भी परीक्षण/सैंडबॉक्स मोड में है
    • Message: व्यापारी लाइव नहीं है
  • METER_IS_DELETED
    • Trigger: हटाए गए मीटर का उपयोग करने का प्रयास
    • Message: मीटर पहले ही हटा दिया गया है
  • MISSING_ADDON_IDS
    • Trigger: addon_id सूची खाली या अज्ञात आईडी
    • Message: एक या एक से अधिक उत्पाद आईडी मौजूद नहीं हैं:
  • MISSING_METER_IDS
    • Trigger: मीटर आईडी सूची खाली या अमान्य आईडी शामिल है
    • Message: एक या एक से अधिक मीटर आईडी मौजूद नहीं हैं:
  • MISSING_PRODUCT_INFORMATION
    • Trigger: उत्पाद मौजूद है लेकिन अनिवार्य जानकारी गायब है
    • Message: उत्पाद मौजूद है लेकिन अन्य अनिवार्य जानकारी गायब या अमान्य है
  • NEGATIVE_BALANCE_ADJUSTMENT
    • Trigger: वॉलेट बैलेंस को नकारात्मक बनाना
    • Message: वॉलेट बैलेंस को नकारात्मक नहीं बनाया जा सकता
  • NO_ELIGIBLE_PAYMENT_METHODS
    • Trigger: फ़िल्टरिंग के बाद, कुछ भी नहीं बचा
    • Message: कोई पात्र भुगतान विधियाँ नहीं मिलीं
  • NO_EXPIRY_ON_SUBSCRIPTION_LICENSE_KEYS
    • Trigger: सब्सक्रिप्शन-आधारित कुंजी पर समाप्ति सेट करने का प्रयास
    • Message: सब्सक्रिप्शन-आधारित लाइसेंस कुंजी के लिए समाप्ति तिथि सेट नहीं की जा सकती
  • NOT_FOUND
    • Trigger: किसी भी गायब संसाधन के लिए सामान्य 404
    • Message: आइटम नहीं मिला (या अधिक विशिष्ट)
  • ON_DEMAND_PLAN_CHANGE_NOT_SUPPORTED
    • Trigger: ऑन-डिमांड के लिए योजना स्वैप की अनुमति नहीं है
    • Message: ऑन-डिमांड सब्सक्रिप्शन के लिए योजनाएँ बदलना समर्थित नहीं है
  • ON_DEMAND_SUBSCRIPTIONS_NOT_ENABLED
    • Trigger: व्यवसाय में फीचर फ्लैग बंद है
    • Message: इस व्यवसाय के लिए ऑन-डिमांड सब्सक्रिप्शन सक्षम नहीं हैं
  • ON_DEMAND_USAGE_BASED_BILLING_NOT_SUPPORTED
    • Trigger: उपयोग-आधारित बिलिंग के साथ ऑन-डिमांड का उपयोग करने का प्रयास
    • Message: उपयोग आधारित बिलिंग के लिए ऑन-डिमांड सब्सक्रिप्शन समर्थित नहीं हैं
  • PAY_AS_YOU_WANT_AMOUNT_REQUIRED
    • Trigger: PWYW उत्पाद के लिए मूल्य गायब
    • Message: जो चाहें वह भुगतान करने के लिए राशि अनिवार्य है
  • PAYMENT_ALREADY_REFUNDED
    • Trigger: डुप्लिकेट रिफंड
    • Message: इस भुगतान को पहले ही रिफंड किया जा चुका है
  • PAYMENT_HAS_BEEN_REFUNDED
    • Trigger: भुगतान को पूरी तरह से रिफंड किया गया है
    • Message: भुगतान आईडी को पूरी तरह से रिफंड किया गया है।
  • PAYMENT_NOT_SUCCEEDED
    • Trigger: असफल भुगतान को रिफंड/प्रोसेस करने का प्रयास
    • Message: प्रदान किया गया भुगतान सफल नहीं हुआ है
  • PLAN_CHANGE_NOT_ALLOWED_FOR_SCHEDULED_CANCELLATION
    • Trigger: रद्दीकरण के लिए निर्धारित सब्सक्रिप्शन पर योजना परिवर्तन का प्रयास
    • Message: सब्सक्रिप्शन रद्दीकरण के लिए निर्धारित है
  • PREVIOUS_PAYMENT_PENDING
    • Trigger: पिछले भुगतान के असफल होने पर चार्ज बनाने का प्रयास
    • Message: पिछले भुगतान अभी तक सफल नहीं हुआ है, इसलिए नया चार्ज नहीं बनाया जा सकता
  • PRODUCT_CART_EMPTY
    • Trigger: खाली उत्पाद कार्ट प्रस्तुत की गई
    • Message: उत्पाद कार्ट खाली है
  • PRODUCT_IS_DELETED
    • Trigger: उत्पाद सॉफ्ट-डिलीट किया गया
    • Message: कोई संदेश नहीं
  • REFUND_AMOUNT_EXCEEDS_PAID_AMOUNT
    • Trigger: कुल रिफंड राशि > भुगतान राशि
    • Message: गणना की गई रिफंड राशि भुगतान राशि से अधिक है
  • REFUND_WINDOW_EXPIRED
    • Trigger: अनुमत रिफंड विंडो के बाहर
    • Message: भुगतान निर्माण के दिन बाद रिफंड शुरू नहीं किए जा सकते। सहायता के लिए contact [email protected]
  • REQUEST_AMOUNT_BELOW_MINIMUM
    • Trigger: राशि < उत्पाद न्यूनतम
    • Message: राशि उत्पाद के लिए निर्दिष्ट न्यूनतम राशि से कम नहीं हो सकती
  • SUBSCRIPTION_EXPIRED
    • Trigger: बिलिंग ends_at के बाद
    • Message: सब्सक्रिप्शन समाप्त हो गया है, नए चार्ज नहीं बनाए जा सकते
  • SUBSCRIPTION_INACTIVE
    • Trigger: स्थिति ≠ ACTIVE
    • Message: सब्सक्रिप्शन सक्रिय नहीं है
  • SUBSCRIPTION_NOT_ON_DEMAND
    • Trigger: अपेक्षित ऑन-डिमांड लेकिन निश्चित अंतराल मिला
    • Message: सब्सक्रिप्शन पहले से ही ऑन-डिमांड नहीं है
  • SUBSCRIPTION_PAYMENT_RETRY_LIMIT_EXCEEDED
    • Trigger: सब्सक्रिप्शन भुगतान पुनः प्रयास अधिकतम प्रयासों से अधिक हो गए
    • Message: इस सब्सक्रिप्शन के लिए 10 प्रयासों की अधिकतम पुनः प्रयास सीमा पार हो गई
  • TOO_MANY_REQUESTS
    • Trigger: 429 दर-सीमा
    • Message: कोई संदेश नहीं
  • TOTAL_PAYMENT_AMOUNT_BELOW_MINIMUM_AMOUNT
    • Trigger: संयुक्त कार्ट कुल < गेटवे न्यूनतम
    • Message: भुगतान संसाधित करने के लिए की न्यूनतम राशि की आवश्यकता है
  • UNABLE_TO_EDIT_PRIMARY_BRAND
    • Trigger: नियमित API के माध्यम से प्राथमिक ब्रांड को अपडेट करने का प्रयास
    • Message: प्राथमिक ब्रांड को इस API एंडपॉइंट के माध्यम से अपडेट नहीं किया जा सकता।
  • UNAUTHORIZED
    • Trigger: कोई API कुंजी या अमान्य टोकन / स्कोप नहीं
    • Message: आप इस क्रिया को करने के लिए अधिकृत नहीं हैं
  • UNSUPPORTED_ACTION
    • Trigger: संसाधन प्रकार के लिए असमर्थित क्रिया
    • Message: उपयोग आधारित सब्सक्रिप्शन के लिए योजनाएँ बदलना समर्थित नहीं है
  • UNSUPPORTED_BILLING_CURRENCY
    • Trigger: सब्सक्रिप्शन USD तक सीमित हैं
    • Message: सब्सक्रिप्शन के लिए गैर-USD बिलिंग मुद्रा समर्थित नहीं है
  • UNSUPPORTED_COUNTRY
    • Trigger: भूगोल अभी तक समर्थित नहीं है
    • Message: देश वर्तमान में समर्थित नहीं है
  • UNSUPPORTED_CURRENCY
    • Trigger: उत्पाद या ऐड-ऑन मुद्रा अमान्य
    • Message: मुद्रा वर्तमान में समर्थित नहीं है / केवल USD और INR उत्पाद वर्तमान में समर्थित हैं / केवल USD और INR ऐड-ऑन मूल्य के लिए समर्थित हैं / बिलिंग_मुद्रा के लिए केवल USD या INR का अनुरोध किया जा सकता है / मुद्रा समर्थित नहीं है / भारतीय कार्ड सब्सक्रिप्शन के लिए अप्रत्याशित मुद्रा
  • UNSUPPORTED_DISCOUNT_TYPE
    • Trigger: फ्लैट-राशि छूट, आदि, अभी तक लाइव नहीं हैं
    • Message: अभी केवल प्रतिशत छूट कोड समर्थित हैं
  • UNSUPPORTED_PAYMENT_CURRENCY
    • Trigger: भुगतान मुद्रा कनेक्टर के लिए अवरुद्ध
    • Message: इस लेनदेन के लिए INR लेनदेन समर्थित नहीं है
  • UNSUPPORTED_TAX_CATEGORY
    • Trigger: कर श्रेणी स्ट्रिंग एनम में नहीं है
    • Message: श्रेणी वर्तमान में समर्थित नहीं है
  • UNSUCCESSFUL_PAYMENT_ID
    • Trigger: भुगतान आईडी असफल भुगतान को संदर्भित करती है
    • Message: भुगतान आईडी की असफल स्थिति है।
  • ZERO_AMOUNT_PAYMENT_REFUND_NOT_ALLOWED
    • Trigger: शून्य राशि के भुगतान को रिफंड करने का प्रयास
    • Message: शून्य मुद्रा राशि के भुगतान को रिफंड नहीं किया जा सकता

सर्वोत्तम प्रथाएँ

  1. हमेशा अपने एप्लिकेशन में त्रुटियों को सुचारू रूप से संभालें
  2. उचित त्रुटि लॉगिंग लागू करें
  3. अंतिम उपयोगकर्ताओं के लिए उपयुक्त त्रुटि संदेशों का उपयोग करें
  4. अस्थायी त्रुटियों के लिए पुनः प्रयास तर्क लागू करें
  5. अनसुलझे मुद्दों के लिए सहायता से संपर्क करें

सहायता

त्रुटि कोड या एकीकरण मुद्दों के साथ अतिरिक्त सहायता के लिए, कृपया हमारी सहायता टीम से संपर्क करें [email protected]