خدمة WordPress · تطوير متقدم

ربط ووردبريس بالأنظمة الخارجية وواجهات API بشكل موثوق

البيانات التي تُنقل يدويًا بين موقعك وCRM أو ERP أو مزود الدفع أو شركة الشحن تضيع وتتأخر وتتكرر. أبني التكامل ليتحمل الفشل: يعيد المحاولة حين يتوقف الطرف الآخر، ولا يكرر الطلب نفسه مرتين، ويسجل كل خطأ في مكان تستطيع قراءته.

لقطة من دواك فارما على WooCommerce

أنظمة أتعامل مع واجهاتها في مصر والسعودية والخليج

العلامات للتعريف فقط ولا تعني شراكة أو اعتمادًا رسميًا. توفر كل تكامل يعتمد على وجود واجهة لدى المزود، وبلد متجرك، وخطتك لديه؛ أتحقق من ذلك في الفحص الأولي قبل الالتزام.

مواقع ومتاجر تتبادل بياناتها مع أنظمة أخرى

صيدليات وتوريد ومنتجات رقمية؛ مواقع يمر فيها الطلب أو العميل أو المخزون بين ووردبريس ونظام خارجي، وهنا يوفر الربط وقتًا حقيقيًا.

  • لقطة من الصفحة الرئيسية لـ دواك فارما على WooCommerce

    دواك فارما

    • WooCommerce
    • كتالوجات المنتجات الصحية

    موقع دواك فارما على ووكومرس يجمع التعريف بالشركة وكتالوج منتجاتها الصحية، مع مداخل للمجموعات ومسار واضح للتواصل والاستفسار.

  • لقطة من الصفحة الرئيسية لـ BioCorp Nutrition Labs على WooCommerce

    BioCorp Nutrition Labs

    • WooCommerce
    • التصنيع والتوريد للشركات

    موقع BioCorp Nutrition Labs على ووكومرس للتعريف بخدمات تصنيع المكملات والتعبئة، مع تنظيم القدرات ومسار لطلب الاستفسار التجاري.

  • لقطة من الصفحة الرئيسية لـ Wellcaremed على WooCommerce

    Wellcaremed

    • WooCommerce
    • كتالوجات المنتجات الصحية

    موقع WellCare على ووكومرس يجمع التعريف بالشركة ومنتجاتها الصحية مع صفحات للنشاط والقيم ووسائل التواصل ضمن واجهة هادئة.

  • لقطة من الصفحة الرئيسية لـ سبلاش مصر على WooCommerce

    سبلاش مصر

    • WooCommerce
    • معدات حمامات السباحة

    موقع سبلاش مصر على ووكومرس لعرض معدات حمامات السباحة، يجمع المضخات ومجموعات المنتجات مع معلومات الشركة وخدماتها.

  • لقطة من الصفحة الرئيسية لـ هايجينيكا مصر على WooCommerce

    هايجينيكا مصر

    • WooCommerce
    • المنظفات ومستلزمات النظافة

    متجر هايجينيكا مصر على ووكومرس للمنظفات ومستلزمات النظافة، بواجهة عربية تجمع الفئات وصور العبوات ومعلومات الاستخدام المعلنة.

  • لقطة من الصفحة الرئيسية لـ Orderking على WordPress

    Orderking

    • WordPress
    • تقنية

    Orderking، موقع ووردبريس في مجال برامج إدارة المطاعم؛ عرض النظام، تعريف الحل، العلامات.

  • لقطة من الصفحة الرئيسية لـ webpushly على WordPress

    webpushly

    • WordPress
    • تقنية

    webpushly، موقع ووردبريس في مجال إشعارات المواقع؛ عرض الخدمة، شرح الاستخدام، الروابط.

سيناريوهات فوري أم دفعات

ليس كل تكامل يحتاج مزامنة فورية، والفوري أغلى صيانة

القرار لكل تدفق على حدة حسب أثر التأخير: الطلب الجديد يحتاج الفورية، وتحديث أسعار آلاف المنتجات يناسبه جدول ليلي.

