WooCommerce से WhatsApp पर ऑर्डर अपडेट भेजें
ऑर्डर इवेंट के लिए एक WooCommerce वेबहुक बनाइए, जो किसी रिसीवर की ओर इशारा करे, जैसे n8n वर्कफ़्लो या छोटा PHP रूट। रिसीवर WooCommerce के सिग्नेचर की पुष्टि करता है, जाँचता है कि ग्राहक WhatsApp मैसेज के लिए राज़ी है, और कनेक्ट किए गए नंबर के फ़ोन नंबर आईडी और टोकन से Cloud API के जरिए मंज़ूर टेम्पलेट भेजता है।
लगातार पाँच से ज़्यादा डिलीवरी विफल होने पर WooCommerce वेबहुक को बंद कर देता है।
हेडर में पेलोड का base64 एन्कोडेड HMAC-SHA256 होता है, जो वेबहुक के सीक्रेट से बनाया जाता है।
कस्टमर सर्विस विंडो के बाहर सिर्फ़ पहले से मंज़ूर टेम्पलेट मैसेज भेजे जा सकते हैं।
WooCommerce का ऑर्डर WhatsApp मैसेज कैसे ट्रिगर करता है?
WooCommerce वेबहुक और एक रिसीवर के जरिए। WooCommerce में सेटिंग, एडवांस्ड, वेबहुक में जाकर ऑर्डर टॉपिक वाला वेबहुक जोड़िए, जैसे ऑर्डर बनना या ऑर्डर अपडेट होना, साथ में एक डिलीवरी यूआरएल और एक सीक्रेट। इवेंट होते ही WooCommerce ऑर्डर को JSON के रूप में उस यूआरएल पर पोस्ट करता है।
पेलोड तय फ़ॉर्मैट में होता है, इसलिए उसे सीधे Cloud API की ओर नहीं भेजा जा सकता। बीच में एक रिसीवर चाहिए: n8n का Webhook नोड, स्टोर के अपने PHP में एक रूट, या कोई भी छोटी सर्विस। वह ऑर्डर पढ़ता है, ग्राहक का फ़ोन नंबर और मैसेज के लिए ज़रूरी ब्योरा निकालता है, और कनेक्ट किए गए नंबर के Cloud API messages एंडपॉइंट पर एक HTTPS अनुरोध भेजता है, जिसमें उस नंबर का एक्सेस टोकन bearer टोकन के रूप में लगता है।
order.updated टॉपिक किसी एक स्टेटस से बँधा नहीं है, इसलिए रिसीवर को ऑर्डर का status फ़ील्ड पढ़ना चाहिए और हर उस बदलाव पर एक बार मैसेज भेजना चाहिए जो उसके काम का है। WooCommerce डिफ़ॉल्ट रूप से wp-cron के जरिए बैकग्राउंड में डिलीवर करता है, इसलिए मैसेज ऑर्डर के कुछ देर बाद पहुँच सकता है।
रिसीवर को कैसे पता चलता है कि अनुरोध स्टोर से ही आया है?
WooCommerce के सिग्नेचर से। हर डिलीवरी में X-WC-Webhook-Signature हेडर होता है, जो रॉ पेलोड का base64 एन्कोडेड HMAC-SHA256 है और उस सीक्रेट से बनता है जो आपने वेबहुक पर सेट किया था। रिसीवर मिली हुई बॉडी पर वही हैश निकालता है, दोनों की तुलना करता है, और जो मेल न खाए उसे ठुकरा देता है।
यह स्टोर का अपना सीक्रेट है, इसलिए WhatsApp के आने वाले मैसेज पर Meta के सिग्नेचर के उलट, इसकी पुष्टि की जा सकती है। तुलना constant time में कीजिए, और हैश किसी फ़्रेमवर्क के पार्स करने से पहले रॉ बॉडी पर निकालिए, क्योंकि दोबारा एन्कोड किया गया JSON अलग हैश देता है।
जल्दी से 2xx लौटाइए। WooCommerce 2xx, 301 या 302 के अलावा हर जवाब को विफलता गिनता है, और लगातार पाँच से ज़्यादा विफलताओं पर वेबहुक बंद कर देता है। जो रिसीवर डिप्लॉय के लिए बंद हो, या जवाब देने से पहले Meta का इंतज़ार करके धीमा हो, वह किसी को पता चले बिना स्टोर के मैसेज बंद करा सकता है।
स्टोर क्या भेज सकता है, और कब?
जब भी स्टोर पहले लिखे, तब मंज़ूर टेम्पलेट। Meta की 24 घंटे की कस्टमर सर्विस विंडो तभी खुलती है जब ग्राहक नंबर पर मैसेज करे, इसलिए ऑर्डर कन्फ़र्मेशन या शिपिंग अपडेट कारोबार की ओर से शुरू किया गया मैसेज है और फ़्री टेक्स्ट ठुकरा दिया जाता है। हर अपडेट के लिए एक यूटिलिटी टेम्पलेट बनाइए, मंज़ूरी का इंतज़ार कीजिए, और उसे नाम और भाषा से भेजिए, ऑर्डर नंबर और बाकी ब्योरा पैरामीटर के रूप में।
Meta ऑप्ट-इन भी माँगता है: ग्राहक ने अपना नंबर दिया हो और इस कारोबार से WhatsApp पर संदेश पाने के लिए सहमति दी हो। चेकआउट का एक चेकबॉक्स, जो ऑर्डर के साथ सहेजा जाए, इसका सबसे आसान रिकॉर्ड है, और रिसीवर को भेजने से पहले इसे जाँचना चाहिए।
ग्राहक के जवाब देते ही बातचीत सामान्य Coexistence बन जाती है। जवाब स्टोर के फ़ोन पर WhatsApp Business ऐप में दिखता है, विंडो फ़्री टेक्स्ट के लिए खुली रहती है, और टीम ऐप से जवाब देती है, जैसे हमेशा देती आई है।
आम गड़बड़ियाँ
- WooCommerce को जवाब देने से पहले Cloud API कॉल करना। भेजने में देरी या गड़बड़ी वेबहुक के खिलाफ़ गिनी जाती है, और पाँच से ज़्यादा विफलताओं पर वह बंद हो जाता है।
- रॉ बॉडी की जगह पार्स किए गए JSON का हैश निकालना। सिग्नेचर कभी मेल नहीं खाता और हर असली डिलीवरी ठुकरा दी जाती है।
- हर order.updated डिलीवरी पर मैसेज भेजना। टॉपिक किसी एक स्टेटस से बँधा नहीं है, इसलिए यह ट्रैक किए बिना कि किस बदलाव पर मैसेज जा चुका है, ग्राहकों को दोहराए हुए मैसेज मिलते हैं।
easycoexistence.com पर स्टोर का नंबर कनेक्ट कीजिए और डैशबोर्ड से उसका फ़ोन नंबर आईडी और टोकन रिसीवर को दीजिए। प्रति नंबर US$ 9 प्रति माह से शुरू, नंबर जोड़ने के साथ US$ 1 तक, और पहले 3 दिन का ट्रायल।
अक्सर पूछे जाने वाले सवाल
क्या इसके लिए WordPress प्लगइन चाहिए?
नहीं। WooCommerce के अपने वेबहुक और एक रिसीवर काफ़ी हैं, और रिसीवर उसी PHP एप्लिकेशन का एक रूट हो सकता है।
ऑर्डर मैसेज का खर्च कौन उठाता है?
Meta मैसेजिंग का बिल सीधे कारोबार को उसके अपने WhatsApp Business खाते पर भेजता है, और EasyCoexistence उस पर कभी कोई मार्कअप नहीं लगाता।
क्या टीम फ़ोन इस्तेमाल करती रह सकती है?
हाँ। Coexistence स्टोर के नंबर पर WhatsApp Business ऐप को चालू रखता है, और स्टोर का भेजा टेम्पलेट थ्रेड में दिखता है।
अगर वेबहुक बंद हो गया हो तो?
रिसीवर ठीक कीजिए, फिर WooCommerce में वेबहुक का स्टेटस वापस active कर दीजिए। जो ऑर्डर बंद रहने के दौरान बने, उन पर मैसेज ट्रिगर नहीं हुआ था।
पढ़ना जारी रखें
शुरू करने के लिए तैयार हैं?
WhatsApp Coexistence को महीनों में नहीं, मिनटों में कॉन्फ़िगर करें। ऐप्लिकेशन मोबाइल पर काम करता रहता है।
मुफ़्त ट्रायल शुरू करेंइस तारीख को सत्यापित