वापस

VibeFox Xendit for OpenCart — सहायता

आवश्यकताएँ

OpenCart: 3.0.x (3.0.5.0 पर परीक्षित) या 4.0.2 और उसके बाद का संस्करण (4.1.0.3 पर परीक्षित)।

PHP: 8.0 या बाद का संस्करण।

स्टोर की मुद्रा: IDR, PHP, VND, THB, MYR, USD या SGD। अन्य चेकआउट मुद्राओं के लिए भुगतान विधि नहीं दिखाई जाती। कौन-से भुगतान चैनल और मुद्राएँ वास्तव में उपलब्ध हैं, यह आपके Xendit खाते पर निर्भर करता है।

Xendit खाता: आपको टेस्ट मोड के लिए Money-in (इनवॉइस) पर लिखने की अनुमति वाली एक सीक्रेट API कुंजी चाहिए, और लाइव मोड के लिए एक और, साथ ही हर मोड का वेबहुक सत्यापन टोकन (देखें कॉन्फ़िगरेशन)। केवल सीक्रेट कुंजियाँ और सत्यापन टोकन इस्तेमाल होते हैं। कोई सार्वजनिक कुंजी ज़रूरी नहीं है, क्योंकि ग्राहक Xendit द्वारा होस्ट किए गए इनवॉइस पेज पर भुगतान करता है।

VibeFox लाइसेंस कुंजी: vibefox.net पर खरीदी जाती है। एक कुंजी एक डोमेन पर काम करती है।

इंस्टॉलेशन

डाउनलोड एक zip फ़ाइल है जिसमें दोनों OpenCart संस्करणों के पैकेज हैं। इसे अपने कंप्यूटर पर अनज़िप करें। इसमें README.txt, OpenCart 3 का पैकेज wcp_xendit_payment_gateway-oc3-(version).ocmod.zip और OpenCart 4 का पैकेज wcp_xendit_payment_gateway.ocmod.zip है। केवल अपने OpenCart संस्करण का पैकेज इंस्टॉल करें। लाइसेंस कुंजी दोनों संस्करणों के लिए एक ही है।

OpenCart 3

1. एडमिन में Extensions > Installer पर जाएँ, Upload पर क्लिक करें और फ़ाइल wcp_xendit_payment_gateway-oc3-(version).ocmod.zip चुनें। इस एक्सटेंशन में कोई OCMOD संशोधन नहीं है, इसलिए Extensions > Modifications को रिफ़्रेश करने की ज़रूरत नहीं है। इंस्टॉलर के बजाय आप इस पैकेज के upload फ़ोल्डर की सामग्री को अपने स्टोर के रूट फ़ोल्डर में भी कॉपी कर सकते हैं।

2. Extensions > Extensions पर जाएँ और प्रकार Payments चुनें। VibeFox Xendit Payment Gateway खोजें और Install (हरा + बटन) पर क्लिक करें। आपके एडमिन उपयोगकर्ता के पास भुगतान एक्सटेंशन की सूची बदलने का अधिकार होना चाहिए।

3. सेटिंग्स पेज खोलने के लिए Edit (पेंसिल बटन) पर क्लिक करें। पेज के शीर्ष पर लाइसेंस ब्लॉक में License key फ़ील्ड में अपनी VibeFox लाइसेंस कुंजी दर्ज करें और Activate पर क्लिक करें (देखें लाइसेंस कुंजी)।

4. अपनी Xendit सीक्रेट कुंजियाँ चिपकाएँ, Xendit Dashboard में वेबहुक URL सेट करें और सत्यापन टोकन चिपकाएँ (देखें कॉन्फ़िगरेशन)।

5. Enable/Disable चालू करें और Save पर क्लिक करें। टेस्ट मोड में एक टेस्ट ऑर्डर दें, फिर वास्तविक भुगतान लेने के लिए Test Mode बंद करें।

OpenCart 4

1. एडमिन में Extensions > Installer पर जाएँ, Upload पर क्लिक करें और फ़ाइल wcp_xendit_payment_gateway.ocmod.zip चुनें। फ़ाइल का नाम न बदलें: OpenCart 4 एक्सटेंशन कोड फ़ाइल के नाम से लेता है, और नाम बदला हुआ पैकेज काम नहीं करता।

2. पैकेज इसी पेज पर इंस्टॉल किए गए एक्सटेंशन की सूची में दिखता है। उसके आगे Install (हरा + बटन) पर क्लिक करें।

3. Extensions > Extensions पर जाएँ और प्रकार Payments चुनें। VibeFox Xendit Payment Gateway ढूँढें, Install (हरा + बटन) पर क्लिक करें, फिर Edit (पेंसिल बटन) पर क्लिक करें।

