वापस

VibeFox Midtrans for OpenCart — सहायता

आवश्यकताएँ

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

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

मुद्रा: इंडोनेशियाई रुपिया (IDR)। Midtrans केवल IDR में शुल्क लेता है, इसलिए भुगतान विधि केवल तभी दी जाती है जब चेकआउट मुद्रा IDR हो। कोई मुद्रा परिवर्तन नहीं होता। यदि आपके स्टोर में IDR मुद्रा नहीं है, तो System > Localisation > Currencies में उसे जोड़ें।

Midtrans खाता: आपको Midtrans Dashboard > Settings > Access Keys से Server Key चाहिए, सैंडबॉक्स डैशबोर्ड और उत्पादन डैशबोर्ड, दोनों में। केवल Server Key उपयोग होती है। Snap Redirect के लिए Client Key की ज़रूरत नहीं है। भुगतान के तरीके स्वयं (GoPay, QRIS, वर्चुअल अकाउंट और अन्य) आपके Midtrans खाते में सक्षम किए जाते हैं।

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

इंस्टॉलेशन

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

OpenCart 3

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

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

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

4. Server Keys दर्ज करें और भुगतान सूचना URL को Midtrans डैशबोर्ड में कॉपी करें (देखें कॉन्फ़िगरेशन)।

5. Enable/Disable चालू करें और Save पर क्लिक करें। Sandbox में जाँचें, फिर Environment को Production पर बदलें।

OpenCart 4

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

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

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

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

नया इंस्टॉल भुगतान विधि बंद और Sandbox वातावरण चुने हुए के साथ शुरू होता है।

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

सभी सेटिंग्स एक्सटेंशन पेज पर हैं: Extensions > Extensions > Payments > VibeFox Midtrans Payment Gateway > Edit। सेक्शन बाईं ओर सूचीबद्ध हैं; सूची के नीचे का Save बटन पूरा पेज सहेजता है। सेटिंग्स के ऊपर पेज चेतावनी देता है जब चुने गए वातावरण का Server Key गायब हो (तब चेकआउट में भुगतान विधि छिप जाती है) और जब स्टोर की डिफ़ॉल्ट मुद्रा IDR न हो, और Sandbox चुने होने पर Sandbox mode: payments are simulated, no real money is charged. दिखाता है। एक्सटेंशन बदलने का अधिकार न होने पर पेज सेटिंग्स दिखाता है, पर उन्हें सहेज नहीं सकता।

सहेजते समय Title 1 से 128 अक्षरों का होना चाहिए, Sort Order पूर्ण संख्या होनी चाहिए, Total 0 या उससे बड़ी संख्या होनी चाहिए और Payment page expiry (minutes) पूर्ण संख्या होनी चाहिए। यदि कोई मान गलत है, तो पेज त्रुटि दिखाता है और कुछ भी सहेजा नहीं जाता।

Midtrans

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

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

Description: Confirm Order चरण पर पुष्टि बटन के ऊपर ग्राहक को दिखाया जाने वाला पाठ। डिफ़ॉल्ट: Pay securely via Midtrans — GoPay, QRIS, ShopeePay, cards, bank transfer and more। Sandbox में उसके ऊपर SANDBOX MODE: no real money is charged. वाली पंक्ति दिखती है।

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

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

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

API क्रेडेंशियल

Midtrans Dashboard > Settings > Access Keys से Server Key कॉपी करें। इस सेक्शन में उत्पादन डैशबोर्ड और सैंडबॉक्स डैशबोर्ड के लिंक हैं।

Environment: नए भुगतानों के लिए उपयोग होने वाला Midtrans वातावरण। बदलने पर चुने गए वातावरण की कुंजी और API उपयोग होते हैं। ऑर्डर अपने भुगतान वाले वातावरण को रिफ़ंड और सूचनाओं के लिए सुरक्षित रखते हैं। डिफ़ॉल्ट: Sandbox।

Sandbox: परीक्षण के लिए, बिना असली पैसे के।
Production: असली भुगतान।

Production Server Key: Mid-server- से शुरू होती है। गोपनीय रखें।

Sandbox Server Key: SB-Mid-server- से शुरू होती है।

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

भुगतान सूचना URL