التدفقالاتجاهالنمط المناسب غالبًالماذاما يُختبر
طلب جديد → CRM أو ERPصادرفوري عبر webhook مع طابور إعادة محاولةفريق المبيعات يحتاجه الآن؛ التأخر يعني عميلًا ينتظرتوقف CRM أثناء الإرسال، إرسال الطلب نفسه مرتين، تعديل الطلب بعد الإرسال
حالة الشحن → الموقعواردwebhook من شركة الشحن أو استعلام دوري إن لم تتوفرالعميل يسأل عن طلبه؛ الحالة تظهر في حسابهwebhook بتوقيع غير صالح، حالة تصل بترتيب خاطئ
مخزون ERP → المتجروارددفعات كل N دقائق أو webhook لكل تغيير إن كان الحجم صغيرًاآلاف المنتجات؛ الفوري لكل تغيير يثقل الطرفينمنتج غير موجود في المتجر، كمية سالبة، انقطاع في منتصف الدفعة
الأسعار والكتالوجوارددفعة مجدولة بمراجعة فروقاتالأخطاء هنا تظهر للعميل مباشرة؛ الأفضل مراجعة قبل النشرسعر صفر، عملة خاطئة، منتج محذوف في المصدر
تأكيد الدفع → الطلبواردwebhook موقّع من البوابة + تحقق استعلاميلا يُعتمد على عودة المتصفح وحدهاwebhook يصل قبل العودة، يصل مرتين، أو لا يصل
نشرات بريدية / أتمتة تسويقصادرفوري عند الحدث مع موافقة مسجلةالموافقة شرط قانوني وتُخزن مع الحدثحذف المشترك، تغيير البريد، سحب الموافقة
مخطط توضيحي لتدفق حدث واحد مع حالات الخطأ حدث في ووردبريسطلب جديد · تغيير حالة تسجيل + مفتاح تفردidempotency key · payload إرسال إلى APIمهلة · ترويسة توقيع 2xx: مكتمليُحفظ معرف الطرف الآخر 5xx / مهلة: طابورإعادة بعد 1، 5، 30 دقيقة… بعد N محاولات: فشلقائمة مراجعة + تنبيه بالبريد 4xx (بيانات مرفوضة): لا تُعاد المحاولة، تذهب للمراجعة مباشرة مع سبب الرفض الاتجاه الوارد (webhook من الطرف الآخر) استلامرد 200 سريع تحقق التوقيعHMAC أو سر مشترك تحقق التكرارمعرف الحدث مسجل؟ معالجةفي الخلفية توقيع غير صالح: رفض وتسجيل مكرر: تجاهل بهدوء
  • مسار طبيعي
  • نجاح
  • إعادة محاولة أو تجاهل
  • فشل يحتاج مراجعة

كيف تنتقل البيانات

حدث واحد، ثلاثة مصائر: نجاح، إعادة محاولة، أو مراجعة بشرية

الفارق بين تكامل يعمل في العرض التجريبي وتكامل يعمل في رمضان تحت ضغط الطلبات هو ما يحدث حين يفشل الطرف الآخر. لذلك يُصمم كل تدفق حول حالات الفشل أولًا: ماذا لو انقطع الاتصال في منتصف الإرسال؟ ماذا لو وصل الحدث نفسه مرتين؟ ماذا لو رفض النظام البيانات؟

التكرار يُمنع بمفتاح تفرد لكل حدث يُرسل مع الطلب ويُفحص عند الاستلام. الفشل المؤقت يُعالج بطابور وإعادة محاولة متباعدة. الفشل الدائم لا يُخفى: يذهب إلى قائمة مراجعة مع سبب واضح وتنبيه.

الأمان

المفاتيح في الخادم، الصلاحيات بالحد الأدنى، وكل webhook موقّع

