VibeFox PayU India for WooCommerce — सहायता
आवश्यकताएँ
WordPress: 5.8 या बाद का संस्करण।
WooCommerce: 6.0 या बाद का संस्करण, इंस्टॉल और सक्रिय। प्लगइन इसके बिना सक्रिय होने से इनकार करता है; यदि WooCommerce बाद में बंद कर दिया जाता है, तो प्लगइन कुछ नहीं करता और व्यवस्थापक क्षेत्र में एक सूचना दिखाता है।
PHP: 8.0 या बाद का संस्करण।
Store currency: भारतीय रुपया (INR)। PayU India केवल रुपये में शुल्क लेता है। अन्य मुद्राओं के लिए चेकआउट पर भुगतान विधि छिपा दी जाती है।
Phone number: PayU को प्रत्येक भुगतान के लिए एक फ़ोन नंबर की आवश्यकता होती है। अपने चेकआउट में फ़ोन फ़ील्ड को अनिवार्य या कम से कम दृश्यमान बनाएँ।
PayU India account: आपको PayU Dashboard > Payment Gateway > Key Salt Details से Merchant Key और Merchant Salt (v1) की आवश्यकता होगी। टेस्ट जोड़ी देखने के लिए डैशबोर्ड को Test Mode पर स्विच करें। Salt v1 का उपयोग करें, Salt v2 का नहीं।
Internet access to your site: वैकल्पिक वेबहुक के लिए आवश्यक है। इसके बिना, जब ग्राहक PayU से वापस आता है तब ऑर्डर की पुष्टि होती है।
VibeFox license key: vibefox.net पर खरीदी जाती है। एक कुंजी एक डोमेन पर काम करती है।
इंस्टॉलेशन
1. WordPress में Plugins > Add New > Upload Plugin पर जाएँ, प्लगइन ZIP फ़ाइल चुनें और Install Now पर क्लिक करें। आप FTP द्वारा wcp_payu_india_payment फ़ोल्डर को /wp-content/plugins/ में भी अपलोड कर सकते हैं।
2. Activate पर क्लिक करें।
3. सेटिंग्स खोलें: WooCommerce > Settings > Payments > PayU India > Manage, या Plugins पेज पर प्लगइन नाम के नीचे Settings पर क्लिक करें।
4. पेज के शीर्ष पर लाइसेंस ब्लॉक में अपनी VibeFox लाइसेंस कुंजी दर्ज करें और Activate पर क्लिक करें।
5. टेस्ट Merchant Key और Salt तथा लाइव Merchant Key और Salt दर्ज करें (कॉन्फ़िगरेशन देखें)।
6. अनुशंसित: PayU Dashboard > Webhooks में, सफल और विफल भुगतानों के लिए सेटिंग्स पेज पर दिखाया गया वेबहुक URL जोड़ें।
7. Mode चुनें और Enable/Disable चालू करें। Test मोड में एक भुगतान का परीक्षण करें, फिर Live पर स्विच करें。
कॉन्फ़िगरेशन
सभी सेटिंग्स एक ही पेज पर हैं: WooCommerce > Settings > Payments > PayU India। फ़ील्ड के ऊपर पेज आपको चेतावनी देता है जब वर्तमान मोड की कुंजी या Salt गायब हो, Test मोड में Test mode is active: payments go to test.payu.in and no real money is charged. दिखाता है, और जब स्टोर मुद्रा INR न हो तो चेतावनी देता है (तब गेटवे चेकआउट पर छिपा दिया जाता है)।
सहेजते समय, कुंजियों और Salts से रिक्त स्थान और लाइन ब्रेक हटा दिए जाते हैं, क्योंकि चिपकाए गए स्पेस वाला Salt प्रत्येक PayU उत्तर की जाँच विफल कर देगा।
सामान्य
Enable/Disable: Enable PayU India Payment Gateway भुगतान विधि को चालू या बंद करता है। डिफ़ॉल्ट: बंद।
Title: वह भुगतान विधि शीर्षक जो ग्राहक को चेकआउट के दौरान दिखाई देता है। डिफ़ॉल्ट: PayU India।
Description: वह भुगतान विधि विवरण जो ग्राहक को चेकआउट के दौरान दिखाई देता है। डिफ़ॉल्ट: Pay securely via Credit/Debit Card, NetBanking, UPI, or Wallets through PayU।
API क्रेडेंशियल
PayU Dashboard > Payment Gateway > Key Salt Details से Merchant Key और Merchant Salt (v1) कॉपी करें। टेस्ट जोड़ी के लिए डैशबोर्ड को Test Mode पर स्विच करें।
Mode: नए भुगतान किस PayU वातावरण का उपयोग करेंगे।
रिफ़ंड हमेशा उसी मोड में जाता है जिसमें भुगतान किया गया था।
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 मोड में उपयोग किया जाता है।
रिटर्न और वेबहुक URL
Return URL: यह https://your-site/wc-api/payu_p_callback/ जैसा दिखता है। यह हर भुगतान के साथ अपने-आप PayU को भेजा जाता है; कुछ भी कॉन्फ़िगर करने की आवश्यकता नहीं है।
Webhook URL: यह https://your-site/wc-api/payu_p_webhook/ जैसा दिखता है। वैकल्पिक, लेकिन अनुशंसित: यह भुगतानों की पुष्टि तब भी करता है जब ग्राहक लौटने से पहले ब्राउज़र बंद कर देता है। सफल और विफल भुगतानों के लिए इसे PayU Dashboard > Webhooks में जोड़ें। URL को ठीक वैसे ही कॉपी करें जैसा सेटिंग्स पेज दिखाता है।
उन्नत
Verify Payment: Double-check every successful payment with the PayU verify_payment API। अनुशंसित। यदि जाँच पूरी नहीं हो पाती है, तो ऑर्डर को भुगतान किया गया चिह्नित करने के बजाय On hold कर दिया जाता है। डिफ़ॉल्ट: चालू।
Enable Logging: Log gateway events for troubleshooting। WooCommerce > Status > Logs में लिखा जाता है, स्रोत wcp_payu_india_payment। त्रुटियाँ और चेतावनियाँ हमेशा लॉग की जाती हैं; यह विकल्प अन्य घटनाओं को भी जोड़ता है। कुंजियाँ, Salt और ग्राहकों का व्यक्तिगत डेटा कभी लॉग नहीं किए जाते। डिफ़ॉल्ट: बंद।
Delete data on uninstall: Delete the plugin settings and logs when the plugin is deleted (orders are never deleted)। डिफ़ॉल्ट: बंद।
चेकआउट
ग्राहक भुगतान विधि (डिफ़ॉल्ट रूप से PayU India) चुनता है और ऑर्डर देता है। यदि ऑर्डर में कोई बिलिंग फ़ोन (या शिपिंग फ़ोन) नहीं है, तो ग्राहक को दिखाई देता है PayU India requires a phone number. Please enter your phone number and try again. अन्यथा ग्राहक एक छोटे पेज Thank you for your order. You will be redirected to PayU to complete your payment. पर जाता है, जो PayU होस्टेड चेकआउट को एक हस्ताक्षरित भुगतान अनुरोध भेजता है। वहाँ ग्राहक कार्ड, NetBanking, UPI या वॉलेट से भुगतान करता है।
प्रत्येक भुगतान पेज को अपनी PayU लेन-देन ID मिलती है, जो राशि और मोड के साथ ऑर्डर पर संग्रहीत होती है। उसी ऑर्डर के पुराने खुले भुगतान पेज पर किया गया भुगतान भी स्वीकार किया जाता है। भुगतान किए गए, होल्ड पर रखे गए या रद्द किए गए ऑर्डर को कभी नया भुगतान फ़ॉर्म नहीं मिलता, इसलिए ब्राउज़र का Back बटन दूसरा भुगतान शुरू नहीं कर सकता।
PayU परिणाम को ग्राहक के साथ वापस भेजता है और यदि कॉन्फ़िगर किया गया हो, तो वेबहुक द्वारा भी भेजता है। परिणाम केवल उस मोड की कुंजी और Salt से बने मान्य PayU हैश के साथ ही स्वीकार किया जाता है जिसमें भुगतान शुरू हुआ था, और केवल उस ऑर्डर के लिए जारी की गई लेन-देन ID के लिए। Verify Payment चालू होने पर, सफल परिणाम की PayU verify_payment API से भी जाँच की जाती है। भुगतान की गई राशि INR में पैसे तक ऑर्डर के कुल योग के बराबर होनी चाहिए। PayU द्वारा इस तरह पुष्टि किए जाने के बाद ही ऑर्डर को भुगतान किया गया चिह्नित किया जाता है। प्लगइन इन PayU परिणामों को संभालता है:
सफल या लंबित भुगतान के बाद ग्राहक ऑर्डर प्राप्त पेज देखता है। असफल भुगतान के बाद ग्राहक एक संदेश के साथ चेकआउट पर वापस आता है: Payment was not completed. Please try again or choose a different payment method., Payment was cancelled. You may try again. या, जब परिणाम की जाँच नहीं की जा सकी, We could not confirm the payment result. If your account was charged, please contact us before paying again. ये संदेश क्लासिक चेकआउट और चेकआउट ब्लॉक दोनों पर काम करते हैं।
यह भुगतान विधि क्लासिक चेकआउट, चेकआउट ब्लॉक और Pay for order पेज पर काम करती है। यह WooCommerce High-Performance Order Storage (HPOS) के साथ संगत है।
प्लगइन केवल INR में शुल्क लेता है और इसमें मल्टी-करेंसी प्रोसेसिंग (MCP) नहीं है। इसमें सेव किए गए कार्ड या टोकनाइज़ेशन, WooCommerce Subscriptions, साइट पर सीमलेस कार्ड फ़ॉर्म, EMI या ऑफ़र प्रबंधन और PayU वन-क्लिक चेकआउट नहीं हैं।
ऑर्डर और रिफ़ंड
ऑर्डर की स्थितियाँ
Pending payment: ग्राहक को PayU पर भेजा गया और उसने अभी भुगतान नहीं किया है।
Processing: भुगतान की पुष्टि हो गई। ऑर्डर नोट PayU लेन-देन ID (mihpayid), भुगतान मोड और बैंक कोड दिखाता है। ऑर्डर की लेन-देन ID PayU mihpayid होती है। केवल वर्चुअल डाउनलोड करने योग्य उत्पादों वाले ऑर्डर Completed हो जाते हैं, जैसा कि WooCommerce डिफ़ॉल्ट रूप से करता है।
On hold: PayU पर भुगतान अभी भी लंबित है (UPI या NetBanking), भुगतान की गई राशि या मुद्रा ऑर्डर से भिन्न है, verify_payment API तक नहीं पहुँचा जा सका या उसने अभी भुगतान की पुष्टि नहीं की है, या रद्द किए गए ऑर्डर के लिए भुगतान आ गया। ऑर्डर नोट कारण बताता है। PayU Dashboard में लेन-देन की जाँच करें और इसे पूरा करें या रिफ़ंड करें। जब सत्यापन विफल हो जाता है, तो परिणाम की अगली डिलीवरी पर ऑर्डर अपने-आप पुष्ट हो जाता है।
Failed: भुगतान अस्वीकार या रद्द कर दिया गया। ग्राहक दोबारा भुगतान कर सकता है।
यदि PayU पहले से भुगतान किए गए ऑर्डर के लिए किसी अन्य सफल भुगतान की सूचना देता है, तो एक नोट आपसे PayU Dashboard में डुप्लिकेट को रिफ़ंड करने के लिए कहता है।
रिफ़ंड
ऑर्डर खोलें, Refund पर क्लिक करें, राशि दर्ज करें और Refund via PayU India पर क्लिक करें (बटन आपका Title दिखाता है)। पूर्ण और आंशिक रिफ़ंड समर्थित हैं; राशि शून्य से अधिक होनी चाहिए। रिफ़ंड PayU रिफ़ंड API के माध्यम से उसी मोड की कुंजी और Salt के साथ भेजा जाता है जिसमें भुगतान किया गया था, इसलिए वे क्रेडेंशियल सेट होने चाहिए। यदि PayU रिफ़ंड को अस्वीकार करता है, तो WooCommerce PayU का संदेश दिखाता है और कोई रिफ़ंड दर्ज नहीं होता है।
PayU रिफ़ंड को कतारबद्ध करता है और उन्हें एसिंक्रोनस रूप से पूरा करता है; ग्राहक को आम तौर पर 5-7 कार्य दिवसों में पैसा मिल जाता है। ऑर्डर नोट में राशि, PayU अनुरोध ID और कारण दिखता है। प्लगइन बाद में रिफ़ंड की स्थिति की दोबारा जाँच नहीं करता है।
लाइसेंस कुंजी
प्लगइन vibefox.net की VibeFox लाइसेंस कुंजी के साथ काम करता है। लाइसेंस ब्लॉक WooCommerce > Settings > Payments > PayU India के शीर्ष पर है। कुंजी को License key में पेस्ट करें और Activate पर क्लिक करें। ब्लॉक स्थिति दिखाता है, उदाहरण के लिए लाइसेंस सक्रिय रहने की तिथि और आपका डोमेन। स्थिति दोबारा जाँचने के लिए Check now, दूसरी कुंजी दर्ज करने के लिए Change key और इस साइट से इसे हटाने के लिए Remove key का उपयोग करें। लिंक Manage licenses and domains in your account आपका vibefox.net खाता खोलता है।
एक कुंजी एक डोमेन पर काम करती है। किसी साइट से कुंजी हटाने से उसका डोमेन स्लॉट खाली नहीं होता है। अपने vibefox.net खाते में स्लॉट खाली करें।
सक्रिय कुंजी के बिना, चेकआउट पर ग्राहकों को PayU India नहीं दिखाया जाता है। यदि फिर भी भुगतान शुरू किया जाता है, तो ग्राहक को This payment method is not available. Please choose another one. दिखाई देता है। लॉग-इन किए गए स्टोर प्रबंधक अभी भी भुगतान विधि को देखते हैं, जिसे (unlicensed — visible to admins only) चिह्नित किया गया है, ताकि आप कुंजी खरीदने से पहले प्लगइन को सेट अप और परीक्षण कर सकें। Plugins पेज और WooCommerce पेजों पर एक अनुस्मारक दिखाई देता है। मौजूदा ऑर्डर प्रभावित नहीं होते हैं: पहले से शुरू किए गए भुगतान अभी भी पुष्ट होते हैं, और रिफ़ंड काम करते हैं।
जब किसी लाइसेंस की अवधि समाप्त हो जाती है, तो प्लगइन काम करता रहता है, लेकिन अपडेट और सहायता के लिए नवीनीकरण की आवश्यकता होती है। स्थिति पृष्ठभूमि में अपने-आप दोबारा जाँची जाती है।
समस्या-निवारण
PayU India does not appear at checkout: जाँचें कि लाइसेंस सक्रिय है, Enable/Disable चालू है और चुने गए Mode की कुंजी और Salt भरे हुए हैं। जाँचें कि स्टोर मुद्रा (या Pay for order पेज पर ऑर्डर की मुद्रा) INR है। सेटिंग्स पेज इनमें से प्रत्येक समस्या के लिए एक चेतावनी दिखाता है।
The payment went through, but the order stays Pending payment: ग्राहक स्टोर पर वापस नहीं आया, और कोई वेबहुक नहीं आया। सफल और विफल भुगतानों के लिए PayU Dashboard > Webhooks में सेटिंग्स से वेबहुक URL जोड़ें, और सुनिश्चित करें कि यह इंटरनेट से पहुँच योग्य है।
Webhook answers invalid_signature: PayU हैश मेल नहीं खाया। जाँचें कि भुगतान के मोड की कुंजी और Salt सही हैं और Salt v1 का उपयोग किया गया है, Salt v2 का नहीं। ऑर्डर नहीं बदला जाता है।
Webhook answers not_configured: जिस मोड में भुगतान शुरू किया गया था उसकी कुंजी या Salt गायब है। उन्हें दर्ज करें; PayU वेबहुक का पुनः प्रयास करता है।
Webhook answers verify_unavailable: verify_payment API अभी भुगतान की पुष्टि नहीं कर सका। ऑर्डर On hold है, और अगली डिलीवरी दोबारा सत्यापन करती है।
The customer sees PayU India requires a phone number: चेकआउट में फ़ोन फ़ील्ड को अनिवार्य या दृश्यमान बनाएँ। बिलिंग फ़ोन का उपयोग किया जाता है, या शिपिंग फ़ोन का उपयोग तब किया जाता है जब केवल वही भरा हो।
The order is On hold: ऑर्डर नोट पढ़ें। इसका कारण लंबित UPI या NetBanking भुगतान, राशि या मुद्रा का बेमेल होना, विफल या लंबित सत्यापन, या रद्द किए गए ऑर्डर के लिए भुगतान है।
Refund fails: PayU transaction ID not found for this order. का अर्थ है कि ऑर्डर में कोई PayU भुगतान नहीं है। यह संदेश कि भुगतान के मोड का Merchant Key/Salt सेट नहीं है, का अर्थ है कि आपको पहले उस मोड के क्रेडेंशियल दर्ज करने होंगे।
Too little in the log: त्रुटियाँ और चेतावनियाँ हमेशा लिखी जाती हैं; प्रत्येक PayU अनुरोध और परिणाम को भी देखने के लिए Enable Logging चालू करें।
Developer hooks: payu_p_request_fields फ़िल्टर हस्ताक्षरित होने से पहले भुगतान अनुरोध फ़ील्ड को बदलता है; payu_p_icon फ़िल्टर चेकआउट आइकन को बदलता है।
The license block shows an error: ब्लॉक में दिए गए संदेश का पालन करें। उदाहरण के लिए, यदि कुंजी पहले से किसी अन्य डोमेन पर उपयोग की गई है, तो अपने vibefox.net खाते में एक स्लॉट खाली करें और Check now पर क्लिक करें। यदि साइट का पता बदल गया है, तो नए डोमेन के लिए कुंजी सक्रिय करने के लिए Check now पर क्लिक करें। यदि लाइसेंस सर्वर तक नहीं पहुँचा जा सकता है, तो प्लगइन अंतिम ज्ञात स्थिति पर काम करता रहता है।
अनइंस्टॉल
प्लगइन को निष्क्रिय करने से सारा डेटा सुरक्षित रहता है। इसे हटाने के लिए, Plugins पेज पर इसे निष्क्रिय करें और हटाएँ। इस प्लगइन की लाइसेंस कुंजी और लाइसेंस स्थिति हमेशा हटा दी जाती है। गेटवे सेटिंग्स और इस प्लगइन के लॉग (लॉग फ़ाइलें और WooCommerce डेटाबेस लॉग की पंक्तियाँ) केवल तभी हटाए जाते हैं जब Delete data on uninstall चालू था। अन्यथा वे बाद में पुनः इंस्टॉलेशन के लिए बने रहते हैं। मौजूदा ऑर्डर अपने भुगतान नोट्स, PayU लेन-देन ID और रिफ़ंड अनुरोध ID बनाए रखते हैं।
PayU उसके संबंधित स्वामी का ट्रेडमार्क है। यह प्लगइन PayU से संबद्ध नहीं है और उसके द्वारा अनुमोदित नहीं है।
