
Webhooks وHookURL في Whats360: كيف تربط WhatsApp بالمتجر والـCRM والأنظمة البرمجية؟
إذا كان لديك متجر إلكتروني أو نظام CRM أو ERP أو تطبيق SaaS أو نظام برمجي خاص، فغالبًا ستصل إلى مرحلة تحتاج فيها إلى جعل WhatsApp يتفاعل تلقائيًا مع ما يحدث داخل نظامك.
قد تريد مثلًا أن تصل رسالة WhatsApp إلى العميل فور إنشاء طلب جديد، أو أن تنتقل رسالة العميل من WhatsApp إلى CRM، أو أن يبدأ Workflow تلقائي بمجرد تسجيل Lead جديد، أو أن يتم إرسال إشعار عند تحديث حالة الطلب.
هنا تظهر أهمية Webhooks وHookURL في Whats360.
الفكرة الأساسية بسيطة: بدل أن يظل نظامك يسأل باستمرار إذا حدث شيء جديد، يمكن للحدث نفسه أن يبدأ الاتصال ويرسل البيانات إلى النظام المطلوب.
الفكرة في سطر واحد
Webhook يحول الحدث الذي يحدث داخل نظام إلى طلب HTTP يمكن استخدامه لتشغيل عملية أخرى، بينما يسمح HookURL بربط سيناريو استقبال محدد بجهاز WhatsApp معين.
لماذا تحتاج الأنظمة إلى Webhook؟
لنفترض أن لديك متجرًا إلكترونيًا وتريد معرفة متى تم إنشاء طلب جديد.
بدون Webhook يمكن أن يعتمد النظام على الاستعلام المتكرر:
هل يوجد طلب جديد؟ ↓ لا ↓ انتظر ↓ هل يوجد طلب جديد؟ ↓ لا ↓ انتظر
أما باستخدام Webhook، فيصبح التدفق مختلفًا:
تم إنشاء الطلب ↓ المتجر ↓ Webhook ↓ Whats360 ↓ WhatsApp
وهذا هو جوهر Event-driven Architecture: وقوع الحدث هو الذي يبدأ العملية التالية.
لا يقتصر الأمر على الطلبات. يمكن أن يكون الحدث رسالة جديدة، تسجيل عميل، إنشاء Lead، تحديث فاتورة، تغيير حالة طلب، أو أي حدث آخر يدعمه النظام الذي يتم ربطه.
كيف يعمل Webhook في Whats360؟
يمكن أن يعمل الاتصال في اتجاهين رئيسيين.
الاتجاه الأول: Incoming Webhook
النظام الخارجي يرسل البيانات إلى Whats360، ثم تستخدم البيانات لتنفيذ عملية مرتبطة بـWhatsApp.
المتجر / CRM / التطبيق ↓ Incoming Webhook ↓ Whats360 ↓ WhatsApp
الاتجاه الثاني: Outgoing Webhook
يحدث الحدث في WhatsApp أو داخل Whats360، ثم يتم إرسال البيانات إلى نظام خارجي.
WhatsApp ↓ Whats360 ↓ Outgoing Webhook ↓ CRM / Server / Application
استخدام Webhook حسب نوع المستخدم
أهمية Webhook تختلف حسب طبيعة الشخص أو الشركة التي تستخدمه. المطور ينظر إليه كطبقة اتصال برمجية، بينما صاحب المتجر ينظر إليه كوسيلة لأتمتة الإشعارات، ومدير المبيعات ينظر إليه كحل لربط WhatsApp ببيانات العملاء.
استخدامه للمطور
المطور قد يحتاج إلى Webhook عندما يريد ربط WhatsApp بتطبيق أو نظام برمجي خاص.
مثلًا:
Application ↓ Order Created ↓ Webhook ↓ Whats360 ↓ WhatsApp
يمكن أن يكون التطبيق نظام SaaS أو CRM أو ERP أو متجرًا مخصصًا أو نظام حجوزات أو أي تطبيق يحتوي على Events يمكن إرسالها عبر HTTP.
استخدامه لصاحب المتجر
صاحب المتجر غالبًا لا يحتاج إلى معرفة تفاصيل HTTP وJSON حتى يستفيد من Webhook. ما يهمه هو النتيجة.
مثلًا:
العميل يطلب المنتج ↓ المتجر ينشئ Order ↓ Webhook ↓ Whats360 ↓ WhatsApp ↓ رسالة للعميل
بدل أن يقوم موظف بإرسال رسالة يدويًا بعد كل طلب، يصبح الحدث نفسه نقطة بداية للعملية.
استخدامه لمدير CRM والمبيعات
في الاتجاه المعاكس يمكن أن تبدأ العملية من WhatsApp:
العميل يرسل رسالة ↓ Whats360 ↓ Outgoing Webhook ↓ CRM
وبذلك يستطيع النظام الخارجي استقبال الحدث والبيانات المرتبطة به واستخدامها داخل Workflow أو سجل العميل.
استخدامه مع ERP
يمكن أن يصبح WhatsApp جزءًا من دورة العمل داخل نظام ERP.
ERP ↓ Invoice / Order Event ↓ Webhook ↓ Whats360 ↓ WhatsApp
وفي الاتجاه الآخر يمكن أن تنتقل أحداث WhatsApp إلى النظام الخارجي:
WhatsApp ↓ Whats360 ↓ Webhook ↓ ERP
Incoming Webhook: عندما يبدأ الحدث من النظام الخارجي
Incoming Webhook يعني أن البيانات تأتي من نظام خارجي إلى Whats360.
يمكن أن يكون النظام الخارجي متجرًا أو CRM أو ERP أو تطبيقًا مخصصًا.
التدفق النموذجي يكون:
Shopify / WooCommerce / CRM / Application ↓ POST Request ↓ Whats360 ↓ قراءة البيانات ↓ WhatsApp Message
يمكن أن يكون الحدث إنشاء طلب، تحديث طلب، تسجيل عميل، تسجيل عملية دفع، أو أي حدث آخر متاح في التكامل.
مثال على Incoming Webhook
لنفترض أن النظام الخارجي أرسل البيانات التالية:
{
"phone": "+201234567890",
"message": "Your order #1234 is confirmed!",
"name": "Ahmed"
}
الفكرة هنا أن النظام الخارجي يرسل البيانات إلى Endpoint، ثم تتم معالجة البيانات داخل Whats360 وفق إعدادات التكامل.
قاعدة عملية مهمة
إذا كان الحدث يبدأ في المتجر أو CRM أو التطبيق الخارجي وتريد أن يصل إلى WhatsApp، ففكر في Incoming Webhook.
Outgoing Webhook: عندما يبدأ الحدث من WhatsApp
في Outgoing Webhook يحدث العكس.
يبدأ الحدث من WhatsApp أو من حدث داخل Whats360، ثم يتم إرسال البيانات إلى خادم أو نظام خارجي.
مثال:
العميل يرسل رسالة ↓ Whats360 ↓ Outgoing Webhook ↓ CRM
وقد يكون السيناريو:
WhatsApp Event ↓ Whats360 ↓ Server ↓ Database / CRM / Application
البيانات التي يمكن أن تظهر في Payload
يمكن أن تتضمن بيانات الـJSON حقولًا مثل:
- phone: رقم الهاتف.
- message: نص الرسالة.
- sender_name: اسم المرسل.
- instance_id: معرف الجهاز أو الرقم داخل المنصة.
- message_id: معرف الرسالة.
- chat_jid: معرف المحادثة.
- timestamp: الوقت المرتبط بالحدث.
- media_url: رابط الوسائط عندما تكون متاحة.
هذه البيانات تسمح للنظام الخارجي بفهم الحدث وتحديد العميل والمحادثة والرسالة والجهاز المرتبط بها حسب طبيعة الـPayload.
كيف تختار بين Incoming وOutgoing Webhook؟
اسأل سؤالًا واحدًا: أين حدث الحدث؟
| الحدث | الاتجاه | النتيجة |
|---|---|---|
| طلب جديد في المتجر | Incoming | |
| رسالة جديدة في WhatsApp | Outgoing | CRM أو Server |
| Lead جديد في نظام خارجي | Incoming | |
| حدث داخل WhatsApp | Outgoing | نظام خارجي |
ربط Shopify مع Whats360
من السيناريوهات الشائعة ربط متجر Shopify بـWhats360 حتى تتحول أحداث المتجر إلى عمليات تلقائية عبر WhatsApp.
Shopify ↓ Webhook ↓ Whats360 ↓ WhatsApp ↓ العميل
الأحداث المحتملة في Shopify
من الـTopics المستخدمة في هذا السيناريو:
orders/createorders/updatedorders/paidcustomers/create
سيناريو الطلب الجديد
عندما ينشئ العميل طلبًا جديدًا، يمكن أن يكون التدفق:
Order Created ↓ Shopify Webhook ↓ Whats360 ↓ بيانات العميل والطلب ↓ WhatsApp
وقد يحتوي Payload على بيانات مثل رقم الطلب وقيمته وبيانات العميل ورقم الهاتف وفق الـTopic والبيانات التي يرسلها Shopify.
إعداد Webhook في Shopify
يبدأ الإعداد من إنشاء Webhook استقبال في Whats360، ثم استخدام رابط الاستقبال داخل إعدادات Webhooks في Shopify.
يمكن تحديد الحدث المطلوب واستخدام JSON كصيغة للبيانات.
ومن الجوانب المهمة في التكامل استخدام Secret وآلية التحقق التي يوفرها Shopify، ومنها الهيدر:
X-Shopify-Hmac-SHA256
كما يجب التعامل مع Response بشكل صحيح؛ فبحسب سيناريو Shopify الوارد، عدم الحصول على 200 OK ضمن المدة المتوقعة قد يؤدي إلى إعادة المحاولة.
حوّل متجر Shopify إلى Workflow تلقائي
إذا كان هدفك ربط الطلبات والعملاء والأحداث داخل المتجر برسائل WhatsApp بدل المعالجة اليدوية، فابدأ بتحديد الحدث ثم اتجاه Webhook ثم البيانات التي تحتاجها الرسالة.
- ربط أحداث الطلبات.
- إرسال إشعارات WhatsApp.
- بناء Workflows مرتبطة بالطلبات والعملاء.
ربط WooCommerce مع Whats360
يمكن تنفيذ الفكرة نفسها مع WooCommerce:
WooCommerce ↓ Webhook ↓ Whats360 ↓ WhatsApp
الأحداث المحتملة
- Order Created.
- Order Updated.
- Customer Created.
- Product Updated.
يمكن استخدام بيانات مثل رقم الطلب وحالته وقيمة الطلب وبيانات العميل في بناء السيناريو المناسب.
سيناريو تحديث الطلب
Order Updated ↓ WooCommerce Webhook ↓ Whats360 ↓ إشعار WhatsApp
وهذا يسمح بأن يكون تحديث حالة الطلب نقطة بداية لعملية تواصل جديدة مع العميل وفق Workflow المتاح.
فحص Webhook عند حدوث مشكلة
إذا لم يعمل Webhook في WooCommerce، لا تبدأ بتغيير كل الإعدادات دفعة واحدة.
ابدأ من سجلات WooCommerce، وراجع:
- هل Webhook نشط؟
- هل Delivery URL صحيح؟
- هل وصلت البيانات؟
- هل يوجد Response ناجح؟
- هل توجد أخطاء في Logs؟
ومن المهم الانتباه إلى أن Webhook قد يتم تعطيله بعد تكرار فشل التسليم وفق سلوك WooCommerce، ولذلك يجب أن تكون الاستجابة من Endpoint صحيحة ومتوقعة.
استخدام n8n مع Whats360
أحيانًا لا يكون المطلوب مجرد نقل Event من نظام إلى آخر. قد تريد تنفيذ عدة عمليات متتالية.
هنا يمكن استخدام n8n كطبقة Workflow:
WhatsApp ↓ Whats360 ↓ n8n Webhook Trigger ↓ Google Sheets ↓ Gmail ↓ Database
الفرق الأساسي أن Webhook ينقل الحدث، بينما n8n يمكن أن ينفذ سلسلة من الإجراءات بناءً على الحدث.
حفظ رسائل WhatsApp في Google Sheets
رسالة WhatsApp ↓ Whats360 ↓ Webhook ↓ n8n ↓ Google Sheets
يمكن أن يكون هذا مفيدًا في سيناريوهات تتطلب تسجيل البيانات أو تمريرها إلى Workflow آخر.
إرسال تنبيه بالبريد
WhatsApp Event ↓ Whats360 ↓ n8n ↓ Gmail ↓ تنبيه
ويمكن توسيع Workflow ليشمل أكثر من خدمة حسب الهدف.
متى يصبح n8n مناسبًا؟
عندما تقول: “لدي Event واحد، لكن بعده أحتاج إلى تنفيذ عدة عمليات”. أما إذا كان المطلوب منطقًا برمجيًا متخصصًا داخل تطبيقك، فقد تحتاج إلى Custom Integration.
التكاملات والقوالب الجاهزة
ليس كل Integration يحتاج إلى برمجة من الصفر.
ضمن السيناريوهات المذكورة يمكن التعامل مع منصات وخدمات مثل:
- Salla.
- Zid.
- YouCan.
- EasyOrders.
- Meta Lead Ads.
- Google Sheets وGoogle Forms.
- Odoo ERP.
- Make.
- Zapier.
- Zoho CRM.
- HubSpot.
- Media & Files Forwarder.
الفكرة في كل هذه الحالات واحدة: تحديد مصدر الحدث، ثم تحديد الإجراء المطلوب بعد وصوله إلى Whats360.
سيناريو Salla وZid
طلب متجر ↓ Webhook ↓ Whats360 ↓ رسالة WhatsApp
وهذا النوع من التكامل مناسب للمتاجر التي تريد تحويل أحداث الطلبات إلى تواصل تلقائي.
سيناريو YouCan وEasyOrders
COD Order ↓ Webhook ↓ Whats360 ↓ WhatsApp
يمكن أن تكون الرسالة جزءًا من عملية تأكيد أو متابعة وفق السيناريو الذي يتم تصميمه.
Meta Lead Ads
يمكن تحويل تسجيل Lead إلى بداية عملية تواصل:
Lead ↓ Webhook ↓ Whats360 ↓ WhatsApp ↓ فريق المبيعات
وهذا يربط مرحلة الحصول على العميل المحتمل بمرحلة المتابعة بدل ترك البيانات منفصلة عن قناة التواصل.
Google Sheets وGoogle Forms
يمكن استخدام البيانات القادمة من النماذج أو الجداول كنقطة بداية لعمليات آلية، بحسب طريقة الربط المستخدمة.
Odoo ERP
Odoo ↓ Lead / Ticket / Invoice / Order ↓ Webhook ↓ Whats360 ↓ WhatsApp
كما يمكن تصميم الاتجاه العكسي:
WhatsApp ↓ Whats360 ↓ Outgoing Webhook ↓ Odoo
ما هو HookURL في Whats360؟
HookURL هو رابط استقبال متخصص يمكن ربطه بجهاز أو رقم WhatsApp محدد.
يمكن تصور استخدامه بهذا الشكل:
External System ↓ POST ↓ HookURL ↓ WhatsApp Device ↓ العميل
وهنا تختلف الفكرة عن Webhook العام من ناحية الاستخدام؛ لأن HookURL يرتبط بجهاز WhatsApp محدد وفق إعدادات المنصة.
لماذا يمكن أن يكون ذلك مهمًا؟
لنفترض أن لديك عدة أرقام WhatsApp:
- رقم للمبيعات.
- رقم للدعم.
- رقم لفرع معين.
- رقم للمتجر.
قد تحتاج إلى توجيه سيناريو محدد إلى جهاز محدد:
Shopify Orders ↓ HookURL ↓ رقم المبيعات
وفي سيناريو آخر:
Support Alerts ↓ HookURL ↓ رقم الدعم
إعداد HookURL
عند إعداد HookURL توجد مجموعة من العناصر المهمة.
تحديد الجهاز
تحدد جهاز WhatsApp الذي سيستخدم الرابط.
تسمية الرابط
يمكن اختيار اسم واضح مثل:
Shopify Orders
أو:
Salla Alerts
التسمية الواضحة تصبح أكثر أهمية عندما يكون لديك عدد كبير من Integrations.
X-Hook-Secret
يمكن استخدام Secret إضافي مع HookURL من خلال Header باسم:
X-Hook-Secret
وفق إعداد الرابط، يمكن أن تكون قيمة Secret مطلوبة للتحقق من الطلبات الواردة.
إدارة HookURL
يمكن التعامل مع الرابط من حيث:
- التفعيل.
- الإيقاف.
- الحذف.
- متابعة عدد الطلبات.
- معرفة حالة الرابط.
هل تحتاج إلى ربط رقم WhatsApp محدد بنظامك؟
إذا كان لديك أكثر من جهاز أو رقم، يمكن أن يكون اختيار نقطة الاستقبال المناسبة جزءًا أساسيًا من تصميم التكامل، خصوصًا عندما تختلف وظيفة كل رقم داخل الشركة.
- تحديد الجهاز المستهدف.
- تنظيم روابط التكامل.
- إدارة Secret عند الحاجة.
Custom Webhook: عندما تحتاج إلى تكامل مخصص
القوالب الجاهزة مناسبة عندما يكون النظام والسيناريو معروفين ومدعومين.
لكن ماذا يحدث عندما يكون لديك نظام خاص؟
هنا يأتي دور Custom Webhook.
Custom SaaS ↓ Order Created ↓ Custom Webhook ↓ Whats360 ↓ WhatsApp
بدل محاولة جعل النظام الخاص بك يتصرف مثل Shopify أو WooCommerce، يمكنك تصميم Payload يناسب منطق النظام نفسه.
Endpoint الخاص بـCustom Webhook
وفق البنية الواردة في الموضوع، يمكن أن يكون Endpoint:
POST /api/instances/{id}/webhooks/{webhook_id}/incoming
مع:
Content-Type: application/json
ومثال للـBody:
{
"phone": "+201234567890",
"message": "Your order #1234 is confirmed!",
"name": "Ahmed"
}
ثم يكون هناك Response يوضح نجاح استقبال الطلب، وفق الاستجابة التي يدعمها التكامل.
سيناريوهات التكامل المخصص
نظام حجوزات
Booking Created ↓ Webhook ↓ Whats360 ↓ WhatsApp Confirmation
تطبيق SaaS
User Action ↓ Event ↓ Webhook ↓ WhatsApp Notification
CRM مخصص
Lead Created ↓ Webhook ↓ Whats360 ↓ WhatsApp
الاستخدام: ربط إنشاء العميل المحتمل بعملية تواصل تلقائية عبر WhatsApp.
ERP مخصص
Invoice Created ↓ Webhook ↓ Whats360 ↓ WhatsApp
الاستخدام: إرسال إشعار مرتبط بإنشاء الفاتورة أو الحدث داخل نظام الـERP.
نظام دعم
New Ticket ↓ Webhook ↓ Whats360 ↓ WhatsApp Notification
الاستخدام: ربط إنشاء تذكرة دعم جديدة بإشعار عبر WhatsApp.
كل هذه السيناريوهات تعتمد على نفس الفكرة المعمارية:
أمان Webhooks وHookURL
أي تكامل جاد يجب أن يضع الأمان في التصميم منذ البداية، وليس بعد الانتهاء من الربط.
HTTPS
استخدم اتصالًا آمنًا عند التعامل مع Endpoint الذي يستقبل البيانات.
Bearer Token
يمكن أن يستخدم التكامل Authorization Header مثل:
Authorization: Bearer <Token>
بحيث يستطيع السيرفر التحقق من هوية الطرف الذي يرسل الطلب.
HMAC
في بعض التكاملات يمكن استخدام Secret للتحقق من التوقيع والتأكد من أن البيانات جاءت من المصدر المتوقع.
X-Hook-Secret
في HookURL يمكن استخدام:
X-Hook-Secret
كطبقة تحقق إضافية عندما يكون Secret مفعلًا.
تنبيه أمني
لا تتعامل مع رابط Webhook أو HookURL باعتباره مجرد رابط عادي. فهو نقطة استقبال بيانات، ولذلك يجب التفكير في HTTPS والتوثيق وSecrets والتحقق من البيانات قبل الاعتماد عليه في بيئة تشغيل حقيقية.
لماذا HTTP 200 مهم في Webhook؟
Webhook ليس مجرد إرسال بيانات في اتجاه واحد.
الطرف الذي يرسل الطلب يحتاج في كثير من السيناريوهات إلى معرفة هل تم استقبال الطلب بنجاح أم لا.
لذلك يصبح Response جزءًا من تصميم التكامل:
POST Request ↓ Authentication ↓ Validation ↓ Payload Processing ↓ 200 OK
إذا لم يتم التعامل مع Response بالطريقة المتوقعة، فقد يتم اعتبار التسليم غير ناجح أو تحدث إعادة محاولة، وفق سلوك النظام المرسل.
كيف تشخص مشكلة Webhook؟
عندما لا يعمل التكامل، لا تقم بتغيير كل الإعدادات في الوقت نفسه.
ابدأ من نقطة الفشل:
هل وصل الطلب؟ ↓ لا → افحص URL / Endpoint ↓ نعم ↓ هل Authentication صحيح؟ ↓ لا → افحص Token / Secret ↓ نعم ↓ هل Payload صحيح؟ ↓ لا → افحص JSON / Mapping ↓ نعم ↓ هل تمت المعالجة؟ ↓ افحص Response / Logs
فحص Endpoint
تأكد من أن الرابط المستخدم هو الرابط الصحيح وأن النظام يرسل الطلب إلى المكان المقصود.
فحص Authentication
راجع Token أو Secret أو أي وسيلة تحقق مستخدمة في التكامل.
فحص Payload
قد يصل الطلب بالفعل، لكن تكون البيانات غير مناسبة للمعالجة بسبب اختلاف اسم الحقل أو غياب قيمة مطلوبة.
فحص Logs
السجلات مهمة لمعرفة هل المشكلة في الإرسال أم الاستقبال أم معالجة البيانات.
Webhooks وIdempotency وتكرار الأحداث
في الأنظمة التي تعتمد على Webhooks، يجب أن يفكر المطور أيضًا في احتمال وصول الحدث أكثر من مرة، خصوصًا عندما تكون هناك إعادة محاولة بعد فشل التسليم أو عدم الحصول على الاستجابة المتوقعة.
لهذا السبب من المفيد عند تصميم النظام استخدام معرف فريد للحدث أو الرسالة عندما يكون ذلك متاحًا.
مثل:
message_id order_id event_id
ثم يستطيع النظام تحديد ما إذا كان قد عالج الحدث بالفعل.
هذه الفكرة تعرف باسم Idempotency، وهي مهمة خصوصًا في الأنظمة التي لا تريد تنفيذ العملية نفسها مرتين.
Webhook أم HookURL أم API أم n8n؟
| الحل | وظيفته الأساسية | متى تستخدمه؟ |
|---|---|---|
| Webhook | نقل الأحداث | عندما تريد إرسال Event عند وقوعه |
| HookURL | استقبال مرتبط بجهاز محدد | عندما يكون الجهاز المستهدف مهمًا |
| API | تنفيذ عمليات برمجية | عندما يحتاج التطبيق إلى تنفيذ Request محدد |
| n8n | بناء Workflows | عندما تحتاج إلى عدة عمليات متتابعة |
| Integration جاهز | تنفيذ سيناريو معروف | عندما يكون النظام مدعومًا |
| Custom Integration | منطق خاص | عندما لا يكفي التكامل الجاهز |
والأهم أن هذه الخيارات ليست بالضرورة بدائل متنافسة. يمكن أن تعمل معًا في Architecture واحدة.
Shopify ↓ Webhook ↓ n8n ↓ CRM ↓ Whats360 ↓ WhatsApp
أو:
Application ↓ API ↓ Custom Logic ↓ Whats360
لا تبدأ البرمجة قبل تحديد المعمارية
أحيانًا يكون الحل الجاهز كافيًا، وأحيانًا تحتاج إلى n8n، وأحيانًا يكون المطلوب API أو Custom Integration. تحديد مصدر الحدث والنتيجة المطلوبة يوفر عليك بناء طبقة برمجية غير ضرورية.
تصميم Integration قابل للتوسع
عندما يكبر النظام، من الأفضل ألا يصبح كل نظام متصلًا بالأنظمة الأخرى بشكل عشوائي.
يمكن التفكير في طبقات واضحة:
External Systems ↓ Webhook Layer ↓ Validation / Security ↓ Business Logic ↓ Whats360 ↓ WhatsApp
وفي الاتجاه العكسي:
WhatsApp ↓ Whats360 ↓ Outgoing Webhook ↓ Integration Layer ↓ CRM / ERP / Database
الفصل بين الطبقات يجعل النظام أسهل في الفهم والصيانة والتوسع.
سيناريوهات عملية حسب النشاط
متجر إلكتروني
Order Created ↓ Webhook ↓ Whats360 ↓ WhatsApp
الاستخدام: تحويل حدث الطلب إلى رسالة أو Workflow مناسب للعميل.
متجر يريد متابعة الطلب
Order Updated ↓ Webhook ↓ Whats360 ↓ WhatsApp
الاستخدام: ربط تغير حالة الطلب بعملية تواصل.
شركة تعتمد على CRM
New Customer Event ↓ Webhook ↓ CRM / Whats360 ↓ Workflow
الاستخدام: جعل بيانات العميل جزءًا من عملية المتابعة.
شركة تعتمد على Leads
Lead ↓ Webhook ↓ Whats360 ↓ WhatsApp ↓ Sales Team
الاستخدام: الانتقال من تسجيل العميل المحتمل إلى المتابعة عبر WhatsApp.
شركة تعتمد على ERP
ERP Event ↓ Webhook ↓ Whats360 ↓ WhatsApp
الاستخدام: ربط العمليات الداخلية بقناة التواصل.
تطبيق SaaS
Application Event ↓ Custom Webhook ↓ Whats360 ↓ WhatsApp
الاستخدام: إرسال إشعارات أو رسائل مرتبطة بالأحداث داخل التطبيق.
فريق يستخدم n8n
WhatsApp Event ↓ Whats360 ↓ n8n ├── Google Sheets ├── Gmail └── Database
الاستخدام: بناء Workflow متعدد الخطوات بدل تنفيذ عملية واحدة فقط.
متى يكفي Integration جاهز؟
إذا كان النظام الذي تستخدمه موجودًا ضمن القوالب المتاحة، وكان السيناريو المطلوب يطابق الوظيفة التي يغطيها التكامل، فمن المنطقي البدء بالحل الجاهز.
مثلًا:
Shopify ↓ قالب Shopify ↓ Whats360
لا توجد فائدة من بناء نظام مخصص كامل إذا كان المطلوب موجودًا بالفعل بطريقة مناسبة.
متى تحتاج إلى Custom Integration؟
يصبح التكامل المخصص أكثر منطقية عندما يكون لديك نظام خاص أو Workflow غير موجود ضمن القوالب الجاهزة.
ومن أمثلة ذلك:
- نظام برمجي خاص بالشركة.
- Business Logic مخصص.
- أكثر من نظام يجب تنسيقها معًا.
- Payload خاص.
- معالجة بيانات قبل إرسالها.
- منطق مختلف حسب نوع الحدث.
- Integration بين أنظمة لا يوجد بينها ربط جاهز.
مثلًا:
Custom ERP ↓ Order ↓ Business Rules ↓ Customer Classification ↓ Webhook ↓ Whats360 ↓ WhatsApp
هنا لم يعد المطلوب مجرد إرسال رسالة، وإنما بناء منطق تكامل كامل.
إذا كان هذا هو السيناريو المطلوب، فقد تحتاج إلى تطوير برمجي مخصص، ويمكن التعامل مع هذا النوع من الأعمال عبر Beincode عندما تكون الحاجة تتجاوز الإعدادات والتكاملات الجاهزة إلى بناء Integration خاص.
Checklist قبل تشغيل Webhook
قبل تشغيل أي Webhook في بيئة فعلية، راجع العناصر التالية:
- ما الحدث الذي سيبدأ العملية؟
- أين يحدث الحدث؟
- هل تحتاج Incoming أم Outgoing؟
- ما هو Endpoint؟
- ما شكل JSON Payload؟
- ما الحقول المطلوبة؟
- هل يوجد Authentication؟
- هل يوجد Secret؟
- هل يستخدم التكامل HMAC؟
- هل يستخدم X-Hook-Secret؟
- هل يتم التعامل مع HTTP 200؟
- هل تم اختبار Payload؟
- هل تم اختبار Mapping؟
- هل تم اختبار الرسالة النهائية؟
- هل توجد Logs؟
- هل تم تحديد الجهاز الصحيح عند استخدام HookURL؟
- هل يمكن للنظام التعامل مع تكرار الحدث عند الحاجة؟
اختبار التكامل قبل الاعتماد عليه
لا تختبر فقط وصول الـRequest. اختبر السلسلة كاملة من الحدث الأول حتى النتيجة النهائية: Event → Payload → Authentication → Processing → Response → WhatsApp.
كيف تبدأ أول Integration مع Whats360؟
يمكن تبسيط القرار في مجموعة من الأسئلة العملية.
أين يحدث الحدث؟
إذا حدث في المتجر أو CRM أو التطبيق الخارجي، فكر في Incoming. وإذا حدث في WhatsApp وتريد إرساله إلى نظام خارجي، فكر في Outgoing.
ما المطلوب بعد الحدث؟
حدد هل تريد إرسال رسالة، حفظ بيانات، تحديث CRM، تشغيل Workflow أو تنفيذ عملية برمجية.
هل يوجد Integration جاهز؟
إذا كان موجودًا ويغطي السيناريو المطلوب، ابدأ به قبل التفكير في التطوير المخصص.
هل تحتاج إلى جهاز WhatsApp محدد؟
إذا كان السيناريو مرتبطًا برقم أو جهاز معين، فادرس استخدام HookURL وفق طبيعة التكامل.
هل تحتاج إلى عدة عمليات متتابعة؟
إذا كانت العملية تتضمن خدمات متعددة، فقد يكون n8n أو منصة Automation مناسبة.
هل لديك منطق برمجي خاص؟
إذا كان السيناريو يتجاوز القوالب الجاهزة ويحتاج إلى Business Logic مخصص، فانتقل إلى Custom Integration.
أسئلة شائعة حول Webhooks وHookURL في Whats360
الخلاصة
Webhooks في Whats360 ليست مجرد خاصية لإرسال رابط إلى نظام آخر، وإنما يمكن النظر إليها كطبقة اتصال تربط الأحداث بالعمليات.
عندما ينشئ العميل طلبًا:
Order ↓ Webhook ↓ Whats360 ↓ WhatsApp
وعندما يرسل العميل رسالة:
WhatsApp ↓ Whats360 ↓ Outgoing Webhook ↓ CRM / Application
وعندما تحتاج إلى رقم WhatsApp محدد:
External System ↓ HookURL ↓ Specific WhatsApp Device
وعندما تحتاج إلى Workflow متعدد الخطوات:
Webhook ↓ n8n ↓ Multiple Actions
وعندما يكون النظام خاصًا أو المنطق أكثر تعقيدًا:
Custom Application ↓ Custom Integration ↓ Whats360 ↓ WhatsApp
لذلك لا تبدأ بسؤال: أي Webhook أستخدم؟
ابدأ بالسؤال الأهم:
بمجرد تحديد ذلك، يصبح اختيار Incoming Webhook أو Outgoing Webhook أو HookURL أو API أو n8n أو Custom Integration قرارًا معماريًا واضحًا بدل تجربة عشوائية للروابط والإعدادات.
هل لديك نظام تريد ربطه بـWhatsApp؟
إذا كان لديك متجر أو CRM أو ERP أو تطبيق SaaS وتريد معرفة أفضل طريقة لربطه بـWhatsApp، يمكنك توضيح اسم النظام والحدث الذي تريد تشغيله، ثم تحديد نوع التكامل المناسب.
مقالات ذات صلة
- دليل Whats360 وWebhook وAPI
- ربط WhatsApp مع CRM والأتمتة
- ربط Shopify بـWhatsApp باستخدام Webhook
- ربط WooCommerce بـWhatsApp باستخدام Webhook
- أتمتة WhatsApp باستخدام n8n
- دليل تكامل WhatsApp API مع الأنظمة البرمجية
- ربط CRM مع WhatsApp
- أتمتة WhatsApp للمتاجر الإلكترونية
ابدأ من الحدث وليس من الأداة
حدد مصدر الحدث، والبيانات المطلوبة، والنتيجة التي تريد الوصول إليها، ثم اختر Webhook أو HookURL أو API أو n8n أو Custom Integration بناءً على احتياجك الفعلي.
الكلمات المفتاحية
Whats360 Webhooks، Whats360 HookURL، WhatsApp Webhook، WhatsApp API، WhatsApp CRM، WhatsApp Automation، ربط WhatsApp بالمتاجر، ربط WhatsApp بالـCRM، Shopify WhatsApp، WooCommerce WhatsApp، n8n WhatsApp، Webhook API، HookURL، Incoming Webhook، Outgoing Webhook، Custom Integration، Event-driven Architecture، Idempotency، Webhook Security، API Integration، WhatsApp Integration، CRM Integration، ERP WhatsApp، WhatsApp Automation للمتاجر، ربط Shopify بـWhatsApp، ربط WooCommerce بـWhatsApp، WhatsApp API Integration، Webhook Integration، WhatsApp Workflow، WhatsApp CRM Integration.
الأسئلة الشائعة التي يجيب عنها المقال
- ما هو Webhook في Whats360؟
- ما الفرق بين Incoming Webhook وOutgoing Webhook؟
- ما هو HookURL في Whats360؟
- ما الفرق بين HookURL وWebhook؟
- كيف أربط WhatsApp بالمتجر الإلكتروني؟
- كيف أربط Shopify بـWhats360؟
- كيف أربط WooCommerce بـWhats360؟
- كيف يمكن استخدام Webhook مع CRM؟
- كيف يمكن ربط WhatsApp مع ERP؟
- هل يمكن استخدام n8n مع Whats360؟
- ما الفرق بين Webhook وAPI؟
- متى أستخدم HookURL بدل Webhook؟
- متى أحتاج إلى Custom Integration؟
- كيف أرسل بيانات JSON إلى Whats360؟
- ما أهمية HTTP 200 في Webhooks؟
- كيف أحمي Webhook باستخدام Token أو Secret؟
- ما هو X-Hook-Secret؟
- ما هو HMAC في Webhook Security؟
- كيف أتعامل مع تكرار Webhook Events؟
- ما هو Idempotency في Webhook Integration؟
- ماذا أفعل إذا لم يصل Webhook؟
- كيف أختبر Payload الخاص بالـWebhook؟
- كيف أربط Lead جديد برسالة WhatsApp تلقائية؟
- كيف أربط طلبات المتجر برسائل WhatsApp؟
- كيف أختار بين Integration جاهز وCustom Integration؟
- كيف أربط أكثر من نظام مع WhatsApp؟
- كيف أستخدم HookURL مع أكثر من جهاز WhatsApp؟
- ما أفضل طريقة لتصميم WhatsApp Integration قابل للتوسع؟







