Klaviyo integration
When an affiliate is approved, Cobalz can push them into a Klaviyo list. Useful for onboarding email sequences, monthly newsletters, and re-engagement campaigns aimed at your affiliates specifically.
Setup
- In Klaviyo: Account → API Keys → Create Private Key. Scope to
List Read+Profile Write. - Create (or pick) a list. Copy its
list_id. - In Cobalz:
Settings → Integrations → Klaviyo. Paste API key + list id, save.
What syncs
- On
affiliate.approved: we POST the profile to Klaviyo with email, first_name, last_name, and custom properties (cobalz_slug,cobalz_tier,cobalz_lifetime_commissions_paid). - On
affiliate.suspended: we tag the profile withcobalz_status:suspended(we do not delete — Klaviyo's data retention is your call). - Backfill: at
Settings → Integrations → Klaviyo → Sync existing affiliateswe push every approved affiliate in one batched call.
Custom profile properties
{
"cobalz_slug": "alice",
"cobalz_tier": "gold",
"cobalz_status": "approved",
"cobalz_lifetime_commissions_paid": 1234.56,
"cobalz_signup_at": "2026-01-15T12:00:00Z"
}Failure handling
Klaviyo sync is best-effort. If Klaviyo's API is down, we log to Sentry and move on — the affiliate is still approved in Cobalz. You can retry the sync from Settings → Integrations → Klaviyo → Resync.
Note:Klaviyo's rate limits are 10 requests/second per account. Backfill of 5,000 affiliates takes ~8 minutes and is run as a single background job.