सूचना आपके स्टोर को बताती है कि भुगतान हो गया है। Notification URL फ़ील्ड वह URL दिखाता है जिसे उपयोग करना है। OpenCart 3 पर यह कुछ इस तरह दिखता है: https://your-store/index.php?route=extension/payment/wcp_midtrans_payment_gateway/webhook, OpenCart 4 पर https://your-store/index.php?route=extension/wcp_midtrans_payment_gateway/payment/wcp_midtrans_payment_gateway.webhook जैसा। यह आपके OpenCart इंस्टॉलेशन के स्टोरफ़्रंट पते से बनता है। URL को ठीक वैसा ही कॉपी करें जैसा सेटिंग्स दिखाती हैं और उसे Midtrans Dashboard > Settings > Payment > Notification URL में चिपकाएँ, जिस भी सैंडबॉक्स और उत्पादन डैशबोर्ड का आप उपयोग करते हैं। URL इंटरनेट से पहुँचने योग्य होना चाहिए। ब्राउज़र में खोलने पर वह एक संक्षिप्त स्पष्टीकरण दिखाता है, ताकि आप जाँच सकें कि वह पहुँच योग्य है। Midtrans डैशबोर्ड का Test notification URL बटन भी उत्तर देता है।

हर सूचना पर आपकी किसी Server Key से बना वैध हस्ताक्षर होना चाहिए, और कुंजी का वातावरण भुगतान के वातावरण से मेल खाना चाहिए। बिना वैध हस्ताक्षर की सूचनाएँ अस्वीकार होती हैं। ऑर्डर बदलने से पहले स्टेटस Midtrans स्टेटस API से दोबारा पढ़ा जाता है। एक्सटेंशन ये Midtrans लेन-देन स्टेटस संभालता है:

settlement, capture (accepted): भुगतान हो गया। राशि (पूरे रुपिया में) और मुद्रा ऑर्डर से मेल खाने पर ऑर्डर भुगतान किया हुआ चिह्नित होता है।
capture (challenge): Midtrans की धोखाधड़ी जाँच द्वारा चिह्नित कार्ड भुगतान। जब तक आप Midtrans डैशबोर्ड में इसे स्वीकृत या अस्वीकृत नहीं करते, ऑर्डर समीक्षा स्टेटस में रहता है।
pending: ग्राहक ने विलंबित तरीका (वर्चुअल अकाउंट, कन्वीनियंस स्टोर, QRIS) चुना या कार्ड का 3-D Secure सत्यापन पूरा नहीं हुआ। ऑर्डर प्रतीक्षा स्टेटस पाता है।
expire, cancel: बिना भुगतान वाला लेन-देन समाप्त हो गया या रद्द हुआ। प्रतीक्षारत ऑर्डर को हर भुगतान विधि के लिए expired / cancelled स्टेटस मिलता है। बिना स्टेटस वाले ऑर्डर को कोई स्टेटस नहीं मिलता: केवल प्रयास बंद होता है और ग्राहक फिर से भुगतान कर सकता है।
deny: भुगतान अस्वीकार हुआ। प्रतीक्षारत ऑर्डर को failed स्टेटस मिलता है।
failure: भुगतान विफल हुआ। प्रतीक्षारत ऑर्डर को failed स्टेटस मिलता है।
refund, partial_refund: Midtrans डैशबोर्ड में किया गया रिफ़ंड ऑर्डर में दर्ज होता है।

भुगतान सूचना URL के बिना, ऑर्डर तभी पुष्ट होता है जब ग्राहक भुगतान के बाद स्टोर पर लौटता है, और बाद में किया गया विलंबित भुगतान तब तक नहीं दिखता जब तक ग्राहक वापस न आए।

भुगतान सेटिंग्स

Midtrans केवल IDR में शुल्क लेता है, और राशियाँ पूरे रुपिया में भेजी जाती हैं। यदि ऑर्डर की पंक्तियों का योग गोल किए गए कुल से मेल नहीं खाता, तो Midtrans को एक Rounding adjustment पंक्ति भेजी जाती है।

Payment page expiry (minutes): ग्राहक कितने समय तक भुगतान कर सकता है (Snap पेज, वर्चुअल अकाउंट आदि)। Midtrans के डिफ़ॉल्ट के लिए खाली छोड़ें या 0 रखें।

