Подайте заявку на ранний доступ

Укажите имя, а также email или номер телефона. Мы отправим Вам информацию о доступе к Tajo.

Руководство по интеграции с BigCommerce

Это руководство проведёт вас через интеграцию Tajo с вашим магазином BigCommerce, чтобы открыть возможности взаимодействия с клиентами, программ лояльности и маркетинговой автоматизации.

Обзор

Интеграция Tajo и BigCommerce позволяет:

  • Синхронизировать данные клиентов автоматически из вашего магазина BigCommerce
  • Отслеживать заказы и товары для персонализированного маркетинга
  • Запускать программы лояльности с баллами, уровнями и вознаграждениями
  • Автоматизировать маркетинговые кампании через Brevo (email, SMS, WhatsApp)
  • Сегментировать клиентов по покупательскому поведению и вовлечённости
  • Поддерживать работу нескольких витрин

Предварительные требования

Перед началом интеграции убедитесь, что у вас есть:

  • Магазин BigCommerce на любом тарифе (Standard, Plus, Pro или Enterprise)
  • Аккаунт Tajo с активной подпиской
  • Аккаунт Brevo (необязательно, для маркетинговой автоматизации)
  • Учётные данные API магазина (аккаунт API с подходящими областями доступа)

Шаг 1. Установите приложение Tajo

Из BigCommerce App Marketplace

  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
}
}
}

Настройка вебхуков

Tajo регистрирует следующие вебхуки BigCommerce:

ВебхукНазначение
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;
}
}
}

Проверка вебхуков

// 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 для кампаний по email и SMS
  2. Настройте вебхуки для событий в реальном времени
  3. Создайте сегменты клиентов для целевого маркетинга
  4. Соберите шаблоны писем для автоматизированных кампаний

Поддержка

Подайте заявку на ранний доступ

Укажите имя, а также email или номер телефона. Мы отправим Вам информацию о доступе к Tajo.

определим автоматически
AI-ассистент

Привет! Спрашивайте меня о документации.