VibeFox Paystack for OpenCart — सहायता
आवश्यकताएँ
OpenCart: 3.0.x (3.0.5.0 पर परीक्षण किया गया) या 4.0.2 और उसके बाद का संस्करण (4.1.0.3 पर परीक्षण किया गया)।
PHP: 8.0 या उसके बाद का संस्करण।
मुद्रा: ऑर्डर ऐसी मुद्रा में होना चाहिए जिसे Paystack स्वीकार करता है: NGN, USD, GHS, ZAR, KES, XOF, EGP या RWF, जो आपके Paystack खाते में सक्षम हों। अन्य मुद्राओं में भुगतान विधि छिप जाती है। XOF और RWF में Paystack केवल पूर्ण राशि स्वीकार करता है।
Paystack खाता: आपको अपने Paystack खाते की सीक्रेट कुंजियाँ चाहिए: टेस्ट सीक्रेट कुंजी (sk_test_...) और/या लाइव सीक्रेट कुंजी (sk_live_...)। पब्लिक कुंजियाँ (pk_...) आवश्यक नहीं हैं, क्योंकि भुगतान Paystack द्वारा होस्ट किए गए पेज पर होता है। Paystack डैशबोर्ड में आप अपने स्टोर का वेबहुक URL भी सेट करते हैं (देखें कॉन्फ़िगरेशन)। वेबहुक प्राप्त करने के लिए आपका स्टोर इंटरनेट से पहुँच योग्य होना चाहिए।
VibeFox लाइसेंस कुंजी: vibefox.net से खरीदी जाती है। एक कुंजी एक डोमेन पर काम करती है।
इंस्टॉलेशन
डाउनलोड एक zip फ़ाइल है, जिसमें दोनों OpenCart संस्करणों के पैकेज हैं। उसे अपने कंप्यूटर पर अनज़िप करें। उसमें README.txt, OpenCart 3 का पैकेज wcp_paystack_payment-oc3-(version).ocmod.zip और OpenCart 4 का पैकेज wcp_paystack_payment.ocmod.zip है। केवल अपने OpenCart संस्करण का पैकेज इंस्टॉल करें। लाइसेंस कुंजी दोनों संस्करणों के लिए एक ही है।
OpenCart 3
1. एडमिन में Extensions > Installer पर जाएँ, Upload पर क्लिक करें और फ़ाइल wcp_paystack_payment-oc3-(version).ocmod.zip चुनें। इस एक्सटेंशन में कोई OCMOD बदलाव नहीं है, इसलिए Extensions > Modifications को रीफ़्रेश करने की ज़रूरत नहीं है। इंस्टॉलर की जगह आप इस पैकेज के upload फ़ोल्डर की सामग्री को अपने स्टोर के रूट फ़ोल्डर में भी कॉपी कर सकते हैं।
2. Extensions > Extensions पर जाएँ और प्रकार Payments चुनें। VibeFox Paystack Payment ढूँढें और Install पर क्लिक करें (हरा + बटन)। आपके एडमिन उपयोगकर्ता के पास भुगतान एक्सटेंशन की सूची बदलने का अधिकार होना चाहिए।
3. सेटिंग्स पेज खोलने के लिए Edit (पेंसिल बटन) पर क्लिक करें। पेज के ऊपर वाले लाइसेंस ब्लॉक में License key में अपनी VibeFox लाइसेंस कुंजी चिपकाएँ और Activate पर क्लिक करें (देखें लाइसेंस कुंजी)।
4. Paystack डैशबोर्ड से अपनी सीक्रेट कुंजियाँ चिपकाएँ और Paystack डैशबोर्ड में वेबहुक URL सेट करें (देखें कॉन्फ़िगरेशन)।
5. Enable/Disable चालू करें और Save पर क्लिक करें। जब तक आप एक टेस्ट भुगतान न कर लें, Test Mode चालू रखें; फिर असली भुगतान स्वीकार करने के लिए उसे बंद करें।
OpenCart 4
1. एडमिन में Extensions > Installer पर जाएँ, Upload पर क्लिक करें और फ़ाइल wcp_paystack_payment.ocmod.zip चुनें। फ़ाइल का नाम न बदलें: OpenCart 4 एक्सटेंशन कोड फ़ाइल के नाम से लेता है, और नाम बदला हुआ पैकेज काम नहीं करता।
2. इंस्टॉल किया गया पैकेज उसी पेज पर इंस्टॉल किए गए एक्सटेंशनों की सूची में दिखता है। उसके बगल में Install (हरा + बटन) पर क्लिक करें।
3. Extensions > Extensions पर जाएँ और प्रकार Payments चुनें। VibeFox Paystack Payment ढूँढें, Install (हरा + बटन) पर क्लिक करें, फिर Edit (पेंसिल बटन) पर क्लिक करें।
4. लाइसेंस कुंजी, Paystack कुंजियाँ और वेबहुक वैसे ही डालें जैसे OpenCart 3 के चरण 3 से 5 में बताया गया है। सेटिंग्स पेज और उसके फ़ील्ड दोनों संस्करणों में एक जैसे हैं। केवल वेबहुक URL अलग है (देखें Webhook)।
नई इंस्टॉलेशन में भुगतान विधि बंद और टेस्ट मोड चालू होता है।
कॉन्फ़िगरेशन
सभी सेटिंग्स एक्सटेंशन पेज पर हैं: Extensions > Extensions > Payments > VibeFox Paystack Payment > Edit। सेक्शन बाईं ओर सूचीबद्ध हैं; सूची के नीचे का Save बटन पूरा पेज सेव करता है। सेटिंग्स के ऊपर एक स्थिति बॉक्स मोड दिखाता है: टेस्ट मोड: कोई असली राशि नहीं काटी जाएगी। या लाइव मोड: असली भुगतान स्वीकार किए जाते हैं। यह चेतावनी भी देता है जब वर्तमान मोड की सीक्रेट कुंजी खाली हो, जब किसी सीक्रेट कुंजी के फ़ील्ड में पब्लिक कुंजी (pk_...) डाली गई हो, जब लाइव मोड में टेस्ट कुंजी (sk_test_...) हो या टेस्ट मोड में लाइव कुंजी (sk_live_...) हो, और जब Paystack आपके स्टोर की डिफ़ॉल्ट मुद्रा स्वीकार न करता हो। जब तक कुंजी की कोई समस्या है, चेकआउट पर भुगतान विधि छिपी रहती है। एक्सटेंशन बदलने का अधिकार न होने पर पेज सेटिंग्स दिखाता है, पर उन्हें सेव नहीं कर सकता।
सेव करते समय Title खाली नहीं हो सकता और 128 अक्षरों से लंबा नहीं हो सकता, Sort Order पूर्ण संख्या होनी चाहिए, Total 0 या उससे अधिक की संख्या होनी चाहिए, और geo zone तथा ऑर्डर स्टेटस मौजूद होने चाहिए; अन्यथा कुछ भी सेव नहीं होता। कुंजी की समस्याएँ सेव होने से नहीं रोकतीं: स्टेटस बॉक्स उन्हें बताता है।
Paystack
इस सेक्शन की शुरुआत एक छोटे नोट से होती है: Paystack के होस्ट किए गए भुगतान पेज पर कार्ड, बैंक ट्रांसफ़र, USSD और मोबाइल मनी; हर भुगतान की Paystack API के ज़रिए सर्वर पर पुष्टि; और स्वीकृत मुद्राएँ।
Enable/Disable: Enable Paystack Payment भुगतान विधि को चालू या बंद करता है। डिफ़ॉल्ट: बंद।
Title: चेकआउट पर ग्राहक को दिखने वाला भुगतान विधि का नाम। यही नाम ऑर्डर में भी सेव होता है। डिफ़ॉल्ट: Paystack। अनिवार्य, अधिकतम 128 अक्षर।
Description: Confirm Order चरण में, पुष्टि बटन के ऊपर ग्राहक को दिखाया जाने वाला पाठ। डिफ़ॉल्ट: Pay securely using your debit card, credit card, or bank account via Paystack.
Sort Order: चेकआउट पर भुगतान विधियों के बीच Paystack की स्थिति। खाली छोड़ें या पूर्ण संख्या लिखें।
Geo Zone: Paystack केवल चुने हुए geo zone के भुगतान पते के लिए दिखाएँ। डिफ़ॉल्ट: All zones। Geo zones System > Localisation > Geo Zones में सेट होते हैं।
Total: स्टोर की डिफ़ॉल्ट मुद्रा में चेकआउट की वह कुल राशि जिस तक पहुँचने पर ही Paystack दिया जाए। किसी भी राशि पर Paystack दिखाने के लिए खाली छोड़ें।
API कुंजियाँ
Paystack डैशबोर्ड के पेज Settings > API Keys & Webhooks से सीक्रेट कुंजियाँ कॉपी करें। इस सेक्शन में उस पेज का लिंक है।
Test Mode: नए भुगतानों के लिए टेस्ट सीक्रेट कुंजी का उपयोग करता है, और कोई असली राशि नहीं काटी जाती। असली भुगतान लाइव सीक्रेट कुंजी से स्वीकार करने के लिए इसे बंद करें। दूसरे मोड में किए गए भुगतान सत्यापन और रिफ़ंड के लिए अपने मोड की कुंजी का ही उपयोग करते रहते हैं। डिफ़ॉल्ट: चालू। चालू रहने पर ग्राहकों को Confirm Order चरण पर टेस्ट मोड सक्षम है। कोई असली शुल्क नहीं लिया जाएगा। दिखता है।
Test Secret Key: आपकी Paystack टेस्ट सीक्रेट कुंजी। यह sk_test_ से शुरू होती है।
Live Secret Key: आपकी Paystack लाइव सीक्रेट कुंजी। यह sk_live_ से शुरू होती है।
सेव की गई कुंजियाँ दोबारा कभी नहीं दिखाई जातीं। फ़ील्ड खाली रहता है और सेव की गई — रखने के लिए खाली छोड़ें। दिखाता है। केवल तभी नया मान लिखें जब उसे बदलना हो। सेव की गई कुंजी हटाने के लिए फ़ील्ड के नीचे Clear the saved value पर टिक करें और Save पर क्लिक करें।
Webhook
वेबहुक आपके स्टोर को बताता है कि भुगतान हो गया है, भले ही ग्राहक स्टोर पर वापस न आए। Paystack डैशबोर्ड के पेज Settings > API Keys & Webhooks में, इस सेक्शन के Webhook URL में दिखने वाला URL Test Webhook URL और Live Webhook URL दोनों में सेट करें। OpenCart 3 में यह https://your-store/index.php?route=extension/payment/wcp_paystack_payment/webhook जैसा दिखता है, और OpenCart 4 में https://your-store/index.php?route=extension/wcp_paystack_payment/payment/wcp_paystack_payment.webhook जैसा। यह आपकी OpenCart इंस्टॉलेशन के स्टोरफ़्रंट पते से बनता है। URL को ठीक वैसे ही कॉपी करें जैसा सेटिंग्स में दिखता है।
Paystack हर वेबहुक पर आपकी सीक्रेट कुंजी से हस्ताक्षर करता है, इसलिए और कुछ कॉन्फ़िगर करने की ज़रूरत नहीं है। मान्य हस्ताक्षर के बिना आए वेबहुक अस्वीकार कर दिए जाते हैं। एक्सटेंशन charge.success इवेंट का उपयोग करता है:
अन्य इवेंट्स को OK उत्तर दिया जाता है और उन्हें अनदेखा किया जाता है। वेबहुक के बिना, ऑर्डर तभी पुष्ट होता है जब ग्राहक भुगतान के बाद स्टोर पर लौटता है। बाद में पूरे होने वाले बैंक ट्रांसफ़र और USSD भुगतान केवल वेबहुक से पुष्ट होते हैं।
ऑर्डर
OpenCart, Confirm Order चरण पर ऑर्डर बिना स्टेटस के बनाता है (एक लापता ऑर्डर, missing order)। Paystack द्वारा API से भुगतान की पुष्टि के बाद ही ऑर्डर को स्टेटस मिलता है। नीचे का हर स्टेटस फ़ील्ड आपके OpenCart ऑर्डर स्टेटस की सूची दिखाता है।
Autocomplete Order: चालू होने पर भुगतान किए गए ऑर्डर को Paid Order Status की जगह Complete Order Status मिलता है। डिफ़ॉल्ट: बंद।
Paid Order Status: पुष्ट भुगतान के बाद सेट होने वाला स्टेटस। डिफ़ॉल्ट: Processing।
Complete Order Status: Autocomplete Order चालू होने पर पुष्ट भुगतान के बाद सेट होने वाला स्टेटस। डिफ़ॉल्ट: Complete।
Awaiting Payment Status: ग्राहक तब लौटा जब Paystack अब भी भुगतान प्रोसेस कर रहा था (बैंक ट्रांसफ़र, USSD, मोबाइल मनी)। वेबहुक भुगतान की पुष्टि करने तक ऑर्डर यही स्टेटस रखता है। डिफ़ॉल्ट: Pending।
On Hold (Review) Status: भुगतान को आपकी समीक्षा की ज़रूरत है (देखें ऑर्डर स्टेटस)। डिफ़ॉल्ट: Pending, क्योंकि OpenCart में On hold स्टेटस नहीं है। आप System > Localisation > Order Statuses में अपना स्टेटस बना सकते हैं और यहाँ चुन सकते हैं।
Failed Status: जो भुगतान Paystack अब भी प्रोसेस कर रहा था, वह प्रतीक्षारत ऑर्डर के लिए विफल हो गया। डिफ़ॉल्ट: Failed।
Refunded Status: ऑर्डर पेज से भुगतान की पूरी राशि लौटाई गई। डिफ़ॉल्ट: Refunded।
उन्नत
Debug log: Paystack इवेंट्स और API कॉल्स को OpenCart के लॉग फ़ोल्डर (storage/logs) में paystack_p_debug.log.php में लिखता है। यह फ़ाइल वेब से नहीं खोली जा सकती, और 5 MB पर इसे paystack_p_debug.old.log.php में ले जाया जाता है। त्रुटियाँ और चेतावनियाँ हमेशा दर्ज होती हैं। कुंजियाँ और ग्राहक का डेटा कभी दर्ज नहीं होता। डिफ़ॉल्ट: बंद।
Log: लॉग का आकार और नवीनतम प्रविष्टियाँ दिखाता है। खाली करने के लिए Clear log पर क्लिक करें।
Delete data on uninstall: चालू होने पर एक्सटेंशन हटाने पर गेटवे सेटिंग्स और लॉग हट जाते हैं। ऑर्डर पर सेव किया गया भुगतान डेटा हमेशा रखा जाता है। डिफ़ॉल्ट: बंद।
इंपोर्ट / एक्सपोर्ट
Export: Download JSON सेटिंग्स को JSON फ़ाइल के रूप में सेव करता है। सीक्रेट कुंजियाँ एक्सपोर्ट नहीं होतीं।
Import: पहले एक्सपोर्ट किया गया JSON चिपकाएँ और सेटिंग्स बहाल करने के लिए Import पर क्लिक करें। सेव की गई सीक्रेट कुंजियाँ बनी रहती हैं।
चेकआउट
Payment Method चरण पर ग्राहक भुगतान विधि चुनता है (डिफ़ॉल्ट रूप से Paystack)। Confirm Order चरण पर ग्राहक को आपका विवरण और यह नोट दिखता है: भुगतान पूरा करने के लिए आपको सुरक्षित Paystack पेज पर भेजा जाएगा। OpenCart इस चरण पर ऑर्डर बनाता है, अब भी बिना स्टेटस के। OpenCart 4 में ग्राहक भुगतान विधि ब्लॉक के Choose बटन से, Payment method options विंडो में भुगतान विधि चुनता है, और चेकआउट पेज के नीचे Confirm Order पर क्लिक करता है। जब ग्राहक Confirm Order पर क्लिक करता है, तो एक्सटेंशन ऑर्डर की मुद्रा में ऑर्डर की कुल राशि के लिए एक Paystack लेन-देन शुरू करता है, ग्राहक का ईमेल भेजता है, और ग्राहक को Paystack द्वारा होस्ट किए गए चेकआउट पेज पर भेजता है। वहाँ ग्राहक आपके Paystack खाते में सक्षम किसी एक चैनल से भुगतान करता है। भुगतान में ऑर्डर नंबर और ग्राहक का नाम शामिल होता है।
भुगतान के बाद ग्राहक आपके स्टोर पर लौट आता है। ऑर्डर तभी भुगतान किया हुआ चिह्नित होता है जब Paystack उसकी पुष्टि कर दे: जब ग्राहक लौटता है और जब वेबहुक आता है, तो एक्सटेंशन Paystack API से लेन-देन पढ़ता है और संदर्भ, स्टेटस, राशि और मुद्रा की जाँच करता है। फिर ऑर्डर को OpenCart के सामान्य तरीके से स्टेटस मिलता है, सामान्य ऑर्डर ईमेल और स्टॉक अपडेट के साथ, और ग्राहक को OpenCart का ऑर्डर सफलता पेज दिखता है।
यदि भुगतान अब भी प्रोसेस हो रहा है, जैसे बैंक ट्रांसफ़र, तो ग्राहक के लौटने पर ऑर्डर को Awaiting Payment Status मिलता है, और सफलता पेज पर धन्यवाद। आपका भुगतान Paystack द्वारा पुष्ट किया जा रहा है; आपको एक पुष्टि ईमेल मिलेगा। दिखता है। वेबहुक ऑर्डर को बाद में पूरा करता है, और जब ऑर्डर भुगतान किया हुआ बन जाता है या भुगतान विफल होता है, तब ग्राहक को OpenCart ऑर्डर स्टेटस ईमेल मिलता है। समीक्षाधीन ऑर्डर के लिए सफलता पेज दिखाता है: आपका भुगतान प्राप्त हो गया है और आपके ऑर्डर की समीक्षा की जा रही है। ज़रूरत पड़ने पर हम आपसे संपर्क करेंगे। यदि ग्राहक के लौटने पर Paystack तक पहुँच नहीं हो पाती, या उसने अभी तक भुगतान की पुष्टि नहीं की है, तो एक Payment confirmation पेज ग्राहक से दोबारा भुगतान न करने को कहता है और Check again और Back to checkout देता है; वेबहुक आते ही ऑर्डर स्टेटस सेट कर देता है।
यदि ग्राहक Paystack पेज पर Cancel payment पर क्लिक करता है, बिना भुगतान किए पेज छोड़ देता है, या भुगतान अस्वीकार हो जाता है, तो ऑर्डर बिना स्टेटस के रहता है और कार्ट सुरक्षित रहता है। ग्राहक एक संदेश के साथ चेकआउट पर लौटता है: भुगतान रद्द कर दिया गया। आप दोबारा प्रयास कर सकते हैं या कोई दूसरी भुगतान विधि चुन सकते हैं।, भुगतान पूरा नहीं हुआ। आप दोबारा प्रयास कर सकते हैं या कोई दूसरी भुगतान विधि चुन सकते हैं। या आपका भुगतान अस्वीकार कर दिया गया। आप दोबारा प्रयास कर सकते हैं या कोई दूसरी भुगतान विधि चुन सकते हैं। OpenCart 4 पर ये संदेश चेकआउट पेज के ऊपर दिखते हैं।
हर नया प्रयास (OpenCart 3 में हर बार Confirm Order चरण दिखने पर एक नया ऑर्डर बनता है, OpenCart 4 में चेकआउट का ऑर्डर अपडेट होता है) एक नया Paystack लेन-देन शुरू करता है। पुराना भुगतान पेज भी मान्य रहता है: यदि उसका भुगतान बाद में होता है, तो वह भी स्वीकार होता है। नया भुगतान शुरू करने से पहले, उसी कार्ट के पिछले 24 घंटों के खुले प्रयासों को Paystack से जाँचा जाता है। यदि कार्ट पहले से भुगतान किया हुआ है, समीक्षा में है, या बैंक ट्रांसफ़र की प्रतीक्षा में है, तो ग्राहक सीधे सफलता पेज पर जाता है और दूसरा भुगतान शुरू नहीं होता। यदि उसी कार्ट का कोई दूसरा ऑर्डर फिर भी भुगतान हो जाता है, तो वह ऑर्डर बिना स्टेटस के रहता है और भुगतान किए गए ऑर्डर पर डुप्लिकेट राशि लौटाने का नोट लगता है। कार्ट में कोई भी बदलाव, जिसमें नई मात्रा भी शामिल है, एक नया कार्ट माना जाता है जिसके लिए अपना भुगतान ज़रूरी है।
OpenCart 4 में ऑर्डर सफलता पेज दिखाए जाने तक चेकआउट में रखा जाता है। यदि वह ऑर्डर इस बीच बिना भुगतान के बंद हो गया (उदाहरण के लिए आपने उसे रद्द किया), तो ग्राहक संदेश Your previous order was cancelled without a payment. Please confirm the order again to pay with a new order. के साथ चेकआउट पर लौट जाता है। अगला Confirm Order एक नए ऑर्डर का भुगतान करता है। यदि वह ऑर्डर किसी पिछले कार्ट के लिए पहले ही भुगतान किया हुआ था और तब से कार्ट बदल गया है, तो ग्राहक चेकआउट पर वापस ले जाया जाता है, और अगला Confirm Order मौजूदा कार्ट के एक नए ऑर्डर का भुगतान करता है। बंद किया गया ऑर्डर कभी भुगतान किया हुआ नहीं दिखाया जाता।
वापसी लिंक केवल अपने यादृच्छिक टोकन से काम करता है। ऐसी वापसी जिसे किसी ऑर्डर से मिलाया न जा सके, ग्राहक को हम इस भुगतान को किसी ऑर्डर से मिला नहीं सके। यदि आपसे शुल्क लिया गया है, तो कृपया हमसे संपर्क करें। के साथ चेकआउट पर ले जाती है।
यदि Paystack भुगतान शुरू नहीं कर पाता, तो ग्राहक Confirm Order चरण पर रहता है और बटन के ऊपर एक छोटा संदेश दिखता है, जैसे Paystack भुगतान शुरू नहीं कर सका: और उसके बाद Paystack का दिया कारण, या Paystack अस्थायी रूप से उपलब्ध नहीं है। कृपया थोड़ी देर बाद फिर प्रयास करें या कोई दूसरी भुगतान विधि चुनें। ऑर्डर की कुल राशि शून्य से अधिक होनी चाहिए, और ग्राहक के पास वैध ईमेल पता होना चाहिए।
स्टोर मेंटेनेंस मोड में होने पर भी वेबहुक काम करता है, क्योंकि OpenCart भुगतान एक्सटेंशन के अनुरोधों को जाने देता है (OpenCart 4 पर एक्सटेंशन इसके लिए अपनी स्टार्टअप ऐक्शन जोड़ता है, जो ग्राहक की Paystack से वापसी को भी जाने देती है)।
इस एक्सटेंशन में इनलाइन या पॉप-अप भुगतान फ़ॉर्म नहीं है, सेव किए गए कार्ड नहीं हैं, सब्सक्रिप्शन नहीं हैं, स्प्लिट भुगतान या सब-अकाउंट नहीं हैं, और OpenCart में भुगतान चैनल चुनने की सुविधा नहीं है।
ऑर्डर और रिफ़ंड
ऑर्डर स्टेटस
कोई स्टेटस नहीं (लापता ऑर्डर): ग्राहक को Paystack पर भेजा गया और उसने भुगतान नहीं किया, Paystack पेज छोड़ दिया, या Paystack ने भुगतान की पुष्टि अभी तक नहीं की है। Sales > Orders में ऐसे ऑर्डर केवल तब दिखते हैं जब फ़िल्टर Order Status को Missing Orders पर सेट किया गया हो।
Awaiting Payment Status (डिफ़ॉल्ट Pending): ग्राहक तब लौटा जब Paystack अब भी भुगतान प्रोसेस कर रहा था, जैसे बैंक ट्रांसफ़र या USSD। Paystack द्वारा भुगतान की पुष्टि होने पर ऑर्डर भुगतान किए गए स्टेटस में चला जाता है। यदि ऐसा भुगतान कभी पूरा नहीं होता, तो आपके बदलने तक ऑर्डर इसी स्टेटस में रहता है।
Paid Order Status (डिफ़ॉल्ट Processing) या Complete Order Status: भुगतान की पुष्टि हो गई है। Autocomplete Order चालू होने पर Complete स्टेटस उपयोग होता है। एक नोट में राशि, Paystack संदर्भ, लेन-देन संख्या, मोड (टेस्ट या लाइव), भुगतान चैनल, कार्ड भुगतान के लिए कार्ड का प्रकार और अंतिम अंक, और ग्राहक द्वारा दिए गए Paystack शुल्क दिखते हैं।
On Hold (Review) Status (डिफ़ॉल्ट Pending): भुगतान की गई राशि या मुद्रा ऑर्डर से भिन्न है (नोट Paystack amount or currency mismatch), या भुगतान तब आया जब ऑर्डर रद्द हो चुका था या बिना भुगतान के किसी दूसरे स्टेटस पर बदला जा चुका था। नोट बताता है कि क्या जाँचना है। ऑर्डर पूरा करें या भुगतान रिफ़ंड करें।
Failed Status (डिफ़ॉल्ट Failed): Paystack रिपोर्ट करता है कि प्रतीक्षारत स्टेटस वाले ऑर्डर का नवीनतम भुगतान प्रयास विफल या रिवर्स हो गया। किसी पुराने प्रयास की विफलता ऑर्डर को नहीं बदलती।
यदि पहले से भुगतान किए गए ऑर्डर के लिए दूसरा भुगतान आता है, तो ऑर्डर नहीं बदलता। एक नोट आपसे Paystack डैशबोर्ड में डुप्लिकेट भुगतान रिफ़ंड करने को कहता है। Shipped जैसे किसी अन्य प्रोसेसिंग स्टेटस वाले ऑर्डर के लिए आया भुगतान केवल ऑर्डर पर नोट किया जाता है।
नोट ऑर्डर की History की वे प्रविष्टियाँ हैं जिन्हें ग्राहक नहीं देखता।
VibeFox Paystack Payment टैब
Sales > Orders में Paystack से भुगतान किया गया ऑर्डर खोलें। ऑर्डर पेज के नीचे, History और Additional के बगल में, VibeFox Paystack Payment टैब Transaction reference, टेस्ट भुगतानों के लिए Test लेबल वाला Mode, भुगतान का Status, Transaction ID, Channel और Card, भुगतान की तारीख, Paid / refunded राशियाँ, रिफ़ंड फ़ॉर्म, रिफ़ंड इतिहास और ऑर्डर के Paystack notes दिखाता है। यह टैब एक्सटेंशन तक पहुँच वाले उपयोगकर्ताओं को दिखाया जाता है।
रिफ़ंड
VibeFox Paystack Payment टैब में Amount डालें (जो राशि अभी रिफ़ंड नहीं हुई है, वह अपने-आप भर जाती है), चाहें तो Reason (optional) लिखें, और Refund via Paystack पर क्लिक करें। प्रश्न की पुष्टि करें: क्या यह राशि Paystack के माध्यम से रिफ़ंड करनी है? यह वापस नहीं हो सकता। पूर्ण और आंशिक रिफ़ंड दोनों समर्थित हैं। आपको एक्सटेंशन बदलने का अधिकार चाहिए (System > Users > User Groups में सेट)। रिफ़ंड उसी लेन-देन पर जाता है जिससे ऑर्डर का भुगतान हुआ था, और उस मोड (टेस्ट या लाइव) की सीक्रेट कुंजी से होता है जिसमें भुगतान हुआ था, इसलिए वह कुंजी सेट होनी चाहिए। रिफ़ंड उसी राशि और मुद्रा में होते हैं जो Paystack ने काटी थी; इसलिए राशि या मुद्रा के बेमेल होने के कारण समीक्षा में आए ऑर्डर के लिए, आप ऑर्डर के कुल योग तक नहीं, बल्कि ग्राहक ने वास्तव में जितना भुगतान किया, उतनी राशि तक ही रिफ़ंड कर सकते हैं। XOF और RWF में रिफ़ंड पूर्ण राशि होनी चाहिए।
Paystack रिफ़ंड को कतार में रखता है: नोट और रिफ़ंड इतिहास में Paystack द्वारा लौटाया गया स्टेटस (जैसे pending) और रिफ़ंड ID दिखते हैं। यदि Paystack रिफ़ंड स्वीकार नहीं करता, तो टैब Paystack refund failed: और कारण दिखाता है, और कोई रिफ़ंड दर्ज नहीं होता। पूर्ण रिफ़ंड ग्राहक को सूचित किए बिना और उत्पादों को स्टॉक में वापस किए बिना ऑर्डर को Refunded Status पर सेट करता है, जैसे मैनुअल स्टेटस बदलाव। आंशिक रिफ़ंड स्टेटस नहीं बदलता। Paystack द्वारा भुगतान की पुष्टि होने के बाद ही रिफ़ंड उपलब्ध होते हैं।
Sales > Returns में उत्पाद वापसी से Paystack के माध्यम से पैसा वापस नहीं जाता। Paystack डैशबोर्ड में किए गए रिफ़ंड, और Paystack द्वारा कतार में रखे गए रिफ़ंड की अंतिम स्थिति, OpenCart के साथ सिंक नहीं होती। ज़रूरत हो तो उन्हें मैन्युअली दर्ज करें।
लाइसेंस कुंजी
यह एक्सटेंशन vibefox.net की VibeFox लाइसेंस कुंजी के साथ काम करता है। लाइसेंस ब्लॉक License — VibeFox Paystack Payment Extensions > Extensions > Payments > VibeFox Paystack Payment > Edit पर सेटिंग्स के ऊपर पहला ब्लॉक है। कुंजी को License key में चिपकाएँ और Activate पर क्लिक करें। इसके बाद ब्लॉक कुंजी को मास्क करके, स्टेटस (जैसे लाइसेंस किस तारीख तक सक्रिय है और आपका डोमेन) और ये बटन दिखाता है: स्टेटस दोबारा जाँचने के लिए Check now, दूसरी कुंजी दर्ज करने के लिए Change key, और इस स्टोर से कुंजी हटाने के लिए Remove key। इनके नीचे Product: opencart-payment-paystack की पंक्ति और 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 खाते में स्लॉट मुक्त करें।
सक्रिय कुंजी के बिना चेकआउट पर ग्राहकों को Paystack नहीं दिखता। फिर भी यदि भुगतान शुरू हो जाए, तो ग्राहक को This payment method is not available. Please choose another one. दिखता है। उसी ब्राउज़र में एडमिन में लॉग इन एडमिन उपयोगकर्ता को स्टोर में भुगतान विधि अब भी दिखती है, जिस पर (unlicensed — visible to admins only) लिखा होता है, ताकि आप कुंजी खरीदने से पहले एक्सटेंशन सेट करके परख सकें। OpenCart 4 पर यह पूर्वावलोकन उपलब्ध नहीं है: स्टोर को एडमिन लॉगिन दिखाई नहीं देता, इसलिए सक्रिय कुंजी के बिना भुगतान विधि सभी के लिए छिपी रहती है। एक बार Edit पेज खोलने के बाद, एडमिन Dashboard पर एक अनुस्मारक दिखता है। उसे × से बंद करने पर वह 7 दिनों तक छिपा रहता है। मौजूदा ऑर्डर प्रभावित नहीं होते: जो भुगतान पहले से शुरू हो चुके हैं, उनकी पुष्टि होती रहती है और रिफ़ंड काम करते हैं।
लाइसेंस समाप्त होने पर एक्सटेंशन चलता रहता है, लेकिन अपडेट और सपोर्ट के लिए नवीनीकरण चाहिए। एडमिन Dashboard या Edit पेज खोलने पर स्टेटस अपने-आप दोबारा जाँचा जाता है: कुंजी दर्ज होने के बाद पहले 14 दिनों तक रोज़ एक बार, फिर हर सप्ताह एक बार। कोई cron जॉब आवश्यक नहीं है। एक्सटेंशन अनइंस्टॉल करने पर लाइसेंस कुंजी और लाइसेंस स्टेटस हमेशा हट जाते हैं।
समस्या निवारण
चेकआउट पर Paystack दिखाई नहीं देता: जाँचें कि लाइसेंस सक्रिय है, Enable/Disable चालू है, वर्तमान मोड में सही सीक्रेट कुंजी है (टेस्ट मोड में sk_test_... वाली Test Secret Key, लाइव मोड में sk_live_... वाली Live Secret Key), और ऑर्डर की मुद्रा ऐसी है जिसे Paystack स्वीकार करता है। सेटिंग्स के ऊपर का स्टेटस बॉक्स समस्या बताता है। यह भी जाँचें कि भुगतान का पता चुने हुए Geo Zone में है और ऑर्डर सेटिंग्स में तय Total तक पहुँचता है।
भुगतान हो गया, पर ऑर्डर बिना स्टेटस के है: वेबहुक आपके स्टोर तक नहीं पहुँचा और ग्राहक भी वापस नहीं आया। Paystack डैशबोर्ड में जाँचें कि Test Webhook URL और Live Webhook URL वही हैं जो Webhook URL में दिखता है, और कोई फ़ायरवॉल या पासवर्ड सुरक्षा इसे रोक नहीं रही। Debug log चालू करें और अस्वीकार किए गए वेबहुक के लिए Log फ़ील्ड देखें।
वेबहुक Invalid signature उत्तर देता है: वेबहुक उस टेस्ट या लाइव सीक्रेट कुंजी से साइन नहीं हुआ जो सेटिंग्स में डाली गई है, उदाहरण के लिए क्योंकि कुंजियाँ किसी दूसरे Paystack खाते की हैं। वेबहुक भेजने वाले खाते की कुंजियाँ डालें।
वेबहुक Secret key not configured उत्तर देता है: कोई सीक्रेट कुंजी सेट नहीं है। सेटिंग्स में सीक्रेट कुंजियाँ डालें।
वेबहुक Verification failed, Busy, retry later या Order could not be updated, retry later उत्तर देता है: उसी समय Paystack API से लेन-देन नहीं पढ़ा जा सका, या ग्राहक की वापसी से वही कार्ट एक साथ प्रोसेस हो रहा था, या ऑर्डर स्टेटस सेट नहीं हो सका। Paystack वेबहुक दोबारा भेजेगा। लॉग में कारण दिखता है।
वेबहुक OK - unknown reference उत्तर देता है: भुगतान इस स्टोर के किसी ऑर्डर के लिए नहीं किया गया था, जैसे कोई Paystack भुगतान पेज या उसी खाते पर कोई दूसरा इंटीग्रेशन। इसे अनदेखा किया जाता है।
वेबहुक URL ब्राउज़र में Empty body दिखाता है: यह सामान्य है। यह URL केवल Paystack के अनुरोध स्वीकार करता है।
ग्राहक को Payment gateway is not properly configured दिखता है: वर्तमान मोड की सीक्रेट कुंजी गायब है या गलत है। सेटिंग्स के ऊपर के स्टेटस बॉक्स के अनुसार उसे ठीक करें। Confirm Order के बाद This payment method is not available. का अर्थ है कि इस बीच भुगतान विधि बंद कर दी गई या चेकआउट अब ऑर्डर से मेल नहीं खाता: ग्राहक को चेकआउट दोबारा लोड करना होगा।
भुगतान के बाद ऑर्डर समीक्षा स्टेटस में है: VibeFox Paystack Payment टैब के नोट पढ़ें (देखें ऑर्डर स्टेटस), फिर ऑर्डर पूरा करें या भुगतान रिफ़ंड करें।
ऑर्डर प्रतीक्षारत स्टेटस में अटका है: Paystack ने भुगतान की पुष्टि अभी तक नहीं की है। Paystack डैशबोर्ड में लेन-देन और वेबहुक सेटिंग्स जाँचें। यदि ग्राहक ने भुगतान कभी पूरा नहीं किया, तो स्टेटस मैन्युअली बदलें।
टैब में रिफ़ंड फ़ॉर्म नहीं है: टैब कारण बताता है: भुगतान अभी पुष्ट नहीं हुआ है, वह पूरी तरह रिफ़ंड हो चुका है, आपके उपयोगकर्ता समूह के पास एक्सटेंशन बदलने का अधिकार नहीं है, या भुगतान के मोड की सीक्रेट कुंजी गायब है।
मोड से जुड़े संदेश के साथ रिफ़ंड विफल होता है: भुगतान टेस्ट या लाइव मोड में हुआ था, और उस मोड की सीक्रेट कुंजी कॉन्फ़िगर नहीं है। उसे डालें और दोबारा प्रयास करें।
डेवलपर्स के लिए: एक्सटेंशन OpenCart इवेंट्स paystack_p_payment_request (लेन-देन अनुरोध), paystack_p_supported_currencies और paystack_p_currency_decimals ट्रिगर करता है।
अनइंस्टॉल
Extensions > Extensions पर जाएँ, प्रकार Payments चुनें और VibeFox Paystack Payment के बगल में Uninstall (लाल − बटन) पर क्लिक करें। इस एक्सटेंशन की लाइसेंस कुंजी और लाइसेंस स्टेटस हमेशा हटा दिए जाते हैं। OpenCart एक्सटेंशन की अपनी सेटिंग्स हमेशा हटा देता है: Enable/Disable, Sort Order, Geo Zone, Total और Orders सेक्शन के ऑर्डर स्टेटस, जो दोबारा इंस्टॉल करने पर अपने डिफ़ॉल्ट मानों पर लौट आते हैं। एक्सटेंशन का OpenCart इवेंट भी हटा दिया जाता है (OpenCart 4 पर उसके इवेंट और स्टार्टअप ऐक्शन भी, जो मेंटेनेंस मोड में वेबहुक और ग्राहक की वापसी को जाने देती है, हटा दिए जाते हैं)। यदि Delete data on uninstall चालू है, तो बाकी गेटवे सेटिंग्स (शीर्षक, विवरण, टेस्ट मोड, कुंजियाँ, ऑटो-कम्प्लीट, लॉगिंग) और लॉग हटा दिए जाते हैं। यदि यह बंद है, तो वे बाद में दोबारा इंस्टॉल करने के लिए रखे जाते हैं। ऑर्डरों का Paystack भुगतान डेटा और रिफ़ंड हमेशा रखे जाते हैं, इसलिए पहले भुगतान किए गए ऑर्डर दोबारा इंस्टॉल करने के बाद भी रिफ़ंड किए जा सकते हैं। मौजूदा ऑर्डर अपने भुगतान नोट रखते हैं।
OpenCart 4 पर एक्सटेंशन की फ़ाइलें भी हटाने के लिए अनइंस्टॉल के बाद Extensions > Installer पर जाएँ, इंस्टॉल किए गए एक्सटेंशनों की सूची में VibeFox Paystack Payment के बगल में Uninstall (नारंगी − बटन) पर क्लिक करें, और फिर अपलोड किया गया पैकेज हटाने के लिए Delete (लाल डस्टबिन बटन) पर क्लिक करें।
Paystack अपने संबंधित स्वामी का ट्रेडमार्क है। यह एक्सटेंशन Paystack से संबद्ध नहीं है और Paystack द्वारा अनुमोदित नहीं है।
