FrancodesystemsFran<code>systems
MarketingCustom integration

Holded Klaviyo integration

Holded customers and purchases synced with Klaviyo for advanced segmentation.

HoldedHolded
KlaviyoKlaviyo

Implementation time · 5-10 días laborables

Diagnosis

The problem

Klaviyo connects natively to Shopify but not to Holded. This means campaigns are segmented by what Klaviyo sees (cart, Shopify orders) but NOT by the fiscal/accounting reality (invoices, returns, B2B). The result: campaigns aimed at customers who returned everything, discounts sent to B2B customers with their own pricing, LTV metrics that do not match real cash.

Proposal

The solution

Klaviyo is the king of email marketing for ecommerce. Connecting it with Holded lets you segment campaigns by REAL purchase history (not just the cart), apply lifetime value, and trigger automated flows when relevant accounting events happen. Bidirectional: Holded customers to Klaviyo audiences, Klaviyo events to notes on the Holded contact.

Scope

What we automate

  • New Holded customer to a Klaviyo profile with enriched data (real LTV, frequency, AOV)
  • Invoice issued in Holded to a custom event in Klaviyo for segmentation by historical value
  • Credit note (return) adjusts LTV in Klaviyo and excludes from campaigns
  • Dynamic segments in Klaviyo based on Holded data (top 10% LTV, repeat buyers, dormant)
  • B2B customer detected in Holded to tagged in Klaviyo to exclude from B2C promos
  • Klaviyo newsletter sign-up to a pre-qualified contact in Holded for sales follow-up
Architecture

How we build it

Klaviyo API v2 (Profiles, Events and Lists endpoints) with OAuth. Holded API v2 to read contacts, invoices and credit notes. Custom events in Klaviyo are named with a prefix (holded_invoice_paid, holded_refund_processed) so they do not clash with native events. Incremental reconciliation by timestamp.

flow.ts
webhook klaviyo.event
queue.enqueue(jobId)
worker.handle() // idempotent
holded.api.call() // retries with backoff
log.emit({ status: 'ok' })
FAQ

Frequently asked questions

Does it replace the native Klaviyo + Shopify integration?

No, it complements it. Klaviyo + Shopify covers store behavior (carts, pre-payment orders). Klaviyo + Holded adds the post-sale reality (issued invoices, returns, B2B). Both in parallel give the complete picture.

Does it work if we do NOT use Shopify?

Yes. Holded is the only source of truth needed. If you sell pure B2B, over the phone, or through WooCommerce/PrestaShop, this connector gives you the real customer insight for Klaviyo without needing Shopify.

What about personal data (GDPR)?

We only sync the fields that are needed (email, name, transactional data). Klaviyo is responsible for marketing consent on its side. Holded does NOT mark contacts as marketing opt-ins by default, that is the responsibility of the Klaviyo touchpoint.

Which Klaviyo plan do I need?

API access comes with every Klaviyo plan. The limit is the custom-event quota for your plan (the free tier is enough for small stores, Pro recommended from 5,000 active contacts).

Shall we talk about your Klaviyo integration?

A 30-minute call, no strings. You leave with scope and a price.