VibeFox HyperPay for WooCommerce — सहायता
आवश्यकताएँ
WordPress: 6.0 या उसके बाद का संस्करण।
WooCommerce: 8.0 या उसके बाद का संस्करण, इंस्टॉल और सक्रिय। WooCommerce के बिना प्लगइन सक्रिय नहीं होता।
PHP: 8.0 या उसके बाद का संस्करण।
HyperPay खाता: आपका मर्चेंट खाता सेट होने पर HyperPay Access Token और Entity ID जारी करता है। टेस्ट और लाइव क्रेडेंशियल अलग-अलग होते हैं। आपको HyperPay डैशबोर्ड में एक भुगतान वेबहुक और उसकी डिक्रिप्शन कुंजी (webhook key) भी चाहिए, जो Administration > Webhooks के अंतर्गत दिखती है (देखें कॉन्फ़िगरेशन)।
कार्ड डेटा: कार्ड केवल HyperPay विजेट में दर्ज होता है, इसलिए कार्ड डेटा कभी आपके सर्वर तक नहीं पहुँचता (PCI DSS SAQ A)।
VibeFox लाइसेंस कुंजी: vibefox.net से खरीदी जाती है। एक कुंजी एक ही डोमेन पर काम करती है।
इंस्टॉलेशन
1. WordPress में Plugins > Add New > Upload Plugin पर जाएँ, प्लगइन की ZIP फ़ाइल चुनें और Install Now पर क्लिक करें। आप FTP से wcp_hyperpay_payment_gateway फ़ोल्डर को /wp-content/plugins/ में भी अपलोड कर सकते हैं।
2. Activate पर क्लिक करें।
3. सेटिंग खोलें: WooCommerce > Settings > Payments > HyperPay > Manage, या Plugins पेज पर प्लगइन के नाम के नीचे Settings पर क्लिक करें।
4. पेज के शीर्ष पर लाइसेंस ब्लॉक में अपनी VibeFox लाइसेंस कुंजी डालें और Activate पर क्लिक करें।
5. HyperPay द्वारा जारी टेस्ट Access Token, Entity ID और वेबहुक कुंजी डालें, और Test Mode चालू रखें।
6. HyperPay डैशबोर्ड (Administration > Webhooks) में सेटिंग में दिखाए गए URL के साथ एक भुगतान वेबहुक जोड़ें, और उसकी डिक्रिप्शन कुंजी को उसी मोड के webhook key फ़ील्ड में कॉपी करें।
7. Enable/Disable चालू करें और HyperPay टेस्ट कार्ड से एक टेस्ट भुगतान करें। फिर लाइव क्रेडेंशियल डालें और Test Mode बंद करें।
कॉन्फ़िगरेशन
सभी सेटिंग्स एक ही पेज पर हैं: WooCommerce > Settings > Payments > HyperPay। फ़ील्ड्स के ऊपर, जब टेस्ट मोड चालू होता है, पेज टेस्ट मोड चालू है: भुगतान HyperPay टेस्ट सिस्टम पर जाते हैं और कोई वास्तविक राशि नहीं काटी जाती। दिखाता है। यह चेतावनी देता है जब वर्तमान मोड का Access Token या Entity ID गायब हो (तब यह भुगतान विधि चेकआउट पर नहीं दिखती), और जब वर्तमान मोड में मान्य वेबहुक कुंजी न हो (तब भुगतान तभी पुष्ट होते हैं जब ग्राहक स्टोर पर लौटता है)। भुगतान विधियों की सूची में, जब तक वर्तमान मोड का Access Token और Entity ID न भरा जाए, गेटवे को सेटअप की आवश्यकता वाला दिखाया जाता है। सेव करने पर क्रेडेंशियल से स्पेस हट जाते हैं, और यदि वेबहुक कुंजी 64 अक्षरों की हेक्साडेसिमल कुंजी न हो तो पेज त्रुटि दिखाता है।
Enable/Disable: Enable HyperPay Payment इस भुगतान विधि को चालू या बंद करता है। डिफ़ॉल्ट: बंद।
Title: चेकआउट के दौरान ग्राहक को दिखने वाला शीर्षक। डिफ़ॉल्ट: Credit/Debit Card (HyperPay)।
Description: चेकआउट के दौरान ग्राहक को दिखने वाला विवरण। डिफ़ॉल्ट: Pay securely using your credit or debit card।
API क्रेडेंशियल
Access Token, Entity ID और वेबहुक कुंजी आपका मर्चेंट खाता सेट होने पर HyperPay द्वारा जारी किए जाते हैं। टेस्ट और लाइव क्रेडेंशियल अलग-अलग होते हैं। वेबहुक कुंजी HyperPay डैशबोर्ड में Administration > Webhooks के अंतर्गत दिखती है।
Test Mode: Enable Test Mode HyperPay टेस्ट सिस्टम (eu-test.oppwa.com) और टेस्ट क्रेडेंशियल का उपयोग करता है। कोई वास्तविक राशि नहीं काटी जाती। लाइव क्रेडेंशियल (eu-prod.oppwa.com) से वास्तविक भुगतान स्वीकार करने के लिए इसे बंद करें। डिफ़ॉल्ट: चालू।
Test Access Token: आपके HyperPay टेस्ट खाते का bearer token।
Test Entity ID: टेस्ट भुगतान चैनल का Entity ID।
Test Webhook Key: टेस्ट सिस्टम की वेबहुक सूचनाओं को डिक्रिप्ट करने के लिए उपयोग होने वाली 64 अक्षरों की हेक्साडेसिमल कुंजी।
Live Access Token: आपके HyperPay लाइव खाते का bearer token।
Live Entity ID: लाइव भुगतान चैनल का Entity ID।
Live Webhook Key: लाइव सिस्टम की वेबहुक सूचनाओं को डिक्रिप्ट करने के लिए उपयोग होने वाली 64 अक्षरों की हेक्साडेसिमल कुंजी।
Webhook
वेबहुक आपके स्टोर को भुगतान की जानकारी देता है, भले ही ग्राहक स्टोर पर लौटने से पहले ब्राउज़र बंद कर दे। HyperPay डैशबोर्ड (Administration > Webhooks) में, सेटिंग के इस सेक्शन में दिखाए गए URL के साथ भुगतान के लिए एक वेबहुक जोड़ें। यह ऐसा दिखता है: https://your-site/wp-json/hyperpay-p/v1/webhook। फिर वेबहुक डिक्रिप्शन कुंजी को उसी मोड के Test Webhook Key या Live Webhook Key में कॉपी करें।
HyperPay वेबहुक एन्क्रिप्टेड होते हैं (AES-256-GCM)। जिस वेबहुक को आपकी कुंजियों से डिक्रिप्ट न किया जा सके, वह अस्वीकार हो जाता है। केवल भुगतान सूचनाएँ प्रोसेस होती हैं, और भुगतान आपके किसी ऑर्डर के भुगतान सत्र का होना चाहिए, जो उसी मोड में बना हो जिस मोड की कुंजी ने उसे डिक्रिप्ट किया। HyperPay की टेस्ट सूचनाएँ स्वीकार की जाती हैं। वेबहुक HyperPay डैशबोर्ड में किए गए कैप्चर, reversals, रिफ़ंड और चार्जबैक की भी सूचना देता है (देखें ऑर्डर और रिफ़ंड)। वेबहुक के बिना, भुगतान तभी पुष्ट होता है जब ग्राहक भुगतान के बाद स्टोर पर लौटता है।
भुगतान
Transaction Type: कार्ड से शुल्क कैसे लिया जाए।
Payment Brands: भुगतान विजेट में दिखाए गए ब्रांड: VISA, Mastercard, mada, American Express, STC Pay, Apple Pay। डिफ़ॉल्ट: VISA और Mastercard। केवल वही ब्रांड चुनें जो HyperPay ने आपके Entity ID के लिए सक्षम किए हैं; mada, STC Pay और Apple Pay अक्सर अपनी अलग entity उपयोग करते हैं, जिसे यह प्लगइन सपोर्ट नहीं करता।
एडवांस्ड
Enable Logging: Log API requests and responses। डीबग जानकारी WooCommerce > Status > Logs में, स्रोत wcp_hyperpay_payment_gateway के रूप में लिखी जाती है। त्रुटियाँ हमेशा दर्ज होती हैं। लॉग में कार्ड डेटा, कुंजियाँ या ग्राहक डेटा नहीं होता। डिफ़ॉल्ट: बंद।
Delete Data on Uninstall: Delete all plugin data when the plugin is uninstalled। प्लगइन हटाने पर सेटिंग्स और लॉग फ़ाइलें हटा देता है। ऑर्डर पर सहेजा गया HyperPay डेटा रहता है। डिफ़ॉल्ट: बंद।
चेकआउट
ग्राहक भुगतान विधि चुनता है (डिफ़ॉल्ट रूप से Credit/Debit Card (HyperPay)) और Continue to payment पर क्लिक करता है। ऑर्डर बनता है और ग्राहक Pay for order पेज पर जाता है। वहाँ प्लगइन ऑर्डर की मुद्रा में ऑर्डर राशि के लिए HyperPay भुगतान सत्र तैयार करता है और कृपया नीचे अपना भुगतान पूरा करें: संदेश के साथ HyperPay विजेट दिखाता है। जब HyperPay समर्थन करता है, तब विजेट आपकी साइट की भाषा का उपयोग करता है। टेस्ट मोड में पेज टेस्ट मोड: HyperPay टेस्ट कार्ड का उपयोग करें, कोई वास्तविक भुगतान नहीं होगा। दिखाता है। ग्राहक कार्ड का विवरण विजेट में दर्ज करता है।
भुगतान के बाद ग्राहक आपके स्टोर पर लौटता है। प्लगइन जाँचता है कि भुगतान इसी ऑर्डर के किसी भुगतान सत्र का है, और सर्वर-से-सर्वर अनुरोध से HyperPay से परिणाम माँगता है। ऑर्डर तभी भुगतान किया हुआ चिह्नित होता है जब HyperPay उसकी पुष्टि करे: उस अनुरोध से या वेबहुक से। राशि और मुद्रा ऑर्डर से मेल खानी चाहिए। लौटना और वेबहुक एक साथ आएँ तो वे एक के बाद एक प्रोसेस होते हैं, इसलिए ऑर्डर कभी दो बार प्रोसेस नहीं होता। भुगतान पुष्ट होने पर ग्राहक ऑर्डर प्राप्त पेज पर पहुँचता है।
यदि भुगतान सफल नहीं हुआ, तो ग्राहक एक संदेश के साथ Pay for order पेज पर लौटता है: भुगतान विफल: और HyperPay से मिला कारण, भुगतान पूरा नहीं हुआ। कृपया फिर से प्रयास करें।, या आपका भुगतान अभी पुष्ट नहीं हो सका। यदि आपसे शुल्क लिया गया है, तो ऑर्डर अपने-आप अपडेट हो जाएगा; अन्यथा कृपया फिर से प्रयास करें। ग्राहक उसी पेज पर फिर से भुगतान कर सकता है। यदि विजेट तैयार नहीं हो सकता, तो ग्राहक को एक छोटा संदेश दिखता है, उदाहरण के लिए कि कुछ बिलिंग विवरण भुगतान प्रदाता ने स्वीकार नहीं किए, और एक Try Again बटन। ये विवरण ऑर्डर नोट्स में जुड़ते हैं।
राशियाँ HyperPay API की आवश्यकता के अनुसार दो दशमलव स्थानों के साथ भेजी जाती हैं। 3 दशमलव वाली मुद्राओं (KWD, BHD, JOD, OMR) में ऑर्डर की कुल राशि दो दशमलव तक राउंड की जाती है।
यह भुगतान विधि क्लासिक चेकआउट, Cart और Checkout ब्लॉक, और Pay for order पेज पर काम करती है। टेस्ट मोड में Checkout ब्लॉक टेस्ट मोड: कोई वास्तविक भुगतान नहीं होगा। दिखाता है। यह WooCommerce High-Performance Order Storage (HPOS) के साथ संगत है।
प्लगइन में WooCommerce से रिफ़ंड या void नहीं होते, सेव किए गए कार्ड या टोकनाइज़ेशन नहीं होते, सब्सक्रिप्शन नहीं होते, Apple Pay डोमेन सत्यापन नहीं होता, ब्रांड के अनुसार अलग Entity ID नहीं होती, और Tabby, Tamara या अन्य buy-now-pay-later विधियाँ नहीं होतीं।
ऑर्डर और रिफ़ंड
ऑर्डर स्टेटस
Pending payment: ग्राहक ने अभी भुगतान नहीं किया, विजेट पूरा नहीं किया, या HyperPay ने अभी भुगतान की पुष्टि नहीं की है।
Processing: डेबिट भुगतान की पुष्टि हुई, या प्री-ऑथराइज़ेशन कैप्चर हुआ। केवल वर्चुअल डाउनलोड योग्य उत्पादों वाले ऑर्डर WooCommerce के डिफ़ॉल्ट के अनुसार पूर्ण हो जाते हैं। ऑर्डर नोट में HyperPay का परिणाम कोड, विवरण और भुगतान ID दिखता है। लेन-देन ID HyperPay भुगतान ID है। यदि HyperPay ने भुगतान को मैनुअल समीक्षा के लिए चिह्नित किया है, तो नोट में यह लिखा होगा; शिपिंग से पहले HyperPay डैशबोर्ड में जाँचें।
On hold (pre-authorization): राशि रोकी गई है। इसे Capture HyperPay payment ऑर्डर कार्रवाई से, या HyperPay डैशबोर्ड में कैप्चर करें; तब कैप्चर वेबहुक ऑर्डर पूरा कर देता है।
On hold after payment: HyperPay ने ऑर्डर से अलग राशि या मुद्रा बताई है (उदाहरण के लिए भुगतान पेज खुलने के बाद ऑर्डर बदला गया), भुगतान HyperPay पर अभी भी लंबित है, या भुगतान ऑर्डर रद्द होने के बाद आया। ऑर्डर नोट इसका कारण बताता है। HyperPay डैशबोर्ड में भुगतान जाँचें और उसे पूरा करें या रिफ़ंड करें।
Failed: HyperPay ने भुगतान अस्वीकार किया। कारण ऑर्डर नोट में है और ग्राहक को दिखाया जाता है। अस्वीकृत प्रयास कभी भी ऐसे ऑर्डर को नहीं बदलता जो पहले से भुगतान किया हुआ, रोका हुआ, होल्ड पर या रद्द है।
Cancelled: एक प्री-ऑथराइज़ेशन HyperPay डैशबोर्ड में reverse किया गया, और reversal वेबहुक होल्ड पर चल रहे ऑर्डर को रद्द करता है।
यदि पहले से भुगतान किए गए ऑर्डर के लिए कोई और सफल भुगतान आता है, तो ऑर्डर नहीं बदलता। एक नोट आपसे डुप्लीकेट को HyperPay डैशबोर्ड में रिफ़ंड करने को कहता है। रिफ़ंड किए गए ऑर्डर के लिए सफल भुगतान केवल एक नोट जोड़ता है।
कैप्चर
Capture HyperPay payment ऑर्डर कार्रवाई उन होल्ड ऑर्डर पर दिखती है जिनमें प्री-ऑथराइज़ेशन है और जो अभी कैप्चर नहीं हुआ है। यह WooCommerce में पहले से दर्ज रिफ़ंड घटाने के बाद, वर्तमान ऑर्डर कुल राशि को उसी मोड में कैप्चर करती है जिसमें प्री-ऑथराइज़ेशन हुआ था। सफल कैप्चर के बाद ऑर्डर Processing हो जाता है। यदि HyperPay कैप्चर अस्वीकार करता है, तो परिणाम कोड और विवरण दिखाए जाते हैं और ऑर्डर नोट्स में जोड़े जाते हैं। प्री-ऑथराइज़ेशन का reversal (void) HyperPay डैशबोर्ड में किया जाता है।
रिफ़ंड
WooCommerce से रिफ़ंड समर्थित नहीं हैं। HyperPay डैशबोर्ड में भुगतान रिफ़ंड करें और WooCommerce में Refund manually से उसे दर्ज करें। HyperPay में किए गए रिफ़ंड और चार्जबैक वेबहुक द्वारा ऑर्डर में नोट के रूप में जोड़े जाते हैं; ऑर्डर का स्टेटस नहीं बदलता।
लाइसेंस कुंजी
यह प्लगइन vibefox.net से लिए गए VibeFox लाइसेंस कुंजी के साथ काम करता है। लाइसेंस ब्लॉक WooCommerce > Settings > Payments > HyperPay पेज के शीर्ष पर है। कुंजी को License key में चिपकाएँ और Activate पर क्लिक करें। ब्लॉक स्टेटस दिखाता है, जैसे लाइसेंस किस तारीख तक सक्रिय है और आपका डोमेन। स्टेटस फिर से जाँचने के लिए Check now का उपयोग करें, दूसरी कुंजी डालने के लिए Change key, और इस साइट से कुंजी हटाने के लिए Remove key। लिंक Manage licenses and domains in your account आपका vibefox.net खाता खोलता है।
एक कुंजी एक डोमेन पर काम करती है। किसी साइट से कुंजी हटाने पर उस डोमेन का स्लॉट खाली नहीं होता। अपने vibefox.net खाते में स्लॉट खाली करें।
सक्रिय कुंजी के बिना चेकआउट पर ग्राहकों को HyperPay नहीं दिखता। फिर भी यदि भुगतान शुरू किया जाए, तो ग्राहक को यह भुगतान विधि उपलब्ध नहीं है। कृपया कोई दूसरी विधि चुनें। दिखता है। लॉग इन किए स्टोर मैनेजरों को भुगतान विधि अब भी (unlicensed — visible to admins only) चिह्न के साथ दिखती है, ताकि वे कुंजी खरीदने से पहले प्लगइन सेट अप और टेस्ट कर सकें। प्लगइन्स पेज और WooCommerce पेजों पर एक याद दिलाने वाला संदेश दिखता है। मौजूदा ऑर्डर प्रभावित नहीं होते: जो भुगतान शुरू हो चुके हैं वे अब भी पुष्ट होते हैं, और कैप्चर काम करते हैं।
लाइसेंस समाप्त होने पर प्लगइन काम करता रहता है, लेकिन अपडेट और सपोर्ट के लिए नवीनीकरण चाहिए। स्टेटस की जाँच पृष्ठभूमि में अपने-आप फिर से होती है।
समस्या निवारण
HyperPay चेकआउट पर नहीं दिखता: जाँचें कि लाइसेंस सक्रिय है, Enable/Disable चालू है, और वर्तमान मोड में Access Token और Entity ID हैं: टेस्ट मोड में टेस्ट वाले, और लाइव मोड में लाइव वाले। गायब होने पर सेटिंग्स पेज चेतावनी दिखाता है।
भुगतान हो गया, पर ऑर्डर Pending payment पर रहता है: वेबहुक काम नहीं कर रहा और ग्राहक स्टोर पर नहीं लौटा। HyperPay डैशबोर्ड में जाँचें कि जिस मोड का आप उपयोग करते हैं उसके लिए भुगतान वेबहुक मौजूद है, उसका URL बिल्कुल वही है जो सेटिंग्स में दिखाया गया है, और उसकी डिक्रिप्शन कुंजी उसी मोड के webhook key फ़ील्ड में है। WooCommerce > Status > Logs देखें, स्रोत wcp_hyperpay_payment_gateway।
वेबहुक Decryption failed का उत्तर देता है: वेबहुक कुंजी किसी दूसरे वेबहुक या दूसरे मोड की है। HyperPay डैशबोर्ड से कुंजी फिर से कॉपी करें।
वेबहुक Webhook key not configured का उत्तर देता है: कोई मान्य वेबहुक कुंजी सेट नहीं है। 64 अक्षरों की कुंजी सेटिंग्स में डालें। HyperPay वेबहुक फिर से प्रयास करता है।
लॉग में Webhook ignored दिखता है: भुगतान इस स्टोर के किसी ऑर्डर का नहीं है, या दूसरे मोड में किया गया था। टेस्ट और लाइव भुगतान अलग रखे जाते हैं।
भुगतान फ़ॉर्म लोड नहीं होता: ऑर्डर नोट पढ़ें। कॉन्फ़िगरेशन त्रुटि आमतौर पर वर्तमान मोड के लिए गलत Access Token या Entity ID का संकेत होती है। बिलिंग विवरण के संदेश का अर्थ है कि HyperPay ने कुछ ग्राहक डेटा स्वीकार नहीं किया। सुनिश्चित करें कि चुने गए Payment Brands आपके Entity ID के लिए सक्षम हैं।
ऑर्डर On hold है और राशि/मुद्रा मेल न खाने का नोट है: HyperPay ने ऐसा भुगतान बताया जो ऑर्डर कुल या मुद्रा से मेल नहीं खाता, उदाहरण के लिए भुगतान पेज खुलने के बाद ऑर्डर बदलने के कारण। HyperPay डैशबोर्ड में भुगतान जाँचें और उसे पूरा करें या रिफ़ंड करें।
कैप्चर विफल होता है: ऑर्डर नोट में परिणाम कोड और विवरण पढ़ें। कैप्चर प्री-ऑथराइज़ेशन के मोड में भेजा जाता है, इसलिए उस मोड के क्रेडेंशियल सेट होने चाहिए।
लाइसेंस ब्लॉक त्रुटि दिखाता है: ब्लॉक का संदेश फ़ॉलो करें। उदाहरण के लिए, यदि कुंजी किसी दूसरे डोमेन पर पहले से उपयोग में है, तो अपने vibefox.net खाते में स्लॉट खाली करें और Check now पर क्लिक करें। यदि साइट का पता बदल गया है, तो नए डोमेन के लिए कुंजी सक्रिय करने के लिए Check now पर क्लिक करें। यदि लाइसेंस सर्वर तक नहीं पहुँचा जा सकता, तो प्लगइन आखिरी ज्ञात स्टेटस पर काम करता रहता है।
डेवलपर्स के लिए: फ़िल्टर hyperpay_p_icon भुगतान विधि का आइकन बदलता है।
अनइंस्टॉल
प्लगइन को निष्क्रिय करने पर सारा डेटा बना रहता है। हटाने के लिए, इसे निष्क्रिय करें और Plugins पेज पर हटाएँ। इस प्लगइन की लाइसेंस कुंजी और लाइसेंस स्टेटस हमेशा हटा दिए जाते हैं। गेटवे सेटिंग्स, प्लगइन का अस्थायी डेटा और लॉग फ़ाइलें केवल तभी हटाई जाती हैं जब Delete Data on Uninstall चालू था। अन्यथा वे बाद में दोबारा इंस्टॉल करने के लिए रहती हैं। ऑर्डर पर सहेजा गया HyperPay डेटा हमेशा रहता है। मौजूदा ऑर्डर अपने भुगतान नोट्स और लेन-देन ID रखते हैं।
HyperPay उसके संबंधित स्वामी का ट्रेडमार्क है। यह प्लगइन HyperPay से संबद्ध नहीं है और HyperPay द्वारा अनुमोदित नहीं है।
