Shopify-koppling

Shopify-koppling

Anslut din Shopify-butik till Brevo för fullständig synkronisering av kunddata, återvinning av övergivna kundvagnar och automatiserade marknadsföringskampanjer.

Översikt

EgenskapVärde
PlattformShopify
KategoriE-handel
InstallationskomplexitetEnkel
Officiell integrationJa
Data som synkasKunder, ordrar, produkter, kundvagnar, händelser
Tillgängliga skills12

Funktioner

  • Kundsynk i realtid - Kunddata synkas omedelbart till Brevo-kontakter
  • Orderspårning - Orderhändelser för flöden efter köp
  • Synk av produktkatalog - Produkter tillgängliga för rekommendationer
  • Övergivna kundvagnar - Spåra och återvinn övergivna kundvagnar
  • Browse-beteende - Spårning av sidvisningar och produktintresse
  • Stöd för flera butiker - Anslut flera Shopify-butiker

Förutsättningar

Innan du börjar, se till att du har:

  1. En Shopify-butik med adminåtkomst
  2. Ett Brevo-konto med API-åtkomst
  3. Ett Tajo-konto

Installation

Alternativ 1: Shopify App Store (rekommenderas)

  1. Besök Tajo-appen i Shopify App Store
  2. Klicka på “Add app”
  3. Godkänn de begärda behörigheterna
  4. Anslut ditt Brevo-konto

Alternativ 2: Manuell installation

Steg 1: Skapa en Shopify-app

  1. Gå till ditt Shopify-admin → Settings → Apps and sales channels
  2. Klicka på “Develop apps” → “Create an app”
  3. Namnge den “Tajo Integration”

Steg 2: Konfigurera API-scopes

Aktivera dessa scopes:

read_customers
write_customers
read_orders
read_products
read_checkouts
write_script_tags

Steg 3: Installera appen

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

Steg 4: Konfigurera webhooks

Tajo registrerar automatiskt dessa webhooks:

WebhookSyfte
customers/createSynk av nya kunder
customers/updateÄndringar av kunddata
customers/deleteBorttagning av kund
orders/createHändelser vid lagd order
orders/updatedÄndringar av orderstatus
checkouts/createKundvagn skapad
checkouts/updateKundvagn uppdaterad

Konfiguration

Grundläggande konfiguration

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

Fältmappning

Mappa Shopify-fält till Brevos kontaktattribut:

Standardmappningar

Parameter Type Description
email required
string

Kundens e-post (unik identifierare)

first_name optional
string

Mappas till attributet FIRSTNAME

last_name optional
string

Mappas till attributet LASTNAME

phone optional
string

Mappas till SMS-attributet för WhatsApp/SMS

accepts_marketing optional
boolean

Styr prenumerationsstatusen

orders_count optional
integer

Totalt antal ordrar

total_spent optional
number

Kundens totala livstidsvärde

tags optional
array

Kundtaggar från Shopify

Anpassad attributmappning

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

Produktsynk

Synka produkter för e-postrekommendationer:

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

Lagerspårning

Aktivera synkronisering av lagernivåer:

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

Händelser

Kundhändelser

HändelseUtlösareAnvändningsfall
customer_createdNy kundregistreringVälkomstserie
customer_updatedProfiländringarDatasynk
customer_tags_addedTaggar tilldeladeSegmentuppdateringar

Orderhändelser

HändelseUtlösareAnvändningsfall
order_placedKassan slutfördOrderbekräftelse
order_fulfilledOrdern skickadLeveransavisering
order_cancelledOrdern avbrutenAvbokningsmejl
order_refundedÅterbetalning hanteradBekräftelse av återbetalning

Kundvagnshändelser

HändelseUtlösareAnvändningsfall
cart_createdArtiklar lagda i kundvagnenBrowse-spårning
cart_updatedKundvagnen ändradSpårning av kundvagnsvärde
cart_abandonedIngen kassa inom 30 minÅtervinningsmejl

Tillgängliga skills

Shopify-kopplingen aktiverar följande skills:

SkillBeskrivning
KundsynkKundsynk i realtid
OrderhändelserSpårning av orderns livscykel
Övergiven kundvagnÅtervinningsmejl för kundvagnar
VälkomstserieOnboarding för nya kunder
Efter köpUppföljning efter order
Win-BackÅterengagera inaktiva kunder
Browse AbandonmentUppföljning av produktintresse
PåfyllningPåminnelser om återbeställning

Kodexempel

Initiera kopplingen

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

Kör initial synk

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

Spåra kundvagnshändelser

Lägg till Tajo-skriptet i ditt Shopify-tema:

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

Anpassad webhook-hanterare

// 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');
});

Övervakning

Mätvärden i dashboard

Övervaka din Shopify-anslutning i Tajo-dashboarden:

  • Synkstatus: Anslutningshälsa i realtid
  • Synkade kunder: Totalt antal kontakter från Shopify
  • Spårade ordrar: Behandlade orderhändelser
  • Återvinning av kundvagnar: Prestanda för övergivna kundvagnar
  • Felfrekvens: Misslyckade synkförsök

Webhook-loggar

Se status för webhook-leveranser:

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

Synkhistorik

Kontrollera historiska synkoperationer:

Terminal window
tajo connectors history shopify --limit 10

Felsökning

Vanliga problem

API-gränser

Shopify har API-gränser på 2 förfrågningar/sekund. Använd batchsynk för stora historiska importer.

ProblemOrsakLösning
Webhook tas inte emotApp-behörigheterInstallera om appen med korrekta scopes
Kunden synkas inteE-post saknasShopify kräver e-post för kunder
Produkter saknasProduktstatusKontrollera att produkten har statusen “active”
Kundvagn spåras inteSkript ej laddatVerifiera skriptet i theme.liquid

Debug-läge

Aktivera utförlig loggning:

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

Testa anslutningen

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

Bästa praxis

  1. Börja med en testbutik - Använd en utvecklingsbutik först
  2. Kör initial synk utanför högtrafiktid - Stora synkar kan ta tid
  3. Mappa anpassade attribut - Förlita dig inte bara på standardmappningar
  4. Aktivera kundvagnsspårning - Kritiskt för återvinning av övergivna kundvagnar
  5. Övervaka webhook-hälsan - Ställ in aviseringar för misslyckade leveranser
  6. Använd batch-importer - För historiska data över 10 000 poster

Säkerhet

  • OAuth 2.0 - Säker tokenbaserad autentisering
  • Webhook-verifiering - Validering av HMAC-signatur
  • Krypterad lagring - API-uppgifter krypterade i vila
  • Scope-baserad åtkomst - Endast minsta nödvändiga behörigheter

Relaterade resurser

Subscribe to updates

developer-docs

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

AI-assistent

Hej! Fråga mig om dokumentationen.

Börja gratis med Brevo