قواعد ثابتة لا أتنازل عنها في أي تكامل، وهي مستمدة من إرشادات REST API في ووردبريس وممارسات المزودين.

  • الأسرار خارج الواجهة

    مفاتيح API تُخزن في إعدادات الخادم أو wp-config أو خيار مشفر، ولا تظهر في JavaScript أو في مصدر الصفحة أبدًا. لا أطلب نشر مفاتيح Admin في المتصفح.

  • أقل صلاحية ممكنة

    مفتاح لكل تكامل بالنطاق الذي يحتاجه فقط (قراءة الطلبات لا إدارة المتجر كله)، ويُدوَّر عند تغيير الفريق أو الاشتباه في تسرب.

  • تحقق توقيع الـ webhooks

    كل حدث وارد يُفحص توقيعه (HMAC أو سر مشترك) ووقته قبل أي معالجة، ويُرفض ويُسجل إن لم يطابق.

  • مسارات REST بصلاحيات

    أي مسار يستقبل بيانات يحدد permission_callback صريحًا وطريقة مصادقة (Application Passwords أو توكن)، ولا يُترك عامًا سهوًا.

  • حدود المعدل والمهل

    احترام حدود المزود (rate limits) بتباعد الطلبات، ومهلة لكل اتصال حتى لا يعلق الموقع في انتظار طرف لا يرد.

  • بيانات العملاء

    تُنقل الحقول اللازمة فقط، وفق سياسة خصوصيتك وشروط الطرف الآخر، وتُسجل الموافقة حين يتطلبها القانون أو المنصة.

أخطاء شائعة ومنع التكرار

خمسة أخطاء أراها في التكاملات المكتوبة على عجل، وما يحل كلًا منها

  1. الاعتماد على عودة المتصفح لتأكيد الدفعالعميل يغلق الصفحة بعد الدفع فلا يُسجل الطلب مدفوعًا. الحل: webhook موقّع من البوابة هو مصدر الحقيقة، مع تحقق استعلامي عند الشك.
  2. إرسال الحدث مرتين عند تعثر الحفظووردبريس يطلق الـ hook نفسه أكثر من مرة في بعض المسارات. الحل: مفتاح تفرد لكل حدث وفحصه قبل الإرسال وعند الاستلام.
  3. معالجة الـ webhook داخل الطلب نفسهالمزود ينتظر ردًا سريعًا؛ المعالجة الطويلة تسبب مهلة وإعادة إرسال. الحل: رد 200 فورًا ثم معالجة في الخلفية (Action Scheduler أو طابور).
  4. الفشل الصامتخطأ في الطرف الآخر لا يراه أحد لأسابيع. الحل: سجل لكل محاولة ونتيجتها، وتنبيه عند تجاوز عدد أخطاء في فترة.
  5. ترتيب الأحداثتحديث الحالة «تم الشحن» يصل قبل «قيد التجهيز» فتُعرض حالة خاطئة. الحل: طابع زمني أو رقم تسلسل مع كل حدث ورفض الأقدم.

طريقة العمل

من فحص الواجهات إلى تشغيل تدريجي يمكن إيقافه

لا أعد بجدوى تكامل قبل فحص واجهة الطرف الآخر فعليًا؛ بعض الأنظمة لا توفر واجهة أو تقيدها بخطة مدفوعة.

  1. اكتشاف الأنظمة والواجهات

    ما الأنظمة، ما التدفقات، ما التوثيق المتاح، وهل توجد بيئة اختبار (sandbox) لدى المزود. أختبر الوصول بمفتاح تجريبي.

    المخرج: تقييم جدوى لكل تدفق
  2. مخطط البيانات والتطابق

    جدول يربط كل حقل في ووردبريس بنظيره في النظام الآخر، مع قواعد التحويل والحالات الخاصة (عملة، عنوان، حالة).

    المخرج: ملف mapping معتمد
  3. التطوير في بيئة اختبار

    الإضافة أو الوحدة التي تنفذ التدفقات مع الطابور والسجل، على نسخة تجريبية وsandbox المزود.

    المخرج: تكامل يعمل على بيانات تجريبية
  4. اختبار حالات الفشل

    قطع الاتصال، إرسال مكرر، بيانات مرفوضة، توقيع خاطئ، ترتيب خاطئ. كل حالة لها نتيجة متوقعة موثقة.

    المخرج: تقرير اختبار الفشل
  5. تشغيل تدريجي

    تفعيل تدفق واحد أولًا على الحي مع مراقبة السجل، ثم الباقي. زر إيقاف لكل تدفق دون تعطيل الموقع.

    المخرج: تكامل حي بمراقبة
  6. التسليم

    توثيق التدفقات والمفاتيح (أين تُحفظ ومن يملكها) وكيفية قراءة السجل والتعامل مع قائمة المراجعة.

    المخرج: دليل تشغيل التكامل