4. लाइसेंस कुंजी, Xendit कुंजियाँ और webhook OpenCart 3 के चरण 3 से 5 की तरह दर्ज करें। सेटिंग्स पेज और उसके फ़ील्ड दोनों संस्करणों में एक जैसे हैं। केवल webhook URL अलग है (देखें Webhook)।

नई इंस्टॉलेशन भुगतान विधि बंद और टेस्ट मोड चालू के साथ शुरू होती है।

कॉन्फ़िगरेशन

सभी सेटिंग्स एक्सटेंशन पेज पर हैं: Extensions > Extensions > Payments > VibeFox Xendit Payment Gateway > Edit. अनुभाग बाईं ओर सूचीबद्ध हैं; सूची के नीचे का Save बटन पूरा पेज सेव करता है। एक्सटेंशन बदलने का अधिकार न हो तो पेज सेटिंग्स दिखाता है, पर उन्हें सेव नहीं कर सकता।

सेटिंग्स के ऊपर एक बॉक्स सक्रिय मोड दिखाता है: TEST MODE (इनवॉइस टेस्ट सीक्रेट कुंजी से बनते हैं; कोई वास्तविक पैसा नहीं लिया जाता) या LIVE MODE (इनवॉइस लाइव सीक्रेट कुंजी से बनते हैं और ग्राहकों से शुल्क लिया जाता है)। जब सक्रिय मोड की सीक्रेट कुंजी गायब हो या उसका उपसर्ग गलत हो, तब पेज चेतावनी देता है (तब चेकआउट पर भुगतान विधि छिपा दी जाती है), और जब सक्रिय मोड का वेबहुक सत्यापन टोकन खाली हो, तब भी चेतावनी देता है (तब Xendit की सूचनाएँ अस्वीकार हो जाती हैं, इसलिए ऑर्डर तभी अपडेट होते हैं जब ग्राहक आपके स्टोर पर लौटता है)।

सेव करते समय Title खाली नहीं हो सकता (अधिकतम 128 अक्षर), Sort Order पूर्ण संख्या होनी चाहिए (ऋणात्मक संख्याएँ मान्य हैं), Total 0 या उससे अधिक की संख्या होनी चाहिए, और जियो ज़ोन तथा ऑर्डर स्थितियाँ मौजूद होनी चाहिए। अन्यथा कुछ भी सेव नहीं होता और पेज वह फ़ील्ड बताता है।

Xendit

Enable/Disable: Enable Xendit भुगतान विधि को चालू या बंद करता है। डिफ़ॉल्ट: off।

Title: वह भुगतान विधि का नाम जो ग्राहक चेकआउट पर देखते हैं। ऑर्डर में भी यही भुगतान विधि का नाम सेव होता है। डिफ़ॉल्ट: Xendit। आवश्यक, अधिकतम 128 अक्षर।

Description: Confirm Order चरण पर पुष्टि बटन के ऊपर ग्राहक को दिखाया गया पाठ। डिफ़ॉल्ट: Pay with virtual accounts, e-wallets, QR codes, retail outlets or cards via Xendit.

Sort Order: चेकआउट पर भुगतान विधियों में Xendit की स्थिति। खाली छोड़ें या पूर्ण संख्या दर्ज करें।

Geo Zone: Xendit केवल चुने हुए जियो ज़ोन के भुगतान पते के लिए दें। डिफ़ॉल्ट: All zones। जियो ज़ोन System > Localisation > Geo Zones में सेट होते हैं।

Total: चेकआउट कुल, स्टोर की डिफ़ॉल्ट मुद्रा में, जिस तक पहुँचने पर ही Xendit दिया जाए। किसी भी कुल के लिए Xendit देने हेतु खाली छोड़ें।

API कुंजियाँ

Xendit Dashboard > Settings > Developers > API keys में (अनुभाग में वहाँ का लिंक है) Money-in (इनवॉइस) पर लिखने की अनुमति वाली एक सीक्रेट API कुंजी बनाएँ, एक बार टेस्ट मोड में और एक बार लाइव मोड में। कुंजी तय करती है कि इनवॉइस कहाँ बनेगा। सेव करते समय जो कुंजी अपने फ़ील्ड के उपसर्ग से शुरू नहीं होती, वह सेव नहीं होती, और पेज दिखाता है, उदाहरण के लिए Test secret key was not saved: it must start with xnd_development_। बाकी सेटिंग्स सेव हो जाती हैं।

Test Mode: टेस्ट सीक्रेट कुंजी से इनवॉइस बनाता है, इसलिए कोई वास्तविक पैसा नहीं लिया जाता। डिफ़ॉल्ट: on। लाइव सीक्रेट कुंजी से वास्तविक भुगतान लेने के लिए इसे बंद करें। चालू रहने पर ग्राहक Confirm Order चरण पर Test mode: no real money is charged. देखते हैं।

