VibeFox Stripe for WooCommerce — सहायता
आवश्यकताएँ
WordPress: 6.0 या उसके बाद का संस्करण।
WooCommerce: 7.0 या उसके बाद का संस्करण, इंस्टॉल और सक्रिय। WooCommerce के बिना प्लगइन सक्रिय नहीं होता।
PHP: 8.0 या उसके बाद का संस्करण।
HTTPS: लाइव भुगतानों के लिए आपकी साइट पर HTTPS होना चाहिए।
Stripe खाता: आपको अपने Stripe खाते की गुप्त API कुंजियाँ और Stripe Dashboard में एक वेबहुक एंडपॉइंट चाहिए (देखें कॉन्फ़िगरेशन)। केवल गुप्त कुंजियाँ और वेबहुक साइनिंग सीक्रेट इस्तेमाल होते हैं। पब्लिशेबल कुंजियों (pk_...) की ज़रूरत नहीं है, क्योंकि Stripe Checkout एक Stripe-होस्ट पेज है।
VibeFox लाइसेंस कुंजी: vibefox.net से खरीदी जाती है। एक कुंजी एक डोमेन पर काम करती है।
इंस्टॉलेशन
1. WordPress में Plugins > Add New > Upload Plugin पर जाएँ, प्लगइन की ZIP फ़ाइल चुनें और Install Now पर क्लिक करें। आप FTP से wcp_stripe_gateway फ़ोल्डर को /wp-content/plugins/ में भी अपलोड कर सकते हैं।
2. Activate पर क्लिक करें।
3. सेटिंग्स खोलें: WooCommerce > Settings > Payments > Stripe > Manage, या Plugins पेज पर प्लगइन के नाम के नीचे Settings पर क्लिक करें।
4. पेज के ऊपर वाले लाइसेंस ब्लॉक में अपनी VibeFox लाइसेंस कुंजी डालें और Activate पर क्लिक करें।
5. अपनी Stripe गुप्त कुंजियाँ चिपकाएँ, Stripe Dashboard में वेबहुक सेट करें और उसके साइनिंग सीक्रेट चिपकाएँ (देखें कॉन्फ़िगरेशन)।
6. Enable/Disable चालू करें। टेस्ट मोड में कार्ड 4242 4242 4242 4242 से एक भुगतान आज़माएँ, फिर Test Mode का निशान हटा दें।
कॉन्फ़िगरेशन
सभी सेटिंग्स एक ही पेज पर हैं: WooCommerce > Settings > Payments > Stripe। फ़ील्ड्स के ऊपर पेज चेतावनी देता है यदि वर्तमान मोड में गुप्त कुंजी नहीं है (तब चेकआउट पर भुगतान विधि छिपी रहती है) या वेबहुक साइनिंग सीक्रेट नहीं है, और टेस्ट मोड चालू होने पर Test mode is on: no real payments are taken. दिखाता है। भुगतान विधियों की सूची में Stripe को तब तक सेटअप की ज़रूरत वाला दिखाया जाता है, जब तक वर्तमान मोड में गुप्त कुंजी न हो।
सामान्य
Enable/Disable: Enable Stripe Gateway भुगतान विधि को चालू या बंद करता है। डिफ़ॉल्ट: बंद।
Title: वह भुगतान विधि का नाम जो ग्राहक चेकआउट पर देखते हैं। डिफ़ॉल्ट: Stripe।
Description: चेकआउट पर भुगतान विधि के नीचे दिखाया जाने वाला पाठ। डिफ़ॉल्ट: Pay securely with your credit or debit card via Stripe.
API कुंजियाँ
गुप्त कुंजियाँ Stripe Dashboard > Developers > API keys से कॉपी करें। टेस्ट और लाइव कुंजियाँ अलग हैं। टेस्ट मोड केवल टेस्ट कुंजियों का, और लाइव मोड केवल लाइव कुंजियों का उपयोग करता है। सेव करते समय यदि कोई मान अपेक्षित प्रीफ़िक्स से शुरू नहीं होता, उदाहरण के लिए जब गुप्त कुंजी की जगह पब्लिशेबल कुंजी चिपकाई गई हो, तो प्लगइन चेतावनी देता है।
Test Mode: Enable test mode Stripe की टेस्ट कुंजियों का उपयोग करता है। कोई वास्तविक पैसा नहीं लिया जाता; 4242 4242 4242 4242 जैसे Stripe टेस्ट कार्ड से भुगतान करें। डिफ़ॉल्ट: चालू। वास्तविक भुगतान लेने के लिए इसे बंद करें।
Test Secret Key: टेस्ट मोड की गुप्त कुंजी। यह sk_test_ से शुरू होती है (प्रतिबंधित कुंजी के लिए rk_test_)।
Test Webhook Secret: टेस्ट मोड में बनाए गए वेबहुक एंडपॉइंट का साइनिंग सीक्रेट (whsec_...)।
Live Secret Key: लाइव मोड की गुप्त कुंजी। यह sk_live_ से शुरू होती है (प्रतिबंधित कुंजी के लिए rk_live_)।
Live Webhook Secret: लाइव मोड में बनाए गए वेबहुक एंडपॉइंट का साइनिंग सीक्रेट (whsec_...)।
Webhook
वेबहुक आपके स्टोर को बताता है कि भुगतान हो गया है। Stripe Dashboard > Developers > Webhooks में टेस्ट मोड के लिए एक एंडपॉइंट और लाइव मोड के लिए दूसरा एंडपॉइंट जोड़ें। सेटिंग्स के इस भाग में दिखाया गया URL उपयोग करें। यह कुछ इस तरह दिखता है: https://your-site/wc-api/strg_stripe_webhook/। यदि आपकी साइट के URL में भाषा प्रीफ़िक्स है, तो URL को ठीक वैसा ही कॉपी करें जैसा सेटिंग्स दिखाती हैं, क्योंकि Stripe रीडायरेक्ट को फ़ॉलो नहीं करता।
हर एंडपॉइंट के लिए ये इवेंट चुनें:
हर एंडपॉइंट बनाने के बाद Stripe से उसका साइनिंग सीक्रेट (whsec_...) कॉपी करें और उसे Test Webhook Secret या Live Webhook Secret में चिपकाएँ। बिना वैध हस्ताक्षर वाले वेबहुक अस्वीकार कर दिए जाते हैं। वेबहुक के बिना ऑर्डर तभी पुष्ट होता है जब ग्राहक भुगतान के बाद स्टोर पर लौटता है।
ऑर्डर
Order Status After Payment: सफल भुगतान के बाद सेट होने वाला ऑर्डर स्टेटस। स्टेटस एक बार में सेट हो जाता है, दूसरी बार बदलाव नहीं होता।
उन्नत
Logging: Enable logging Stripe अनुरोध और वेबहुक को WooCommerce > Status > Logs में लिखता है, स्रोत wcp_stripe_gateway। कुंजियाँ और ग्राहक का डेटा लॉग नहीं होता। डिफ़ॉल्ट: बंद।
Delete Data on Uninstall: चालू होने पर प्लगइन हटाने से गेटवे सेटिंग्स, ऑर्डर पर सहेजा गया Stripe डेटा और लॉग हट जाते हैं। डिफ़ॉल्ट: बंद।
चेकआउट
ग्राहक भुगतान विधि चुनता है (डिफ़ॉल्ट रूप से Stripe) और ऑर्डर देता है। प्लगइन ऑर्डर की मुद्रा में ऑर्डर की कुल राशि के लिए Stripe Checkout सेशन बनाता है और ग्राहक को Stripe के भुगतान पेज पर भेजता है। वहाँ ग्राहक क्रेडिट या डेबिट कार्ड से भुगतान करता है। ग्राहक का बिलिंग ई-मेल Stripe को दिया जाता है, और Stripe पेज पर भुगतान Order # और ऑर्डर नंबर के रूप में दिखता है।
भुगतान के बाद ग्राहक आपके स्टोर के ऑर्डर प्राप्ति पेज पर लौटता है। ऑर्डर तभी भुगतान किया हुआ चिह्नित होता है जब Stripe उसकी पुष्टि करे: हस्ताक्षरित वेबहुक से, या जब ग्राहक उस पेज पर पहुँचे तब सर्वर की ओर से Stripe को भेजे गए अनुरोध से। यदि भुगतान अभी पुष्ट नहीं हुआ है, तो पेज Your payment is being confirmed by Stripe. You will receive an e-mail as soon as it is confirmed. दिखाता है।
यदि ग्राहक Stripe पेज पर रद्द करता है, तो ऑर्डर WooCommerce के मानक तरीके से रद्द होता है। ग्राहक किसी बिना भुगतान वाले ऑर्डर का भुगतान दोबारा कर सकता है, उदाहरण के लिए Pay for order पेज से। हर नया प्रयास पिछला Stripe सेशन बंद करता है, इसलिए ऑर्डर दो बार नहीं चुकाया जा सकता।
यदि Stripe भुगतान शुरू नहीं कर पाता, तो ग्राहक को एक छोटा संदेश दिखता है, उदाहरण के लिए कि ऑर्डर की कुल राशि इस मुद्रा में Stripe द्वारा चार्ज की जा सकने वाली न्यूनतम राशि से कम है, और वह कोई दूसरी भुगतान विधि चुन सकता है। तकनीकी कारण ऑर्डर नोट्स और लॉग में जोड़ दिया जाता है। लॉग-इन स्टोर मैनेजर संदेश में भी इसे देखते हैं।
यह भुगतान विधि क्लासिक चेकआउट, Checkout ब्लॉक और Pay for order पेज पर काम करती है। यह WooCommerce High-Performance Order Storage (HPOS) के साथ संगत है।
यह प्लगइन केवल कार्ड भुगतान लेता है, जो Stripe पेज पर तुरंत लिए जाते हैं। इसमें सेव किए गए कार्ड, सब्सक्रिप्शन या आवर्ती भुगतान नहीं हैं, साइट पर कार्ड फ़ॉर्म नहीं है, आपकी साइट पर Apple Pay या Google Pay बटन नहीं हैं, और अलग से authorize व capture नहीं है।
ऑर्डर और रिफ़ंड
ऑर्डर स्टेटस
Pending payment: ग्राहक को Stripe पर भेजा गया और उसने अभी भुगतान नहीं किया है, या Stripe ने अभी भुगतान की पुष्टि नहीं की है।
Processing, Completed or On Hold: भुगतान की पुष्टि हो गई है। स्टेटस Order Status After Payment का पालन करता है। ऑर्डर नोट में Stripe भुगतान और उसकी पुष्टि का तरीका (वेबहुक या वापसी) दिखता है। ट्रांज़ेक्शन ID Stripe भुगतान ID (pi_...) है, और ऑर्डर स्क्रीन पर वह Stripe Dashboard के भुगतान से लिंक होती है।
On hold after payment: Stripe ने ऑर्डर की कुल राशि से अलग राशि या मुद्रा बताई (उदाहरण के लिए, भुगतान शुरू होने के बाद ऑर्डर बदला गया), या ऑर्डर रद्द होने के बाद भुगतान आया। ऑर्डर नोट इसे समझाता है। ऑर्डर जाँचें और उसे पूरा करें या भुगतान रिफ़ंड करें।
Failed: विलंबित भुगतान विफल हुआ।
Cancelled: ग्राहक ने Stripe पेज पर रद्द किया, या ऑर्डर आपने या WooCommerce के स्टॉक होल्ड टाइमआउट से रद्द हुआ। ऑर्डर का खुला Stripe सेशन बंद हो जाता है, इसलिए अब उसका भुगतान नहीं हो सकता।
यदि पहले से भुगतान किए गए ऑर्डर के लिए दूसरा भुगतान आता है, तो ऑर्डर दोबारा नहीं बदला जाता। एक नोट आपसे उसे जाँचने और Stripe Dashboard में डुप्लिकेट रिफ़ंड करने के लिए कहता है।
रिफ़ंड
ऑर्डर खोलें, Refund पर क्लिक करें, राशि दर्ज करें और Refund via Stripe पर क्लिक करें। पूर्ण और आंशिक रिफ़ंड समर्थित हैं। रिफ़ंड उसी मोड (टेस्ट या लाइव) में भेजा जाता है जिसमें भुगतान हुआ था, इसलिए उस मोड की गुप्त कुंजी सेट होनी चाहिए। यदि Stripe रिफ़ंड स्वीकार नहीं करता, तो WooCommerce त्रुटि दिखाता है और कोई रिफ़ंड दर्ज नहीं होता। सफल रिफ़ंड Stripe रिफ़ंड ID के साथ ऑर्डर नोट्स में जोड़ा जाता है।
Stripe Dashboard में किए गए रिफ़ंड charge.refunded वेबहुक से आते हैं और ऑर्डर नोट्स में जोड़े जाते हैं। वे अपने-आप WooCommerce रिफ़ंड के रूप में दर्ज नहीं होते। ज़रूरत हो तो Refund via Stripe का उपयोग किए बिना WooCommerce में मैन्युअल रिफ़ंड बनाएँ।
लाइसेंस कुंजी
यह प्लगइन vibefox.net से मिली VibeFox लाइसेंस कुंजी के साथ काम करता है। लाइसेंस ब्लॉक WooCommerce > Settings > Payments > Stripe के सबसे ऊपर है। कुंजी License key में चिपकाएँ और Activate पर क्लिक करें। ब्लॉक स्टेटस दिखाता है, जैसे लाइसेंस किस तारीख तक सक्रिय है और आपका डोमेन। स्टेटस दोबारा जाँचने के लिए Check now, कोई और कुंजी दर्ज करने के लिए Change key, और इस साइट से कुंजी हटाने के लिए Remove key का उपयोग करें। Manage licenses and domains in your account लिंक आपका vibefox.net खाता खोलता है।
एक कुंजी एक डोमेन पर काम करती है। किसी साइट से कुंजी हटाने से उस डोमेन का स्लॉट खाली नहीं होता। अपने vibefox.net खाते में स्लॉट खाली करें।
सक्रिय कुंजी के बिना चेकआउट पर ग्राहकों को Stripe नहीं दिखता। फिर भी यदि भुगतान शुरू होता है, तो ग्राहक को This payment method is not available. Please choose another one. दिखता है। लॉग-इन स्टोर मैनेजरों को भुगतान विधि (unlicensed — visible to admins only) चिह्न के साथ अब भी दिखती है, ताकि आप कुंजी खरीदने से पहले प्लगइन सेट अप और टेस्ट कर सकें। Plugins पेज और WooCommerce पेजों पर एक रिमाइंडर दिखता है। मौजूदा ऑर्डर प्रभावित नहीं होते: जो भुगतान पहले से शुरू हो चुके हैं, उनकी पुष्टि होती रहती है और रिफ़ंड भी काम करते हैं।
लाइसेंस की अवधि समाप्त होने पर प्लगइन काम करता रहता है, लेकिन अपडेट और सपोर्ट के लिए नवीनीकरण चाहिए। स्टेटस पृष्ठभूमि में अपने-आप फिर से जाँचा जाता है।
समस्या निवारण
चेकआउट पर Stripe दिखाई नहीं देता: जाँचें कि लाइसेंस सक्रिय है, Enable/Disable चालू है, और वर्तमान मोड में गुप्त कुंजी है: टेस्ट मोड में Test Secret Key, लाइव मोड में Live Secret Key। कुंजी गायब होने पर सेटिंग्स पेज चेतावनी दिखाता है।
भुगतान हो गया, पर ऑर्डर Pending payment पर अटका है: वेबहुक काम नहीं कर रहा। Stripe Dashboard में जाँचें कि आपके उपयोग वाले मोड (टेस्ट या लाइव) में एंडपॉइंट मौजूद है, उसका URL सेटिंग्स में दिखाए गए URL से हूबहू मेल खाता है, और चारों इवेंट चुने गए हैं। जाँचें कि उस एंडपॉइंट का साइनिंग सीक्रेट सही फ़ील्ड (Test Webhook Secret या Live Webhook Secret) में है। Stripe Dashboard हर वेबहुक के लिए आपके स्टोर का जवाब दिखाता है। ग्राहक भुगतान के बाद स्टोर पर लौटता है, तब भी ऑर्डर की पुष्टि हो जाती है।
वेबहुक जवाब देता है Webhook secret not configured: कोई भी वेबहुक सीक्रेट सेट नहीं है। साइनिंग सीक्रेट को सेटिंग्स में चिपकाएँ।
वेबहुक जवाब देता है Invalid signature: साइनिंग सीक्रेट किसी दूसरे एंडपॉइंट या मोड का है, या सर्वर की घड़ी गलत है। Stripe हस्ताक्षर सर्वर समय से 5 मिनट के भीतर के ही स्वीकार होते हैं।
वेबहुक जवाब देता है Busy, retry: उसी समय ऑर्डर की पुष्टि किसी दूसरे अनुरोध से हो रही थी। Stripe वेबहुक को अपने-आप दोबारा भेजता है।
सेव करते समय चेतावनी: मान सही नहीं लगता: कोई कुंजी गलत फ़ील्ड में चिपकाई गई। गुप्त कुंजियाँ sk_test_ / rk_test_ या sk_live_ / rk_live_ से शुरू होती हैं, वेबहुक सीक्रेट whsec_ से।
ऑर्डर देते समय ग्राहक को त्रुटि दिखती है: ऑर्डर नोट्स खोलें या Logging चालू करके WooCommerce > Status > Logs में स्रोत wcp_stripe_gateway देखें। गलत या गायब कुंजी से यह संदेश आता है कि भुगतान विधि सही तरह से कॉन्फ़िगर नहीं है। मुद्रा के लिए Stripe की न्यूनतम राशि (जैसे 0.50 EUR) से कम ऑर्डर राशि Stripe से नहीं चुकाई जा सकती।
टेस्ट भुगतान लाइव ऑर्डर की पुष्टि नहीं करते: टेस्ट और लाइव भुगतान अलग रखे जाते हैं। टेस्ट भुगतान कभी लाइव ऑर्डर की पुष्टि नहीं करता, और इसका उल्टा भी सही है। Test Mode को अपने चाहे गए मोड में बदलें और उस मोड की कुंजियाँ व वेबहुक इस्तेमाल करें।
भुगतान के बाद ऑर्डर On hold है: ऑर्डर नोट पढ़ें। चुकाई गई राशि या मुद्रा ऑर्डर से अलग थी, या भुगतान ऑर्डर रद्द होने के बाद आया। ऑर्डर पूरा करें या भुगतान रिफ़ंड करें।
मोड से जुड़े संदेश के साथ रिफ़ंड विफल होता है: भुगतान टेस्ट या लाइव मोड में हुआ था, और उस मोड की गुप्त कुंजी सेट नहीं है। उसे दर्ज करें और फिर कोशिश करें।
लाइसेंस ब्लॉक त्रुटि दिखाता है: ब्लॉक के संदेश का पालन करें। उदाहरण के लिए, यदि कुंजी किसी दूसरे डोमेन पर पहले से इस्तेमाल हो रही है, तो अपने vibefox.net खाते में स्लॉट खाली करें और Check now पर क्लिक करें। यदि साइट का पता बदल गया है, तो नए डोमेन के लिए कुंजी सक्रिय करने हेतु Check now पर क्लिक करें। यदि लाइसेंस सर्वर तक पहुँच नहीं हो पा रही, तो प्लगइन अंतिम ज्ञात स्टेटस पर काम करता रहता है।
अनइंस्टॉल
प्लगइन को डिएक्टिवेट करने पर सारा डेटा सुरक्षित रहता है। इसे हटाने के लिए Plugins पेज पर डिएक्टिवेट करके डिलीट करें। इस प्लगइन की लाइसेंस कुंजी और लाइसेंस स्टेटस हमेशा हटा दिए जाते हैं। गेटवे सेटिंग्स, ऑर्डर पर सहेजा गया Stripe डेटा और लॉग तभी हटते हैं जब Delete Data on Uninstall चालू था। अन्यथा वे बाद में दोबारा इंस्टॉल करने के लिए रहते हैं। मौजूदा ऑर्डर अपने भुगतान नोट्स और ट्रांज़ेक्शन ID बनाए रखते हैं।
Stripe उसके संबंधित स्वामी का ट्रेडमार्क है। यह प्लगइन Stripe से संबद्ध नहीं है और न ही Stripe द्वारा समर्थित है।