ما أحتاجه منك

  • أسماء الأنظمة وحساباتك فيها وتوثيق واجهاتها
  • مفاتيح بيئة الاختبار (sandbox) من المزود
  • التدفقات المطلوبة وأيها عاجل وأيها يقبل التأخير
  • من يراجع قائمة الفشل ويستلم التنبيهات
  • سياسة الخصوصية وما يُسمح بنقله من بيانات

ما تستلمه

  • تقييم جدوى وملف mapping
  • تكامل يعمل مع طابور إعادة محاولة ومنع تكرار
  • سجل أحداث مقروء وقائمة مراجعة وتنبيهات
  • تقرير اختبار حالات الفشل
  • دليل تشغيل وتوثيق المفاتيح

خارج النطاق إلا باتفاق

  • رسوم الأنظمة والمنصات وخططها التي تتيح الواجهة
  • تطوير أو تعديل الطرف الخارجي
  • ترحيل بيانات تاريخية ضخمة (يُقدر على حدة)
  • بناء سير عمل داخلي كامل (الوظائف المخصصة)
  • مراقبة مستمرة بعد فترة المتابعة إلا باتفاق صيانة

أسئلة شائعة

أسئلة قبل ربط الأنظمة

هل يمكن ربط الموقع بـ CRM؟
نعم مع أي CRM يوفر واجهة (HubSpot وZoho وغيرهما، أو نظام داخلي بواجهة REST). التدفق المعتاد: طلب أو نموذج في الموقع ينشئ جهة اتصال وصفقة في CRM، مع منع التكرار إن أرسل العميل مرتين. أتحقق من خطة CRM لديك لأن بعض الخطط لا تتيح الواجهة.
هل المزامنة فورية؟
تكون فورية حيث يهم ذلك (طلب جديد، تأكيد دفع، حالة شحن) عبر webhooks، ودفعات مجدولة حيث يكون الحجم كبيرًا والتأخر مقبولًا (مخزون وأسعار آلاف المنتجات). «فوري» تعني ثوانٍ في الظروف الطبيعية، وتعتمد على استجابة الطرف الآخر؛ لا أعد بزمن ثابت.
ماذا يحدث عندما يتوقف API الطرف الآخر؟
الحدث لا يضيع: يُحفظ في طابور ويُعاد إرساله بتباعد زمني متزايد لعدد محاولات متفق عليه. إن استمر الفشل ينتقل إلى قائمة مراجعة مع تنبيه بالبريد وسبب الفشل، فتعالجه يدويًا أو تعيد إرساله بزر بعد عودة الخدمة. الموقع نفسه لا يتعطل.
كيف تُخزن مفاتيح الربط؟
في الخادم فقط: wp-config أو متغيرات بيئة أو خيار مشفر، بصلاحيات بالحد الأدنى لكل تكامل، ولا تُرسل إلى المتصفح أبدًا. المفاتيح باسمك وفي حساباتك أنت، وأوثق مكانها ومن يستطيع تدويرها في دليل التشغيل.
هل تشمل الخدمة رسوم المنصات؟
لا. اشتراكات CRM وERP وأدوات الربط (مثل Zapier) ورسوم بوابات الدفع والشحن كلها تكاليف طرف ثالث بينك وبين المزود. أذكرها في عرض السعر للتقدير وأنبهك إن كانت الواجهة مقيدة بخطة أعلى.
هل أحتاج إلى Zapier أو أداة وسيطة؟
الأدوات الوسيطة مفيدة للتدفقات البسيطة قليلة الحجم وتوفر وقت التطوير، لكنها تضيف اشتراكًا وحلقة خارجية وتصعب معالجة الأخطاء المعقدة. للتدفقات الحرجة أو الكبيرة (طلبات، مخزون، دفع) أرشح تكاملًا مباشرًا داخل الموقع تملكه وتراقبه.

اذكر النظام الذي تريد ربطه والتدفق الأهم، وسأعيد لك تقييم جدوى قبل أي التزام

اسم النظام وخطتك فيه وهل لديك وصول لتوثيق واجهته. أفحص الواجهة وأرد بما يمكن وما لا يمكن ونطاق مبدئي.