वापस

VibeFox PayU India for OpenCart — सहायता

आवश्यकताएँ

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

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

मुद्रा: भारतीय रुपया (INR)। PayU India केवल रुपये में चार्ज करता है। आपके स्टोर में INR मुद्रा होनी चाहिए (System > Localisation > Currencies)। अन्य मुद्राओं के ऑर्डर के लिए चेकआउट पर भुगतान विधि छिप जाती है।

फ़ोन नंबर: PayU हर भुगतान के लिए फ़ोन नंबर माँगता है। आपके चेकआउट में Telephone फ़ील्ड रखें, ताकि ऑर्डर में फ़ोन नंबर हो। OpenCart 4 का चेकआउट डिफ़ॉल्ट रूप से टेलीफ़ोन नहीं माँगता: जब ऑर्डर में फ़ोन नंबर नहीं होता, तो एक्सटेंशन पुष्टि चरण पर अपना Phone फ़ील्ड दिखाता है (देखें चेकआउट)।

PayU India खाता: आपको PayU Dashboard > Payment Gateway > Key Salt Details से Merchant Key और Merchant Salt (v1) चाहिए। टेस्ट जोड़ी देखने के लिए डैशबोर्ड को Test Mode में बदलें। Salt v1 का उपयोग करें, Salt v2 नहीं।

आपके स्टोर तक इंटरनेट पहुँच: वैकल्पिक वेबहुक के लिए आवश्यक है। इसके बिना ऑर्डर तब पुष्ट होते हैं जब ग्राहक PayU से लौटता है।

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

इंस्टॉलेशन

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

OpenCart 3

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

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

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

4. Test Merchant Key और Salt तथा Live Merchant Key और Salt दर्ज करें (देखें कॉन्फ़िगरेशन)।

5. सुझाव: PayU Dashboard > Webhooks में, सफल और विफल भुगतानों के लिए सेटिंग पेज पर दिखाया गया वेबहुक URL जोड़ें।

6. Mode चुनें, Enable/Disable चालू करें और Save पर क्लिक करें। Test मोड में एक भुगतान आज़माएँ, फिर Live पर जाएँ।

OpenCart 4

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

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

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

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

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

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

सभी सेटिंग्स एक्सटेंशन पेज पर हैं: Extensions > Extensions > Payments > VibeFox PayU India Payment Gateway > Edit। सेक्शन बाईं ओर सूचीबद्ध हैं; सूची के नीचे का Save बटन पूरा पेज सेव करता है। सेटिंग्स के ऊपर, पेज चेतावनी देता है जब वर्तमान मोड की कुंजी या salt गायब हो, Test मोड में टेस्ट मोड सक्रिय है: भुगतान test.payu.in पर जाते हैं और कोई असली पैसा नहीं काटा जाता। दिखाता है, और जब स्टोर की डिफ़ॉल्ट मुद्रा INR न हो तो एक त्रुटि दिखाता है: तब गेटवे चेकआउट पर केवल तभी दिखता है जब ग्राहक INR में भुगतान करे। एक्सटेंशन बदलने का अधिकार न हो तो पेज सेटिंग्स दिखाता है पर उन्हें सेव नहीं कर सकता।

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

PayU India

इस सेक्शन की शुरुआत एक छोटे नोट से होती है: PayU द्वारा होस्ट किए गए भुगतान पेज पर कार्ड, NetBanking, UPI और वॉलेट; परिणाम केवल वैध PayU हस्ताक्षर के साथ ही स्वीकार होते हैं; केवल रुपये।

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

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

Description: Confirm Order चरण पर पुष्टि बटन के ऊपर ग्राहक को दिखाया जाने वाला पाठ। डिफ़ॉल्ट: Pay securely via Credit/Debit Card, NetBanking, UPI, or Wallets through PayU।

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

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

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

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

Merchant Key और Merchant Salt (v1) को PayU Dashboard > Payment Gateway > Key Salt Details से कॉपी करें। टेस्ट जोड़ी के लिए डैशबोर्ड को Test Mode में बदलें। इस सेक्शन में Open the PayU Dashboard लिंक है।

Mode: वह PayU वातावरण जिसका नए भुगतान उपयोग करते हैं।

Test (Sandbox): टेस्ट कुंजी और salt, तथा test.payu.in का उपयोग करता है। कोई असली पैसा नहीं काटा जाता। Confirm Order चरण पर ग्राहक को टेस्ट मोड: कोई असली पैसा नहीं काटा जाता। दिखता है (डिफ़ॉल्ट)।
Live (Production): लाइव कुंजी और salt, तथा secure.payu.in का उपयोग करता है।