Order ID prefix: Midtrans को भेजे जाने वाले नंबर के आगे जोड़ा जाता है, ताकि कई स्टोर एक ही Midtrans खाता साझा कर सकें। नंबर OpenCart ऑर्डर ID है जिसके साथ समय-चिह्न जुड़ा होता है, जैसे OC-123-1700000000। केवल अक्षर, अंक और - _ . ~ मान्य हैं, 20 अक्षरों तक; अन्य अक्षर सहेजते समय हटा दिए जाते हैं। दूसरे स्टोरों की सूचनाएँ अनदेखी की जाती हैं। डिफ़ॉल्ट: OC-।

ऑर्डर

OpenCart Confirm Order चरण पर ऑर्डर बिना स्टेटस के बनाता है (अधूरा ऑर्डर)। Midtrans द्वारा लेन-देन की पुष्टि के बाद ही ऑर्डर को स्टेटस मिलता है। नीचे का हर फ़ील्ड आपके OpenCart ऑर्डर स्टेटस सूचीबद्ध करता है।

Status after payment: पुष्ट भुगतान के बाद का स्टेटस। डिफ़ॉल्ट: प्रक्रिया में। भुगतान किए गए ऑर्डर को पूर्ण मानने के लिए कोई पूर्ण स्टेटस चुनें, या हर भुगतान किए गए ऑर्डर को हाथ से जाँचने के लिए अपना समीक्षा स्टेटस चुनें।

Awaiting Midtrans payment status: Midtrans ने pending बताया है: वर्चुअल अकाउंट, कन्वीनियंस स्टोर या QRIS कोड जारी हुआ, या कार्ड का 3-D Secure सत्यापन पूरा नहीं हुआ। डिफ़ॉल्ट: लंबित।

Midtrans payment on hold status: भुगतान को आपकी समीक्षा चाहिए (देखें ऑर्डर स्टेटस)। डिफ़ॉल्ट: लंबित, क्योंकि OpenCart में On hold स्टेटस नहीं है। आप System > Localisation > Order Statuses में अपना स्टेटस बना सकते हैं और यहाँ चुन सकते हैं।

Payment failed status: Midtrans ने प्रतीक्षारत ऑर्डर के लिए deny या failure बताया है। डिफ़ॉल्ट: विफल।

Payment expired / cancelled status: प्रतीक्षारत ऑर्डर का लंबित Midtrans लेन-देन समाप्त हो गया या रद्द हुआ। जब आप किसी बिना भुगतान वाले Midtrans ऑर्डर को खुद इस स्टेटस पर सेट करते हैं, तो उसका लंबित Midtrans लेन-देन (जैसे जारी किया गया वर्चुअल अकाउंट) समाप्त कर दिया जाता है, ताकि उसका भुगतान अब न हो सके। डिफ़ॉल्ट: रद्द।

Refunded status: भुगतान ऑर्डर पेज से या Midtrans डैशबोर्ड से पूरी तरह रिफ़ंड हुआ। डिफ़ॉल्ट: रिफ़ंड किया गया।

उन्नत

Debug log: API कॉल और सूचनाएँ OpenCart के लॉग फ़ोल्डर (storage/logs) में midtrans_p_debug.log.php में लिखता है। यह फ़ाइल वेब से नहीं खोली जा सकती। त्रुटियाँ हमेशा दर्ज होती हैं। कुंजियाँ और ग्राहक का डेटा कभी दर्ज नहीं होता। डिफ़ॉल्ट: बंद।

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

Delete data on uninstall: चालू होने पर एक्सटेंशन हटाने से गेटवे सेटिंग्स और लॉग हट जाते हैं। ऑर्डर के Midtrans भुगतान संदर्भ और रिफ़ंड हमेशा बने रहते हैं, ताकि री-इंस्टॉल के बाद भी पुराने ऑर्डर का रिफ़ंड हो सके। डिफ़ॉल्ट: बंद।

इंपोर्ट / एक्सपोर्ट

Export: Download JSON सेटिंग्स को JSON फ़ाइल के रूप में सहेजता है। Server Keys एक्सपोर्ट नहीं होतीं।

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

चेकआउट

