موصل Shopify

موصل Shopify

اربط متجر Shopify الخاص بك بـ Brevo لمزامنة كاملة لبيانات العملاء، واستعادة السلال المهجورة، والحملات التسويقية الآلية.

نظرة عامة

الخاصيةالقيمة
المنصةShopify
الفئةالتجارة الإلكترونية
تعقيد الإعدادسهل
تكامل رسمينعم
البيانات المتزامنةالعملاء، الطلبات، المنتجات، السلال، الأحداث
المهارات المتاحة12

الميزات

  • مزامنة العملاء في الوقت الفعلي - تُزامن بيانات العملاء فورًا إلى جهات اتصال Brevo
  • تتبع الطلبات - أحداث الطلبات لتدفقات ما بعد الشراء
  • مزامنة كتالوج المنتجات - منتجات متاحة للتوصيات
  • هجر سلة الشراء - تتبع واستعادة السلال المهجورة
  • سلوك التصفح - تتبع مشاهدة الصفحات واهتمام المنتجات
  • دعم متعدد المتاجر - اربط متاجر Shopify متعددة

المتطلبات المسبقة

قبل أن تبدأ، تأكد من توفر ما يلي:

  1. متجر Shopify مع صلاحيات مسؤول
  2. حساب Brevo مع وصول API
  3. حساب Tajo

التثبيت

الخيار 1: Shopify App Store (موصى به)

  1. قم بزيارة تطبيق Tajo في Shopify App Store
  2. انقر على “Add app”
  3. امنح الأذونات المطلوبة
  4. اربط حساب Brevo الخاص بك

الخيار 2: التثبيت اليدوي

الخطوة 1: إنشاء تطبيق Shopify

  1. اذهب إلى Shopify admin → Settings → Apps and sales channels
  2. انقر على “Develop apps” → “Create an app”
  3. سمّه “Tajo Integration”

الخطوة 2: ضبط نطاقات API

فعّل هذه النطاقات:

read_customers
write_customers
read_orders
read_products
read_checkouts
write_script_tags

الخطوة 3: تثبيت التطبيق

Terminal window
# Using Tajo CLI
tajo connectors install shopify \
--shop-url your-store.myshopify.com \
--api-key $SHOPIFY_API_KEY \
--api-secret $SHOPIFY_API_SECRET

الخطوة 4: ضبط Webhooks

يسجل Tajo هذه webhooks تلقائيًا:

Webhookالغرض
customers/createمزامنة عميل جديد
customers/updateتغييرات بيانات العميل
customers/deleteإزالة العميل
orders/createأحداث إنشاء الطلب
orders/updatedتغييرات حالة الطلب
checkouts/createإنشاء سلة
checkouts/updateتحديث السلة

الإعداد

الإعداد الأساسي

connectors:
shopify:
enabled: true
shop_url: "your-store.myshopify.com"
api_version: "2024-01"
# Data sync options
sync:
customers: true
orders: true
products: true
carts: true
inventory: false # Optional
# List assignment
lists:
all_customers: 5
buyers: 6
abandoned_cart: 7

ربط الحقول

اربط حقول Shopify بسمات جهات اتصال Brevo:

التعيينات الافتراضية

Parameter Type Description
email required
string

بريد العميل الإلكتروني (معرف فريد)

first_name optional
string

يُربط بسمة FIRSTNAME

last_name optional
string

يُربط بسمة LASTNAME

phone optional
string

يُربط بسمة SMS للمراسلة عبر WhatsApp/SMS

accepts_marketing optional
boolean

يتحكم في حالة الاشتراك

orders_count optional
integer

إجمالي عدد الطلبات

total_spent optional
number

قيمة العميل مدى الحياة

tags optional
array

علامات العميل من Shopify

ربط السمات المخصصة

field_mapping:
# Standard fields
email: email
first_name: FIRSTNAME
last_name: LASTNAME
phone: SMS
# E-commerce metrics
orders_count: ORDER_COUNT
total_spent: TOTAL_SPENT
last_order_date: LAST_ORDER_DATE
# Custom fields
customer_type: CUSTOMER_TYPE
preferred_language: LANGUAGE
loyalty_tier: VIP_TIER
# Computed fields
average_order_value: AOV
days_since_last_order: RECENCY

مزامنة المنتجات

زامن المنتجات لتوصيات البريد الإلكتروني:

sync:
products:
enabled: true
include_variants: true
include_images: true
categories_as_tags: true
# Filter products
filter:
status: active
exclude_tags: ["hidden", "wholesale-only"]

تتبع المخزون

فعّل مزامنة مستوى المخزون:

sync:
inventory:
enabled: true
low_stock_threshold: 10
out_of_stock_events: true

الأحداث

أحداث العملاء

الحدثالمشغلحالة الاستخدام
customer_createdتسجيل عميل جديدسلسلة الترحيب
customer_updatedتغييرات الملف الشخصيمزامنة البيانات
customer_tags_addedتعيين العلاماتتحديثات القطاعات

أحداث الطلبات

الحدثالمشغلحالة الاستخدام
order_placedاكتمال الدفعتأكيد الطلب
order_fulfilledشحن الطلبإشعار الشحن
order_cancelledإلغاء الطلببريد إلكتروني للإلغاء
order_refundedمعالجة استردادتأكيد الاسترداد

أحداث السلة

الحدثالمشغلحالة الاستخدام
cart_createdإضافة عناصر إلى السلةتتبع التصفح
cart_updatedتعديل السلةتتبع قيمة السلة
cart_abandonedلا دفع خلال 30 دقيقةرسائل الاستعادة

