Sinkronizacija kupaca

Sinkronizacija kupaca

Automatski sinkronizirajte podatke kupaca s vaše e-commerce platforme na Brevo kontakte. Ovaj skill osigurava da vaš popis kontakata u Brevo uvijek odražava vašu trenutnu bazu kupaca.

Pregled

SvojstvoVrijednost
KategorijaSinkronizacija podataka
StatusStabilan
Verzija2.1
Okidačicustomer_created, customer_updated, customer_deleted
RadnjeStvori kontakt, Ažuriraj kontakt, Izbriši kontakt

Kako funkcionira

graph LR
A[E-commerce Platform] -->|Customer Event| B[Customer Sync Skill]
B -->|Map Data| C[Field Mapping]
C -->|API Call| D[Brevo Contacts API]
D -->|Success| E[Contact Updated]
D -->|Error| F[Retry Queue]
  1. Otkrivanje događaja: Osluškuje događaje životnog ciklusa kupca s vaše platforme
  2. Mapiranje podataka: Mapira polja platforme na atribute Brevo kontakta
  3. Sinkronizacija putem API-ja: Stvara, ažurira ili briše kontakte putem Brevo API-ja
  4. Rukovanje greškama: Ponavlja neuspješne operacije s eksponencijalnim odmakom

Konfiguracija

Osnovno postavljanje

skills:
customer-sync:
enabled: true
source: shopify # or woocommerce, magento, custom
# Map platform fields to Brevo attributes
field_mapping:
email: email
firstName: FIRSTNAME
lastName: LASTNAME
phone: SMS
# Sync options
options:
sync_mode: realtime # or batch
delete_behavior: soft # or hard
list_id: 5 # Add to this list

Mapiranje polja

Mapirajte polja kupaca vaše platforme na atribute Brevo kontakta:

Zadana mapiranja polja

Parameter Type Description
email required
string

Email adresa kupca. Koristi se kao jedinstveni identifikator u Brevo.

firstName optional
string

Ime kupca. Mapira se na atribut FIRSTNAME.

Default: FIRSTNAME
lastName optional
string

Prezime kupca. Mapira se na atribut LASTNAME.

Default: LASTNAME
phone optional
string

Broj telefona u formatu E.164. Mapira se na atribut SMS za WhatsApp/SMS.

Default: SMS
acceptsMarketing optional
boolean

Status pristanka na marketing. Kontrolira status email pretplate.

Default: true

Prilagođeni atributi

Dodajte prilagođena mapiranja atributa za e-commerce podatke:

field_mapping:
# Standard fields
email: email
firstName: FIRSTNAME
# Custom e-commerce attributes
totalOrders: TOTAL_ORDERS
totalSpent: TOTAL_SPENT
lastOrderDate: LAST_ORDER_DATE
customerTier: CUSTOMER_TIER
tags: TAGS

Tip

Prvo stvorite atribute: Prilagođeni atributi moraju biti stvoreni u Brevo prije nego što se mogu sinkronizirati. Koristite Brevo nadzornu ploču ili API za njihovo stvaranje.

Okidači

customer_created

Aktivira se kada se stvori novi kupac na vašoj platformi.

{
"event": "customer_created",
"timestamp": "2024-01-15T10:30:00Z",
"data": {
"id": "cust_12345",
"email": "[email protected]",
"firstName": "Jane",
"lastName": "Smith",
"phone": "+1234567890",
"acceptsMarketing": true,
"createdAt": "2024-01-15T10:30:00Z"
}
}

customer_updated

Aktivira se kada se izmijene informacije o kupcu.

{
"event": "customer_updated",
"timestamp": "2024-01-15T14:45:00Z",
"data": {
"id": "cust_12345",
"email": "[email protected]",
"changes": {
"phone": {
"old": null,
"new": "+1234567890"
}
}
}
}

customer_deleted

Aktivira se kada se kupac ukloni s vaše platforme.

{
"event": "customer_deleted",
"timestamp": "2024-01-15T16:00:00Z",
"data": {
"id": "cust_12345",
"email": "[email protected]",
"deletedAt": "2024-01-15T16:00:00Z"
}
}

Radnje

Stvori kontakt

Stvara novi kontakt u Brevo kada se stvori kupac.

POST /v3/contacts

Stvaranje novog kontakta u vašem Brevo računu

Query Parameters

Parameter Description
email string required
Email adresa kontakta
attributes object optional
Atributi kontakta
listIds array optional
ID-ovi popisa za dodavanje kontakta
updateEnabled boolean optional
Ažuriraj ako kontakt postoji
Default: false