Payment Method चरण पर ग्राहक भुगतान विधि चुनता है (डिफ़ॉल्ट रूप से Midtrans)। Confirm Order चरण पर ग्राहक को आपका विवरण और यह नोट दिखता है: You will be redirected to the Midtrans payment page (GoPay, QRIS, ShopeePay, cards, bank transfer and more). OpenCart इस चरण पर ऑर्डर बनाता है, तब भी बिना स्टेटस के। जब ग्राहक Confirm Order पर क्लिक करता है, तो एक्सटेंशन ऑर्डर कुल के लिए पूरे रुपिया में एक Midtrans Snap लेन-देन बनाता है, जिसमें ऑर्डर की पंक्तियाँ, शिपिंग, छूट, कर और ग्राहक के बिलिंग व शिपिंग विवरण शामिल होते हैं, और ग्राहक को Midtrans भुगतान पेज पर भेजता है। वहाँ ग्राहक आपके Midtrans खाते में सक्षम कोई भी तरीका चुन सकता है। OpenCart 4 में ग्राहक Payment method options विंडो में, भुगतान विधि ब्लॉक के Choose बटन से भुगतान विधि चुनता है, और चेकआउट पेज के नीचे Confirm Order पर क्लिक करता है।

भुगतान के बाद ग्राहक आपके स्टोर पर लौटता है। वापसी का लिंक अपने-आप कभी ऑर्डर को भुगतान किया हुआ नहीं बनाता: ऑर्डर तभी भुगतान किया हुआ चिह्नित होता है जब Midtrans उसकी पुष्टि करता है, या तो हस्ताक्षरित सूचना से, या ग्राहक के लौटने पर Midtrans स्टेटस API के अनुरोध से। फिर ऑर्डर को सामान्य OpenCart तरीके से स्टेटस मिलता है, सामान्य ऑर्डर ईमेल और स्टॉक अपडेट के साथ, और ग्राहक OpenCart का ऑर्डर सफलता पेज देखता है। विलंबित भुगतान के लिए पेज पर यह भी दिखता है: We are waiting for Midtrans to confirm your payment. If you chose a bank transfer, virtual account or convenience store, please complete the payment using the instructions from Midtrans. You will receive an e-mail once the payment is confirmed. यदि ग्राहक के लौटने पर Midtrans तक पहुँच नहीं हो पाती, तो Payment confirmation पेज पर We are confirming your payment with Midtrans. The order will be updated automatically — please do not pay again. दिखता है, साथ में Check again बटन और Back to checkout बटन।

यदि ग्राहक बिना भुगतान किए Snap पेज से चला गया, तो वह The Midtrans payment was not completed. You can try again below. के साथ चेकआउट पर लौट आता है। यदि भुगतान अस्वीकार हुआ या समाप्त हो गया है, तो संदेश Your Midtrans payment was declined or has expired. Please try again or choose another payment method. है। कार्ट सुरक्षित रहता है। OpenCart 4 पर ये संदेश चेकआउट पेज के ऊपर दिखते हैं। OpenCart 3 हर बार Confirm Order चरण दिखाए जाने पर नया ऑर्डर बनाता है, OpenCart 4 चेकआउट के लिए एक ही ऑर्डर रखता है और उसी ऑर्डर को फिर से चुकाता है। दोनों ही स्थितियों में एक्सटेंशन एक ही कार्ट के सभी ऑर्डर को एक भुगतान मानता है: जब ग्राहक फिर से भुगतान करता है, तो उसी राशि का कोई अप्रयुक्त या लंबित Snap पुनः उपयोग होता है (जारी किया गया वर्चुअल अकाउंट मान्य रहता है); यदि राशि बदल गई है, तो पहले Midtrans पर लंबित लेन-देन समाप्त किया जाता है; यदि इस बीच कोई पिछला Snap भुगतान हो गया है, तो वह भुगतान पुष्ट होता है और ग्राहक बिना नए लेन-देन के सफलता पेज पर जाता है।

OpenCart 4 में ऑर्डर तब तक चेकआउट में रहता है जब तक सफलता पेज नहीं दिखता। यदि वह ऑर्डर इस बीच बिना भुगतान के बंद हो गया हो (उदाहरण के लिए भुगतान अस्वीकृत हुआ या समाप्त हो गया, या आपने ऑर्डर रद्द किया), तो ग्राहक Your previous order was cancelled without a payment. Please confirm the order again to pay with a new order. के साथ चेकआउट पर लौटा दिया जाता है, और अगला Confirm Order नया ऑर्डर भुगतान करता है। यदि ऑर्डर पहले ही दिया जा चुका है और कार्ट बदल गया है, तो संदेश है Your previous order #(number) has already been placed. Your cart has changed: please confirm the new order to pay for it. कार्ट में कोई भी बदलाव, नई मात्रा सहित, एक नए कार्ट के रूप में गिना जाता है जिसे अपने भुगतान की ज़रूरत है। यदि ऑर्डर का भुगतान कार्ट खाली होने के बाद अस्वीकृत हुआ या समाप्त हुआ (उदाहरण के लिए वर्चुअल अकाउंट भुगतान के बाद), तो ग्राहक को The Midtrans payment of order #(number) was declined or has expired, so the order will not be shipped. To buy these items, please place a new order. दिखता है।