जो भुगतान पहले ही शुरू हो चुके हैं, वे उसी मोड में रहते हैं जिसमें शुरू हुए थे: उनके परिणाम उसी मोड की कुंजी और salt से जाँचे जाते हैं, और उनके रिफ़ंड उसी कुंजी और salt से भेजे जाते हैं, भले ही आप बाद में मोड बदल दें।

Live Merchant Key: आपकी लाइव PayU Merchant Key।

Live Merchant Salt (v1): आपका लाइव PayU Merchant Salt (v1)। यह अनुरोधों पर हस्ताक्षर करता है और PayU उत्तरों की पुष्टि करता है। इसे गोपनीय रखें।

Test Merchant Key: आपकी PayU टेस्ट Merchant Key, केवल Test मोड में उपयोग होती है।

Test Merchant Salt (v1): आपका PayU टेस्ट Merchant Salt (v1), केवल Test मोड में उपयोग होता है।

सेव किए गए salts कभी दोबारा नहीं दिखाए जाते। फ़ील्ड खाली रहता है और सहेजा गया — रखने के लिए खाली छोड़ें। दिखाता है। केवल बदलना हो तो नया मान दर्ज करें। सेव किया हुआ salt हटाने के लिए, फ़ील्ड के नीचे Clear the saved salt on save पर टिक करें और Save पर क्लिक करें।

रिटर्न और वेबहुक URL

Return URL: OpenCart 3 में यह https://your-store/index.php?route=extension/payment/wcp_payu_india_payment/back जैसा दिखता है, और OpenCart 4 में https://your-store/index.php?route=extension/wcp_payu_india_payment/payment/wcp_payu_india_payment.back जैसा। हर भुगतान के साथ यह PayU को अपने-आप भेजा जाता है; कुछ कॉन्फ़िगर करने की ज़रूरत नहीं है।

Webhook URL: OpenCart 3 में यह https://your-store/index.php?route=extension/payment/wcp_payu_india_payment/webhook जैसा दिखता है, और OpenCart 4 में https://your-store/index.php?route=extension/wcp_payu_india_payment/payment/wcp_payu_india_payment.webhook जैसा। वैकल्पिक है, पर अनुशंसित: ग्राहक लौटने से पहले ब्राउज़र बंद कर दे तब भी यह भुगतान की पुष्टि करता है। सफल और विफल भुगतानों के लिए इसे PayU Dashboard > Webhooks में जोड़ें। URL को ठीक वैसे ही कॉपी करें जैसा सेटिंग्स पेज दिखाता है। यह इंटरनेट से पहुँच योग्य होना चाहिए (बेसिक प्रमाणीकरण या फ़ायरवॉल द्वारा अवरुद्ध नहीं)। स्टोर का मेंटेनेंस मोड इसे अवरुद्ध नहीं करता।

वेबहुक उसी हस्ताक्षरित परिणाम को ले जाता है जो ग्राहक की वापसी के समय आता है। वैध PayU hash के बिना आए वेबहुक अस्वीकार होते हैं।

ऑर्डर

OpenCart Confirm Order चरण पर ऑर्डर बिना स्टेटस के (एक लापता ऑर्डर) बनाता है। ऑर्डर को स्टेटस तभी मिलता है जब PayU सही हस्ताक्षरित परिणाम भेजे। विफल या रद्द भुगतान ऑर्डर को बिना स्टेटस के छोड़ता है, और ग्राहक कार्ट सुरक्षित रहते हुए चेकआउट पर लौट आता है। नीचे हर फ़ील्ड आपके OpenCart ऑर्डर स्टेटस सूचीबद्ध करता है।

Order Status After Payment: INR में अपेक्षित राशि वाला सफल भुगतान, जिसकी पुष्टि verify_payment से हुई हो, जब Verify Payment चालू हो। डिफ़ॉल्ट: Processing।

Awaiting PayU Payment Status: PayU भुगतान को लंबित बताता है (UPI collect, NetBanking प्रगति में)। PayU पुष्टि करने पर ऑर्डर भुगतान के बाद का स्टेटस पाता है। डिफ़ॉल्ट: Pending।

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

Payment Error Status: एक लंबित भुगतान जिसे PayU ने बाद में विफल बताया। डिफ़ॉल्ट: Failed।

