VibeFox SMSA Express for WooCommerce — सहायता
आवश्यकताएँ
WordPress: 5.8 या उसके बाद का।
WooCommerce: 5.0 या उसके बाद का, इंस्टॉल और सक्रिय। WooCommerce के बिना प्लगइन सक्रिय नहीं होता।
PHP: 8.0 या उसके बाद का।
SMSA Express रेट शीट: प्राइस टेबल की कीमतें आपके SMSA खाते या SMSA सेल्स टीम से मिलती हैं। इन्हें अपनी स्टोर मुद्रा में दर्ज करें। अगर आपकी रेट शीट SAR, AED या किसी दूसरी मुद्रा में है, तो पहले उसे परिवर्तित करें।
SMSA passKey (केवल लाइव शुल्क के लिए): लाइव शुल्क SMSA वेब सर्विस (SECOM, ऑपरेशन getShipCharges) का उपयोग करता है। SMSA अनुरोध पर passKey जारी करता है: अपने SMSA अकाउंट मैनेजर से पूछें, या info@smsaexpress.com पर लिखकर अपने अकाउंट नंबर के साथ SMSA वेब सर्विस की एक्सेस मांगें। passKey, SMSA ई-कॉमर्स पोर्टल की API कुंजी से अलग हो सकता है। इस सर्विस के लिए SMSA कोई टेस्ट (sandbox) सर्वर नहीं देता।
VibeFox लाइसेंस कुंजी: vibefox.net से खरीदी जाती है। एक कुंजी एक डोमेन पर काम करती है।
इंस्टॉलेशन
1. WordPress में Plugins > Add New > Upload Plugin पर जाएँ, प्लगइन की ZIP फ़ाइल चुनें और Install Now पर क्लिक करें। आप FTP से vfd_smsa_express फ़ोल्डर को /wp-content/plugins/ में भी अपलोड कर सकते हैं।
2. Activate पर क्लिक करें।
3. सेटिंग्स खोलें: WooCommerce > Settings > Shipping > VibeFox SMSA Express, या प्लगइन्स पेज पर प्लगइन के नाम के नीचे Settings पर क्लिक करें।
4. पेज के शीर्ष पर लाइसेंस ब्लॉक में अपनी VibeFox लाइसेंस कुंजी दर्ज करें और Activate पर क्लिक करें।
5. प्राइस टेबल में अपनी SMSA Express कीमतें दर्ज करें।
6. वैकल्पिक: Live rates (API) के तहत Live charges चालू करें, अपना SMSA passKey, भेजने वाला शहर और देश दर्ज करें, और अगर आपकी स्टोर मुद्रा SAR नहीं है तो विनिमय दर भी दर्ज करें।
7. WooCommerce > Settings > Shipping > Shipping zones में किसी शिपिंग ज़ोन (जैसे "Saudi Arabia") में VibeFox SMSA Express जोड़ें, या Ignore shipping zones चालू करें और देश चुनें।
कॉन्फ़िगरेशन
सभी सेटिंग्स एक ही पेज पर हैं: WooCommerce > Settings > Shipping > VibeFox SMSA Express। ये सभी शिपिंग ज़ोन पर लागू होती हैं। जब आप किसी ज़ोन में यह मेथड जोड़ते हैं, तो ज़ोन विंडो में केवल एक फ़ील्ड होता है:
Title (zone): इस ज़ोन के लिए ग्राहकों को दिखने वाला नाम। ग्लोबल Method title इस्तेमाल करने के लिए इसे खाली छोड़ें।
हर बार सेटिंग्स सेव करने पर कैश किए गए SMSA शुल्क हट जाते हैं। लाइव शुल्क चालू होने पर सेटिंग्स के ऊपर की चेतावनियाँ बताती हैं कि passKey, भेजने वाला शहर या विनिमय दर गायब है, या प्राइस टेबल खाली है।
सामान्य
Enable/Disable: सभी ज़ोन में एक साथ यह मेथड चालू या बंद करता है।
Method title: कार्ट और चेकआउट में दिखाया जाने वाला शिपिंग मेथड का नाम। कोई ज़ोन इसे बदल सकता है। डिफ़ॉल्ट: SMSA Express।
लाइव दरें (API) (वैकल्पिक; अगर SMSA कोई शुल्क नहीं लौटाता, तो प्राइस टेबल इस्तेमाल होती है)
Live charges: SMSA Express से शिपिंग शुल्क लेता है। डिफ़ॉल्ट: बंद।
SMSA passKey: SMSA वेब सर्विस (SECOM) की कुंजी। अगर लॉग में "Invalid Passkey" दिखे, तो इस सर्विस ने कुंजी स्वीकार नहीं की। SMSA से वेब सर्विस के लिए passKey माँगें।
Ship-from city: वह शहर जहाँ से आपके पार्सल भेजे जाते हैं, SMSA की वर्तनी के अनुसार, जैसे Riyadh, Jeddah या Dammam। WooCommerce > Settings > General से स्टोर का शहर इस्तेमाल करने के लिए इसे खाली छोड़ें।
Ship-from country: वह देश जहाँ से आपके पार्सल भेजे जाते हैं। डिफ़ॉल्ट रूप से यह आपके स्टोर का देश है।
Shipment type: SMSA को शिपमेंट प्रकार के रूप में भेजा जाता है। DLV (डिफ़ॉल्ट) सामान्य डिलीवरी है। इसे केवल तभी बदलें जब SMSA ने आपको कोई दूसरा कोड दिया हो।
Currency of SMSA charges: SMSA हर शुल्क उसके मुद्रा कोड के साथ लौटाता है, आमतौर पर SAR (डिफ़ॉल्ट)। इस मुद्रा या आपकी स्टोर मुद्रा के अलावा किसी और मुद्रा में शुल्क इस्तेमाल नहीं होता।
Exchange rate: SMSA मुद्रा की 1 इकाई का आपकी स्टोर मुद्रा में मूल्य, जैसे 0.24। अगर दोनों मुद्राएँ समान हैं तो इसकी ज़रूरत नहीं। इसके बिना, किसी दूसरी मुद्रा के शुल्क इस्तेमाल नहीं होते और प्राइस टेबल लागू होती है। दशमलव विभाजक के रूप में बिंदु और कॉमा, दोनों स्वीकार होते हैं।
कीमतें (आपकी स्टोर मुद्रा में SMSA Express रेट शीट; लाइव शुल्क बंद होने पर इस्तेमाल होती है, और SMSA कोई शुल्क न लौटाए तो बैकअप के रूप में)
Price table: हर गंतव्य देश के लिए एक पंक्ति। पंक्ति जोड़ने के लिए + Add country पर क्लिक करें और हटाने के लिए क्रॉस पर। * All other countries पंक्ति उन देशों पर लागू होती है जिनकी अपनी पंक्ति नहीं है। हर पंक्ति में बेस प्राइस और वज़न कॉलम होते हैं: 1 kg तक XS, 2 kg तक S, 3 kg तक M, 5 kg तक L और 5 kg से अधिक XL। खाली या 0 वाला वज़न कॉलम बेस प्राइस इस्तेमाल करता है। बेस प्राइस 0 का मतलब मुफ़्त शिपिंग है। बिना किसी कीमत वाली पंक्तियाँ सेव करते समय हटा दी जाती हैं। "9.99" और "9,99" दोनों स्वीकार हैं।
Price for countries not in the table: तब इस्तेमाल होती है जब टेबल में गंतव्य देश की पंक्ति न हो (और * पंक्ति भी न हो), या पंक्ति में इस वज़न की कीमत न हो। उस स्थिति में मेथड छिपाने के लिए इसे खाली छोड़ें।
Price applies: कीमत की गणना कैसे होती है।
प्रोडक्ट के वज़न को आपकी स्टोर की वज़न इकाई से किलोग्राम में बदला जाता है।
शर्तें
Minimum weight (kg): कार्ट इससे हल्का हो तो मेथड छिपा देता है। 0 का मतलब कोई सीमा नहीं।
Maximum weight (kg): कार्ट इससे भारी हो तो मेथड छिपा देता है। डिफ़ॉल्ट: 30. 0 का मतलब कोई सीमा नहीं।
Minimum order amount: मेथड तभी दिखाता है जब कार्ट का सबटोटल (डिस्काउंट के बाद, टैक्स से पहले) इस राशि तक पहुँचे। हमेशा दिखाने के लिए खाली छोड़ें।
Free shipping from: कार्ट का सबटोटल (डिस्काउंट के बाद, टैक्स से पहले) जिससे SMSA Express शिपिंग मुफ़्त हो जाती है। मुफ़्त शिपिंग केवल वहीं दी जाती है जहाँ मेथड की गंतव्य के लिए कीमत है: SMSA शुल्क, टेबल की कोई पंक्ति, या टेबल से बाहर के देशों की कीमत। अगर टेबल में कीमत है, तो SMSA को कोई अनुरोध नहीं भेजा जाता। कभी मुफ़्त शिपिंग न देने के लिए इसे खाली छोड़ें।
Excluded shipping classes: कार्ट में इनमें से किसी WooCommerce शिपिंग क्लास का प्रोडक्ट हो, तो मेथड छिपा देता है।
Tax status: Taxable WooCommerce टैक्स को शिपिंग लागत में जोड़ता है, None नहीं जोड़ता। अगर आपकी कीमतों (टेबल और SMSA शुल्क) में पहले से टैक्स शामिल है, जैसे सऊदी VAT, तो None चुनें।
शिपिंग ज़ोन के बिना उपलब्धता
Ignore shipping zones: मेथड किसी भी शिपिंग ज़ोन में न जुड़ा हो, तब भी नीचे दिए गए देशों के लिए SMSA Express ऑफ़र करता है।
Countries: इस मोड के लिए गंतव्य देश। जिन सभी देशों में आप शिपिंग करते हैं उन्हें इस्तेमाल करने के लिए खाली छोड़ें। यह फ़ील्ड केवल तब इस्तेमाल होता है जब Ignore shipping zones चालू हो। किसी शिपिंग ज़ोन में जुड़ा मेथड हमेशा उसी ज़ोन के देशों के लिए काम करता है।
एडवांस्ड
Debug log: हर शुल्क गणना को WooCommerce > Status > Logs में, सोर्स vfd_smsa_express के साथ लॉग करता है। ग्राहकों के पते और कोई कुंजी लॉग नहीं होती। लाइव शुल्क की त्रुटियाँ इस विकल्प के बंद होने पर भी हमेशा लॉग होती हैं। काम पूरा होने पर लॉग बंद कर दें।
Remove data on uninstall: चालू होने पर प्लगइन हटाने से सभी SMSA Express सेटिंग्स और ज़ोन मेथड हट जाते हैं। प्लगइन को डीएक्टिवेट करने से कुछ भी नहीं हटता।
चेकआउट पर यह कैसे काम करता है
जब ग्राहक डिलीवरी पता दर्ज करता है, तो WooCommerce प्लगइन से कीमत माँगता है। प्लगइन पहले शर्तें जाँचता है: डिलीवरी देश, कार्ट का वज़न, न्यूनतम ऑर्डर राशि और बाहर रखी गई शिपिंग क्लास। अगर मुफ़्त शिपिंग लागू होती है और गंतव्य की कीमत है, तो मेथड 0 कीमत के साथ दिखाया जाता है।
लाइव शुल्क चालू होने पर, प्लगइन SMSA को आपका भेजने वाला शहर और देश, ग्राहक का शहर और देश, शिपमेंट प्रकार, किलोग्राम में पार्सल का वज़न और 0 का कैश ऑन डिलीवरी मूल्य भेजता है। SMSA शुल्क और उसकी मुद्रा के साथ जवाब देता है। प्लगइन इसे आपकी स्टोर मुद्रा में बदलकर दिखाता है। लाइव शुल्क केवल तभी मांगा जाता है जब ग्राहक शहर दर्ज कर चुका हो।
हर शुल्क एक घंटे के लिए कैश होता है, ताकि वही कार्ट नया अनुरोध न भेजे। विफल अनुरोध 5 मिनट के लिए कैश होता है। टाइमआउट या सर्वर एरर के बाद 2 मिनट तक SMSA से नहीं पूछा जाता। अस्वीकृत कुंजी के बाद 5 मिनट तक नहीं पूछा जाता। इस तरह चेकआउट हर रीफ़्रेश पर विफल होती सर्विस का इंतज़ार नहीं करता। अनुरोध का टाइमआउट 12 सेकंड है।
जब भी SMSA कोई उपयोगी शुल्क नहीं लौटाता (passKey नहीं, शहर अभी दर्ज नहीं हुआ, प्रोडक्ट के वज़न गायब हैं, अमान्य कुंजी, टाइमआउट, एरर, उस शहर के लिए सर्विस नहीं, या अज्ञात मुद्रा), तो प्राइस टेबल इस्तेमाल होती है। अगर टेबल और Price for countries not in the table कोई कीमत नहीं देते, तो मेथड छिपा दिया जाता है। ग्राहक को कभी कोई एरर नहीं दिखता। कारण लॉग में लिखा जाता है।
यह मेथड क्लासिक चेकआउट और कार्ट व चेकआउट ब्लॉक, दोनों पर काम करता है। यह WooCommerce High-Performance Order Storage (HPOS) के साथ संगत है। अरबी अनुवाद शामिल है।
प्लगइन केवल शिपिंग कीमत की गणना करता है। यह SMSA शिपमेंट नहीं बनाता, AWB लेबल प्रिंट नहीं करता, रिटर्न नहीं संभालता या पार्सल ट्रैक नहीं करता। कैश ऑन डिलीवरी और उसका शुल्क लाइव शुल्क में शामिल नहीं हैं। SMSA रिटेल पॉइंट चुनने का कोई विकल्प नहीं है: यह मेथड घर-घर डिलीवरी है।
लाइसेंस कुंजी
यह प्लगइन vibefox.net से मिली VibeFox लाइसेंस कुंजी के साथ काम करता है। लाइसेंस ब्लॉक WooCommerce > Settings > Shipping > VibeFox SMSA Express पेज के शीर्ष पर है। कुंजी को License key में चिपकाएँ और Activate पर क्लिक करें। ब्लॉक स्टेटस दिखाता है, जैसे लाइसेंस किस तारीख तक सक्रिय है और आपका डोमेन। स्टेटस दोबारा जाँचने के लिए Check now, कोई दूसरी कुंजी दर्ज करने के लिए Change key और इस साइट से कुंजी हटाने के लिए Remove key का उपयोग करें। Manage licenses and domains in your account लिंक आपका vibefox.net खाता खोलता है।
एक कुंजी एक डोमेन पर काम करती है। किसी साइट से कुंजी हटाने से डोमेन स्लॉट मुक्त नहीं होता। उसे अपने vibefox.net खाते में मुक्त करें।
सक्रिय कुंजी के बिना SMSA Express चेकआउट पर ग्राहकों को नहीं दिखता। लॉग इन किए स्टोर मैनेजर इसे अब भी देखते हैं, जिस पर (unlicensed — visible to admins only) का चिह्न होता है, ताकि आप कुंजी खरीदने से पहले प्लगइन सेट अप और टेस्ट कर सकें। प्लगइन्स पेज और WooCommerce पेजों पर एक रिमाइंडर दिखता है। मौजूदा ऑर्डर प्रभावित नहीं होते।
लाइसेंस की समय-सीमा खत्म होने पर भी प्लगइन काम करता रहता है, लेकिन अपडेट और सपोर्ट के लिए नवीनीकरण ज़रूरी है। स्टेटस की पृष्ठभूमि में अपने-आप फिर से जाँच होती है।
समस्या निवारण
SMSA Express चेकआउट पर नहीं दिख रहा: जाँचें कि लाइसेंस सक्रिय है, Enable/Disable चालू है, और मेथड ग्राहक के देश के ज़ोन में जुड़ा है (या Ignore shipping zones चालू है और देश की अनुमति है)। वज़न की सीमाएँ, Minimum order amount और Excluded shipping classes जाँचें। जाँचें कि देश या * की कीमत है, या Price for countries not in the table सेट है।
ग्राहक को SMSA शुल्क की जगह टेबल की कीमत दिख रही है: SMSA को ग्राहक का शहर चाहिए, इसलिए जब तक शहर दर्ज नहीं होता, टेबल की कीमत दिखती है। टेबल तब भी इस्तेमाल होती है जब SMSA जवाब न दे, कुंजी या शहर को अस्वीकार करे, या ऐसी मुद्रा में शुल्क लौटाए जिसकी विनिमय दर नहीं है। कारण देखने के लिए WooCommerce > Status > Logs खोलें, सोर्स vfd_smsa_express।
लॉग में "Invalid Passkey": कुंजी SMSA वेब सर्विस द्वारा स्वीकार नहीं की गई। SMSA से वेब सर्विस का passKey माँगें।
ग्राहक का शहर स्वीकार नहीं हो रहा: SMSA अपनी शहर वर्तनी चाहता है। डेवलपर vfd_smsa_express_live_request_fields फ़िल्टर से अनुरोध समायोजित कर सकते हैं, जैसे शहर का नाम।
शिपिंग पर टैक्स दो बार लग रहा है: आपकी रेट शीट या SMSA शुल्क में VAT पहले से शामिल हो सकता है। Tax status को None पर सेट करें।
बदलाव के बाद दरें पुरानी लग रही हैं: सेटिंग्स पेज सेव करें। इससे कैश किए गए SMSA शुल्क हट जाते हैं।
लाइसेंस ब्लॉक में त्रुटि दिख रही है: ब्लॉक का संदेश देखें और उसके अनुसार करें। उदाहरण के लिए, अगर कुंजी किसी दूसरे डोमेन पर पहले से इस्तेमाल हो रही है, तो अपने vibefox.net खाते में स्लॉट मुक्त करें और Check now पर क्लिक करें। अगर साइट का पता बदल गया है, तो नए डोमेन के लिए कुंजी सक्रिय करने हेतु Check now पर क्लिक करें। अगर लाइसेंस सर्वर तक नहीं पहुँचा जा सकता, तो प्लगइन आखिरी ज्ञात स्टेटस पर काम करता रहता है।
अनइंस्टॉल
प्लगइन को डीएक्टिवेट करने पर सारा डेटा रहता है। हटाने के लिए इसे Plugins पेज पर डीएक्टिवेट करें और डिलीट करें। इस प्लगइन की लाइसेंस कुंजी और लाइसेंस स्टेटस हमेशा हटा दिए जाते हैं। सेटिंग्स, ज़ोन मेथड और कैश किए गए शुल्क केवल तभी हटते हैं जब Remove data on uninstall चालू था। नहीं तो वे बाद में दोबारा इंस्टॉल करने के लिए रहते हैं। मौजूदा ऑर्डर अपनी शिपिंग लाइनें रखते हैं।
SMSA Express उसके संबंधित मालिक का ट्रेडमार्क है। यह प्लगइन SMSA Express से संबद्ध नहीं है और न ही SMSA Express द्वारा समर्थित है।