यदि Midtrans भुगतान शुरू नहीं कर पाता, तो ग्राहक Confirm Order चरण पर रहता है और बटन के ऊपर एक संक्षिप्त संदेश दिखता है: Could not connect to Midtrans. Please try again in a moment., Midtrans payments are temporarily unavailable. Please choose another payment method or contact us. (जैसे गलत Server Key के साथ) या Midtrans का बताया कारण। तकनीकी कारण लॉग में लिखा जाता है।

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

एक्सटेंशन केवल Snap Redirect उपयोग करता है। इसमें Snap पॉप-अप, आपकी साइट पर कार्ड फ़ॉर्म, सेव किए गए कार्ड या वन-क्लिक भुगतान, किश्त या प्रचार सेटिंग्स (भुगतान विधियाँ Midtrans डैशबोर्ड में कॉन्फ़िगर होती हैं) और सदस्यताएँ नहीं हैं। कार्ड भुगतान तुरंत लिए जाते हैं, अलग प्राधिकरण और कैप्चर के बिना।

ऑर्डर और रिफ़ंड

ऑर्डर स्टेटस

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

Awaiting Midtrans payment status (डिफ़ॉल्ट लंबित): ग्राहक ने विलंबित तरीका चुना या अधूरा कार्ड भुगतान शुरू किया। जब Midtrans भुगतान की सूचना देता है, तो ऑर्डर Status after payment पर चला जाता है।

Status after payment (डिफ़ॉल्ट प्रक्रिया में): भुगतान की पुष्टि हो गई। एक नोट भुगतान का तरीका, Midtrans ऑर्डर ID और लेन-देन दिखाता है।

Midtrans payment on hold status (डिफ़ॉल्ट लंबित): कार्ड भुगतान धोखाधड़ी समीक्षा में है (challenge, अभी कोई राशि दर्ज नहीं), चुकाई गई राशि या मुद्रा ऑर्डर से मेल नहीं खाती (ऑर्डर भुगतान किया हुआ चिह्नित नहीं होता), या रद्द किए गए ऑर्डर के लिए भुगतान आया (ऑर्डर अपने-आप दोबारा नहीं खुलता)। नोट इसे समझाता है। ऑर्डर जाँचें, फिर उसे पूरा करें या भुगतान रिफ़ंड करें।

Payment expired / cancelled status (डिफ़ॉल्ट रद्द): प्रतीक्षारत ऑर्डर का बिना भुगतान वाला लेन-देन समाप्त हो गया या रद्द हुआ।

Payment failed status (डिफ़ॉल्ट विफल): भुगतान विफल हुआ, या समीक्षा में रहा कार्ड भुगतान अस्वीकार हुआ।

Refunded status (डिफ़ॉल्ट रिफ़ंड किया गया): भुगतान पूरी तरह रिफ़ंड हुआ।

OpenCart इन स्टेटस बदलावों की सूचना सामान्य तरीके से ग्राहक को देता है। यदि उसी कार्ट के लिए दूसरा भुगतान आता है, तो ऑर्डर नहीं बदलता। भुगतान किए गए ऑर्डर पर एक नोट आपसे Midtrans डैशबोर्ड में दूसरा भुगतान रिफ़ंड करने को कहता है। रिफ़ंड किए गए ऑर्डर के लिए भुगतान केवल एक नोट जोड़ता है।

नोट वे प्रविष्टियाँ हैं जो ऑर्डर के History में होती हैं और जिन्हें ग्राहक नहीं देखता।

VibeFox Midtrans Payment Gateway टैब

Sales > Orders में Midtrans से भुगतान किया गया ऑर्डर खोलें। ऑर्डर पेज के नीचे, History और Additional के बगल में, VibeFox Midtrans Payment Gateway टैब Midtrans order ID, Transaction ID (भुगतान के वातावरण के Midtrans डैशबोर्ड में लेन-देन से जुड़ा, सैंडबॉक्स भुगतानों पर Sandbox लेबल के साथ), Payment method, Status, Paid / refunded राशियाँ, रिफ़ंड फ़ॉर्म, रिफ़ंड इतिहास और ऑर्डर के Midtrans notes दिखाता है। यह टैब उन उपयोगकर्ताओं को दिखता है जिनके पास एक्सटेंशन की पहुँच है।