Refunded Status: जब ऑर्डर पेज से चुकाई गई पूरी राशि रिफ़ंड हो जाए तब सेट होता है। डिफ़ॉल्ट: Refunded।

Cancelled Order Status: आपका स्टोर रद्द ऑर्डरों के लिए जो स्टेटस उपयोग करता है। ऐसे ऑर्डर के लिए मिला भुगतान उसे भुगतान किया हुआ चिह्नित करने के बजाय समीक्षा में डाल देता है। एक्सटेंशन यह स्टेटस कभी सेट नहीं करता। डिफ़ॉल्ट: Canceled।

उन्नत

Verify Payment: हर सफल भुगतान को PayU verify_payment API से दोबारा जाँचता है। अनुशंसित। यदि जाँच पूरी नहीं हो सकती, तो ऑर्डर को भुगतान किया हुआ चिह्नित करने के बजाय समीक्षा में डाला जाता है। डिफ़ॉल्ट: चालू।

Enable Logging: समस्या निवारण के लिए गेटवे घटनाएँ OpenCart लॉग फ़ोल्डर (storage/logs) में payu_p_debug.log.php में लिखता है। यह फ़ाइल वेब से नहीं खोली जा सकती। त्रुटियाँ और चेतावनियाँ हमेशा दर्ज होती हैं; यह विकल्प अन्य घटनाएँ भी जोड़ता है, जैसे हर भुगतान फ़ॉर्म और हर PayU परिणाम। कुंजियाँ, salts और ग्राहक का व्यक्तिगत डेटा कभी दर्ज नहीं होता। डिफ़ॉल्ट: बंद।

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

Delete data on uninstall: एक्सटेंशन हटाने पर गेटवे सेटिंग्स और लॉग हटा देता है। ऑर्डर और PayU लेन-देन रिकॉर्ड कभी नहीं हटते। डिफ़ॉल्ट: बंद।

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

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

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

चेकआउट

Payment Method चरण पर ग्राहक भुगतान विधि चुनता है (डिफ़ॉल्ट रूप से PayU India)। Confirm Order चरण पर ग्राहक को आपका विवरण दिखता है; OpenCart इसी चरण पर ऑर्डर बनाता है, अभी भी बिना स्टेटस के। OpenCart 4 पर ग्राहक भुगतान विधि ब्लॉक के Choose बटन से, Payment method options विंडो में भुगतान विधि चुनता है, और चेकआउट पेज के नीचे Confirm Order पर क्लिक करता है। ऑर्डर में फ़ोन नंबर न होने पर OpenCart 4 के पुष्टि ब्लॉक में Phone फ़ील्ड भी दिखता है, जिसके संकेत में लिखा है PayU India को भुगतानकर्ता का फ़ोन नंबर चाहिए। वहाँ दर्ज नंबर PayU को भेजा जाता है और अगले प्रयास के लिए रखा जाता है; ऑर्डर का फ़ोन नंबर प्राथमिक होता है। जब ग्राहक Confirm Order पर क्लिक करता है, तो एक्सटेंशन मुद्रा, वर्तमान मोड के क्रेडेंशियल और ऑर्डर का फ़ोन नंबर जाँचता है। फ़ोन नंबर न होने पर ग्राहक उसी चरण पर रहता है और PayU India के लिए फ़ोन नंबर आवश्यक है। कृपया अपना फ़ोन नंबर डालकर दोबारा प्रयास करें। देखता है। अन्यथा एक्सटेंशन ऑर्डर कुल के लिए INR में हस्ताक्षरित भुगतान अनुरोध बनाता है, और ब्राउज़र उसे तुरंत PayU द्वारा होस्ट किए गए भुगतान पेज पर भेज देता है। पेज दिखाता है भुगतान पूरा करने के लिए आपको PayU पर भेजा जा रहा है। और, यदि ब्राउज़र अपने-आप आगे न बढ़े, तो Pay with PayU बटन। PayU पेज पर ग्राहक कार्ड, NetBanking, UPI या वॉलेट से भुगतान करता है।

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