Test Secret Key: Xendit टेस्ट मोड की सीक्रेट कुंजी। यह xnd_development_ से शुरू होती है।

Live Secret Key: Xendit लाइव मोड की सीक्रेट कुंजी। यह xnd_production_ से शुरू होती है।

सेव की गई कुंजियाँ और टोकन दोबारा कभी नहीं दिखाए जाते। फ़ील्ड खाली रहता है और Saved — leave empty to keep it. दिखाता है। केवल बदलने के लिए नया मान दर्ज करें। सेव किया गया मान हटाने के लिए फ़ील्ड के नीचे Clear the saved value पर टिक करें और Save पर क्लिक करें।

Webhook

वेबहुक आपके स्टोर को बताता है कि कोई इनवॉइस भुगतान हो चुका है। Xendit Dashboard > Settings > Developers > Webhooks में (अनुभाग में वहाँ का लिंक है) टेस्ट और लाइव, दोनों मोड के लिए Invoices > Invoice paid हेतु Webhook URL में दिखाया गया URL सेट करें। चाहें तो Invoice expired के लिए भी सेट कर सकते हैं। OpenCart 3 पर URL कुछ इस तरह दिखता है: https://your-store/index.php?route=extension/payment/wcp_xendit_payment_gateway/webhook, और OpenCart 4 पर https://your-store/index.php?route=extension/wcp_xendit_payment_gateway/payment/wcp_xendit_payment_gateway.webhook। यह आपकी OpenCart इंस्टॉलेशन के स्टोरफ़्रंट पते से बनता है। इसे सेटिंग्स में दिखाए गए अनुसार बिल्कुल वैसा ही कॉपी करें। यह इंटरनेट से पहुँच योग्य होना चाहिए।

Invoice paid: ग्राहक ने इनवॉइस का भुगतान किया है। ऑर्डर को नीचे बताई गई जाँच के बाद स्थिति मिलती है।
Invoice expired: इनवॉइस बिना भुगतान के समाप्त हो गया। भुगतान प्रयास बंद हो जाता है; कार्ट को दोबारा भुगतान के लिए खोला जा सकता है।

फिर हर मोड का Webhook verification token Xendit Dashboard से उसके संबंधित फ़ील्ड में कॉपी करें। Xendit इसे x-callback-token हेडर में भेजता है। जिस मोड में इनवॉइस बना है, उसके टोकन के बिना आई सूचनाएँ अस्वीकार हो जाती हैं। टोकन केवल यह साबित करता है कि सूचना Xendit से आई है: इनवॉइस की स्थिति, राशि और मुद्रा हमेशा उसी मोड की सीक्रेट कुंजी से Xendit API से दोबारा पढ़ी जाती हैं। वेबहुक के बिना ऑर्डर तभी पुष्ट होता है जब ग्राहक भुगतान के बाद स्टोर पर लौटता है।

Test Webhook Verification Token: Xendit टेस्ट मोड का वेबहुक सत्यापन टोकन।

Live Webhook Verification Token: Xendit लाइव मोड का वेबहुक सत्यापन टोकन।

भुगतान

Invoice Description: Xendit इनवॉइस पर दिखाया गया विवरण। आप प्लेसहोल्डर {order_id} और {order_number} (दोनों OpenCart ऑर्डर नंबर हैं) और {site_name} (स्टोर का नाम) उपयोग कर सकते हैं। HTML हटा दिया जाता है और पाठ 255 अक्षरों पर काट दिया जाता है। डिफ़ॉल्ट: Order #{order_id}।

Order Status After Payment: पुष्ट भुगतान एक ही स्थिति-बदलाव में कौन-सी स्थिति सेट करता है।

Processing (default): ऑर्डर को Paid Order Status मिलता है।
Completed: ऑर्डर को Complete Order Status मिलता है।

OpenCart Confirm Order चरण पर ऑर्डर बिना स्थिति के बनाता है (लापता ऑर्डर)। ऑर्डर को तभी स्थिति मिलती है जब Xendit API के माध्यम से भुगतान की पुष्टि कर दे। नीचे का हर फ़ील्ड आपकी OpenCart ऑर्डर स्थितियाँ सूचीबद्ध करता है।

Paid Order Status: Processing के साथ पुष्ट भुगतान के बाद की स्थिति। डिफ़ॉल्ट: Processing।

Complete Order Status: Completed के साथ पुष्ट भुगतान के बाद की स्थिति। डिफ़ॉल्ट: Complete।

On Hold (Review) Status: किसी इनवॉइस का भुगतान ऑर्डर से अलग राशि या मुद्रा में हुआ (इनवॉइस बनने के बाद कार्ट बदला गया, या आंशिक भुगतान)। एक नोट कारण बताता है। डिफ़ॉल्ट: Pending, क्योंकि OpenCart में On hold स्थिति नहीं है। आप System > Localisation > Order Statuses में अपनी स्थिति बना सकते हैं और यहाँ चुन सकते हैं।