रिफ़ंड

VibeFox Midtrans Payment Gateway टैब में Amount दर्ज करें (जो राशि अभी रिफ़ंड नहीं हुई है वह अपने-आप भर जाती है), वैकल्पिक रूप से Reason (optional), और Refund via Midtrans पर क्लिक करें। Refund this amount through Midtrans? This cannot be undone. प्रश्न की पुष्टि करें। पूरा और आंशिक रिफ़ंड पूरे रुपिया में समर्थित हैं; दशमलव वाली राशि अस्वीकार होती है। आपको एक्सटेंशन बदलने का अधिकार चाहिए (System > Users > User Groups में सेट)। ऑर्डर बाद में संपादित हुआ हो तब भी आप वह राशि तक रिफ़ंड कर सकते हैं जो Midtrans ने वास्तव में काटी थी। रिफ़ंड उसी वातावरण में भेजा जाता है जिसमें भुगतान हुआ था, इसलिए उस वातावरण की Server Key सेट होनी चाहिए। Midtrans कुछ भुगतान विधियों और निपटाए गए लेन-देन के लिए ही API रिफ़ंड की अनुमति देता है। यदि Midtrans रिफ़ंड स्वीकार नहीं करता, तो टैब त्रुटि दिखाता है और कोई रिफ़ंड दर्ज नहीं होता; तब Midtrans डैशबोर्ड में रिफ़ंड करें। सफल रिफ़ंड रिफ़ंड इतिहास और नोट में जुड़ता है। पूरा रिफ़ंड ऑर्डर को Refunded status पर सेट करता है, बिना ग्राहक को सूचित किए और बिना उत्पादों को स्टॉक में वापस लाए, जैसे मैनुअल स्टेटस बदलाव। आंशिक रिफ़ंड स्टेटस नहीं बदलता। रिफ़ंड तभी उपलब्ध होते हैं जब Midtrans भुगतान को निपटाया हुआ बता दे।

Sales > Returns में उत्पाद वापसी Midtrans के ज़रिए पैसे वापस नहीं भेजती।

Midtrans डैशबोर्ड में किए गए रिफ़ंड सूचना के ज़रिए आते हैं और कारण Refunded in the Midtrans dashboard के साथ रिफ़ंड इतिहास में अपने-आप जुड़ जाते हैं। यदि वहाँ पूरा भुगतान रिफ़ंड हो जाता है, तो ऑर्डर को Refunded status मिलता है।

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

यह एक्सटेंशन vibefox.net की VibeFox लाइसेंस कुंजी से काम करता है। लाइसेंस ब्लॉक License — VibeFox Midtrans Payment Gateway, Extensions > Extensions > Payments > VibeFox Midtrans Payment Gateway > Edit पेज पर सेटिंग्स के ऊपर पहला ब्लॉक है। कुंजी को License key में चिपकाएँ और Activate पर क्लिक करें। इसके बाद ब्लॉक कुंजी को मास्क करके, स्टेटस (जैसे लाइसेंस किस तारीख तक सक्रिय है और आपका डोमेन) और ये बटन दिखाता है: स्टेटस दोबारा जाँचने के लिए Check now, कोई दूसरी कुंजी डालने के लिए Change key, और इस स्टोर से कुंजी हटाने के लिए Remove key। इनके नीचे Product: opencart-payment-midtrans वाली पंक्ति और 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 खाते में स्लॉट मुक्त करें।

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

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

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

चेकआउट पर Midtrans नहीं दिखता: जाँचें कि लाइसेंस सक्रिय है, Enable/Disable चालू है, और चुने गए Environment के लिए Server Key है। जाँचें कि चेकआउट मुद्रा IDR है, भुगतान पता चुने गए Geo Zone में है, और ऑर्डर सेटिंग्स में दिए Total तक पहुँचता है। कुंजी गायब होने या स्टोर की मुद्रा IDR न होने पर सेटिंग्स पेज चेतावनी दिखाता है।

