Shopify konektor

Shopify konektor

Poveži svoju Shopify trgovinu s Brevom za potpunu sinkronizaciju podataka o kupcima, povrat napuštenih košarica i automatizirane marketinške kampanje.

Pregled

SvojstvoVrijednost
PlatformaShopify
KategorijaE-commerce
Složenost postavljanjaJednostavno
Službena integracijaDa
Sinkronizirani podaciKupci, narudžbe, proizvodi, košarice, događaji
Dostupni skills12

Značajke

  • Sinkronizacija kupaca u stvarnom vremenu - Podaci o kupcima trenutno se sinkroniziraju s Brevo kontaktima
  • Praćenje narudžbi - Događaji narudžbi za post-purchase tokove
  • Sinkronizacija kataloga proizvoda - Proizvodi dostupni za preporuke
  • Napuštanje košarice - Prati i vraćaj napuštene košarice
  • Ponašanje pregledavanja - Praćenje pregleda stranica i interesa za proizvode
  • Podrška za više trgovina - Poveži više Shopify trgovina

Preduvjeti

Prije nego što počneš, provjeri imaš li:

  1. Shopify trgovinu s admin pristupom
  2. Brevo račun s API pristupom
  3. Tajo račun

Instalacija

Opcija 1: Shopify App Store (preporučeno)

  1. Posjeti Tajo aplikaciju u Shopify App Storeu
  2. Klikni “Add app”
  3. Odobri tražena dopuštenja
  4. Poveži svoj Brevo račun

Opcija 2: Ručna instalacija

Korak 1: Stvori Shopify aplikaciju

  1. Idi u Shopify admin → Settings → Apps and sales channels
  2. Klikni “Develop apps” → “Create an app”
  3. Nazovi je “Tajo Integration”

Korak 2: Konfiguriraj API scopeove

Omogući ove scopeove:

read_customers
write_customers
read_orders
read_products
read_checkouts
write_script_tags

Korak 3: Instaliraj aplikaciju

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

Korak 4: Konfiguriraj webhookove

Tajo automatski registrira ove webhookove:

WebhookSvrha
customers/createSinkronizacija novog kupca
customers/updatePromjene podataka kupca
customers/deleteUklanjanje kupca
orders/createDogađaji kreiranja narudžbe
orders/updatedPromjene statusa narudžbe
checkouts/createKreirana košarica
checkouts/updateAžurirana košarica

Konfiguracija

Osnovno postavljanje

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

Mapiranje polja

Mapiraj Shopify polja na Brevo atribute kontakta:

Zadana mapiranja

Parameter Type Description
email required
string

Email kupca (jedinstveni identifikator)

first_name optional
string

Mapira se na FIRSTNAME atribut

last_name optional
string

Mapira se na LASTNAME atribut

phone optional
string

Mapira se na SMS atribut za WhatsApp/SMS

accepts_marketing optional
boolean

Kontrolira status pretplate

orders_count optional
integer

Ukupan broj narudžbi

total_spent optional
number

Životna vrijednost kupca

tags optional
array

Tagovi kupca iz Shopifyja

Mapiranje prilagođenih atributa

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

Sinkronizacija proizvoda

Sinkroniziraj proizvode za email preporuke:

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

Praćenje zaliha

Omogući sinkronizaciju razine zaliha:

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

Događaji

Događaji kupaca

DogađajOkidačSlučaj korištenja
customer_createdRegistracija novog kupcaWelcome serija
customer_updatedPromjene profilaSinkronizacija podataka
customer_tags_addedDodijeljeni tagoviAžuriranja segmenata

Događaji narudžbi

DogađajOkidačSlučaj korištenja
order_placedDovršena kupnjaPotvrda narudžbe
order_fulfilledNarudžba poslanaObavijest o dostavi
order_cancelledNarudžba otkazanaEmail o otkazivanju
order_refundedObrađen povrat novcaPotvrda povrata novca

Događaji košarice

DogađajOkidačSlučaj korištenja
cart_createdArtikli dodani u košaricuPraćenje pregledavanja
cart_updatedKošarica izmijenjenaPraćenje vrijednosti košarice
cart_abandonedNema kupnje u 30 minEmailovi za povrat

Omogućeni skills

Shopify konektor omogućuje ove skills:

SkillOpis
Customer SyncSinkronizacija kupaca u stvarnom vremenu
Order EventsPraćenje životnog ciklusa narudžbe
Abandoned CartEmailovi za povrat košarice
Welcome SeriesOnboarding novih kupaca
Post-PurchaseFollow-up nakon narudžbe
Win-BackPonovna angažiranost neaktivnih kupaca
Browse AbandonmentFollow-up za interes za proizvod
ReplenishmentPodsjetnici za ponovnu kupnju

Primjeri koda

Inicijaliziraj konektor

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

Pokreni početnu sinkronizaciju

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

Prati događaje košarice

Dodaj Tajo skriptu u svoju Shopify temu:

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

Prilagođeni webhook handler

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

Praćenje

Metrike dashboarda

Prati svoju Shopify konekciju u Tajo dashboardu:

  • Status sinkronizacije: Zdravlje konekcije u stvarnom vremenu
  • Sinkronizirani kupci: Ukupno kontakata iz Shopifyja
  • Praćene narudžbe: Obrađeni događaji narudžbi
  • Povrat košarice: Performanse napuštenih košarica
  • Stopa grešaka: Neuspjeli pokušaji sinkronizacije

Logovi webhookova

Pregledaj status isporuke webhookova:

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

Povijest sinkronizacije

Provjeri povijesne operacije sinkronizacije:

Terminal window
tajo connectors history shopify --limit 10

Rješavanje problema

Uobičajeni problemi

Ograničenja API stope

Shopify ima API ograničenja od 2 zahtjeva/sekundi. Koristi batch sinkronizaciju za velike povijesne uvoze.

ProblemUzrokRješenje
Webhook nije primljenDopuštenja aplikacijePonovo instaliraj aplikaciju s ispravnim scopeovima
Kupac nije sinkroniziranNedostaje emailShopify zahtijeva email za kupce
Proizvodi nedostajuStatus proizvodaProvjeri je li proizvod “active” statusa
Košarica nije praćenaSkripta nije učitanaProvjeri skriptu u theme.liquid

Debug način

Omogući opsežno logiranje:

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

Testiraj konekciju

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

Najbolje prakse

  1. Počni s testnom trgovinom - Prvo koristi development trgovinu
  2. Pokreni početnu sinkronizaciju izvan radnog vremena - Velike sinkronizacije mogu biti spore
  3. Mapiraj prilagođene atribute - Ne oslanjaj se samo na zadana mapiranja
  4. Omogući praćenje košarice - Ključno za povrat napuštenih košarica
  5. Prati zdravlje webhookova - Postavi upozorenja za neuspjele isporuke
  6. Koristi batch uvoze - Za povijesne podatke preko 10.000 zapisa

Sigurnost

  • OAuth 2.0 - Sigurna autentifikacija temeljena na tokenima
  • Verifikacija webhookova - Validacija HMAC potpisa
  • Šifrirano pohranjivanje - API vjerodajnice šifrirane u mirovanju
  • Ograničen pristup - Samo minimalna potrebna dopuštenja

Povezani resursi

Subscribe to updates

developer-docs

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

AI asistent

Bok! Pitajte me o dokumentaciji.

Započnite besplatno s Brevo