ينقل Tajo بيانات Shopify إلى Brevo بطريقتين. يعالج تطبيق Tajo لـ Shopify أحداث Shopify webhook فور وصولها. أما قواعد المزامنة فهي معتمدة بشريًا، وأحادية الاتجاه، وتعمل على دفعات، ومسجَّلة من البداية إلى النهاية. يشرح هذا المقال الطريقتين، وما لا تشملانه، والأمور القليلة التي يعيد تطبيق Tajo لـ Shopify كتابتها في Shopify.
تحقق سريع يفترض هذا المقال أنك ربطت Shopify و Brevo ونشرت قاعدة مزامنة واحدة على الأقل. إن لم تكن قد فعلت، فابدأ بمقال ربط Tajo بـ Shopify.
فور وقوع الأحداث: تطبيق Tajo لـ Shopify
يشترك تطبيق Tajo لـ Shopify في أحداث Shopify webhook ويعالج كل حدث فور وصوله. تنتظر تغييرات العملاء والمنتجات نحو أربع ثوانٍ أولًا. بهذه الطريقة يصل إلى Brevo العملاء والطلبات وعمليات الدفع والمنتجات والمجموعات ومستويات المخزون، إلى جانب أحداث مثل order_paid وcart_abandoned. يسرد دليل التكامل مع Shopify كل موضوع وما يكتبه في Brevo.
شكل قاعدة المزامنة
قاعدة المزامنة تعريف مُراجَع ومعتمد لما ينتقل بالضبط وكيف. يبنيها وكيل من وصفك، ويوافق عليها شخص. للقاعدة أربعة أجزاء يمكنك فحصها في صفحتها تحت Connections > Syncs and mappings:
| الجزء | ما يفعله |
|---|---|
| ربط الحقول | كل حقل مصدر، وحقل Brevo الذي يكتب إليه، وأي تحويل بينهما |
| تعبير التصفية | يُقيَّم لكل سجل؛ السجلات التي لا تطابقه تُتخطى |
| المؤشر (Cursor) | يتتبع مدى تقدم المزامنة، بحيث يستأنف كل تشغيل من حيث توقف السابق |
| سجل التشغيلات | كل تشغيل، مع عدد السجلات المقروءة والمكتوبة والفاشلة، إضافة إلى المدة والحالة |
تنقل قاعدة المزامنة البيانات في اتجاه واحد: من مصدرك إلى Brevo. ولا تكتب أبدًا إلى Shopify. أما تطبيق Tajo لـ Shopify فيعيد كتابة أمور قليلة في Shopify، مثل إلغاء الموافقة ووسوم مستوى الولاء. يسرد شرح أذونات Shopify كل عملية كتابة ومتى تحدث.
متى تعمل قاعدة المزامنة
تعمل قواعد المزامنة على دفعات. تعمل قواعد مزامنة جهات الاتصال كل 15 دقيقة افتراضيًا. وتعمل قاعدة Shopify orders → Brevo orders النشطة والمنشورة كل 15 دقيقة أيضًا، ولكن فقط مع مرشّح موافقة المشتري على التسويق الموجود في القالب. أما القاعدة التي عُدّل مرشّحها فلا تعمل إلا عندما تبدأ تشغيلها بنفسك. يبدأ أول تشغيل مجدول لقاعدة الطلبات قبل تلك اللحظة ببضع دقائق ولا يرسل أي طلبات أقدم. ويرسل كل تشغيل لاحق الطلبات التي حُدّثت منذ التشغيل السابق. لا تصل الطلبات السابقة إلى Brevo إلا عندما تشغّل القاعدة بنفسك. تحتوي صفحة القاعدة النشطة على زر Test run (1 batch)، ويشغّل وكيل Sync Operator القواعد النشطة عندما تطلب منه ذلك. فالتشغيل على دفعات هو ما يجعل كل كتابة قابلة للمراجعة، ومحكومة بميزانية، ومنسوبة إلى تشغيل محدد.
يقرأ كل تشغيل السجلات الجديدة والمتغيرة منذ موضع المؤشر، ويطبق التصفية، ويربط الحقول، ويكتب إلى Brevo. يُظهر سجل التشغيل بدقة عدد السجلات المقروءة والمكتوبة والفاشلة.
ضمانات الحوكمة
الموافقة تفشل نحو الإغلاق (fails closed)
لا يمكن نشر قاعدة تكتب بيانات شخصية في Brevo بدون مرشّح الموافقة والحظر. وفي وقت التشغيل، تُرفض كتابة أي جهة اتصال إلى جمهور تسويقي دون موافقة مثبتة. عندما يتعذر إثبات الموافقة، يرفض Tajo الكتابة بدلًا من التخمين. نمط الفشل دائمًا “حذر أكثر من اللازم”، وليس “أرسل أكثر من اللازم”.
التشغيلات لا تُنشئ تكرارات (idempotent)
تحمل كل كتابة مفتاحًا مشتقًا من سجل المصدر. المفتاح قيمة تجزئة (hash)، لذا لا يحتوي على أي بيانات شخصية. إعادة تشغيل المزامنة على السجلات نفسها، بعد فشل أو توقف مؤقت أو يدويًا، لا تُنشئ كتابات مكررة.
كل شيء مُدقَّق
نشر القاعدة، والاعتمادات الملغاة، والتوقفات المؤقتة التلقائية تُسجَّل تحت Activity. يحمل كل قرار اعتماد مبررًا مكتوبًا. ويُسجَّل كل تشغيل في سجل تشغيلات القاعدة. الاعتماد الذي أجاز النشر مرتبط بملخّص (digest) للقاعدة الدقيقة التي جرت معاينتها. وتعديل القاعدة يعيدها إلى مسودة ويُلغي الاعتماد، لذا فإن ما يعمل هو دائمًا ما جرت إجازته.
الإخفاقات توقف القاعدة مؤقتًا
إذا فشلت خمسة تشغيلات متتالية، يوقف قاطع الدائرة القاعدة تلقائيًا ويعرض آخر خطأ في صفحتها. أصلح السبب، ثم أعد النشر للاستئناف. التشغيل الذي فشل جزئيًا يبلّغ عن عدد سجلاته الفاشلة، فترى بدقة ما لم يصل.
كيف تُحترم حالات إلغاء الاشتراك
- عندما يلغي جهة اتصال اشتراكها عبر رابط في تذييل رسالة من Brevo، يُسجَّل ذلك الانسحاب على جهة الاتصال، ويستبعدها Brevo من الحملات اللاحقة.
- في مزامنة العملاء على دفعات، يقارن تطبيق Tajo لـ Shopify وقت الموافقة في Shopify بوقت إلغاء الاشتراك في Brevo ويحتفظ بالأحدث.
- أي تغيير في الموافقة يصل من Shopify عبر webhook يُكتب في Brevo كما يبلّغ عنه Shopify.
- إذا كان العميل مشتركًا في Shopify، فإن تطبيق Tajo لـ Shopify يضع عليه علامة غير مشترك في Shopify أيضًا. أي حدث في Brevo ينقل العميل فقط من مشترك إلى غير مشترك. ولا يحوّل أي عميل إلى مشترك أبدًا، لذا فإن الاشتراك في Brevo لا يغيّر شيئًا في Shopify.
ما البيانات المتاحة
يرسل تطبيق Tajo لـ Shopify جهات الاتصال والطلبات وأحداث الطلبات والسلات وكتالوج المنتجات والمخزون. أما ما ترسله قاعدة المزامنة فيعتمد على ربط حقولها. بالنسبة إلى عملاء Shopify، يربط القالب حقول الهوية وإجمالي الإنفاق وعدد الطلبات والوسوم والاشتراك (opt-in) بسمات جهات اتصال Brevo التي يمكنك استخدامها في الشرائح والحملات. الربط الدقيق لمساحة عملك ليس مخفيًا في وصف: افتح قاعدة المزامنة واقرأ جدول ربط الحقول. ذلك الجدول هو الإجابة المرجعية عن سؤال “ما الذي يتزامن؟”.
ما لا يفعله Tajo اليوم
الدقة في تحديد الحدود أهم من قائمة ميزات طويلة:
- لا قواعد مزامنة ثنائية الاتجاه. تكتب قاعدة المزامنة إلى Brevo فقط. أما عمليات الكتابة التي يجريها تطبيق Shopify نفسه إلى Shopify (إلغاء الموافقة، والحقول الوصفية لتفاعل Brevo والولاء، ووسوم مستوى الولاء) فهي مسرودة في شرح أذونات Shopify.
- لا قواعد مزامنة في الوقت الفعلي. تعمل قواعد المزامنة على دفعات. ووحدها مزامنة webhooks في تطبيق Tajo لـ Shopify تعمل فور وصول الأحداث.
- لا زر “عاد إلى المخزون”. يحافظ التطبيق على تحديث مخزون المنتجات في Brevo ويرسل حدث
back_in_stockإلى المتسوّقين الذين طلبوا إشعارهم. يجب أن يأتي الطلب من واجهة متجرك: فالتطبيق لا يضيف زر “Notify me” إلى قالب متجرك.
إذا كان أحد هذه الحدود يعيق حالة استخدام لديك، فأخبر الفريق؛ فأولويات الوصول المبكر تتشكل بهذا النوع من الملاحظات تحديدًا.
أين ترى بياناتك
- في Tajo: افتح قاعدة المزامنة تحت Connections > Syncs and mappings لسجل التشغيلات وموضع المؤشر وأعداد كل تشغيل. يسجّل Activity عمليات النشر والتوقفات المؤقتة التلقائية.
- في Brevo: افتح Contacts (جهات الاتصال) وافحص سمات أي جهة اتصال لتتأكد من امتلاء الحقول المربوطة. ابنِ شرائح على تلك السمات للاستهداف.
استكشاف الأخطاء وإصلاحها
- جهات الاتصال لا تظهر في Brevo: افحص آخر تشغيل للقاعدة بحثًا عن إخفاقات، وافحص حالتها (القاعدة الموقوفة مؤقتًا لا تعمل). راجع جهات اتصال مفقودة في Brevo.
- تشغيلات تفشل مرارًا: سيوقف قاطع الدائرة القاعدة مؤقتًا ويعرض آخر خطأ. راجع البيانات لا تتزامن.
- جهات اتصال مكررة: الكتابات لا تتكرر لكل سجل مصدر، لكن التكرارات الموجودة مسبقًا في Brevo تبقى. راجع جهات الاتصال المكررة.
أسئلة شائعة
هل يمكنني جعل المزامنة أسرع؟ تحتوي صفحة القاعدة النشطة على زر Test run (1 batch). وللتغييرات فور حدوثها، تغطي مزامنة webhooks في تطبيق Tajo لـ Shopify بالفعل العملاء والطلبات وعمليات الدفع والمنتجات والمخزون.
ماذا يحدث إذا فشل تشغيل في منتصفه؟ يبلّغ التشغيل عن عدد سجلاته الفاشلة، ولا يتقدم المؤشر إلا فوق ما جرت معالجته، ويعيد التشغيل التالي تغطية المسافة بأمان؛ فمفاتيح منع التكرار تحول دون الكتابات المكررة.
هل يمكنني تغيير ما يتزامن؟ نعم. اطلب من الوكيل تغيير ربط حقول القاعدة أو تصفيتها. يعيد التعديل القاعدة إلى مسودة، ويجب أن تمر مجددًا بالمعاينة والاعتماد قبل أن تعمل مرة أخرى.
لماذا أوقفت قاعدتي نفسها مؤقتًا؟ إخفاقات التشغيل المتتالية تُفعِّل قاطع الدائرة. تعرض صفحة القاعدة عدد الإخفاقات وآخر خطأ؛ أصلح المشكلة وأعد النشر.
مقالات ذات صلة
- ربط Tajo بـ Shopify
- أساسيات تقسيم الشرائح
- استكشاف الأخطاء: البيانات لا تتزامن
- استكشاف الأخطاء: جهات اتصال مفقودة في Brevo