भुगतान हो गया, पर ऑर्डर बिना स्टेटस के रहता है: सूचना काम नहीं कर रही। जाँचें कि जिस वातावरण (सैंडबॉक्स या उत्पादन) का आप उपयोग करते हैं उसके Midtrans डैशबोर्ड में भुगतान सूचना URL सेट है, वह ठीक वही है जो Notification URL में दिखता है, और वह पहुँच योग्य है: उसे ब्राउज़र में खोलें, एक संक्षिप्त स्पष्टीकरण दिखेगा। सूचनाएँ देखने के लिए Debug log चालू करें। भुगतान के बाद ग्राहक के स्टोर पर लौटने पर भी ऑर्डर को स्टेटस मिलता है।

सूचना उत्तर देती है Invalid signature: सूचना आपकी Sandbox या Production Server Key से हस्ताक्षरित नहीं थी। जाँचें कि सेटिंग्स की कुंजियाँ उसी Midtrans खाते की हैं जिस डैशबोर्ड से सूचनाएँ आती हैं।

सूचना उत्तर देती है Server key not configured: कोई Server Key सेट नहीं है। सेटिंग्स में उसे डालें; Midtrans सूचना दोबारा भेजेगा।

सूचना उत्तर देती है Order not found — ignored: Midtrans ऑर्डर ID इस स्टोर द्वारा जारी नहीं की गई, उदाहरण के लिए उसी Midtrans खाते पर किसी दूसरे स्टोर द्वारा। हर स्टोर को अलग Order ID prefix दें।

सूचना उत्तर देती है Environment mismatch — ignored: सूचना उस वातावरण से अलग वातावरण की कुंजी से हस्ताक्षरित थी, जिसमें भुगतान हुआ था।

सूचना उत्तर देती है Verification failed, please retry: Midtrans स्टेटस API तक पहुँच नहीं हो पाई। Midtrans सूचना दोबारा भेजेगा।

सूचना उत्तर देती है Busy, please retry: उसी समय कोई दूसरा अनुरोध कार्ट अपडेट कर रहा था, या ऑर्डर स्टेटस सेट नहीं हो पाया। Midtrans सूचना दोबारा भेजेगा। कारण लॉग में देखें।

ऑर्डर समीक्षा स्टेटस में है: टैब में Midtrans notes पढ़ें। कार्ड भुगतान धोखाधड़ी समीक्षा में है, चुकाई गई राशि या मुद्रा ऑर्डर से मेल नहीं खाती थी, या ऑर्डर रद्द होने के बाद भुगतान आया।

Confirm Order के बाद ग्राहक को त्रुटि दिखती है: एक्सटेंशन पेज पर Log फ़ील्ड देखें; त्रुटियाँ हमेशा दर्ज होती हैं। गलत Server Key पर संदेश आता है कि Midtrans भुगतान अस्थायी रूप से उपलब्ध नहीं हैं। Midtrans only supports payments in IDR (Indonesian Rupiah). Please choose another payment method. का अर्थ है कि ऑर्डर IDR में नहीं है। This payment method is not available. का अर्थ है कि चेकआउट सत्र अब ऑर्डर से मेल नहीं खाता, या भुगतान विधि इस बीच बंद कर दी गई: ग्राहक को चेकआउट रीलोड करना होगा।

ग्राहक Payment verification failed. के साथ चेकआउट पर लौटता है: वापसी का लिंक अधूरा था या ऑर्डर का नहीं था। ऑर्डर फिर भी सूचना से अपना स्टेटस पाता है।

टैब में रिफ़ंड फ़ॉर्म नहीं है: टैब कारण बताता है: भुगतान अभी निपटाया नहीं गया, वह पूरी तरह रिफ़ंड हो चुका है, आपके उपयोगकर्ता समूह को एक्सटेंशन बदलने का अधिकार नहीं है, या जिस वातावरण में ऑर्डर का भुगतान हुआ उसके लिए Server Key सेट नहीं है।

रिफ़ंड विफल होता है: भुगतान विधि या लेन-देन की स्थिति API रिफ़ंड की अनुमति नहीं देती; Midtrans डैशबोर्ड में रिफ़ंड करें, और रिफ़ंड अपने-आप ऑर्डर में दर्ज हो जाएगा।

डेवलपर्स के लिए: Snap लेन-देन बनाने से पहले एक्सटेंशन अनुरोध डेटा और ऑर्डर के साथ OpenCart इवेंट midtrans_p_snap_payload ट्रिगर करता है; ऑर्डर ID और राशि बदली नहीं जा सकती।

अनइंस्टॉल

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

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

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