اطلب الوصول المبكر

أدخل اسمك الأول وبريدك الإلكتروني أو رقم هاتفك. سنتواصل معك لتزويدك بتفاصيل الوصول إلى Tajo.

دليل التكامل مع BigCommerce

يرشدك هذا الدليل خلال دمج Tajo مع متجرك على BigCommerce للاستفادة من إمكانات تفاعل العملاء وبرامج الولاء وأتمتة التسويق.

نظرة عامة

يتيح لك التكامل بين Tajo وBigCommerce ما يلي:

  • مزامنة بيانات العملاء تلقائياً من متجرك على BigCommerce
  • تتبّع الطلبات والمنتجات من أجل تسويق مخصّص
  • تشغيل برامج الولاء بالنقاط والمستويات والمكافآت
  • أتمتة الحملات التسويقية عبر Brevo (البريد الإلكتروني وSMS وواتساب)
  • تقسيم العملاء حسب سلوك الشراء والتفاعل
  • دعم تشغيل واجهات متاجر متعدّدة

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

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

  • متجر BigCommerce على أي خطّة (Standard أو Plus أو Pro أو Enterprise)
  • حساب Tajo باشتراك نشط
  • حساب Brevo (اختياري، لأتمتة التسويق)
  • بيانات اعتماد API للمتجر (حساب API بالنطاقات المناسبة)

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

من متجر تطبيقات BigCommerce

  1. انتقل إلى لوحة تحكّم BigCommerce لديك
  2. اذهب إلى Apps ← Marketplace
  3. ابحث عن “Tajo”
  4. انقر على Get This App
  5. راجع الأذونات وانقر على Install
  6. اتبع معالج الإعداد لربط حساب Tajo الخاص بك

تهيئة API

بعد التثبيت، اضبط الوصول إلى API:

{
"api_credentials": {
"client_id": "your_client_id",
"client_secret": "your_client_secret",
"access_token": "your_access_token",
"store_hash": "your_store_hash"
},
"scopes": [
"store_v2_customers",
"store_v2_orders",
"store_v2_products",
"store_cart",
"store_checkout"
]
}

الخطوة 2: تهيئة مزامنة البيانات

إعدادات مزامنة العملاء

اضبط بيانات العملاء التي تريد مزامنتها:

{
"sync_settings": {
"customers": {
"enabled": true,
"sync_frequency": "real-time",
"fields": [
"email",
"first_name",
"last_name",
"phone",
"company",
"customer_group_id",
"store_credit",
"addresses",
"date_created"
]
},
"orders": {
"enabled": true,
"sync_frequency": "real-time",
"include_products": true,
"include_shipping": true,
"include_coupons": true
},
"products": {
"enabled": true,
"sync_frequency": "hourly",
"include_variants": true,
"include_images": true,
"include_custom_fields": true
}
}
}

تهيئة Webhook

يسجّل Tajo خطافات BigCommerce التالية:

Webhookالغرض
store/customer/createdمزامنة العملاء الجدد إلى Tajo وBrevo
store/customer/updatedإبقاء ملفات العملاء محدَّثة
store/order/createdتتبّع المشتريات ومنح نقاط الولاء
store/order/statusUpdatedإطلاق حملات مبنية على الحالة
store/cart/createdتتبّع السلة لرصد الترك
store/cart/updatedتحديث سلاسل استعادة السلة المتروكة
store/product/updatedإبقاء كتالوج المنتجات مُزامَناً

دعم واجهات المتاجر المتعدّدة

لعملاء BigCommerce Enterprise الذين لديهم واجهات متاجر متعدّدة:

{
"multi_storefront": {
"enabled": true,
"storefronts": [
{
"channel_id": 1,
"name": "Main Store",
"loyalty_program": "default"
},
{
"channel_id": 2,
"name": "Wholesale",
"loyalty_program": "b2b_program"
},
{
"channel_id": 3,
"name": "International",
"loyalty_program": "global_program"
}
],
"sync_across_channels": true
}
}