उन्नत

Debug Log: API अनुरोधों और वेबहुक को OpenCart लॉग फ़ोल्डर (storage/logs) में xendit_p_debug.log.php में लिखता है। यह फ़ाइल वेब से नहीं खोली जा सकती, और 5 MB होने पर इसे xendit_p_debug.old.log.php में ले जाया जाता है। त्रुटियाँ और चेतावनियाँ हमेशा दर्ज होती हैं, भले ही यह बंद हो। API कुंजियाँ, टोकन और ग्राहक डेटा दर्ज नहीं होते। डिफ़ॉल्ट: off।

Log: लॉग का आकार और नवीनतम प्रविष्टियाँ दिखाता है। उसे खाली करने के लिए Clear log पर क्लिक करें।

Delete Data on Uninstall: चालू होने पर एक्सटेंशन अनइंस्टॉल करने से गेटवे सेटिंग्स और लॉग हट जाते हैं। ऑर्डर डेटा (ऑर्डर के Xendit इनवॉइस ID) हमेशा रखा जाता है। डिफ़ॉल्ट: off।

आयात / निर्यात

Export: Download JSON सेटिंग्स को JSON फ़ाइल के रूप में सेव करता है। सीक्रेट कुंजियाँ और टोकन निर्यात नहीं होते।

Import: पहले निर्यात किया गया JSON चिपकाएँ और सेटिंग्स बहाल करने के लिए Import पर क्लिक करें। सेव की गई सीक्रेट कुंजियाँ और टोकन बने रहते हैं।

चेकआउट

जब चेकआउट की मुद्रा IDR, PHP, VND, THB, MYR, USD या SGD होती है, तब भुगतान विधि दिखाई जाती है। ग्राहक इसे Payment Method चरण पर चुनता है (डिफ़ॉल्ट रूप से Xendit)। Confirm Order चरण पर ग्राहक आपका विवरण देखता है। OpenCart इसी चरण पर ऑर्डर बनाता है, अभी भी बिना स्थिति के। जब ग्राहक Confirm Order पर क्लिक करता है, तब एक्सटेंशन ऑर्डर की मुद्रा में ऑर्डर कुल के लिए एक Xendit इनवॉइस बनाता है और ग्राहक को Xendit इनवॉइस पेज पर भेजता है। IDR और VND की राशियाँ पूर्ण संख्याओं में पूर्णांकित होती हैं, क्योंकि Xendit इन मुद्राओं के लिए दशमलव स्वीकार नहीं करता। ग्राहक का ईमेल पता Xendit को दिया जाता है। इनवॉइस पेज पर ग्राहक इस मुद्रा के लिए आपके Xendit खाते में सक्रिय भुगतान चैनलों में से किसी एक से भुगतान करता है, जैसे वर्चुअल अकाउंट, ई-वॉलेट, QR कोड, रिटेल आउटलेट या कार्ड। OpenCart 4 पर ग्राहक भुगतान विधि भुगतान विधि के ब्लॉक के Choose बटन से चुनता है, विंडो Payment method options में, और पेज के नीचे Confirm Order पर क्लिक करता है।

भुगतान के बाद ग्राहक आपके स्टोर पर लौटता है। ऑर्डर को भुगतान किया हुआ तभी चिह्नित किया जाता है जब Xendit उसकी पुष्टि कर दे: वेबहुक के द्वारा, या ग्राहक के लौटने पर Xendit API को सर्वर-साइड अनुरोध के द्वारा। फिर ऑर्डर को OpenCart के मानक तरीके से स्थिति मिलती है, सामान्य ऑर्डर ईमेल और स्टॉक अपडेट के साथ, और ग्राहक OpenCart का ऑर्डर सफलता पेज देखता है। यदि Xendit ने अभी तक भुगतान की पुष्टि नहीं की है, तो एक Payment confirmation पेज Your payment has not been confirmed by Xendit yet. Your order will be confirmed as soon as Xendit confirms it — please do not pay again. दिखाता है, साथ में Check again और Back to checkout बटन होते हैं। वेबहुक आते ही ऑर्डर की स्थिति सेट कर देता है।

यदि इनवॉइस विफल हो जाए या उसकी समय-सीमा समाप्त हो जाए, तो Xendit ग्राहक को वापस भेज देता है। एक्सटेंशन पहले इनवॉइस की जाँच करता है (हो सकता है वह किसी दूसरे टैब में भुगतान हो चुका हो), फिर उसे समाप्त कर देता है ताकि उसका अब भुगतान न हो सके। ग्राहक The Xendit payment was not completed. You can try again or choose another payment method. के साथ चेकआउट पर लौट आता है। कार्ट सुरक्षित रहता है।