PayU परिणाम ग्राहक के साथ वापस भेजता है और, यदि कॉन्फ़िगर किया गया हो, तो वेबहुक से भी। परिणाम केवल तभी स्वीकार होता है जब उसमें वैध PayU hash हो जो उसी मोड की कुंजी और salt से बना हो जिसमें भुगतान शुरू हुआ था, और केवल उस ऑर्डर के लिए जारी किए गए लेन-देन ID के लिए। Verify Payment चालू होने पर सफल परिणाम की PayU verify_payment API से भी जाँच होती है। चुकाई गई राशि प्रयास की राशि और ऑर्डर कुल के बराबर होनी चाहिए, INR में पैसे (paisa) तक सटीक। ऑर्डर केवल तब भुगतान किया हुआ चिह्नित होता है जब PayU इस तरह पुष्टि करे, और तब उसे OpenCart के मानक तरीके से स्टेटस मिलता है, सामान्य ऑर्डर ईमेल भेजे जाते हैं और स्टॉक अपडेट होता है। एक्सटेंशन ये PayU परिणाम संभालता है:

success: भुगतान हो गया। सभी जाँच पास होने पर ऑर्डर को Order Status After Payment मिलता है, अन्यथा समीक्षा स्टेटस।
pending: UPI या NetBanking भुगतान अभी प्रगति में है। ऑर्डर को Awaiting PayU Payment Status मिलता है; अंतिम परिणाम वेबहुक से आता है।
failure: भुगतान ग्राहक द्वारा अस्वीकार या रद्द किया गया। बिना स्टेटस वाला ऑर्डर बिना स्टेटस के रहता है और कार्ट सुरक्षित रहता है, ताकि ग्राहक दोबारा भुगतान कर सके। इस भुगतान की प्रतीक्षा वाला ऑर्डर Payment Error Status पाता है। भुगतान किए गए ऑर्डर कभी नहीं बदले जाते।

सफल या लंबित भुगतान के बाद ग्राहक OpenCart ऑर्डर सफलता पेज देखता है। लंबित भुगतान जोड़ता है आपका PayU भुगतान लंबित है। PayU परिणाम की पुष्टि होते ही ऑर्डर अपडेट हो जाएगा — दोबारा भुगतान करने की ज़रूरत नहीं है।; समीक्षा में वाला ऑर्डर जोड़ता है आपके भुगतान की समीक्षा की जा रही है। यदि कुछ और आवश्यक हुआ तो हम आपसे संपर्क करेंगे।; और भुगतान त्रुटि या रद्द स्टेटस वाला अनचुकाया ऑर्डर दिखाता है आपका PayU भुगतान पूरा नहीं हुआ। कृपया इस ऑर्डर के बारे में हमसे संपर्क करें।

विफल भुगतान के बाद ग्राहक एक संदेश के साथ चेकआउट पर लौटता है: भुगतान पूरा नहीं हुआ। कृपया दोबारा प्रयास करें या कोई अन्य भुगतान विधि चुनें।, भुगतान रद्द किया गया। आप दोबारा प्रयास कर सकते हैं।, या जब परिणाम की पुष्टि नहीं हो सकी, तो हम भुगतान परिणाम की पुष्टि नहीं कर सके। यदि आपके खाते से राशि कट गई है, तो दोबारा भुगतान करने से पहले कृपया हमसे संपर्क करें। यदि ग्राहक के लौटने पर परिणाम अभी भी संसाधित हो रहा है, तो एक पेज दिखाता है हम आपके PayU भुगतान की पुष्टि कर रहे हैं। यदि आपने भुगतान पूरा कर लिया है, तो आपका ऑर्डर शीघ्र अपडेट हो जाएगा — कृपया दोबारा भुगतान न करें। साथ में Check again और Back to checkout बटन। OpenCart 4 पर चेकआउट के ये संदेश चेकआउट पेज के ऊपर दिखते हैं।

OpenCart 4 में ऑर्डर सफलता पेज दिखाए जाने तक चेकआउट में रखा जाता है। यदि वह ऑर्डर इस बीच बंद हो गया (उदाहरण के लिए उसका लंबित भुगतान विफल हुआ, या आपने उसे रद्द किया), तो ग्राहक संदेश Your previous order was cancelled or its payment failed. Please confirm the order again. के साथ चेकआउट पर लौट जाता है। यदि वह भुगतान किया हुआ था और स्टोर ने उसे बाद में रद्द या रिफ़ंड किया, तो संदेश Your previous order was cancelled or refunded by the store. Please confirm the order again to pay with a new order. होता है। यदि वह किसी पिछले कार्ट के लिए पहले ही भुगतान किया हुआ था और तब से कार्ट बदल गया है, तो संदेश Your previous order has already been paid. Your cart has changed since — please confirm the order again to pay for the current cart. होता है। अगला Confirm Order एक नए ऑर्डर का भुगतान करता है। बंद किया गया ऑर्डर कभी भुगतान किया हुआ नहीं दिखाया जाता।

