Đồng bộ khách hàng
Tajo đưa dữ liệu khách hàng vào Brevo theo hai cách: đồng bộ liên tục (thay đổi từ một nền tảng đã kết nối chảy vào Brevo không ngừng) và di chuyển hàng loạt (một lần chuyển dữ liệu ở quy mô lớn, có thể tiếp tục khi gián đoạn, từ Mailchimp, Klaviyo, HubSpot, Salesforce, Shopify, WooCommerce, Stripe và những nền tảng khác). Cả hai chạy trên cùng một engine và chia sẻ một đặc tính không thể thương lượng: sự đồng ý được chứng minh trên từng bản ghi, không bao giờ được mặc định là có.
Sự đồng ý được quyết định như thế nào
Mọi bản ghi đều phải qua một cổng kiểm tra đồng ý fail-closed trước khi được vào một đối tượng marketing:
| Phán quyết | Điều gì xảy ra |
|---|---|
Đồng ý đã được chứng minh (ví dụ Mailchimp subscribed, Klaviyo SUBSCRIBED, đồng ý marketing của Shopify) | Được nhập vào các danh sách Brevo mà bạn chọn |
| Từ chối tường minh (đã hủy đăng ký, đã chọn không nhận) | Không bị bỏ đi: được mang vào Brevo dưới dạng liên hệ bị chặn và ghi vào sổ đăng ký không liên hệ, để nền tảng mới không bao giờ gửi thư cho họ |
Bị chặn vì khả năng gửi đến (hard bounce, khiếu nại spam, ví dụ Mailchimp cleaned, Klaviyo HARD_BOUNCE/SPAM_COMPLAINT) | Được mang sang dưới dạng bị chặn và đánh dấu cố định: một lần chọn nhận sau này trên nền tảng khác không bao giờ gỡ được một lần bounce hay khiếu nại |
| Chưa được chứng minh (không có tín hiệu đồng ý nào) | Bị từ chối. “Chúng tôi không chứng minh được sự đồng ý” và “có sự đồng ý” không bao giờ là cùng một kết quả |
Phân biệt giữa “từ chối” và “chưa được chứng minh” là điều quan trọng: một lần hủy đăng ký là quyết định phải sống sót qua đợt di chuyển; còn một trường dữ liệu vắng mặt thì không phải là quyết định gì cả.
Nguồn chứng minh đồng ý theo từng nền tảng
| Nền tảng | Bằng chứng đồng ý | Tín hiệu chặn |
|---|---|---|
| Mailchimp | Trạng thái thành viên subscribed | unsubscribed (chọn không nhận), cleaned (hard bounce) |
| Klaviyo | Đồng ý marketing trên hồ sơ SUBSCRIBED | Danh sách chặn kèm lý do (UNSUBSCRIBE, USER_SUPPRESSED, HARD_BOUNCE, INVALID_EMAIL, SPAM_COMPLAINT) |
| Shopify | email_marketing_consent.state / accepts_marketing | not_subscribed tường minh |
| HubSpot | Trạng thái đăng ký (batch API, 100 liên hệ mỗi lần gọi) | hs_email_optout |
| Salesforce | Không thể chứng minh hàng loạt từ Sales Cloud, danh tính vẫn được chuyển sang nhưng việc ghi danh vào đối tượng thì vẫn đóng | HasOptedOutOfEmail, EmailBouncedDate |
| WooCommerce / Stripe | Không suy ra từ giao dịch mua, một bản ghi khách hàng không phải là sự đồng ý nhận marketing | Không có |
Giải quyết xung đột trong quá trình di chuyển
Khi nguồn và Brevo bất đồng về cùng một địa chỉ, cách giải quyết theo đúng chế độ bạn chọn:
- Quyết định mới nhất thắng (mặc định): bên có quyết định đồng ý mang dấu thời gian mới hơn sẽ thắng. Bên không có dấu thời gian đọc được luôn thua bên có; khi cả hai đều không có dấu thời gian, trạng thái ít tiếp cận được hơn sẽ thắng.
- Nguồn sự thật: bạn chỉ định nền tảng có thẩm quyền cho đợt di chuyển (“nguồn là đúng” hoặc “Brevo là đúng”). Nếu workspace của bạn đã khai báo một hệ thống nguồn sự thật, nền tảng đó tự động là thẩm quyền mặc định.
- Trong mọi chế độ: hard bounce và khiếu nại spam là dữ kiện về khả năng gửi đến, không phải tùy chọn cá nhân; chúng không bao giờ được gỡ chặn bởi một lần chọn nhận mới hơn, và mọi xung đột mà engine từ chối xử lý đều được đếm và báo cáo, không bao giờ bị bỏ qua trong im lặng.
Độ tin cậy ở quy mô lớn
- Việc trích xuất dựa trên con trỏ duyệt hết bảng nguồn (hơn 100 nghìn liên hệ) kèm các điểm kiểm tra; khi gặp sự cố, quá trình tiếp tục từ lô hoàn tất gần nhất, và các lần thử lại không bao giờ ghi trùng (khóa idempotency cho từng bản ghi).
- Việc ghi vào Brevo dùng bulk import API (10.000 liên hệ mỗi khối) trong giới hạn tần suất của Brevo; trạng thái chặn đi cùng lần nhập, nên không có khoảng thời gian nào liên hệ vừa tiếp cận được rồi mới bị chặn.
- Mỗi lần chạy đều báo cáo cái gì đã chuyển và cái gì không: liên hệ đã nhập, các từ chối tường minh được mang theo, các trạng thái chặn được lan truyền, các xung đột bị giữ lại, và lý do thất bại của từng bản ghi.
Đồng bộ bổ sung gì sau khi di chuyển
Sau khi di chuyển xong, chính những kết nối đó giữ cho Brevo luôn cập nhật: webhook nền tảng (Shopify, WooCommerce, WordPress, Mailchimp) đưa thay đổi về gần như tức thời, còn các nguồn polling thì làm mới theo lịch. Những lần hủy đăng ký quan sát được ở nguồn sẽ lật trạng thái đồng ý trong sổ cái, kèm dấu vết kiểm toán về thời điểm, nơi phát sinh và dựa trên bằng chứng nào.
Thiết lập
- Kết nối nền tảng nguồn trong Tajo (API key hoặc OAuth, tùy connector).
- Kết nối Brevo và chọn các danh sách đích.
- Chọn chế độ giải quyết xung đột (hoặc giữ mặc định).
- Chạy đợt di chuyển; xem lại báo cáo, gồm cả những xung đột bị giữ lại, trước khi bật các tự động hóa.
Việc xử lý đồng ý và chặn không thể tắt bằng cấu hình. Không có thiết lập nào nhập các liên hệ đã hủy đăng ký thành liên hệ có thể gửi thư.