Shopify конектор
Shopify конектор
Свържи магазина си в Shopify с Brevo за пълна синхронизация на клиентски данни, възстановяване на изоставени кошници и автоматизирани маркетингови кампании.
Преглед
| Свойство | Стойност |
|---|---|
| Платформа | Shopify |
| Категория | E-commerce |
| Сложност на настройка | Лесна |
| Официална интеграция | Да |
| Синхронизирани данни | Клиенти, поръчки, продукти, кошници, събития |
| Налични скилове | 12 |
Функции
- Синхронизация на клиенти в реално време – Клиентските данни се синхронизират мигновено към контактите в Brevo
- Проследяване на поръчки – Събития от поръчки за потоци след покупка
- Синхронизация на продуктовия каталог – Продуктите са налични за препоръки
- Изоставена кошница – Проследяване и възстановяване на изоставени кошници
- Browse поведение – Проследяване на показвания на страници и интерес към продукти
- Поддръжка на много магазини – Свързване на множество Shopify магазини
Предварителни условия
Преди да започнеш, увери се, че имаш:
- Магазин в Shopify с администраторски достъп
- Акаунт в Brevo с API достъп
- Акаунт в Tajo
Инсталация
Опция 1: Shopify App Store (препоръчително)
- Посети приложението Tajo в Shopify App Store
- Щракни върху “Add app”
- Предостави заявените разрешения
- Свържи своя акаунт в Brevo
Опция 2: Ръчна инсталация
Стъпка 1: Създай Shopify приложение
- Отиди в админ панела на Shopify → Settings → Apps and sales channels
- Щракни върху “Develop apps” → “Create an app”
- Наименувай го “Tajo Integration”
Стъпка 2: Конфигурирай API обхватите
Активирай тези обхвати:
read_customerswrite_customersread_ordersread_productsread_checkoutswrite_script_tagsСтъпка 3: Инсталирай приложението
# Using Tajo CLItajo connectors install shopify \ --shop-url your-store.myshopify.com \ --api-key $SHOPIFY_API_KEY \ --api-secret $SHOPIFY_API_SECRETСтъпка 4: Конфигурирай уебхуците
Tajo автоматично регистрира тези уебхуци:
| Уебхук | Предназначение |
|---|---|
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 | Регистрация на нов клиент | Welcome серия |
customer_updated | Промени в профила | Синхронизация на данни |
customer_tags_added | Присвоени тагове | Обновяване на сегменти |
Събития от поръчки
| Събитие | Тригер | Случай на употреба |
|---|---|---|
order_placed | Завършен checkout | Потвърждение на поръчка |
order_fulfilled | Поръчката е изпратена | Известие за доставка |
order_cancelled | Поръчката е отменена | Имейл за отмяна |
order_refunded | Обработен рефанд | Потвърждение на рефанд |
Събития от кошницата
| Събитие | Тригер | Случай на употреба |
|---|---|---|
cart_created | Добавени артикули в кошницата | Browse проследяване |
cart_updated | Модифицирана кошница | Проследяване на стойността на кошницата |
cart_abandoned | Няма checkout за 30 мин | Имейли за възстановяване |
Активирани скилове
Конекторът за Shopify активира тези скилове:
| Скил | Описание |
|---|---|
| Customer Sync | Синхронизация на клиенти в реално време |
| Order Events | Проследяване на жизнения цикъл на поръчките |
| Abandoned Cart | Имейли за възстановяване на кошницата |
| Welcome Series | Onboarding на нови клиенти |
| Post-Purchase | Последващи имейли след поръчка |
| Win-Back | Повторно активиране на неактивни клиенти |
| Browse Abandonment | Последващи имейли при интерес към продукт |
| Replenishment | Напомняния за повторна поръчка |
Примери с код
Инициализация на конектора
import { TajoClient } from '@tajo/sdk';
const tajo = new TajoClient({ apiKey: process.env.TAJO_API_KEY, brevoApiKey: process.env.BREVO_API_KEY});
// Connect Shopify storeawait tajo.connectors.connect('shopify', { shopUrl: 'your-store.myshopify.com', apiKey: process.env.SHOPIFY_API_KEY, apiSecret: process.env.SHOPIFY_API_SECRET});Стартиране на първоначална синхронизация
// Full historical syncawait tajo.connectors.sync('shopify', { type: 'full', resources: ['customers', 'orders', 'products'], since: '2023-01-01'});
// Check sync statusconst 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>Персонализиран handler за уебхуци
// Handle Shopify webhooks manuallyapp.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
- Проследени поръчки: Обработени събития от поръчки
- Възстановяване на кошница: Резултати от изоставени кошници
- Процент на грешките: Неуспешни опити за синхронизация
Логове на уебхуци
Виж статус на доставка на уебхуци:
tajo connectors logs shopify --type webhook --last 24hИстория на синхронизацията
Провери историческите операции по синхронизация:
tajo connectors history shopify --limit 10Отстраняване на проблеми
Чести проблеми
Ограничения на API
Shopify има ограничения за API от 2 заявки/секунда. Използвай пакетна синхронизация за големи исторически импорти.
| Проблем | Причина | Решение |
|---|---|---|
| Уебхук не се получава | Разрешения на приложението | Преинсталирай приложението с правилните обхвати |
| Клиентът не е синхронизиран | Липсва имейл | Shopify изисква имейл за клиентите |
| Продуктите липсват | Статус на продукта | Провери дали продуктът е със статус “active” |
| Кошницата не се проследява | Скриптът не е зареден | Провери скрипта в theme.liquid |
Режим за дебъг
Активирай подробно логване:
connectors: shopify: debug: true log_level: verbose log_webhooks: trueТест на връзката
tajo connectors test shopify# ✓ API connection successful# ✓ Webhooks registered# ✓ Products accessible# ✓ Customers readable# ✓ Orders readableДобри практики
- Започни с тестов магазин – Първо използвай development магазин
- Стартирай първоначалната синхронизация в непиковите часове – Големите синхронизации могат да бъдат бавни
- Мапвай персонализирани атрибути – Не разчитай само на мапванията по подразбиране
- Активирай проследяването на кошница – Критично за възстановяване на изоставена кошница
- Мониторирай здравето на уебхуците – Настрой известия за неуспешни доставки
- Използвай пакетни импорти – За исторически данни над 10 000 записа
Сигурност
- OAuth 2.0 – Сигурна автентикация на база токени
- Верификация на уебхуци – Валидация на HMAC подпис
- Криптирано съхранение – API credentials са криптирани при съхранение
- Достъп с обхвати – Само минимално необходимите разрешения