स्टोर मेंटेनेंस मोड में होने पर भी वेबहुक काम करता है, क्योंकि OpenCart भुगतान एक्सटेंशन के अनुरोधों को आगे जाने देता है (OpenCart 4 पर एक्सटेंशन इसके लिए अपनी स्टार्टअप ऐक्शन जोड़ता है, जो ग्राहक की PayU से वापसी को भी जाने देती है)।

एक्सटेंशन केवल INR में चार्ज करता है और मल्टी-करेंसी प्रोसेसिंग (MCP) नहीं है। इसमें सेव किए गए कार्ड या टोकनाइज़ेशन, सब्सक्रिप्शन, साइट पर सीमलेस कार्ड फ़ॉर्म, EMI या ऑफ़र प्रबंधन, और PayU वन-क्लिक चेकआउट नहीं हैं।

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

ऑर्डर स्टेटस

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

Order Status After Payment (डिफ़ॉल्ट Processing): भुगतान की पुष्टि हुई। एक नोट दिखाता है PayU payment successful. Transaction ID: …, Mode: …, Bank: …

Awaiting PayU Payment Status (डिफ़ॉल्ट Pending): UPI या NetBanking भुगतान अभी PayU पर लंबित है। PayU पुष्टि करने पर ऑर्डर को भुगतान किया हुआ स्टेटस मिलता है।

On Hold (Review) Status (डिफ़ॉल्ट Pending): चुकाई गई राशि या मुद्रा ऑर्डर से अलग है, verify_payment API तक पहुँचा नहीं जा सका या उसने अभी भुगतान की पुष्टि नहीं की, या Cancelled Order Status वाले ऑर्डर के लिए भुगतान आया। नोट कारण बताता है। PayU Dashboard में लेन-देन जाँचें, फिर भुगतान किया हुआ स्टेटस सेट करें, या ऑर्डर रद्द करके भुगतान रिफ़ंड करें। यदि केवल सत्यापन विफल हुआ था, तो परिणाम की अगली डिलीवरी पर ऑर्डर अपने-आप भुगतान किया हुआ हो जाता है।

Payment Error Status (डिफ़ॉल्ट Failed): एक लंबित भुगतान बाद में अस्वीकार या रद्द हो गया। बाद का सफल परिणाम फिर भी ऑर्डर का भुगतान कर देता है।

Refunded Status (डिफ़ॉल्ट Refunded): चुकाई गई पूरी राशि एक्सटेंशन के ज़रिए रिफ़ंड हो गई।

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

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

VibeFox PayU India Payment Gateway टैब

Sales > Orders में PayU India से भुगतान किया गया ऑर्डर खोलें। ऑर्डर पेज के नीचे, History और Additional के बगल में, VibeFox PayU India Payment Gateway टैब दिखाता है PayU transaction ID (mihpayid), Store transaction ID (txnid), परीक्षण भुगतानों के लिए Test mode बैज के साथ Environment, PayU का Status, भुगतान का Mode / bank, Paid / refund requested (INR) राशियाँ, रिफ़ंड फ़ॉर्म, रिफ़ंड इतिहास और ऑर्डर के PayU notes। समीक्षा वाले ऑर्डर के लिए, यह भुगतान की समीक्षा करने का अनुस्मारक दिखाता है। यह टैब एक्सटेंशन की पहुँच रखने वाले उपयोगकर्ताओं को दिखता है।

रिफ़ंड

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

PayU रिफ़ंड को कतार में डालता है और उन्हें अतुल्यकालिक रूप से पूरा करता है; ग्राहक को आमतौर पर 5–7 कार्य दिवसों में पैसे मिलते हैं। रिफ़ंड इतिहास और नोट राशि, PayU अनुरोध ID और कारण दिखाते हैं। पूर्ण रिफ़ंड ऑर्डर को Refunded Status पर सेट करता है, बिना ग्राहक को सूचित किए और बिना उत्पाद स्टॉक में लौटाए, जैसे मैन्युअल स्टेटस बदलने पर होता है। आंशिक रिफ़ंड स्टेटस नहीं बदलता। रिफ़ंड तभी उपलब्ध होते हैं जब PayU भुगतान का लेन-देन ID बता चुका हो। एक्सटेंशन बाद में रिफ़ंड स्टेटस की जाँच नहीं करता।