OpenCart 3 हर बार जब Confirm Order चरण दिखाया जाता है, नया ऑर्डर बनाता है। OpenCart 4 चेकआउट के ऑर्डर को रखता है और अपडेट करता है, इसलिए विफल या समाप्त इनवॉइस के बाद अगला Confirm Order उसी ऑर्डर के लिए नया इनवॉइस बनाता है। यदि उसी कार्ट का कोई दूसरा ऑर्डर पहले से भुगतान किया हुआ है, तो ग्राहक सीधे सफलता पेज पर जाता है और उससे दोबारा शुल्क नहीं लिया जाता। यदि ऑर्डर कुल, मुद्रा और मोड नहीं बदले हैं और इस ऑर्डर का खुला इनवॉइस कम से कम पाँच मिनट और वैध है, तो ग्राहक उसी इनवॉइस पर भेजा जाता है। अन्यथा पुराने इनवॉइस को पहले समाप्त किया जाता है और नया बनाया जाता है, ताकि एक कार्ट के लिए कभी दो खुले इनवॉइस न हों। यदि पुराना इनवॉइस पहले ही भुगतान किया जा चुका है, तो नया भुगतान बनाने के बजाय वही भुगतान पुष्ट किया जाता है।

OpenCart 4 पर, यदि चेकआउट का ऑर्डर स्टोर ने इस बीच बंद कर दिया है (उदाहरण के लिए रद्द या रिफ़ंड), या वह पहले से भुगतान हो चुका है पर कार्ट तब से बदल गई है, नई मात्रा सहित, तो ग्राहक Your previous order is already closed or paid. Please confirm the order again: the cart will be paid with a new order. के साथ चेकआउट पर वापस भेजा जाता है, और अगला Confirm Order नया ऑर्डर भुगतान करता है। OpenCart 4 पर इस संदेश के साथ, भुगतान पूरा न होने का संदेश और We could not match this payment to an order. If you were charged, please contact us. चेकआउट पेज के ऊपर दिखाए जाते हैं।

यदि Xendit भुगतान शुरू नहीं कर पाता, तो ग्राहक बटन के ऊपर एक छोटे संदेश के साथ Confirm Order चरण पर ही रहता है, उदाहरण के लिए Xendit is temporarily unavailable. Please try again in a few minutes or choose another payment method., यह संदेश कि आपके खाते के लिए मुद्रा स्वीकार्य नहीं है, या यह संदेश कि ऑर्डर कुल Xendit की राशि सीमा से बाहर है। तकनीकी कारण लॉग में लिखा जाता है। शून्य कुल वाला ऑर्डर Xendit से नहीं चुकाया जा सकता।

स्टोर के मेंटेनेंस मोड में होने पर भी वेबहुक और ग्राहक की वापसी काम करती है: OpenCart 3 भुगतान एक्सटेंशन के अनुरोधों को आगे जाने देता है, और OpenCart 4 पर एक्सटेंशन इनके लिए एक startup action जोड़ता है।

भुगतान हमेशा Xendit के पेज पर होता है। एक्सटेंशन में एडमिन से रिफ़ंड, सेव किए गए कार्ड, सदस्यताएँ या आवर्ती भुगतान, चेकआउट पेज पर कार्ड या ई-वॉलेट फ़ील्ड, अलग-अलग अधिकृत करना और कैप्चर करना, और xenPlatform सब-अकाउंट नहीं हैं।

ऑर्डर

ऑर्डर स्थितियाँ

कोई स्थिति नहीं (लापता ऑर्डर): ग्राहक को Xendit पर भेजा गया और उसने भुगतान नहीं किया, या Xendit ने अभी तक भुगतान की पुष्टि नहीं की है। Sales > Orders में ऐसे ऑर्डर केवल तब दिखते हैं जब फ़िल्टर Order Status को Missing Orders पर सेट किया गया हो।

Paid Order Status या Complete Order Status (डिफ़ॉल्ट Processing या Complete): भुगतान की पुष्टि हो गई। स्थिति Order Status After Payment का अनुसरण करती है। एक नोट इनवॉइस ID, भुगतान की गई राशि, भुगतान चैनल और मोड दिखाता है।

On Hold (Review) Status (डिफ़ॉल्ट Pending): भुगतान किया गया इनवॉइस ऑर्डर कुल या मुद्रा से मेल नहीं खाता, या कुल से कम भुगतान हुआ है (उदाहरण के लिए, इनवॉइस बनने के बाद कार्ट बदला गया)। नोट इसे समझाता है। Xendit Dashboard में भुगतान की जाँच करें, फिर ऑर्डर पूरा करें या भुगतान रिफ़ंड करें। यदि उसी ऑर्डर का कोई दूसरा इनवॉइस बाद में सही राशि से भुगतान होता है, तो ऑर्डर भुगतान की स्थिति में चला जाता है।

