VibeFox Flutterwave for WooCommerce — सहायता
आवश्यकताएँ
WordPress: 5.8 या उसके बाद का संस्करण।
WooCommerce: 7.0 या उसके बाद का संस्करण, इंस्टॉल और सक्रिय। WooCommerce के बिना प्लगइन सक्रिय नहीं होता।
PHP: 8.0 या उसके बाद का संस्करण। पुराने PHP पर प्लगइन सक्रिय नहीं होता।
Flutterwave खाता: आपको अपने Flutterwave खाते की सीक्रेट कुंजियाँ चाहिए, जो Flutterwave डैशबोर्ड में Settings, API keys के अंतर्गत मिलती हैं: टेस्ट मोड के लिए FLWSECK_TEST-… और लाइव मोड के लिए FLWSECK-…। केवल सीक्रेट कुंजियाँ उपयोग होती हैं। पब्लिक और एन्क्रिप्शन कुंजियाँ आवश्यक नहीं हैं। अपनी पसंद के सीक्रेट हैश वाला वेबहुक भी सेट करें (कॉन्फ़िगरेशन देखें)।
मुद्राएँ: ऑर्डर हमेशा उसी की मुद्रा में चार्ज होता है। प्लगइन देशों या मुद्राओं पर प्रतिबंध नहीं लगाता; आपका खाता मुद्रा का समर्थन न करे तो Flutterwave त्रुटि दिखाता है।
VibeFox लाइसेंस कुंजी: vibefox.net पर खरीदी जाती है। एक कुंजी एक डोमेन पर काम करती है।
इंस्टॉलेशन
1. WordPress में Plugins > Add New > Upload Plugin पर जाएँ, प्लगइन की ZIP फ़ाइल चुनें और Install Now पर क्लिक करें। आप FTP से wcp_flutterwave_payment फ़ोल्डर को /wp-content/plugins/ में अपलोड भी कर सकते हैं।
2. Activate पर क्लिक करें।
3. सेटिंग्स खोलें: WooCommerce > Settings > Payments > Flutterwave > Manage, या प्लगइन पेज पर प्लगइन के नाम के नीचे Settings पर क्लिक करें।
4. पेज के ऊपर लाइसेंस ब्लॉक में अपनी VibeFox लाइसेंस कुंजी दर्ज करें और Activate पर क्लिक करें।
5. सीक्रेट कुंजियाँ दर्ज करें, Flutterwave डैशबोर्ड में वेबहुक सेट करें और वही सीक्रेट हैश प्लगइन में दर्ज करें (कॉन्फ़िगरेशन देखें)।
6. Enable/Disable चालू करें, टेस्ट मोड में भुगतान जाँचें, फिर Live mode चुनें।
कॉन्फ़िगरेशन
सभी सेटिंग्स एक ही पेज पर हैं: WooCommerce > Settings > Payments > Flutterwave। फ़ील्ड के ऊपर पेज पर Live mode: real payments are accepted. या Test mode: no real money is charged. दिखाई देता है। वर्तमान मोड की सीक्रेट कुंजी खाली होने पर, लाइव मोड में लाइव कुंजी के फ़ील्ड में टेस्ट कुंजी (FLWSECK_TEST-…) होने पर, या टेस्ट मोड में टेस्ट कुंजी के फ़ील्ड में लाइव कुंजी (FLWSECK-…) होने पर चेतावनी मिलती है; समस्या ठीक होने तक भुगतान का तरीका चेकआउट पर छिपा रहता है। वेबहुक का सीक्रेट हैश सेट न होने पर भी चेतावनी मिलती है: तब वेबहुक अस्वीकार होते हैं और भुगतान केवल ग्राहक के स्टोर में वापस आने पर पुष्ट होता है। भुगतान तरीकों की सूची में, वर्तमान मोड के लिए सीक्रेट कुंजी होने तक Flutterwave को सेटअप आवश्यक के रूप में दिखाया जाता है और टेस्ट मोड में टेस्ट मोड बैज दिखता है।
सामान्य
Enable/Disable: Enable Flutterwave Payment भुगतान का तरीका चालू या बंद करता है। डिफ़ॉल्ट: off।
Title: भुगतान के तरीके का शीर्षक जो ग्राहक चेकआउट पर देखते हैं। डिफ़ॉल्ट: Flutterwave।
Description: वह पाठ जो ग्राहक चेकआउट पर देखते हैं। डिफ़ॉल्ट: Pay securely via Card, Bank Transfer, USSD, Mobile Money via Flutterwave.
API कुंजियाँ
Flutterwave डैशबोर्ड में Settings, API keys से सीक्रेट कुंजियाँ कॉपी करें। टेस्ट और लाइव मोड की कुंजियाँ अलग होती हैं।
Live mode: Accept real payments (uncheck for test mode)। टेस्ट मोड टेस्ट सीक्रेट कुंजी उपयोग करता है और असली पैसे चार्ज नहीं होते। लाइव मोड लाइव सीक्रेट कुंजी उपयोग करता है। डिफ़ॉल्ट: off (टेस्ट मोड)।
Test Secret Key: आपकी Flutterwave टेस्ट सीक्रेट कुंजी (FLWSECK_TEST-...)।
Live Secret Key: आपकी Flutterwave लाइव सीक्रेट कुंजी (FLWSECK-...)।
वेबहुक
ग्राहक आपके स्टोर में वापस न आए, तब भी वेबहुक भुगतान की पुष्टि करता है। Flutterwave डैशबोर्ड में Settings, Webhooks के अंतर्गत, टेस्ट और लाइव दोनों मोड में इस अनुभाग की Webhook URL और अपनी पसंद का सीक्रेट हैश दर्ज करें। URL का रूप https://your-site/wc-api/flw_p_webhook/ है। प्लगइन इस इवेंट पर प्रतिक्रिया करता है:
अन्य इवेंट अनदेखे किए जाते हैं।
Secret Hash: वेबहुक का सीक्रेट हैश। यह आपके Flutterwave डैशबोर्ड की वेबहुक सेटिंग्स के मान से मेल खाना चाहिए। Flutterwave इसे हर वेबहुक के साथ भेजता है। मान्य सीक्रेट हैश के बिना वेबहुक अस्वीकार होते हैं। वेबहुक के बिना भुगतान की पुष्टि केवल ग्राहक के स्टोर में वापस आने पर होती है।
भुगतान
Payment Options: Flutterwave पेज पर दिखाने के लिए कॉमा से अलग किए गए भुगतान तरीके, जैसे card, banktransfer, ussd, mobilemoney। खाते में सक्षम सभी तरीकों के लिए खाली छोड़ें। सेव करते समय सूची साफ़ की जाती है।
Autocomplete Orders: Automatically mark orders as completed after successful payment। सक्षम होने पर भुगतान के बाद एक ही स्थिति बदलाव में ऑर्डर प्रसंस्करण के बजाय पूर्ण की स्थिति में जाते हैं। डिफ़ॉल्ट: off।
उन्नत
Debug log: Log Flutterwave API events for debugging को WooCommerce > Status > Logs में दर्ज किया जाता है, स्रोत wcp_flutterwave_payment है। त्रुटियाँ हमेशा लॉग होती हैं। कुंजियाँ और ग्राहक डेटा कभी लॉग नहीं होते। डिफ़ॉल्ट: off।
Delete data on uninstall: Remove the gateway settings and logs when the plugin is deleted। प्लगइन निष्क्रिय करने से कभी कुछ नहीं मिटता। ऑर्डर में सेव किए गए भुगतान डेटा हमेशा रखे जाते हैं। डिफ़ॉल्ट: off।
चेकआउट
ग्राहक भुगतान का तरीका चुनता है (डिफ़ॉल्ट Flutterwave) और ऑर्डर देता है। टेस्ट मोड में चेकआउट पर TEST MODE - no real payments will be processed. दिखता है। मान्य बिलिंग ईमेल आवश्यक है। प्लगइन ऑर्डर की कुल राशि के लिए उसी की मुद्रा में Flutterwave भुगतान बनाता है, जिसमें ग्राहक का ईमेल, फ़ोन और नाम तथा आपकी साइट का नाम और लोगो शामिल होते हैं, और ग्राहक को Flutterwave चेकआउट पेज पर भेजता है। वहाँ ग्राहक खाते में सक्षम (या Payment Options में सूचीबद्ध) किसी तरीके से भुगतान करता है।
भुगतान के बाद ग्राहक आपके स्टोर में वापस आता है। ऑर्डर केवल Flutterwave की पुष्टि के बाद भुगतान किया हुआ चिह्नित होता है: वेबहुक से, या ग्राहक के लौटने पर सर्वर-साइड जाँच से। भुगतान अभी पुष्ट न हो, जैसे लंबित बैंक ट्रांसफ़र, USSD या मोबाइल मनी भुगतान, तो ऑर्डर प्राप्ति पेज पर Your payment is being confirmed by Flutterwave. You will receive an e-mail as soon as it is confirmed. दिखता है। पैसे आ गए हों लेकिन प्लगइन ने समीक्षा के लिए ऑर्डर को होल्ड पर रखा हो, जैसे भुगतान की राशि ऑर्डर से मेल न खाती हो, तो पेज पर Your payment was received and your order is being reviewed. We will contact you if anything is needed. दिखता है।
भुगतान अस्वीकार होने पर ग्राहक चेकआउट (या Pay for order पेज) पर वापस आता है और Your payment was declined. You can try again or choose another payment method. दिखता है। ग्राहक Flutterwave पेज पर रद्द करे तो चेकआउट पर दिया गया ऑर्डर रद्द हो जाता है, मैन्युअल रूप से बनाया गया ऑर्डर बिना भुगतान रहता है और संदेश Payment was cancelled. You can try again or choose another payment method. होता है। भुगतान पूरा न होने पर संदेश The payment was not completed. You can try again or choose another payment method. होता है।
ग्राहक बिना भुगतान वाले ऑर्डर का दोबारा भुगतान कर सकता है। हर प्रयास का अपना संदर्भ होता है और पुराने भुगतान लिंक पर बाद में किया गया भुगतान भी स्वीकार होता है। Flutterwave भुगतान शुरू न कर सके तो ग्राहक को छोटा संदेश दिखता है, जैसे Flutterwave is temporarily unavailable. Please try again in a moment or choose another payment method.
भुगतान का तरीका क्लासिक चेकआउट, Checkout ब्लॉक और Pay for order पेज पर काम करता है। यह WooCommerce High-Performance Order Storage (HPOS) के अनुकूल है। ग्राहकों को दिखने वाला पाठ फ़्रेंच में अनूदित है।
प्लगइन केवल एकमुश्त भुगतान लेता है। इसमें आपकी साइट पर इनलाइन या मोडल चेकआउट, सेव किए गए कार्ड, सब्सक्रिप्शन, विभाजित भुगतान या भुगतान योजनाएँ नहीं हैं। होस्ट किए गए भुगतान लिंक Flutterwave API से रद्द नहीं किए जा सकते, इसलिए ऑर्डर के पुराने लिंक पर भी भुगतान हो सकता है।
ऑर्डर और रिफ़ंड
ऑर्डर की स्थितियाँ
Pending payment: ग्राहक को Flutterwave पर भेजा गया है और उसने अभी भुगतान नहीं किया है, या भुगतान Flutterwave में अभी लंबित है।
Processing or Completed: भुगतान की पुष्टि हो गई है। Autocomplete Orders चालू होने पर पूर्ण स्थिति उपयोग होती है (केवल वर्चुअल डाउनलोड योग्य उत्पादों वाले ऑर्डर भी WooCommerce के डिफ़ॉल्ट व्यवहार के अनुसार पूर्ण हो जाते हैं)। ऑर्डर नोट में राशि, भुगतान तरीका, Flutterwave संदर्भ, लेन-देन और मोड दिखते हैं। ऑर्डर की लेन-देन ID, Flutterwave संदर्भ होती है।
On hold after payment: सत्यापित राशि या मुद्रा ऑर्डर से मेल नहीं खाती थी, या ऑर्डर रद्द होने के बाद भुगतान आया। नोट में कारण दिया जाता है। ऑर्डर पूरा करें या भुगतान रिफ़ंड करें। दोबारा भेजा गया वेबहुक रिफ़ंड किए गए या रद्द ऑर्डर को कभी फिर नहीं खोलता।
Failed: Flutterwave ने लंबित ऑर्डर के नवीनतम भुगतान प्रयास को विफल या रद्द बताया। नोट में कारण दिखता है।
Cancelled: ग्राहक ने चेकआउट पर ऑर्डर देने के बाद Flutterwave पेज पर रद्द किया, या आपने ऑर्डर रद्द किया, या WooCommerce की स्टॉक होल्ड समय-सीमा खत्म होने पर ऑर्डर रद्द हुआ।
पहले से भुगतान किए गए ऑर्डर के लिए दूसरा भुगतान मिलने पर ऑर्डर नहीं बदलता। नोट में Flutterwave डैशबोर्ड से दोहरे भुगतान का रिफ़ंड करने को कहा जाता है।
रिफ़ंड
ऑर्डर खोलें, Refund पर क्लिक करें, राशि दर्ज करें और Refund via Flutterwave पर क्लिक करें। पूर्ण और आंशिक रिफ़ंड समर्थित हैं। रिफ़ंड उसी मोड (टेस्ट या लाइव) की सीक्रेट कुंजी से भेजा जाता है जिसमें भुगतान हुआ था, इसलिए वह कुंजी सेट होनी चाहिए। Flutterwave रिफ़ंड अस्वीकार करे तो WooCommerce त्रुटि दिखाता है और कोई रिफ़ंड दर्ज नहीं होता। सफल रिफ़ंड, रिफ़ंड ID और स्थिति के साथ ऑर्डर नोट में जुड़ता है (पूर्ण, या Flutterwave द्वारा बताई गई स्थिति के साथ शुरू किया गया)।
Flutterwave डैशबोर्ड में किए गए रिफ़ंड WooCommerce में वापस सिंक नहीं होते। ज़रूरत हो तो WooCommerce में Refund via Flutterwave के बिना मैन्युअल रिफ़ंड बनाएँ।
लाइसेंस कुंजी
प्लगइन vibefox.net की VibeFox लाइसेंस कुंजी से काम करता है। लाइसेंस ब्लॉक WooCommerce > Settings > Payments > Flutterwave के ऊपर है। License key में कुंजी पेस्ट करें और Activate पर क्लिक करें। ब्लॉक में स्थिति दिखती है, जैसे लाइसेंस कब तक सक्रिय है और आपका डोमेन। स्थिति दोबारा जाँचने के लिए Check now, दूसरी कुंजी दर्ज करने के लिए Change key और इस साइट से हटाने के लिए Remove key उपयोग करें। Manage licenses and domains in your account लिंक आपका vibefox.net खाता खोलता है।
एक कुंजी एक डोमेन पर काम करती है। साइट से कुंजी हटाने पर उसका डोमेन स्लॉट खाली नहीं होता। अपने vibefox.net खाते में स्लॉट खाली करें।
सक्रिय कुंजी के बिना Flutterwave चेकआउट पर ग्राहकों को नहीं दिखता। फिर भी भुगतान शुरू हो तो ग्राहक को This payment method is not available. Please choose another one. दिखता है। लॉग-इन किए हुए स्टोर प्रबंधक भुगतान का तरीका (unlicensed — visible to admins only) चिह्न के साथ देख सकते हैं, ताकि आप कुंजी खरीदने से पहले प्लगइन सेट करके जाँच सकें। प्लगइन पेज और WooCommerce पेजों पर रिमाइंडर दिखता है। मौजूदा ऑर्डर प्रभावित नहीं होते: पहले से शुरू भुगतान की पुष्टि होती रहती है और रिफ़ंड काम करते हैं।
लाइसेंस समाप्त होने पर प्लगइन काम करता रहता है, लेकिन अपडेट और सहायता के लिए नवीनीकरण ज़रूरी है। स्थिति बैकग्राउंड में अपने-आप दोबारा जाँची जाती है।
समस्या निवारण
Flutterwave चेकआउट पर नहीं दिखता: जाँचें कि लाइसेंस सक्रिय है, Enable/Disable चालू है और वर्तमान मोड की सीक्रेट कुंजी भरी हुई है व मोड से मेल खाती है: टेस्ट मोड में टेस्ट कुंजी (FLWSECK_TEST-…), लाइव मोड में लाइव कुंजी (FLWSECK-…)। अन्यथा सेटिंग्स पेज चेतावनी दिखाता है।
भुगतान हो गया, लेकिन ऑर्डर Pending payment में रहता है: वेबहुक काम नहीं कर रहा है। Flutterwave डैशबोर्ड में उपयोग किए जा रहे मोड (टेस्ट या लाइव) के वेबहुक URL का सेटिंग्स में दिखाए URL से बिल्कुल मिलना और उसके सीक्रेट हैश का प्लगइन के Secret Hash के समान होना जाँचें। लंबित बैंक ट्रांसफ़र, USSD और मोबाइल मनी Flutterwave की पुष्टि तक लंबित रहते हैं। Debug log चालू करें और WooCommerce > Status > Logs में स्रोत wcp_flutterwave_payment देखें।
वेबहुक Invalid hash या Secret hash not configured लौटाता है: Flutterwave डैशबोर्ड का सीक्रेट हैश प्लगइन से अलग है या प्लगइन में है ही नहीं। दोनों जगह एक ही मान दर्ज करें।
वेबहुक Verification failed या Busy, retry later लौटाता है: भुगतान सत्यापित करने के लिए Flutterwave से संपर्क नहीं हो सका, लेन-देन अभी दिखाई नहीं दे रहा या दूसरा अनुरोध ऑर्डर अपडेट कर रहा था। Flutterwave वेबहुक का दोबारा प्रयास करता है।
ग्राहक को Payment gateway is not properly configured दिखता है: वर्तमान मोड की सीक्रेट कुंजी गायब है या दूसरे मोड की है।
ग्राहक को We could not match this payment to an order दिखता है: वापसी लिंक का संदर्भ इस स्टोर ने नहीं बनाया था। ग्राहक से राशि ली गई हो तो Flutterwave डैशबोर्ड में भुगतान खोजें।
Flutterwave अपने पेज पर त्रुटि दिखाता है: संभव है कि आपका Flutterwave खाता ऑर्डर की मुद्रा या चुने गए भुगतान विकल्पों का समर्थन न करता हो।
भुगतान के बाद ऑर्डर On hold में है: ऑर्डर नोट पढ़ें। सत्यापित राशि या मुद्रा ऑर्डर से मेल नहीं खाती थी, या ऑर्डर रद्द होने के बाद भुगतान आया। ऑर्डर पूरा करें या भुगतान रिफ़ंड करें।
मोड के बारे में संदेश के साथ रिफ़ंड विफल होता है: भुगतान टेस्ट या लाइव मोड में हुआ था और उस मोड की सीक्रेट कुंजी सेट नहीं है। उसे दर्ज करके फिर प्रयास करें।
लाइसेंस ब्लॉक त्रुटि दिखाता है: ब्लॉक के संदेश का पालन करें। उदाहरण के लिए, कुंजी दूसरे डोमेन पर उपयोग हो रही हो तो vibefox.net खाते में स्लॉट खाली करें और Check now पर क्लिक करें। साइट का पता बदल गया हो तो नए डोमेन के लिए कुंजी सक्रिय करने हेतु Check now पर क्लिक करें। लाइसेंस सर्वर से संपर्क न हो सके तो प्लगइन पिछली ज्ञात स्थिति के आधार पर काम करता रहता है।
डेवलपर के लिए प्लगइन दस्तावेज़ों में फ़िल्टर flw_p_payment_request (Flutterwave को भेजा डेटा), flw_p_currency_decimals (मुद्रा की दशमलव सटीकता) और flw_p_icon (चेकआउट आइकन) सूचीबद्ध हैं।
अनइंस्टॉल
प्लगइन निष्क्रिय करने पर सभी डेटा रखे जाते हैं। हटाने के लिए Plugins पेज पर उसे निष्क्रिय करके मिटाएँ। इस प्लगइन की लाइसेंस कुंजी और लाइसेंस स्थिति हमेशा हटाई जाती हैं। गेटवे सेटिंग्स और लॉग केवल तब हटते हैं जब Delete data on uninstall चालू था। अन्यथा बाद में दोबारा इंस्टॉल करने के लिए वे रखे जाते हैं। ऑर्डर में सेव Flutterwave डेटा हमेशा रखा जाता है। मौजूदा ऑर्डर के भुगतान नोट और लेन-देन ID बने रहते हैं।
Flutterwave उसके संबंधित स्वामी का ट्रेडमार्क है। यह प्लगइन Flutterwave से संबद्ध नहीं है और न ही Flutterwave द्वारा अनुमोदित है।
