Müşteri Senkronizasyonu

Müşteri Senkronizasyonu

E-ticaret platformunuzdaki müşteri verilerini Brevo kişilerine otomatik olarak senkronize edin. Bu beceri, Brevo kişi listenizin her zaman güncel müşteri tabanınızı yansıtmasını sağlar.

Genel Bakış

ÖzellikDeğer
KategoriVeri Senkronizasyonu
DurumStabil
Sürüm2.1
Tetikleyicilercustomer_created, customer_updated, customer_deleted
EylemlerKişi Oluştur, Kişi Güncelle, Kişi Sil

Nasıl Çalışır

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. Olay Algılama: Platformunuzdan gelen müşteri yaşam döngüsü olaylarını dinler
  2. Veri Eşleme: Platform alanlarını Brevo kişi özelliklerine eşler
  3. API Senkronizasyonu: Brevo API aracılığıyla kişileri oluşturur, günceller veya siler
  4. Hata Yönetimi: Başarısız işlemleri üstel geri çekilme ile yeniden dener

Yapılandırma

Temel Kurulum

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

Alan Eşleme

Platformunuzun müşteri alanlarını Brevo kişi özelliklerine eşleyin:

Varsayılan Alan Eşlemeleri

Parameter Type Description
email required
string

Müşteri e-posta adresi. Brevo'da benzersiz tanımlayıcı olarak kullanılır.

firstName optional
string

Müşterinin adı. FIRSTNAME özelliğine eşlenir.

Default: FIRSTNAME
lastName optional
string

Müşterinin soyadı. LASTNAME özelliğine eşlenir.

Default: LASTNAME
phone optional
string

E.164 formatında telefon numarası. WhatsApp/SMS için SMS özelliğine eşlenir.

Default: SMS
acceptsMarketing optional
boolean

Pazarlama onay durumu. E-posta abonelik durumunu kontrol eder.

Default: true

Özel Özellikler

E-ticaret verileri için özel özellik eşlemeleri ekleyin:

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

Önce özellikleri oluşturun: Özel özellikler, senkronize edilebilmeleri için önce Brevo’da oluşturulmalıdır. Oluşturmak için Brevo panosunu veya API’yi kullanın.

Tetikleyiciler

customer_created

Platformunuzda yeni bir müşteri oluşturulduğunda tetiklenir.

{
"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

Müşteri bilgileri değiştirildiğinde tetiklenir.

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

customer_deleted

Platformunuzdan bir müşteri kaldırıldığında tetiklenir.

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

Eylemler

Kişi Oluştur

Bir müşteri oluşturulduğunda Brevo’da yeni bir kişi oluşturur.

POST /v3/contacts

Brevo hesabınızda yeni bir kişi oluşturun

Query Parameters

Parameter Description
email string required
Kişi e-posta adresi
attributes object optional
Kişi özellikleri
listIds array optional
Kişinin ekleneceği liste kimlikleri
updateEnabled boolean optional
Kişi varsa güncelle
Default: false

Responses

201 Kişi başarıyla oluşturuldu
400 Geçersiz istek parametreleri
409 Kişi zaten mevcut

Kişi Güncelle

Müşteri verileri değiştiğinde mevcut bir kişiyi günceller.

PUT /v3/contacts/{identifier}

Mevcut bir kişinin özelliklerini güncelleyin

Path Parameters

Parameter Description
identifier string required
E-posta veya kişi kimliği

Query Parameters

Parameter Description
attributes object optional
Güncellenecek özellikler
listIds array optional
Kişinin ekleneceği listeler
unlinkListIds array optional
Kişinin kaldırılacağı listeler

Responses

204 Kişi başarıyla güncellendi
400 Geçersiz istek parametreleri
404 Kişi bulunamadı

Kişi Sil

Bir müşteri silindiğinde kişiyi kaldırır.

DELETE /v3/contacts/{identifier}

Brevo'dan bir kişiyi kalıcı olarak silin

Path Parameters

Parameter Description
identifier string required
E-posta veya kişi kimliği

Responses

204 Kişi başarıyla silindi
404 Kişi bulunamadı

Kod Örnekleri

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

İzleme

Senkronizasyon Durumu Panosu

Senkronizasyon performansını Tajo panosundan izleyin:

  • Senkronizasyon Başarı Oranı: Başarılı senkronizasyonların yüzdesi
  • Ortalama Gecikme: Olaydan Brevo güncellemesine kadar geçen süre
  • Hata Oranı: Başarısız senkronizasyon denemeleri
  • Kuyruk Derinliği: Bekleyen senkronizasyon işlemleri

Webhook Bildirimleri

Senkronizasyon olayları için bildirim alın:

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

Sorun Giderme

Sık Karşılaşılan Sorunlar

Kişi Zaten Mevcut (409)

Mevcut kişileri başarısız olmak yerine güncellemek için yapılandırmanızda updateEnabled: true seçeneğini etkinleştirin.

HataNedenÇözüm
Contact already existsE-posta ile kişi mevcutupdateEnabled: true seçeneğini etkinleştirin
Invalid attributeÖzellik Brevo’da mevcut değilÖnce Brevo’da özelliği oluşturun
Rate limit exceededÇok fazla API isteğiToplu senkronizasyon modunu kullanın
Invalid email formatHatalı e-posta adresiSenkronizasyon öncesi e-postaları doğrulayın

Hata Ayıklama Modu

Sorun gidermek için hata ayıklama günlüğünü etkinleştirin:

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

İlgili Beceriler

Sonraki Adımlar

  1. Platformunuz için alan eşlemelerini yapılandırın
  2. Brevo’da özel özellikler ayarlayın
  3. Anlık güncellemeler için gerçek zamanlı senkronizasyonu etkinleştirin

Subscribe to updates

developer-docs

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

AI Asistan

Merhaba! Belgeler hakkında her şeyi sorabilirsiniz.

Brevo ile ücretsiz başlayın