यदि किसी ऐसे ऑर्डर के लिए इनवॉइस का भुगतान होता है जिसकी स्थिति कुछ और है, जैसे रद्द या रिफ़ंड किया गया, तो ऑर्डर की स्थिति नहीं बदलती। एक नोट आपसे Xendit Dashboard में भुगतान रिफ़ंड करने या ऑर्डर मैन्युअल रूप से बहाल करने के लिए कहता है। यदि पहले से भुगतान किए गए ऑर्डर के लिए, या पहले से भुगतान किए गए कार्ट के किसी दूसरे ऑर्डर के लिए दूसरा इनवॉइस भुगतान होता है, तो ऑर्डर नहीं बदलता और भुगतान किए गए ऑर्डर पर एक नोट आपसे Xendit Dashboard में डुप्लीकेट भुगतान रिफ़ंड करने के लिए कहता है।

नोट्स ऑर्डर के History की वे प्रविष्टियाँ हैं जिन्हें ग्राहक नहीं देखता। वे शब्द Xendit से शुरू होते हैं।

VibeFox Xendit Payment Gateway टैब

Sales > Orders में Xendit से भुगतान किया गया ऑर्डर खोलें। ऑर्डर पेज के नीचे, History और Additional के बगल में, VibeFox Xendit Payment Gateway टैब Xendit invoice, Mode (टेस्ट भुगतानों के लिए Test लेबल के साथ), भुगतान की Status, Invoices of this order and its cart तालिका (तारीख, ऑर्डर, इनवॉइस ID, बाहरी ID, मोड, राशि, भुगतान की गई राशि, स्थिति, भुगतान चैनल) और ऑर्डर के Payment notes दिखाता है। यह टैब उन उपयोगकर्ताओं को दिखाया जाता है जिनके पास एक्सटेंशन तक पहुँच है।

रिफ़ंड

रिफ़ंड स्टोर से Xendit को नहीं भेजे जाते। Xendit Dashboard में भुगतान रिफ़ंड करें (टैब में दिखाया गया इनवॉइस ID खोजें), और उसके बाद OpenCart में ऑर्डर की स्थिति बदलें। Sales > Returns में उत्पाद वापसी Xendit के माध्यम से पैसा वापस नहीं भेजती।

लाइसेंस कुंजी

यह एक्सटेंशन vibefox.net से मिली VibeFox लाइसेंस कुंजी के साथ काम करता है। License — VibeFox Xendit Payment Gateway लाइसेंस ब्लॉक, Extensions > Extensions > Payments > VibeFox Xendit Payment Gateway > Edit पेज पर सेटिंग्स के ऊपर पहला ब्लॉक है। कुंजी को License key में चिपकाएँ और Activate पर क्लिक करें। इसके बाद ब्लॉक कुंजी को मास्क करके दिखाता है, स्थिति (जैसे लाइसेंस किस तारीख तक सक्रिय है और आपका डोमेन) दिखाता है, और बटन Check now (स्थिति दोबारा जाँचें), Change key (दूसरी कुंजी दर्ज करें) और Remove key (इस स्टोर से कुंजी हटाएँ) दिखाता है। उनके नीचे Product: opencart-payment-xendit वाली पंक्ति और लिंक Manage licenses and domains in your account है, जो आपका vibefox.net खाता खोलता है। केवल वे एडमिन उपयोगकर्ता जिनके पास इस एक्सटेंशन के लिए Modify अनुमति है, कुंजी बदल सकते हैं। ब्लॉक के पाठ एडमिन भाषा का अनुसरण करते हैं (अंग्रेज़ी और रूसी शामिल हैं)।

यदि कुंजी स्वीकार नहीं होती, तो ब्लॉक कारण बताता है, जैसे Key not found, This key belongs to another product, Domain limit reached या तारीख के साथ License expired on। स्टोर का पता बदलने के बाद, या अपने खाते में डोमेन स्लॉट खाली करने के बाद, Check now पर क्लिक करें। यदि लाइसेंस सर्वर तक पहुँच न हो, तो एक्सटेंशन अंतिम ज्ञात स्थिति के साथ काम करता रहता है।

एक कुंजी एक डोमेन पर काम करती है: OpenCart कॉन्फ़िगरेशन में स्टोर का पता। स्टोर से कुंजी हटाने से उसका डोमेन स्लॉट खाली नहीं होता। अपने vibefox.net खाते में स्लॉट खाली करें।