المهارات الممكَّنة

يُمكّن موصل Shopify هذه المهارات:

المهارةالوصف
مزامنة العملاءمزامنة العملاء في الوقت الفعلي
أحداث الطلباتتتبع دورة حياة الطلب
السلة المهجورةرسائل استعادة السلة
سلسلة الترحيبتأهيل العملاء الجدد
ما بعد الشراءمتابعة الطلب
استعادة العملاءإعادة تفاعل العملاء غير النشطين
هجر التصفحمتابعة اهتمام المنتج
إعادة التعبئةتذكيرات إعادة الطلب

أمثلة البرمجة

تهيئة الموصل

import { TajoClient } from '@tajo/sdk';
const tajo = new TajoClient({
apiKey: process.env.TAJO_API_KEY,
brevoApiKey: process.env.BREVO_API_KEY
});
// Connect Shopify store
await tajo.connectors.connect('shopify', {
shopUrl: 'your-store.myshopify.com',
apiKey: process.env.SHOPIFY_API_KEY,
apiSecret: process.env.SHOPIFY_API_SECRET
});

تشغيل المزامنة الأولية

// Full historical sync
await tajo.connectors.sync('shopify', {
type: 'full',
resources: ['customers', 'orders', 'products'],
since: '2023-01-01'
});
// Check sync status
const status = await tajo.connectors.status('shopify');
console.log(status);
// {
// connected: true,
// lastSync: '2024-01-15T10:30:00Z',
// customersCount: 15420,
// ordersCount: 8234,
// productsCount: 342
// }

تتبع أحداث السلة

أضف سكربت Tajo إلى قالب Shopify الخاص بك:

<!-- Add to theme.liquid before </head> -->
{% if customer %}
<script>
window.tajoConfig = {
customerId: "{{ customer.id }}",
customerEmail: "{{ customer.email }}",
customerName: "{{ customer.first_name }}"
};
</script>
{% endif %}
<script src="https://cdn.tajo.io/shopify.js"></script>

معالج Webhook مخصص

// Handle Shopify webhooks manually
app.post('/webhooks/shopify', async (req, res) => {
const hmac = req.get('X-Shopify-Hmac-SHA256');
// Verify webhook signature
if (!verifyShopifyWebhook(req.body, hmac)) {
return res.status(401).send('Unauthorized');
}
const topic = req.get('X-Shopify-Topic');
// Forward to Tajo
await tajo.connectors.handleWebhook('shopify', {
topic,
payload: req.body
});
res.status(200).send('OK');
});

المراقبة

مقاييس لوحة التحكم

راقب اتصال Shopify الخاص بك في لوحة تحكم Tajo:

  • حالة المزامنة: صحة الاتصال في الوقت الفعلي
  • العملاء المُزامنون: إجمالي جهات الاتصال من Shopify
  • الطلبات المتتبعة: أحداث الطلبات المعالجة
  • استعادة السلة: أداء السلة المهجورة
  • معدل الأخطاء: محاولات المزامنة الفاشلة

سجلات Webhook

اعرض حالة تسليم webhook:

Terminal window
tajo connectors logs shopify --type webhook --last 24h

تاريخ المزامنة

تحقق من عمليات المزامنة التاريخية:

Terminal window
tajo connectors history shopify --limit 10

استكشاف الأخطاء

المشكلات الشائعة

حدود معدل API

يمتلك Shopify حدود معدل API من 2 طلب/ثانية. استخدم مزامنة الدُفعات للواردات التاريخية الكبيرة.

المشكلةالسببالحل
Webhook لم يُستلمأذونات التطبيقأعد تثبيت التطبيق بالنطاقات الصحيحة
العميل لم يُزامنبريد إلكتروني مفقوديتطلب Shopify بريدًا إلكترونيًا للعملاء
منتجات مفقودةحالة المنتجتحقق من أن المنتج بحالة “active”
السلة لا تُتبعالسكربت لم يُحمَّلتحقق من السكربت في theme.liquid

وضع التصحيح

فعّل تسجيلًا مفصلاً:

connectors:
shopify:
debug: true
log_level: verbose
log_webhooks: true

اختبار الاتصال

Terminal window
tajo connectors test shopify
# ✓ API connection successful
# ✓ Webhooks registered
# ✓ Products accessible
# ✓ Customers readable
# ✓ Orders readable

أفضل الممارسات

  1. ابدأ بمتجر تجريبي - استخدم متجر تطوير أولاً
  2. شغّل المزامنة الأولية خارج ساعات العمل - المزامنات الكبيرة قد تكون بطيئة
  3. اربط السمات المخصصة - لا تعتمد على التعيينات الافتراضية فقط
  4. فعّل تتبع السلة - مهم لاستعادة السلال المهجورة
  5. راقب صحة webhook - أعدّ تنبيهات للتسليمات الفاشلة
  6. استخدم الواردات المجمعة - للبيانات التاريخية التي تتجاوز 10,000 سجل

الأمان

  • OAuth 2.0 - مصادقة آمنة قائمة على الرمز
  • التحقق من webhook - التحقق من توقيع HMAC
  • التخزين المشفر - بيانات اعتماد API مشفرة في حالة السكون
  • وصول محدد النطاق - الحد الأدنى من الأذونات المطلوبة فقط

موارد ذات صلة

Subscribe to updates

developer-docs

Drop your email or phone number — we'll send you what matters next.

مساعد AI

مرحباً! اسألني أي شيء عن الوثائق.

ابدأ مجانًا مع Brevo