Responses

201 Kontakt uspješno stvoren
400 Nevažeći parametri zahtjeva
409 Kontakt već postoji

Ažuriraj kontakt

Ažurira postojeći kontakt kada se promijene podaci kupca.

PUT /v3/contacts/{identifier}

Ažuriranje atributa postojećeg kontakta

Path Parameters

Parameter Description
identifier string required
Email ili ID kontakta

Query Parameters

Parameter Description
attributes object optional
Atributi za ažuriranje
listIds array optional
Popisi za dodavanje kontakta
unlinkListIds array optional
Popisi za uklanjanje kontakta

Responses

204 Kontakt uspješno ažuriran
400 Nevažeći parametri zahtjeva
404 Kontakt nije pronađen

Izbriši kontakt

Uklanja kontakt kada se briše kupac.

DELETE /v3/contacts/{identifier}

Trajno brisanje kontakta iz Brevo

Path Parameters

Parameter Description
identifier string required
Email ili ID kontakta

Responses

204 Kontakt uspješno izbrisan
404 Kontakt nije pronađen

Primjeri koda

JavaScript (Node.js)

import { TajoClient } from '@tajo/sdk';
const tajo = new TajoClient({
apiKey: process.env.TAJO_API_KEY,
brevoApiKey: process.env.BREVO_API_KEY
});
// Enable customer sync skill
await tajo.skills.enable('customer-sync', {
source: 'shopify',
fieldMapping: {
email: 'email',
firstName: 'FIRSTNAME',
lastName: 'LASTNAME',
totalOrders: 'TOTAL_ORDERS',
totalSpent: 'TOTAL_SPENT'
},
options: {
syncMode: 'realtime',
listId: 5
}
});
// Manually trigger a sync
await tajo.skills.trigger('customer-sync', {
event: 'customer_created',
data: {
firstName: 'Jane',
lastName: 'Smith'
}
});

Python

from tajo import TajoClient
tajo = TajoClient(
api_key=os.environ['TAJO_API_KEY'],
brevo_api_key=os.environ['BREVO_API_KEY']
)
# Enable customer sync skill
tajo.skills.enable('customer-sync', {
'source': 'woocommerce',
'field_mapping': {
'email': 'email',
'first_name': 'FIRSTNAME',
'last_name': 'LASTNAME',
'total_orders': 'TOTAL_ORDERS'
},
'options': {
'sync_mode': 'realtime',
'list_id': 5
}
})
# Manually trigger a sync
tajo.skills.trigger('customer-sync', {
'event': 'customer_updated',
'data': {
'email': '[email protected]',
'total_orders': 10,
'total_spent': 1250.00
}
})

Nadzor

Nadzorna ploča statusa sinkronizacije

Pratite izvedbu sinkronizacije na Tajo nadzornoj ploči:

  • Stopa uspjeha sinkronizacije: Postotak uspješnih sinkronizacija
  • Prosječna latencija: Vrijeme od događaja do Brevo ažuriranja
  • Stopa grešaka: Neuspješni pokušaji sinkronizacije
  • Dubina reda čekanja: Operacije sinkronizacije na čekanju

Webhook obavijesti

Primajte obavijesti za događaje sinkronizacije:

notifications:
webhook_url: https://your-app.com/webhooks/tajo
events:
- sync_completed
- sync_failed
- batch_completed

Rješavanje problema

Uobičajeni problemi

Kontakt već postoji (409)

Omogućite updateEnabled: true u svojoj konfiguraciji kako biste ažurirali postojeće kontakte umjesto neuspjeha.

GreškaUzrokRješenje
Contact already existsKontakt s ovim emailom postojiOmogućite updateEnabled: true
Invalid attributeAtribut ne postoji u BrevoPrvo stvorite atribut u Brevo
Rate limit exceededPreviše API zahtjevaKoristite serijski način sinkronizacije
Invalid email formatPogrešno oblikovana email adresaValidirajte emailove prije sinkronizacije

Način za otklanjanje pogrešaka

Omogućite zapisivanje za otklanjanje grešaka:

skills:
customer-sync:
debug: true
log_level: verbose

Srodni Skillovi

Sljedeći koraci

  1. Konfigurirajte mapiranja polja za svoju platformu
  2. Postavite prilagođene atribute u Brevo
  3. Omogućite sinkronizaciju u stvarnom vremenu za trenutna ažuriranja

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