सक्रिय कुंजी के बिना चेकआउट पर ग्राहकों को Xendit नहीं दिखाया जाता। यदि फिर भी भुगतान शुरू होता है, तो ग्राहक को This payment method is not available. Please choose another one. दिखता है। जो एडमिन उपयोगकर्ता उसी ब्राउज़र में एडमिन में लॉग इन है, उसे स्टोर में भुगतान विधि (unlicensed — visible to admins only) चिह्न के साथ अब भी दिखती है, ताकि आप कुंजी खरीदने से पहले एक्सटेंशन सेट और टेस्ट कर सकें। OpenCart 4 पर यह पूर्वावलोकन उपलब्ध नहीं है: स्टोर को एडमिन लॉगिन दिखाई नहीं देता, इसलिए सक्रिय कुंजी के बिना भुगतान विधि सभी से छिपी रहती है। एक बार Edit पेज खोलने के बाद एडमिन Dashboard पर एक अनुस्मारक दिखता है। उसे × से बंद करें, तो वह 7 दिनों के लिए छिप जाता है। मौजूदा ऑर्डर प्रभावित नहीं होते: जिन भुगतानों की शुरुआत हो चुकी है, उनकी पुष्टि अब भी होती है।

लाइसेंस समाप्त होने पर एक्सटेंशन काम करना जारी रखता है, लेकिन अपडेट और सहायता के लिए नवीनीकरण ज़रूरी है। जब आप एडमिन Dashboard या Edit पेज खोलते हैं, तो स्थिति अपने आप दोबारा जाँची जाती है: कुंजी दर्ज करने के बाद पहले 14 दिनों तक रोज़ एक बार, फिर हफ़्ते में एक बार। cron जॉब की ज़रूरत नहीं है। एक्सटेंशन अनइंस्टॉल करने पर लाइसेंस कुंजी और लाइसेंस स्थिति हमेशा हटा दी जाती है।

समस्या निवारण

चेकआउट पर Xendit दिखाई नहीं देता: जाँचें कि लाइसेंस सक्रिय है, Enable/Disable चालू है, वर्तमान मोड में सही उपसर्ग वाली सीक्रेट कुंजी है (टेस्ट मोड में xnd_development_ से शुरू होने वाली Test Secret Key, लाइव मोड में xnd_production_ से शुरू होने वाली Live Secret Key), और चेकआउट मुद्रा IDR, PHP, VND, THB, MYR, USD या SGD है। जब कुंजी गायब या गलत हो, तो सेटिंग्स पेज चेतावनी दिखाता है। यह भी जाँचें कि भुगतान पता चुने हुए Geo Zone में है और ऑर्डर सेटिंग्स में तय Total तक पहुँचता है।

भुगतान हो गया, पर ऑर्डर बिना स्थिति के रहता है: वेबहुक काम नहीं कर रहा। जिस मोड (टेस्ट या लाइव) का आप उपयोग करते हैं, उसके Xendit Dashboard में जाँचें कि Webhook URL में दिखाया गया URL Invoice paid के लिए सेट है, और उस मोड का सत्यापन टोकन संबंधित फ़ील्ड में सेव है। Xendit Dashboard हर वेबहुक के लिए आपके स्टोर का जवाब दिखाता है। ग्राहक के भुगतान के बाद स्टोर पर लौटने पर भी ऑर्डर को स्थिति मिल जाती है।

Webhook answers Webhook verification token is not configured: कोई भी सत्यापन टोकन सेट नहीं है। टोकन को सेटिंग्स में चिपकाएँ।

Webhook answers Unauthorized: Xendit द्वारा भेजा गया टोकन सेटिंग्स के किसी भी टोकन से मेल नहीं खाता। सही मोड का टोकन दोबारा कॉपी करें।

Webhook answers Token does not match the mode of this invoice: इनवॉइस दूसरे मोड में बना था। टेस्ट सूचना कभी भी लाइव भुगतान की पुष्टि नहीं करती, और इसका उल्टा भी सही है। वेबहुक और टोकन उस मोड में सेट करें जिसमें ऑर्डर का भुगतान हुआ था।

Webhook answers Ignored: not an invoice of this store: इनवॉइस इस स्टोर द्वारा नहीं बनाया गया, उदाहरण के लिए उसी Xendit खाते पर किसी दूसरे इंटीग्रेशन द्वारा। Xendit Dashboard का Test बटन भी यही जवाब पाता है, जो पुष्ट करता है कि URL और टोकन काम कर रहे हैं। Ignored: unknown order और Ignored: unknown invoice का मतलब है कि ऑर्डर या इनवॉइस इस स्टोर को ज्ञात नहीं है।