الخطوة 3: إعداد برنامج الولاء

تهيئة نظام النقاط

const pointsConfig = {
// Points per dollar spent
purchasePoints: {
enabled: true,
rate: 1, // 1 point per $1
roundingMode: 'floor'
},
// Bonus actions
bonusPoints: {
accountCreation: 100,
firstPurchase: 200,
reviewSubmitted: 50,
referralMade: 500,
birthdayBonus: 100,
newsletterSignup: 25
},
// Customer group multipliers
customerGroupMultipliers: {
'Retail': 1.0,
'VIP': 1.5,
'Wholesale': 0.5,
'Platinum': 2.0
}
};

مستويات الولاء

const loyaltyTiers = [
{
name: 'Bronze',
minPoints: 0,
benefits: [
'1 point per $1 spent',
'Birthday bonus points',
'Member-only promotions'
]
},
{
name: 'Silver',
minPoints: 1000,
benefits: [
'1.25x points multiplier',
'Free shipping on orders $50+',
'Early access to sales'
]
},
{
name: 'Gold',
minPoints: 5000,
benefits: [
'1.5x points multiplier',
'Free shipping on all orders',
'Exclusive product access',
'Priority support'
]
},
{
name: 'Platinum',
minPoints: 15000,
benefits: [
'2x points multiplier',
'Free express shipping',
'VIP experiences',
'Dedicated account manager'
]
}
];

الخطوة 4: إدارة عملاء B2B

حسابات الشركات

يدعم BigCommerce ميزات B2B التي تتكامل مع Tajo:

const b2bConfig = {
companyAccounts: {
enabled: true,
syncCompanyData: true,
fields: [
'company_name',
'tax_id',
'credit_limit',
'payment_terms',
'price_list'
]
},
// B2B-specific loyalty rules
b2bLoyalty: {
orderVolumeBonus: {
threshold: 10000,
bonusMultiplier: 1.5
},
reorderPoints: {
enabled: true,
rate: 0.5 // 0.5 points per $1 on reorders
}
}
};

التكامل مع مجموعات العملاء

// Map BigCommerce customer groups to Tajo segments
const customerGroupMapping = {
'Retail': {
tajoSegment: 'retail_customers',
loyaltyTier: 'Bronze',
emailList: 'retail_newsletter'
},
'Wholesale': {
tajoSegment: 'wholesale_customers',
loyaltyTier: 'Silver',
emailList: 'wholesale_updates'
},
'VIP': {
tajoSegment: 'vip_customers',
loyaltyTier: 'Gold',
emailList: 'vip_exclusive'
}
};

الخطوة 5: استعادة السلات المتروكة

تتبّع السلة

// BigCommerce cart webhook handler
async function handleCartWebhook(event) {
const cart = await bigcommerce.carts.get(event.data.cartId);
if (!cart.customer_id && !cart.email) {
return; // Can't track without identity
}
await tajo.carts.track({
customerId: cart.customer_id,
email: cart.email,
cartId: cart.id,
items: cart.line_items.physical_items.map(item => ({
productId: item.product_id,
variantId: item.variant_id,
title: item.name,
quantity: item.quantity,
price: item.sale_price || item.list_price,
image: item.image_url
})),
totalPrice: cart.cart_amount,
currency: cart.currency.code,
checkoutUrl: cart.redirect_urls?.checkout_url
});
}

سلسلة الاستعادة

{
"abandoned_cart_sequence": {
"trigger": {
"event": "cart_abandoned",
"delay": "1 hour"
},
"messages": [
{
"delay": "1 hour",
"channel": "email",
"template": "cart_reminder_1",
"subject": "You left something behind!"
},
{
"delay": "24 hours",
"channel": "email",
"template": "cart_reminder_2",
"subject": "Your cart is waiting - 10% off inside"
},
{
"delay": "72 hours",
"channel": "sms",
"template": "cart_sms_final"
}
],
"exit_conditions": [
"order_completed",
"cart_emptied",
"unsubscribed"
]
}
}

