Synchronizácia zákazníkov
Synchronizácia zákazníkov
Automaticky synchronizujte zákaznícke dáta z vašej e-commerce platformy do kontaktov Brevo. Tento skill zabezpečuje, že váš zoznam kontaktov Brevo vždy odzrkadľuje aktuálnu zákaznícku základňu.
Prehľad
| Vlastnosť | Hodnota |
|---|---|
| Kategória | Synchronizácia dát |
| Stav | Stabilný |
| Verzia | 2.1 |
| Spúšťače | customer_created, customer_updated, customer_deleted |
| Akcie | Vytvorenie kontaktu, Aktualizácia kontaktu, Vymazanie kontaktu |
Ako to funguje
graph LR A[E-commerce platforma] -->|Udalosť zákazníka| B[Skill synchronizácie zákazníkov] B -->|Mapovanie dát| C[Mapovanie polí] C -->|Volanie API| D[Brevo Contacts API] D -->|Úspech| E[Kontakt aktualizovaný] D -->|Chyba| F[Fronta opakovaných pokusov]- Detekcia udalostí: Počúva udalosti životného cyklu zákazníka z vašej platformy
- Mapovanie dát: Mapuje polia platformy na atribúty kontaktu Brevo
- Synchronizácia API: Vytvára, aktualizuje alebo maže kontakty cez Brevo API
- Spracovanie chýb: Opakuje neúspešné operácie s exponenciálnym backoff
Konfigurácia
Základné nastavenie
skills: customer-sync: enabled: true source: shopify # alebo woocommerce, magento, custom
# Mapovanie polí platformy na atribúty Brevo field_mapping: email: email firstName: FIRSTNAME lastName: LASTNAME phone: SMS
# Možnosti synchronizácie options: sync_mode: realtime # alebo batch delete_behavior: soft # alebo hard list_id: 5 # Pridať do tohto zoznamuMapovanie polí
Mapujte zákaznícke polia vašej platformy na atribúty kontaktu Brevo:
Predvolené mapovanie polí
| Parameter | Type | Description |
|---|---|---|
email required | string | E-mailová adresa zákazníka. Používa sa ako jedinečný identifikátor v Brevo. |
firstName optional | string | Krstné meno zákazníka. Mapuje sa na atribút FIRSTNAME. |
lastName optional | string | Priezvisko zákazníka. Mapuje sa na atribút LASTNAME. |
phone optional | string | Telefónne číslo vo formáte E.164. Mapuje sa na atribút SMS pre WhatsApp/SMS. |
acceptsMarketing optional | boolean | Stav súhlasu s marketingom. Riadi stav e-mailového odberu. |
Vlastné atribúty
Pridajte vlastné mapovania atribútov pre e-commerce dáta:
field_mapping: # Štandardné polia email: email firstName: FIRSTNAME
# Vlastné e-commerce atribúty totalOrders: TOTAL_ORDERS totalSpent: TOTAL_SPENT lastOrderDate: LAST_ORDER_DATE customerTier: CUSTOMER_TIER tags: TAGSTip
Najprv vytvorte atribúty: Vlastné atribúty musia byť vytvorené v Brevo predtým, ako ich možno synchronizovať. Na ich vytvorenie použite dashboard Brevo alebo API.
Spúšťače
customer_created
Spustí sa, keď je na vašej platforme vytvorený nový zákazník.
{ "event": "customer_created", "timestamp": "2024-01-15T10:30:00Z", "data": { "id": "cust_12345", "firstName": "Jane", "lastName": "Smith", "phone": "+1234567890", "acceptsMarketing": true, "createdAt": "2024-01-15T10:30:00Z" }}customer_updated
Spustí sa, keď sú zákaznícke informácie upravené.
{ "event": "customer_updated", "timestamp": "2024-01-15T14:45:00Z", "data": { "id": "cust_12345", "changes": { "phone": { "old": null, "new": "+1234567890" } } }}customer_deleted
Spustí sa, keď je zákazník odstránený z vašej platformy.
{ "event": "customer_deleted", "timestamp": "2024-01-15T16:00:00Z", "data": { "id": "cust_12345", "deletedAt": "2024-01-15T16:00:00Z" }}Akcie
Vytvorenie kontaktu
Vytvorí nový kontakt v Brevo, keď je vytvorený zákazník.
/v3/contacts Vytvorenie nového kontaktu vo vašom účte Brevo
Query Parameters
| Parameter | Description |
|---|---|
| email string required | E-mailová adresa kontaktu |
| attributes object optional | Atribúty kontaktu |
| listIds array optional | ID zoznamov, do ktorých sa kontakt pridá |
| updateEnabled boolean optional | Aktualizovať, ak kontakt existuje
Default: false |
Responses
Aktualizácia kontaktu
Aktualizuje existujúci kontakt, keď sa zmenia zákaznícke dáta.
/v3/contacts/{identifier} Aktualizácia atribútov existujúceho kontaktu
Path Parameters
| Parameter | Description |
|---|---|
| identifier string required | E-mail alebo ID kontaktu |
Query Parameters
| Parameter | Description |
|---|---|
| attributes object optional | Atribúty na aktualizáciu |
| listIds array optional | Zoznamy, do ktorých sa kontakt pridá |
| unlinkListIds array optional | Zoznamy, z ktorých sa kontakt odstráni |
Responses
Vymazanie kontaktu
Odstráni kontakt, keď je zákazník vymazaný.
/v3/contacts/{identifier} Trvalé vymazanie kontaktu z Brevo
Path Parameters
| Parameter | Description |
|---|---|
| identifier string required | E-mail alebo ID kontaktu |
Responses
Ukážky kódu
JavaScript (Node.js)
import { TajoClient } from '@tajo/sdk';
const tajo = new TajoClient({ apiKey: process.env.TAJO_API_KEY, brevoApiKey: process.env.BREVO_API_KEY});
// Aktivácia skill synchronizácie zákazníkovawait 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 }});
// Manuálne spustenie synchronizácieawait 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'])
# Aktivácia skill synchronizácie zákazníkovtajo.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 }})
# Manuálne spustenie synchronizácietajo.skills.trigger('customer-sync', { 'event': 'customer_updated', 'data': { 'total_orders': 10, 'total_spent': 1250.00 }})Monitorovanie
Dashboard stavu synchronizácie
Monitorujte výkonnosť synchronizácie v dashboarde Tajo:
- Miera úspešnosti synchronizácie: Percentuálny podiel úspešných synchronizácií
- Priemerná latencia: Čas od udalosti po aktualizáciu Brevo
- Miera chýb: Neúspešné pokusy o synchronizáciu
- Hĺbka fronty: Čakajúce operácie synchronizácie
Webhookové notifikácie
Prijímajte notifikácie o udalostiach synchronizácie:
notifications: webhook_url: https://your-app.com/webhooks/tajo events: - sync_completed - sync_failed - batch_completedRiešenie problémov
Bežné problémy
Kontakt už existuje (409)
Vo svojej konfigurácii aktivujte updateEnabled: true, aby ste aktualizovali existujúce kontakty namiesto zlyhania.
| Chyba | Príčina | Riešenie |
|---|---|---|
Contact already exists | Kontakt s e-mailom existuje | Aktivujte updateEnabled: true |
Invalid attribute | Atribút v Brevo neexistuje | Najprv vytvorte atribút v Brevo |
Rate limit exceeded | Príliš veľa API požiadaviek | Použite dávkový režim synchronizácie |
Invalid email format | Nesprávny formát e-mailovej adresy | Validujte e-maily pred synchronizáciou |
Režim ladenia
Aktivujte podrobné protokolovanie pre riešenie problémov:
skills: customer-sync: debug: true log_level: verboseSúvisiace Skills
- Udalosti objednávok – Synchronizácia dát objednávok
- Katalóg produktov – Synchronizácia dát produktov
- Udalosti košíka – Sledovanie aktivity košíka
Ďalšie kroky
- Nakonfigurujte mapovanie polí pre vašu platformu
- Nastavte vlastné atribúty v Brevo
- Aktivujte synchronizáciu v reálnom čase pre okamžité aktualizácie