VibeFox Pesapal for WooCommerce — सहायता
आवश्यकताएँ
WordPress: 6.2 या उसके बाद का संस्करण।
WooCommerce: 8.0 या उसके बाद का संस्करण, इंस्टॉल और सक्रिय होना चाहिए। इसके बिना प्लगइन सक्रिय नहीं होता।
PHP: 8.0 या उसके बाद का संस्करण।
Currency: ऑर्डर KES, UGX, TZS, ZMW, RWF या USD में होना चाहिए। अन्य मुद्राओं में चेकआउट पर भुगतान का तरीका छिपा रहता है। ऑर्डर की अपनी मुद्रा में शुल्क लिया जाता है; प्लगइन मुद्राएँ नहीं बदलता। राशियाँ मुख्य मुद्रा इकाइयों में भेजी जाती हैं और मुद्रा की सटीकता के अनुसार राउंड की जाती हैं (UGX और RWF बिना दशमलव के)।
Pesapal account: आपको Pesapal मर्चेंट खाते की कंज़्यूमर कुंजी और कंज़्यूमर सीक्रेट चाहिए। सैंडबॉक्स और लाइव कुंजियाँ अलग होती हैं। सैंडबॉक्स कुंजियाँ cybqa.pesapal.com के डेमो मर्चेंट खाते से मिलती हैं (Pesapal अपने डेवलपर पोर्टल पर भी डेमो कुंजियाँ प्रकाशित करता है)। लाइव कुंजियाँ आपके Pesapal मर्चेंट डैशबोर्ड से मिलती हैं। Pesapal डैशबोर्ड में कोई और सेटअप नहीं करना होता: प्लगइन अपना सूचना URL स्वयं पंजीकृत करता है। आपकी साइट इंटरनेट से पहुँच योग्य होनी चाहिए, क्योंकि Pesapal उस पर भुगतान की सूचनाएँ भेजता है।
VibeFox license key: vibefox.net से खरीदी जाती है। एक कुंजी एक डोमेन पर काम करती है।
इंस्टॉलेशन
1. WordPress में Plugins > Add New > Upload Plugin पर जाएँ, प्लगइन की ZIP फ़ाइल चुनें और Install Now पर क्लिक करें। आप FTP से wcp_pesapal_pay फ़ोल्डर को /wp-content/plugins/ में भी अपलोड कर सकते हैं।
2. Activate पर क्लिक करें।
3. सेटिंग खोलें: WooCommerce > Settings > Payments > Pesapal > Manage, या प्लगइन पेज पर प्लगइन के नाम के नीचे Settings पर क्लिक करें।
4. पेज के ऊपर लाइसेंस ब्लॉक में अपनी VibeFox लाइसेंस कुंजी दर्ज करें और Activate पर क्लिक करें।
5. सैंडबॉक्स कंज़्यूमर कुंजी और सीक्रेट दर्ज करें, Enable/Disable चालू करें, सेव करें और टेस्ट ऑर्डर दें।
6. लाइव कंज़्यूमर कुंजी और सीक्रेट दर्ज करें, Sandbox mode से टिक हटाएँ और वास्तविक भुगतान लेने के लिए सेव करें।
कॉन्फ़िगरेशन
सभी सेटिंग एक पेज पर हैं: WooCommerce > Settings > Payments > Pesapal। फ़ील्ड के ऊपर एक बैज मोड दिखाता है: SANDBOX के साथ Test payments on cybqa.pesapal.com — no real money is charged. या LIVE के साथ Real payments on pay.pesapal.com.। मौजूदा मोड की कुंजियाँ न होने पर (Enter the sandbox consumer key and secret — until then Pesapal is not shown at checkout., या लाइव के लिए ऐसा ही संदेश) और Pesapal द्वारा आपके स्टोर की मुद्रा समर्थित न होने पर चेतावनी दिखाई देती है। सैंडबॉक्स चालू रहने पर भुगतान तरीकों की सूची में Pesapal को टेस्ट मोड के रूप में दिखाया जाता है।
भुगतान सूचनाएँ (IPN)
यह ब्लॉक आपके स्टोर का सूचना URL दिखाता है। इसका रूप https://your-site/wc-api/pesapal_pay/ होता है। पहले भुगतान पर URL अपने-आप Pesapal में पंजीकृत होता है, सैंडबॉक्स और लाइव तथा कुंजियों की हर जोड़ी के लिए अलग-अलग, इसलिए कुछ कॉन्फ़िगर नहीं करना होता। पहले भुगतान के बाद ब्लॉक Registered IPN ID: के साथ Pesapal द्वारा लौटाई गई ID दिखाता है; उससे पहले Not registered yet for the current mode and keys. लिखा होता है। URL इंटरनेट से पहुँच योग्य होना चाहिए: उसके सामने मेंटेनेंस मोड, फ़ायरवॉल या पासवर्ड सुरक्षा नहीं होनी चाहिए।
चेकआउट
Enable/Disable: Enable Pesapal भुगतान का तरीका चालू या बंद करता है। डिफ़ॉल्ट: बंद।
Title: भुगतान तरीके का नाम जो ग्राहकों को चेकआउट पर दिखता है। डिफ़ॉल्ट: Pesapal (M-Pesa, Airtel Money, cards)।
Description: चेकआउट पर भुगतान तरीके के नीचे दिखने वाला टेक्स्ट। डिफ़ॉल्ट: Pay securely with M-Pesa, Airtel Money, card or bank via Pesapal. You will be redirected to Pesapal to complete the payment.
API क्रेडेंशियल
यह अनुभाग बताता है कि कुंजियाँ कहाँ मिलती हैं और cybqa.pesapal.com व pesapal.com के लिंक देता है। सैंडबॉक्स और लाइव कुंजियाँ अपनी-अपनी फ़ील्ड में दर्ज करें। कुंजियों की सभी फ़ील्ड पासवर्ड फ़ील्ड हैं।
Sandbox mode: Use the Pesapal sandbox (no real money)। चालू होने पर नए भुगतान सैंडबॉक्स कुंजियों के साथ cybqa.pesapal.com का उपयोग करते हैं। लाइव कुंजियों के साथ pay.pesapal.com पर वास्तविक भुगतान लेने के लिए टिक हटाएँ। डिफ़ॉल्ट: चालू।
Sandbox consumer key: आपके सैंडबॉक्स (डेमो) मर्चेंट खाते की कंज़्यूमर कुंजी। केवल सैंडबॉक्स मोड में उपयोग होती है।
Sandbox consumer secret: आपके सैंडबॉक्स मर्चेंट खाते का कंज़्यूमर सीक्रेट। केवल सैंडबॉक्स मोड में उपयोग होता है।
Live consumer key: आपके Pesapal मर्चेंट डैशबोर्ड की कंज़्यूमर कुंजी। सैंडबॉक्स मोड बंद होने पर उपयोग होती है।
Live consumer secret: आपके Pesapal मर्चेंट डैशबोर्ड का कंज़्यूमर सीक्रेट। सैंडबॉक्स मोड बंद होने पर उपयोग होता है।
मोड बदलने या कुंजियाँ बदलने पर दूसरे मोड या दूसरी कुंजियों का एक्सेस टोकन या सूचना ID कभी दोबारा उपयोग नहीं होता। एक मोड में शुरू किया गया भुगतान हमेशा उसी मोड में जाँचा जाता है, मोड बदलने के बाद भी।
उन्नत
Debug log: Log Pesapal requests and notifications विवरण WooCommerce > Status > Logs में लिखता है, स्रोत wcp_pesapal_pay है। त्रुटियाँ और चेतावनियाँ हमेशा लॉग होती हैं। कुंजियाँ, टोकन और ग्राहक डेटा कभी लॉग नहीं होते। डिफ़ॉल्ट: बंद।
Delete data: Delete the plugin settings and logs when the plugin is deleted। ऑर्डर में सेव किया गया Pesapal डेटा (ट्रैकिंग ID, नोट) भुगतान इतिहास है और हमेशा रखा जाता है। प्लगइन निष्क्रिय करने से कभी कुछ नहीं हटता। डिफ़ॉल्ट: बंद।
चेकआउट
ग्राहक भुगतान का तरीका चुनता है (डिफ़ॉल्ट रूप से Pesapal (M-Pesa, Airtel Money, cards)) और ऑर्डर देता है। सैंडबॉक्स मोड में Checkout ब्लॉक Sandbox mode: no real money will be charged. दिखाता है। प्लगइन ऑर्डर के बिलिंग विवरण के साथ ऑर्डर की मुद्रा में कुल राशि का Pesapal भुगतान अनुरोध बनाता है और मोड, राशि व Pesapal ट्रैकिंग ID वाला ऑर्डर नोट जोड़ता है। ग्राहक Pesapal भुगतान पेज पर जाता है और M-Pesa, Airtel Money, MTN, कार्ड या बैंक जैसे Pesapal द्वारा दिए गए किसी तरीके से भुगतान करता है।
ऑर्डर केवल Pesapal की पुष्टि के बाद भुगतान किया हुआ चिह्नित होता है। Pesapal की सूचनाओं और ग्राहक की वापसी में भुगतान डेटा और हस्ताक्षर नहीं होते, इसलिए प्लगइन उन पर भरोसा नहीं करता: हर एक के लिए वह उसी मोड में जिसमें भुगतान शुरू हुआ था, प्रमाणित सर्वर-से-सर्वर अनुरोध से Pesapal से लेन-देन की स्थिति पूछता है। वह यह भी जाँचता है कि लेन-देन इसी ऑर्डर का है और भुगतान की गई राशि व मुद्रा ऑर्डर से मेल खाती हैं।
भुगतान के बाद ग्राहक ऑर्डर प्राप्त होने के पेज पर लौटता है। मोबाइल मनी भुगतान में कुछ समय लग सकता है। यदि भुगतान की पुष्टि अभी नहीं हुई है, तो पेज Your payment is being confirmed by Pesapal. You will receive an e-mail as soon as it is confirmed — there is no need to pay again. दिखाता है। Pesapal की सूचना बाद में ऑर्डर पूरा करती है। यदि ऑर्डर होल्ड पर रखा गया था, तो पेज Your payment was received and is being reviewed by the shop. You will receive an e-mail once the order is confirmed. दिखाता है।
यदि ग्राहक Pesapal पेज पर रद्द करता है, तो वह Pay for order पेज पर लौटता है और The Pesapal payment was cancelled. You can try again or choose another payment method. दिखता है। यदि भुगतान विफल हुआ, तो संदेश The Pesapal payment was not successful. Please try again or choose another payment method. होता है। ग्राहक उसी ऑर्डर का फिर भुगतान कर सकता है। ऑर्डर का हर भुगतान प्रयास याद रहता है, इसलिए ऑर्डर के पुराने Pesapal पेज पर बाद में किया गया भुगतान भी स्वीकार होता है।
यदि Pesapal भुगतान शुरू नहीं कर पाता, तो ग्राहक को छोटा संदेश दिखता है, जैसे Pesapal is temporarily unavailable. Please try again in a few minutes or choose another payment method., Pesapal is not available at the moment. Please choose another payment method. (गलत कुंजियाँ) या Pesapal could not start the payment:, जिसके बाद Pesapal का कारण होता है। तकनीकी विवरण ऑर्डर नोट और लॉग में जाते हैं। ऑर्डर की कुल राशि शून्य से अधिक होनी चाहिए।
यह भुगतान तरीका क्लासिक चेकआउट, Checkout ब्लॉक और Pay for order पेज पर काम करता है। यह WooCommerce High-Performance Order Storage (HPOS) के साथ संगत है।
प्लगइन में चेकआउट पेज पर ही भुगतान फ़ॉर्म (ग्राहक हमेशा Pesapal पेज पर भुगतान करता है), सेव किए गए कार्ड, सब्सक्रिप्शन या आवर्ती भुगतान और मुद्रा रूपांतरण की सुविधाएँ नहीं हैं।
ऑर्डर और रिफ़ंड
ऑर्डर की स्थितियाँ
Pending payment: ग्राहक Pesapal पर भेजा गया है और अभी भुगतान नहीं किया है, या Pesapal ने भुगतान की पुष्टि अभी नहीं की है।
Processing: Pesapal भुगतान पूरा होने की जानकारी देता है और राशि व मुद्रा मेल खाती हैं। ऑर्डर नोट में राशि, भुगतान का तरीका, Pesapal पुष्टि कोड और ट्रैकिंग ID दिखते हैं। ऑर्डर की लेन-देन ID, Pesapal ट्रैकिंग ID होती है। हर भुगतान एक बार लागू होता है।
On hold: भुगतान की गई राशि या मुद्रा ऑर्डर से अलग है (नोट Pesapal amount/currency mismatch — held for review), या ऐसे ऑर्डर के लिए पैसे आए हैं जो भुगतान से पहले रद्द हो चुका था। Pesapal डैशबोर्ड में भुगतान जाँचें, फिर ऑर्डर पूरा करें या भुगतान रिफ़ंड करें।
Failed: Pesapal नवीनतम भुगतान प्रयास को विफल बताता है। नोट में Pesapal का कारण दिया जाता है। यदि ग्राहक Pay for order पेज से फिर कोशिश करता है और वह प्रयास भी विफल होता है, तो कारण के साथ एक और नोट जुड़ता है। पुराने प्रयास की विफलता ऑर्डर नहीं बदलती। ग्राहक फिर भुगतान कर सकता है।
Refunded: Pesapal उस भुगतान को रिवर्स हुआ बताता है जिससे ऑर्डर चुकाया गया था। दूसरे प्रयास का रिवर्सल केवल ऑर्डर पर नोट किया जाता है।
यदि पहले से भुगतान किए गए ऑर्डर का दूसरा भुगतान प्रयास भी पूरा हो जाता है, तो ऑर्डर नहीं बदलता। एक नोट आपसे Pesapal डैशबोर्ड में दूसरा भुगतान रिफ़ंड करने को कहता है। रद्द और रिफ़ंड किए गए ऑर्डर कभी अपने-आप दोबारा नहीं खोले जाते।
रिफ़ंड
प्लगइन Pesapal को रिफ़ंड नहीं भेजता। Pesapal डैशबोर्ड में भुगतान रिफ़ंड करें, फिर WooCommerce में रिफ़ंड मैन्युअल रूप से दर्ज करें।
लाइसेंस कुंजी
प्लगइन vibefox.net की VibeFox लाइसेंस कुंजी से काम करता है। लाइसेंस ब्लॉक WooCommerce > Settings > Payments > Pesapal के ऊपर है। License key में कुंजी पेस्ट करें और Activate पर क्लिक करें। ब्लॉक स्थिति दिखाता है, जैसे लाइसेंस किस तारीख तक सक्रिय है और आपका डोमेन। स्थिति फिर जाँचने के लिए Check now, दूसरी कुंजी दर्ज करने के लिए Change key और इस साइट से हटाने के लिए Remove key उपयोग करें। Manage licenses and domains in your account लिंक आपका vibefox.net खाता खोलता है।
एक कुंजी एक डोमेन पर काम करती है। साइट से कुंजी हटाने से उसका डोमेन स्लॉट खाली नहीं होता। अपने vibefox.net खाते में स्लॉट खाली करें।
सक्रिय कुंजी के बिना चेकआउट पर ग्राहकों को Pesapal नहीं दिखता। फिर भी भुगतान शुरू किया जाए, तो ग्राहक को This payment method is not available. Please choose another one. दिखता है। लॉग-इन स्टोर प्रबंधकों को भुगतान का तरीका (unlicensed — visible to admins only) के रूप में दिखता रहता है, ताकि आप कुंजी खरीदने से पहले प्लगइन सेटअप और टेस्ट कर सकें। प्लगइन पेज और WooCommerce पेजों पर रिमाइंडर दिखता है। मौजूदा ऑर्डर प्रभावित नहीं होते: पहले से शुरू भुगतान Pesapal की सूचना और ग्राहक की वापसी से पुष्ट होते रहते हैं।
लाइसेंस समाप्त होने पर प्लगइन काम करता रहता है, लेकिन अपडेट और सहायता के लिए नवीनीकरण चाहिए। स्थिति पृष्ठभूमि में अपने-आप फिर जाँची जाती है।
समस्या निवारण
चेकआउट पर Pesapal नहीं दिखता: जाँचें कि लाइसेंस सक्रिय है, Enable/Disable चालू है, मौजूदा मोड की कंज़्यूमर कुंजी और सीक्रेट दर्ज हैं (सैंडबॉक्स में Sandbox consumer key और Sandbox consumer secret, लाइव में Live consumer key और Live consumer secret) और ऑर्डर की मुद्रा KES, UGX, TZS, ZMW, RWF या USD है। सेटिंग के ऊपर की चेतावनियाँ समस्या बताती हैं। डेवलपर pesapal_p_supported_currencies फ़िल्टर से मुद्राओं की सूची बदल सकते हैं।
भुगतान हो गया, पर ऑर्डर भुगतान लंबित स्थिति में है: Pesapal की सूचना आपके स्टोर तक नहीं पहुँची और ग्राहक वापस नहीं आया। जाँचें कि Payment notifications (IPN) में दिखाया गया URL इंटरनेट से पहुँच योग्य है (/wc-api/pesapal_pay/ के सामने मेंटेनेंस मोड, फ़ायरवॉल या पासवर्ड सुरक्षा न हो)। WooCommerce > Status > Logs में स्रोत wcp_pesapal_pay देखें।
स्टोर सूचनाओं का उत्तर कैसे देता है: प्रोसेस की गई सूचना को HTTP 200 का उत्तर मिलता है। जब प्लगइन उसे प्रोसेस नहीं कर पाता, तो त्रुटि से उत्तर देता है और Pesapal बाद में सूचना फिर भेजता है: 400 (ट्रैकिंग ID नहीं है या उसका प्रारूप गलत है), 404 (स्टोर के किसी ऑर्डर में यह ट्रैकिंग ID नहीं है), 409 (लेन-देन दूसरे मर्चेंट संदर्भ का है; ऑर्डर नहीं बदला जाता), 502 (उस समय Pesapal API तक नहीं पहुँचा जा सका) और 503 (उसी समय ग्राहक की वापसी से ऑर्डर अपडेट हो रहा था)।
ग्राहक को Pesapal is not available at the moment दिखता है: Pesapal ने मौजूदा मोड की कंज़्यूमर कुंजी या सीक्रेट अस्वीकार किया है। जाँचें कि कुंजियाँ उसी मोड की हैं: सैंडबॉक्स कुंजियाँ केवल सैंडबॉक्स में, लाइव कुंजियाँ केवल लाइव मोड में काम करती हैं। ऑर्डर नोट में Pesapal की त्रुटि दिखती है।
ग्राहक को Pesapal is temporarily unavailable दिखता है: Pesapal तक नहीं पहुँचा जा सका या सूचना URL पंजीकृत नहीं हो पाया। ऑर्डर नोट और लॉग पढ़ें और फिर कोशिश करें।
भुगतान के बाद ऑर्डर होल्ड पर है: ऑर्डर नोट पढ़ें। भुगतान की गई राशि या मुद्रा ऑर्डर से अलग थी, या भुगतान ऑर्डर रद्द होने के बाद आया। Pesapal डैशबोर्ड में भुगतान जाँचें, फिर ऑर्डर प्रोसेस करें या भुगतान रिफ़ंड करें।
लाइसेंस ब्लॉक में त्रुटि दिखती है: ब्लॉक के संदेश का पालन करें। उदाहरण के लिए, कुंजी पहले से दूसरे डोमेन पर उपयोग हो रही है, तो अपने vibefox.net खाते में स्लॉट खाली करें और Check now पर क्लिक करें। साइट का पता बदल गया है, तो नए डोमेन के लिए कुंजी सक्रिय करने हेतु Check now पर क्लिक करें। लाइसेंस सर्वर तक नहीं पहुँचा जा सके, तो प्लगइन अंतिम ज्ञात स्थिति पर काम करता रहता है।
अनइंस्टॉल
प्लगइन निष्क्रिय करने से सभी डेटा सुरक्षित रहते हैं। हटाने के लिए Plugins पेज पर निष्क्रिय करके डिलीट करें। इस प्लगइन की लाइसेंस कुंजी और लाइसेंस स्थिति, कैश किए गए Pesapal एक्सेस टोकन और पंजीकृत सूचना ID हमेशा हटा दिए जाते हैं। प्लगइन की सेटिंग और लॉग (रोटेट की गई फ़ाइलों सहित लॉग फ़ाइलें और स्रोत wcp_pesapal_pay की डेटाबेस लॉग प्रविष्टियाँ) केवल तब हटते हैं जब Delete data चालू था। अन्यथा वे बाद में दोबारा इंस्टॉल करने के लिए रहते हैं। मौजूदा ऑर्डर अपने भुगतान नोट, लेन-देन ID और Pesapal ट्रैकिंग ID रखते हैं।
Pesapal अपने संबंधित स्वामी का ट्रेडमार्क है। यह प्लगइन Pesapal से संबद्ध नहीं है और न ही Pesapal द्वारा अनुमोदित है।