الخطوة 6: أتمتة التسويق

شرائح العملاء

const bigcommerceSegments = [
// Purchase behavior
{
name: 'First-Time Buyers',
conditions: { orders_count: 1 }
},
{
name: 'Repeat Customers',
conditions: { orders_count: { $gte: 2 } }
},
{
name: 'High-Value Customers',
conditions: { total_spent: { $gte: 1000 } }
},
// Customer groups
{
name: 'Wholesale Accounts',
conditions: { customer_group: 'Wholesale' }
},
// Engagement
{
name: 'At-Risk Customers',
conditions: {
last_order_date: { $lt: '-90 days' },
orders_count: { $gte: 2 }
}
}
];

الحملات المؤتمتة

// Order status change triggers
bigcommerce.webhooks.on('store/order/statusUpdated', async (event) => {
const order = await bigcommerce.orders.get(event.data.orderId);
const customer = await tajo.customers.getByEmail(order.billing_address.email);
switch (event.data.status.new_status) {
case 'Shipped':
await brevo.trackEvent(customer.email, 'order_shipped', {
orderId: order.id,
trackingNumber: order.tracking_number,
carrier: order.shipping_carrier
});
break;
case 'Completed':
// Award loyalty points
const points = calculatePoints(order, customer);
await tajo.loyalty.awardPoints(customer.id, points);
// Trigger review request after 14 days
await brevo.scheduleEvent(customer.email, 'review_request', {
orderId: order.id,
products: order.products
}, { delay: '14 days' });
break;
}
});

الخطوة 7: التحليلات

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

const dashboardMetrics = {
customers: {
total: await tajo.analytics.count('customers'),
byChannel: await tajo.analytics.groupBy('customers', 'channel_id'),
newThisMonth: await tajo.analytics.count('customers', {
created_at: { $gte: 'this_month' }
})
},
revenue: {
total: await tajo.analytics.sum('orders.total'),
byChannel: await tajo.analytics.groupBy('orders', 'channel_id', {
aggregate: 'sum',
field: 'total'
}),
averageOrderValue: await tajo.analytics.avg('orders.total')
},
loyalty: {
activeMembers: await tajo.analytics.count('loyalty_members'),
pointsIssued: await tajo.analytics.sum('points.awarded'),
redemptionRate: await tajo.analytics.pointsRedemptionRate()
}
};

استكشاف الأخطاء وإصلاحها

حدود معدّل API

// Implement rate limiting
async function bigcommerceApiCall(endpoint, options, retries = 3) {
for (let i = 0; i < retries; i++) {
try {
const response = await fetch(endpoint, options);
if (response.status === 429) {
const retryAfter = response.headers.get('X-Rate-Limit-Time-Reset-Ms');
await sleep(parseInt(retryAfter) || Math.pow(2, i) * 1000);
continue;
}
return response;
} catch (error) {
if (i === retries - 1) throw error;
}
}
}

التحقّق من Webhook

// Verify BigCommerce webhook signature
function verifyWebhook(payload, signature, secret) {
const expected = crypto
.createHmac('sha256', secret)
.update(payload)
.digest('base64');
return crypto.timingSafeEqual(
Buffer.from(expected),
Buffer.from(signature)
);
}

الخطوات التالية

  1. تهيئة التكامل مع Brevo لحملات البريد الإلكتروني وSMS
  2. إعداد Webhooks للأحداث الفورية
  3. إنشاء شرائح العملاء للتسويق الموجَّه
  4. بناء قوالب البريد الإلكتروني للحملات المؤتمتة

الدعم

اطلب الوصول المبكر

أدخل اسمك الأول وبريدك الإلكتروني أو رقم هاتفك. سنتواصل معك لتزويدك بتفاصيل الوصول إلى Tajo.

اكتشاف تلقائي
مساعد AI

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