الإجابة المختصرة
واجهة API التحويلات (Conversions API) من ميتا ترسل أحداث الشراء والإضافة إلى السلة من خادمك مباشرة بدل متصفح الزائر. لربطها بشكل صحيح اجعل البكسل والخادم يرسلان الحدث نفسه باسم الحدث وevent_id نفسيهما، ونظّف البريد ورقم الجوال ثم شفّرهما بـ SHA-256، وتحقق من النتيجة في أحداث الاختبار، وتابع جودة مطابقة الأحداث (EMQ) في مدير الأحداث.
أهم النقاط
- لا تحذف البكسل: الإعداد الذي توصي به ميتا هو البكسل وواجهة API التحويلات معًا.
- لإلغاء التكرار يجب أن يتطابق اسم الحدث وevent_id حرفيًا في الطرفين، وتستبعد ميتا النسخ المكررة خلال 48 ساعة من أول حدث.
- رقم الجوال قبل التشفير: أرقام فقط مع رمز الدولة ودون الصفر الأول، مثل 0501234567 في السعودية ← 966501234567.
- لا تشفّر client_ip_address وclient_user_agent وfbc وfbp أبدًا.
- في سلة يكفي تطبيق Facebook Conversion API مع معرّف البكسل ورمز الوصول، وفي Shopify اختر مستوى Enhanced أو Maximum.
المحتويات
ما هي واجهة API التحويلات وما الفرق بينها وبين البكسل؟
واجهة API التحويلات (Conversions API، ويختصرها المسوقون بـ CAPI أو «الكونفيرجن») ترسل أحداث مثل الشراء والإضافة إلى السلة وتعبئة النماذج من خادمك أو منصة متجرك إلى ميتا مباشرة، لا من متصفح الزائر. البكسل يعمل داخل المتصفح، فيتأثر بمانعات الإعلانات وقيود ملفات تعريف الارتباط وبطء تحميل الصفحة، أما الحدث المرسل من خادم إلى خادم فلا تستطيع مانعات المتصفح إيقافه.
الخطأ الشائع هو اعتبار الواجهة بديلًا للبكسل. ما توصي به ميتا هو الإعداد المزدوج: يصل الحدث نفسه من البكسل ومن الخادم، وتطابق ميتا بينهما وتحتسبه مرة واحدة. إذا فات البكسل حدثٌ عوّضه الخادم، وإذا وصل حدث الخادم ببيانات ناقصة ساعدت ملفات تعريف الارتباط التي يحملها البكسل (fbp وfbc) على المطابقة.
بكسل ميتا (المتصفح)
- يعمل بكود JavaScript داخل صفحات المتجر
- يتأثر بمانعات الإعلانات وقيود الكوكيز
- يحمل ملفي fbp وfbc تلقائيًا
- تركيبه سريع والتحكم فيه محدود
واجهة API التحويلات (الخادم)
- تنطلق من خادمك أو من منصة المتجر
- لا تتأثر بمانعات المتصفح
- ترسل قيمة الطلب ورقمه من النظام الخلفي بدقة
- تتطلب منك تنظيف بيانات العميل وتشفيرها
وإن كانت أرقام ميتا لا تطابق تقارير المتجر أو GA4 أصلًا، فاقرأ شرحنا عن أسباب اختلاف أرقام Shopify وميتا وGA4 قبل أن تبدأ.
ما أفضل طريقة لربط Conversion API بمتجرك؟
إذا كان متجرك على منصة جاهزة مثل سلة أو زد أو Shopify فابدأ بتكامل المنصة نفسها؛ أما المواقع المبرمجة خصيصًا فتناسبها بوابة Conversions API Gateway أو التكامل المباشر. ما يحسم الاختيار هو وجود فريق تقني لديك ومدى رغبتك في تخصيص الأحداث.
| الطريقة | لمن تناسب | الميزة | ما يجب الانتباه له |
|---|---|---|---|
| تكامل المنصة أو الشريك | متاجر سلة وزد وShopify ومستخدمو Google Tag Manager | بلا برمجة، ويُفعَّل خلال دقائق | الأحداث والمعاملات محصورة فيما تدعمه المنصة |
| Conversions API Gateway | مسوقون لديهم خبرة تقنية بسيطة ومواقع مخصصة | تقول ميتا إنها تختصر مدة التكامل من أسابيع إلى ساعات أو دقائق | تعمل داخل حسابك على AWS أو GCP، وتكلفتها هي موارد السحابة أو رسوم الشريك |
| التكامل المباشر عبر الـ API | العلامات التي تملك فريق تطوير | تحكم كامل في كل حدث وكل حقل | أعلى عبء في التطوير والصيانة |
قاعدة القرار بسيطة: إذا وجدت في لوحة متجرك حقلًا باسم «Conversion API» أو «رمز الوصول» فابدأ منه. إن لم يوجد وليس لديك مطوّر فانظر إلى البوابة. وإذا كان لديك مسار دفع خاص أو اشتراكات متجددة أو مبيعات عبر الهاتف والواتساب تُسجَّل لاحقًا، فالتكامل المباشر أدق على المدى الطويل.
كيف أربط Conversion API في سلة وزد وShopify؟
في سلة وزد تحتاج عادةً إلى شيئين من مدير الأحداث: معرّف البكسل (Pixel ID) ورمز الوصول (Access Token)؛ وفي Shopify تُفعَّل الواجهة من مستوى مشاركة البيانات في تطبيق Facebook & Instagram. في كل الحالات تنتهي المهمة بالتحقق من النتيجة في أحداث الاختبار.
الحصول على رمز الوصول من ميتا
افتح مدير الأحداث واختر البكسل (مجموعة البيانات) الخاص بمتجرك، ثم تبويب الإعدادات، وانزل إلى قسم واجهة API التحويلات واضغط على «إنشاء رمز وصول» ضمن الإعداد اليدوي. انسخ الرمز واحفظه في مكان آمن، ولا تخلط بينه وبين معرّف البكسل: المعرّف يحدد وجهة الأحداث، والرمز يمنح الإذن بإرسالها.
سلة
بحسب مركز مساعدة سلة، يتم الربط بتثبيت تطبيق Facebook Conversion API من متجر تطبيقات سلة، ثم إدخال معرّف البكسل ورمز الوصول اللذين حصلت عليهما من مدير الأحداث وحفظ الإعدادات. بعدها نفّذ طلبًا تجريبيًا وتحقق منه كما في قسم أحداث الاختبار أدناه.
زد
بحسب مركز مساعدة زد، يُربط البكسل والواجهة كتطبيقين منفصلين: من لوحة المتجر اذهب إلى سوق التطبيقات > تتبع الحملات، وفعّل تطبيق Facebook pixel بلصق معرّف البكسل في حقل «تفعيل التطبيق»، ثم فعّل تطبيق Facebook conversion API بلصق رمز الوصول. لا يذكر دليل زد خطوة اختبار، لذلك لا تتجاوز التحقق في أحداث الاختبار بنفسك، ولأن أسماء القوائم قد تتغير بين إصدارات اللوحة اطلب من دعم زد المسار الحالي إن لم تجده.
Shopify
من لوحة Shopify اتبع المسار Sales channels > Facebook & Instagram > Settings > Data sharing settings واختر المستوى في قسم Customer data sharing. بحسب مركز مساعدة Shopify، يعتمد مستوى Standard على البكسل وحده، بينما يضيف مستويا Enhanced وMaximum واجهة API التحويلات ويشاركان اسم العميل وموقعه وبريده ورقم جواله لأغراض المطابقة.
كيف يعمل إلغاء التكرار بين البكسل والخادم؟
تحتسب ميتا الحدثين حدثًا واحدًا عندما يتطابق eventID في البكسل مع event_id في الخادم، ويتطابق اسم الحدث (event مع event_name). وبحسب توثيق ميتا، لا يُلغى التكرار إلا للنسخ التي تصل خلال 48 ساعة من استلام أول حدث يحمل event_id نفسه.
أمتن طريقة عمليًا هي اشتقاق المعرّف من رقم الطلب. مثلًا للطلب رقم 10482 يرسل المتصفح fbq('track', 'Purchase', {value: 450, currency: 'SAR'}, {eventID: 'order_10482'})، ويحمل حدث الخادم "event_name": "Purchase" و"event_id": "order_10482". وبما أن الطرفين يقرآن من المصدر نفسه فلن يختلف المعرّفان أبدًا. وفي متجر إماراتي تكون العملة AED، وفي مصر EGP.
مثال يوضح أهمية ذلك (الأرقام توضيحية): لديك في أسبوع 120 طلبًا حقيقيًا، التقط البكسل 95 منها والخادم 118. إذا تعطّل إلغاء التكرار قد ترى في مدير الأحداث ما يصل إلى 213 عملية شراء، فيبدو عدد المشتريات والعائد على الإنفاق الإعلاني نحو 1.8 ضعف قيمتهما الحقيقية، وتتعلم الخوارزمية من إشارة خاطئة. وإذا عمل إلغاء التكرار بشكل صحيح يبقى الرقم قريبًا من 120.
لدى ميتا طريقة ثانية: إرسال fbp و/أو external_id مع اسم الحدث نفسه بدل event_id. لكن التوثيق يوضح أنها لا تعمل إلا عندما يصل الحدث من المتصفح أولًا ثم من الخادم، ولا تُجدي إذا كنت تستخدم مصدرًا واحدًا فقط (المتصفح وحده أو الخادم وحده). لذلك اعتمد event_id طريقةً أساسية، واعتبر fbp وexternal_id إشارات مساعدة.
كيف أنظّف بيانات العملاء وأشفّرها قبل الإرسال؟
تُنظَّف حقول البريد الإلكتروني ورقم الجوال والاسم والمدينة وفق قواعد ميتا أولًا، ثم تُشفَّر بـ SHA-256؛ أما عنوان IP ومعلومات المتصفح وfbc وfbp فتُرسل دون تشفير. إذا كان التنظيف خاطئًا فسيكون التشفير خاطئًا، ولن تحدث المطابقة.
| الحقل | قاعدة التنظيف | مثال قبل التشفير |
|---|---|---|
| البريد (em) | حذف المسافات في البداية والنهاية وتحويله كله إلى أحرف صغيرة | sara.ahmed@example.com |
| الجوال (ph) | حذف الرموز والحروف والأصفار في البداية، وإضافة رمز الدولة | 966501234567 |
| الاسم الأول والعائلة (fn, ln) | أحرف صغيرة بلا علامات ترقيم؛ الحروف العربية تبقى بترميز UTF-8 | محمد |
| الدولة (country) | رمز ISO من حرفين بأحرف صغيرة | sa أو ae أو eg |
| IP وuser agent وfbc وfbp | لا تُشفَّر، تُرسل كما هي | fb.1.1727000000000.123456789 |
لماذا تفشل صيغة أرقام الجوال الخليجية والمصرية كثيرًا؟
تُحفظ الأرقام في المتاجر العربية بصيغ متعددة: 0501234567 أو +966 50 123 4567 أو 00966501234567. قاعدة ميتا واحدة: احذف الرموز والأصفار الأولى وأضف رمز الدولة، فتصبح كلها قبل التشفير 966501234567. وبالمنطق نفسه يصبح الرقم الإماراتي 050 123 4567 هو 971501234567، والمصري 010 1234 5678 هو 201012345678. الرقم الذي يبقى في أوله «+» أو «00» أو «0»، أو الذي لم يُضف له رمز الدولة، ينتج تشفيرًا مختلفًا فلا يساهم في المطابقة إطلاقًا. وتنصح ميتا بإضافة رمز الدولة دائمًا حتى لو كان كل عملائك من بلد واحد. وإن كنت تبيع لأكثر من دولة خليجية فلا تفترض رمزًا واحدًا لكل الأرقام؛ خذ الدولة من عنوان الشحن.
- التشفير بـ SHA-256 يتم على القيمة بعد تنظيفها
- رقم الجوال أرقام فقط ويبدأ برمز الدولة (966 أو 971 أو 20…)
- البريد بأحرف صغيرة وبلا مسافات
- client_ip_address وclient_user_agent يُرسلان خامًا
- ملفا fbc وfbp يُضافان إلى حدث الخادم أيضًا
- العملاء المسجلون يُرسل لهم external_id ثابت
ما هي جودة مطابقة الأحداث (EMQ) وكيف أرفعها؟
جودة مطابقة الأحداث درجة من 10 تقيس مدى نجاح بيانات العملاء التي ترسلها في ربط الأحداث بحسابات ميتا. تظهر الدرجة لكل حدث عند فتح مجموعة البيانات في مدير الأحداث، وتوفرها أيضًا Dataset Quality API مع ملاحظات لكل مفتاح مطابقة ونسبة الأحداث التي تحمله.
رفع الدرجة لا يحتاج عادةً إلى أداة جديدة، بل إلى إكمال الحقول الناقصة. في حدث الشراء يكون البريد ورقم الجوال متوفرين لديك في الغالب، فإن لم يُرسَلا فهذا أول ما تصلحه، ثم أضف fbc وfbp وعنوان IP وuser agent. أما أحداث أعلى القمع مثل مشاهدة الصفحة فلا تحمل بيانات شخصية، ولذلك من الطبيعي أن تكون درجتها منخفضة؛ ركّز على Purchase وInitiateCheckout وLead.
- قِس سجّل درجة EMQ لحدث Purchase والمعاملات الناقصة التي يقترحها مدير الأحداث.
- حدّد النقص انظر أي مفتاح يصل بنسبة منخفضة (غالبًا الجوال أو fbc).
- أصلح عدّل قواعد التنظيف في الكود أو في إعدادات المنصة.
- تحقّق راجع معاملات الأحداث الجديدة في أحداث الاختبار.
- انتظر وقارن امنح الدرجة بضعة أيام لتتحدث، ودوّن تاريخ التعديل.
تعرض Dataset Quality API كذلك صحة إلغاء التكرار عبر مقياس event_coverage، وهو متوسط سبعة أيام لنسبة أحداث البكسل التي تغطيها واجهة API التحويلات بمفاتيح إلغاء تكرار مشتركة. إذا كانت النسبة منخفضة فالخادم لا يرسل بعض الأحداث أصلًا.
كيف أتحقق من الربط عبر أحداث الاختبار؟
افتح مجموعة البيانات في مدير الأحداث وادخل تبويب أحداث الاختبار (Test Events)، وأرسل الرمز الظاهر هناك في أحداث الخادم ضمن test_event_code، ثم تأكد أن الحدث نفسه يظهر من «المتصفح» و«الخادم» وأن أحدهما أُلغي تكراره. تنفيذ طلب تجريبي حقيقي هو أوثق اختبار.
- انسخ رمز الاختبار من قسم اختبار أحداث الخادم في تبويب أحداث الاختبار.
- شغّل الأحداث اعرض منتجًا وأضفه إلى السلة ونفّذ طلبًا تجريبيًا.
- قارن المصدرين راجع صفَّي Purchase من المتصفح والخادم وقيمتي event_id.
- افحص المعاملات تأكد من وصول em وph مشفّرين مع fbc وfbp وIP وuser agent.
- احذف رمز الاختبار أزل test_event_code من الإرسال المباشر بعد انتهاء التحقق.
ماذا أتابع بعد تفعيل Conversion API؟
في أول أسبوعين قارن أسبوعيًا عدد عمليات Purchase في ميتا بطلبات المتجر، وراجع درجة EMQ وتنبيهات مدير الأحداث. الهدف من الواجهة ليس تضخيم الرقم بل تقريبه من الواقع؛ فإذا تجاوزت مشتريات ميتا عدد طلباتك بوضوح فأعد فحص إلغاء التكرار.
لا تهمل جانب الموافقة والخصوصية. صحيح أن أحداث الخادم لا تتأثر بمانعات المتصفح، لكن عليك أن توضّح في سياسة الخصوصية أي بيانات تشاركها ولأي غرض، بما يتوافق مع أنظمة حماية البيانات في السوق الذي تبيع فيه. وقد تناولنا العلاقة بين موافقة الكوكيز والقياس في مقال Consent Mode v2 والخصوصية.
مقارنة تحويلات ميتا وGoogle Ads وGA4 في شاشة واحدة هي أسرع طريقة لاكتشاف الانحراف بين المنصات مبكرًا. تضع شاشة تحليل التحويلات في Marpany هذه المصادر بجانب بيانات المتجر، فترى بعد تفعيل الواجهة هل اقتربت المشتريات فعلًا من عدد الطلبات. ولمعرفة المقاييس التي تستحق المتابعة راجع دليل مؤشرات أداء الإعلانات، ولتحسين معدل التحويل من جهة المتجر نفسه اقرأ تحسين التحويل في التجارة الإلكترونية.
الخطوات التالية
- اختر الطريقة المناسبة لمتجرك: تكامل المنصة أو Gateway أو API مباشر
- احذف أكواد البكسل المكررة من القالب أو من Google Tag Manager
- استخدم event_id مشتركًا مشتقًا من رقم الطلب لحدث Purchase
- حوّل أرقام الجوال إلى أرقام فقط تبدأ برمز الدولة ثم شفّرها
- تحقّق من أحداث المتصفح والخادم بطلب تجريبي في أحداث الاختبار
- راجع EMQ والتنبيهات أسبوعيًا بعد الإعداد؛ أسماء القوائم في هذا الدليل محدّثة حتى سبتمبر 2026 وقد تتغير
الأسئلة الشائعة
هل أحذف بكسل ميتا بعد ربط Conversion API؟
لا. توصي ميتا بتشغيل البكسل وواجهة API التحويلات معًا. البكسل ينقل ملفات تعريف الارتباط من المتصفح، والواجهة تعوّض الأحداث التي تضيع فيه، وعندما يُرسلان بـ event_id نفسه يُحتسبان حدثًا واحدًا.
ما قيمة event_id المناسبة؟ هل أستخدم قيمة عشوائية؟
يمكن أن تكون القيمة عشوائية بشرط أن تكون متطابقة حرفيًا في المتصفح والخادم. الأكثر أمانًا لحدث الشراء هو معرّف مشتق من رقم الطلب لأن الطرفين يصلان إليه. ويجب أن يُكتب اسم الحدث بالطريقة نفسها في الطرفين.
بأي صيغة يُرسل رقم الجوال السعودي إلى ميتا؟
تُحذف الرموز والمسافات والصفر الأول ويُضاف رمز الدولة، ثم تُشفّر النتيجة بـ SHA-256. فالرقم 0501234567 يصبح قبل التشفير 966501234567. والرقم الذي يبقى في أوله علامة + أو 00 لا يساهم في المطابقة.
من أين أحصل على رمز الوصول Access Token للبكسل؟
من مدير الأحداث: اختر البكسل ثم تبويب الإعدادات، وفي قسم واجهة API التحويلات اضغط على إنشاء رمز وصول ضمن الإعداد اليدوي. احفظ الرمز في مكان آمن، فهو يختلف عن معرّف البكسل وتحتاج إلى الاثنين معًا في سلة وزد.
درجة جودة مطابقة الأحداث عندي منخفضة، ماذا أفعل؟
ابدأ بحدث Purchase في مدير الأحداث وانظر أي بيانات عملاء ناقصة. غالبًا تنخفض الدرجة لأن البريد أو الجوال أو fbc أو IP وuser agent لا تُرسل أو تُرسل بصيغة خاطئة. انخفاض الدرجة في أحداث مثل مشاهدة الصفحة أمر طبيعي.
هل Conversions API Gateway مدفوعة؟
بحسب ميتا لا توجد رسوم على البوابة نفسها، والتكلفة الوحيدة هي موارد السحابة أو رسوم الشريك الذي تستخدمه. البوابة تعمل داخل حسابك على AWS أو GCP، لذا احسب فاتورة السحابة الشهرية ضمن التكلفة.
المصادر
- Meta for Developers — إلغاء تكرار أحداث البكسل والخادم developers.facebook.com
- Meta for Developers — معاملات معلومات العميل developers.facebook.com
- Meta for Developers — Dataset Quality API developers.facebook.com
- Meta for Developers — Conversions API Gateway developers.facebook.com
- مركز مساعدة سلة — الربط مع Facebook Conversion API help.salla.sa
- مركز مساعدة زد — الربط مع Facebook Pixel وFacebook Conversion API help.zid.sa

التركية
الإنجليزية
الإسبانية
العربية
الروسية