Sales > Returns में उत्पाद वापसी PayU के ज़रिए पैसे वापस नहीं भेजती। PayU Dashboard में किए गए रिफ़ंड OpenCart के साथ वापस सिंक नहीं होते।

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

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

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

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

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

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

भुगतान हो गया, पर ऑर्डर बिना स्टेटस के है: ग्राहक स्टोर पर वापस नहीं आया, और कोई वेबहुक नहीं पहुँचा। सेटिंग्स पेज का वेबहुक URL सफल और विफल भुगतानों के लिए PayU Dashboard > Webhooks में जोड़ें, और सुनिश्चित करें कि वह इंटरनेट से पहुँच योग्य है।

वेबहुक invalid_signature का उत्तर देता है: PayU hash मेल नहीं खाया। जाँचें कि भुगतान के मोड की कुंजी और salt सही हैं और Salt v1 उपयोग हो रहा है, Salt v2 नहीं। परीक्षण salt से हस्ताक्षरित वास्तविक भुगतान का परिणाम, या इसका उल्टा, भी अस्वीकार होता है। कुछ नहीं बदलता।

वेबहुक not_configured का उत्तर देता है: जिस मोड में भुगतान शुरू हुआ था, उसकी कुंजी या salt गायब है। उन्हें दर्ज करें; PayU वेबहुक दोबारा भेजेगा।

वेबहुक verify_unavailable का उत्तर देता है: verify_payment API अभी भुगतान की पुष्टि नहीं कर सका। ऑर्डर समीक्षा में है, और अगली डिलीवरी पर फिर से सत्यापन होगा।

वेबहुक busy या retry का उत्तर देता है: उसी कार्ट के लिए ग्राहक की वापसी उसी समय संसाधित हो रही थी, या ऑर्डर स्टेटस सेट नहीं हो सका। PayU वेबहुक दोबारा भेजेगा। कारण लॉग में लिखा जाता है।

वेबहुक ignored_unknown_txnid का उत्तर देता है: वह लेन-देन इस स्टोर ने शुरू नहीं किया था, उदाहरण के लिए उसी PayU खाते का उपयोग करने वाला कोई दूसरा स्टोर। कुछ नहीं बदलता।

ग्राहक को PayU India के लिए फ़ोन नंबर चाहिए संदेश दिखता है: ऑर्डर में फ़ोन नंबर नहीं है। अपने चेकआउट में Telephone फ़ील्ड रखें। OpenCart 4 पर ग्राहक पुष्टि ब्लॉक के Phone फ़ील्ड में नंबर दर्ज कर सकता है।

ग्राहक को This payment method is not available. Please reload the checkout page. दिखता है: इस बीच भुगतान विधि बंद कर दी गई, क्रेडेंशियल गायब हैं, या चेकआउट अब ऑर्डर से मेल नहीं खाता। ग्राहक को चेकआउट दोबारा लोड करना होगा।

ऑर्डर समीक्षा स्टेटस में है: VibeFox PayU India Payment Gateway टैब के नोट पढ़ें। कारण राशि या मुद्रा का अंतर, विफल या लंबित सत्यापन, या रद्द ऑर्डर के लिए भुगतान है।

रिफ़ंड विफल है: PayU transaction ID not found for this order. का अर्थ है कि ऑर्डर का अभी तक कोई PayU भुगतान नहीं है। This payment was made in Test mode, but the Merchant Key/Salt of that mode are not set. (या Live mode) का अर्थ है कि आपको पहले उस मोड के क्रेडेंशियल दर्ज करने होंगे। Invalid refund amount: at most … INR can be refunded. का अर्थ है कि राशि भुगतान के शेष से अधिक है।

लॉग में बहुत कम जानकारी है: त्रुटियाँ और चेतावनियाँ हमेशा लिखी जाती हैं; हर भुगतान फ़ॉर्म और हर PayU परिणाम भी देखने के लिए Enable Logging चालू करें।

डेवलपर्स के लिए: भुगतान अनुरोध पर हस्ताक्षर करने से पहले, एक्सटेंशन अनुरोध फ़ील्ड और ऑर्डर के साथ OpenCart इवेंट payu_p_request_fields चलाता है। इससे कुंजी, लेन-देन ID, राशि और रिटर्न URL नहीं बदले जा सकते।

अनइंस्टॉल

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

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

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