Webhook answers Temporary error: इनवॉइस की जाँच के लिए Xendit API तक पहुँचा नहीं जा सका, इनवॉइस के मोड की सीक्रेट कुंजी गायब है, या उसी समय कार्ट किसी दूसरे अनुरोध से अपडेट हो रहा था। Xendit वेबहुक दोबारा भेजता है। यदि दोनों मोड में भुगतान शुरू हुए हैं, तो जाँचें कि दोनों सीक्रेट कुंजियाँ सेट हैं, और कारण देखने के लिए Debug Log चालू करें।

ब्राउज़र में वेबहुक URL Method not allowed दिखाता है: यह सामान्य है। यह URL केवल Xendit के अनुरोध स्वीकार करता है।

कुंजी सेव नहीं होती: मान अपने फ़ील्ड के उपसर्ग से शुरू नहीं होता। टेस्ट कुंजियाँ xnd_development_ से, लाइव कुंजियाँ xnd_production_ से शुरू होती हैं।

ग्राहक को This payment method is temporarily unavailable दिखता है: Xendit ने अनुरोध अस्वीकार किया, उदाहरण के लिए सीक्रेट कुंजी गलत है या उसमें Money-in (इनवॉइस) पर लिखने की अनुमति नहीं है। एक्सटेंशन पेज पर Log फ़ील्ड देखें। बिलिंग विवरण से जुड़ा संदेश बताता है कि Xendit ने अनुरोध का डेटा स्वीकार नहीं किया, उदाहरण के लिए ईमेल।

ग्राहक को A payment for this order was already received by Xendit and is being reviewed दिखता है: इस कार्ट का कोई पिछला इनवॉइस भुगतान हो चुका है, पर ऑर्डर की पुष्टि अभी तक नहीं हो पाई। Xendit Dashboard और लॉग में भुगतान की जाँच करें।

ग्राहक को We could not match this payment to an order दिखता है: Xendit से आया वापसी लिंक इस स्टोर के किसी ऑर्डर का नहीं है, या इनवॉइस को उससे मिलाया नहीं जा सका। Xendit Dashboard और लॉग में भुगतान की जाँच करें।

भुगतान के बाद ऑर्डर समीक्षा स्थिति में है: VibeFox Xendit Payment Gateway टैब के नोट पढ़ें। भुगतान की गई राशि या मुद्रा ऑर्डर से अलग थी। ऑर्डर पूरा करें या Xendit Dashboard में भुगतान रिफ़ंड करें।

डेवलपर्स के लिए: एक्सटेंशन OpenCart इवेंट xendit_p_invoice_request, xendit_p_supported_currencies और xendit_p_currency_decimals को ट्रिगर करता है, ताकि इनवॉइस अनुरोध, मुद्राओं की सूची और प्रति मुद्रा दशमलव संख्या बदली जा सके।

अनइंस्टॉल

Extensions > Extensions पर जाएँ, प्रकार Payments चुनें और VibeFox Xendit Payment Gateway के बगल में Uninstall (लाल − बटन) पर क्लिक करें। इस एक्सटेंशन की लाइसेंस कुंजी और लाइसेंस स्थिति हमेशा हटा दी जाती है। OpenCart एक्सटेंशन की अपनी सेटिंग्स हमेशा हटा देता है: Enable/Disable, Sort Order, Geo Zone, Total और Payment अनुभाग की ऑर्डर स्थितियाँ, जो फिर से इंस्टॉल करने पर डिफ़ॉल्ट पर लौट आती हैं। OpenCart 4 पर एक्सटेंशन का इवेंट और उसकी startup action भी हटा दिए जाते हैं, जो maintenance mode में webhook और ग्राहक की वापसी को आगे जाने देती है। यदि Delete Data on Uninstall चालू है, तो बाकी गेटवे सेटिंग्स (शीर्षक, विवरण, टेस्ट मोड, कुंजियाँ, टोकन, इनवॉइस विवरण, भुगतान के बाद ऑर्डर स्थिति, लॉगिंग) और लॉग हटा दिए जाते हैं। यदि यह बंद है, तो उन्हें बाद में दोबारा इंस्टॉल करने के लिए रखा जाता है। ऑर्डरों का Xendit इनवॉइस डेटा हमेशा रखा जाता है। मौजूदा ऑर्डर अपने भुगतान नोट्स रखते हैं।

OpenCart 4 पर फ़ाइलें भी हटाने के लिए, अनइंस्टॉल के बाद Extensions > Installer पर जाएँ और इंस्टॉल किए गए एक्सटेंशन की सूची में VibeFox Xendit Payment Gateway के आगे Uninstall (नारंगी − बटन) पर क्लिक करें, फिर अपलोड किए गए पैकेज को हटाने के लिए Delete (लाल डस्टबिन बटन) पर क्लिक करें।

Xendit अपने-अपने स्वामी का ट्रेडमार्क है। यह एक्सटेंशन Xendit से संबद्ध नहीं है और न ही Xendit द्वारा समर्थित है।