¶ Klaviyo - email marketing and automation integration
The Hummerce integration with Klaviyo sends newsletter subscribers' customer profiles, their orders, on-site behaviour (viewed products, cart, started checkout) and the product catalog to this email marketing platform. This lets Klaviyo run campaigns and automations based on real store data - a welcome for new subscribers, abandoned cart, post-purchase messages. The store is the data source for Klaviyo; sending, flows and message content are managed in Klaviyo.
Last updated: 2026-10-29.
¶ Benefits and use cases
- Klaviyo automations - the welcome flow and abandoned cart - get store data without manual exports: profile and consent, add to cart and started checkout.
- Orders reach Klaviyo from the store server, not from the browser - ad blockers or an interrupted return from the payment gateway do not lose sales in revenue reports.
- Messages can show the product image, name and price from the store catalog, and recommendations skip unavailable products.
- Unsubscribing from an email in Klaviyo flows back to the store - newsletter consent on the customer account is withdrawn automatically.
- Changes to customer data in the store reach the Klaviyo profile within a few minutes.
- When switching email marketing systems, existing subscribers can move to Klaviyo with their original consent date and without a welcome email.
- Store staff see on the customer and order card whether the data reached Klaviyo, and an order with a sending error is flagged on the order list.
The store sends only customers with newsletter consent to Klaviyo. A person who has not subscribed is not sent in any form - neither their data nor their orders. As a result, revenue and segments in Klaviyo cover sales from subscribers, not the store's total turnover - this is intended behaviour.
The exception is browsing: anonymous events (e.g. viewing a product before entering an email address) are collected by the Klaviyo script for everyone who accepted cookies. Klaviyo links them to a profile only when the store learns the email address of a subscribed person.
The integration is invisible to shoppers - it does not change how the store looks.
¶ Customer profiles and marketing consent
- In the background, the store sends the profile of a customer with consent to Klaviyo: email, first and last name, phone, company name, address (street, postcode, city, country, region), plus gender, date of birth, company account flag and tax ID (NIP) as custom profile properties.
- Empty fields are not sent - they do not overwrite data Klaviyo already holds.
- A phone number without a country prefix gets the prefix from the store settings. A number that cannot be corrected is not sent - the profile reaches Klaviyo without a phone number rather than failing.
- A profile is matched by the store customer ID and email address. A profile Klaviyo created on its own (e.g. from a form or import) is updated, not duplicated.
- Withdrawing consent in the store withdraws consent in Klaviyo.
An account created through the newsletter form starts with only an email address and first name. When that person places an order without logging in and ticks marketing consent in it, the store fills the account with the buyer's details from the order (without the delivery address), and the full profile is sent to Klaviyo. A guest order does not change the data of a registered, password-protected account.
- For every order of a subscribed customer the store sends a Placed Order event with the order number, value, categories, product names, shipping cost, payment method and discount value, and for each line an Ordered Product event with the product code, name, quantity, price, URL and image.
- Only the Placed Order event carries the order value - revenue is not counted twice.
- Re-sending the same order does not create a duplicate in Klaviyo.
- In the order event the profile is identified only by the buyer's identifiers - the recipient's details (e.g. a gift recipient) never reach the profile.
- Klaviyo attributes campaign revenue by profile within the conversion window set on the Klaviyo account (5 days by default).
Browser events are sent by the Klaviyo script launched through Google Tag Manager, on the same data layer used by Google Analytics 4:
| Klaviyo event |
When |
| Viewed Product (and recently viewed list) |
opening a product page |
| Added to Cart |
adding a product to the cart |
| Started Checkout |
first checkout step |
| profile identification |
the store learns the customer's email address |
| Active on Site |
recorded by the Klaviyo script itself |
The script runs once the customer accepts both statistics and marketing cookies. A consent change during a visit takes effect from the next page opened; events from before consent are not sent retroactively. Only the public Klaviyo key is used in the page script.
- Klaviyo fetches the catalog from the store as an XML file (feed) - with ID, name, URL, image, description, price, categories and availability. The file is generated by the feeds module - see Product feeds and comparison sites.
- The catalog covers everything that can be viewed and ordered - wider than advertising feeds. A message referring to a product missing from the catalog will not be sent.
- A temporarily unavailable product stays in the catalog and is only excluded from recommendations; it disappears only when permanently withdrawn.
- A product with variants is a single catalog item with a "from" price.
- Klaviyo refreshes the catalog every 6 hours - this pace is set by Klaviyo.
Once an hour the store fetches profiles that unsubscribed in Klaviyo and withdraws newsletter consent on the customer account with the same email address. This is the only data flow from Klaviyo to the store.
A store that previously ran its newsletter in another system can move its existing subscribers to Klaviyo in a one-off transfer:
- consent is granted immediately with the original consent date (the sign-up confirmation date, or the account creation date if missing), without a confirmation email and without the welcome flow,
- a person who has meanwhile unsubscribed in Klaviyo is not subscribed again,
- the integration with the previous system that changes the same consents is switched off while the Klaviyo integration runs.
¶ Sending statuses and errors
- Sending runs in the background, in a queue: profiles and orders every 5 minutes, unsubscribes every hour.
- On the customer and order card, parameters starting with Klaviyo show the sending status, error count, last error message and the Klaviyo profile ID.
- A record that failed to send is retried up to the Retry limit. After that the order is flagged on the order list, with the error message on its card. The flag clears itself once the order is sent.
- Test mode lets you check the configuration without sending anything to Klaviyo.
- The store (Hummerce) delivers the data: profiles, consents, order events, browser events and the catalog, within the agreed set of fields. Acceptance is objective: the agreed event reaches Klaviyo with all fields and correct values.
- The store team in Klaviyo configures flows, campaigns, segments, templates and message content, lists and the sign-up confirmation mode (double opt-in), the revenue attribution window, sender settings and deliverability. The store is responsible for the marketing performance of its emails (opens, conversions).
The module runs on Hummerce version 2.35.
- A Klaviyo account with a private API key and a target list - outside Hummerce, on Klaviyo's terms. Each store (e.g. each language version with its own account) has its own key and list.
- Newsletter - required. Newsletter consent, sign-up confirmation and the consent date come from the newsletter module. Newsletter form fields (e.g. first name) must be saved on the customer account - otherwise the Klaviyo profile contains only the email address.
- Google Tag Manager and the Google Analytics 4 data layer - for browser events.
- A cookie consent management tool - see Cookie consent and Consent Mode.
- The feeds module - for the product catalog.
- Customer parameters: gender, date of birth (date type), region, company account - their names are set in the settings according to the store's configuration.
- No other active newsletter integration that changes the same consents.
- Requires implementation - the module is enabled in the store configuration and needs Klaviyo account details. Scope:
- entering the API key, target list and phone prefix,
- mapping customer parameters (gender, date of birth, region, company account) to the store configuration and checking the newsletter form,
- the product catalog feed and connecting it in the Klaviyo panel,
- browser events in the Google Tag Manager container, triggered after cookie consent,
- tests in test mode, then on the Klaviyo account: profile and consent, order, browser events, catalog, unsubscribe,
- setting the date from which orders are sent (usually the go-live date) and enabling sending.
- Minimum estimated time: from 16 h. The time for a specific implementation depends on its scope - we quote it individually.
- What affects the time:
- transferring the subscriber list from another email marketing system (quoted separately),
- the number of stores and Klaviyo accounts (e.g. separate language versions),
- the consent tool and Google Tag Manager container (already in the store or to be implemented),
- order history import (an option quoted separately),
- the store version - an upgrade is quoted separately.
- Good practice at go-live:
- the production Klaviyo account should be clean from the start - metric names created in Klaviyo (test ones too) cannot be deleted, and a second metric with a similar name splits revenue reports,
- check the sign-up confirmation mode (double opt-in) of the target lists in Klaviyo before go-live - the account setting does not change existing lists,
- enable the welcome flow only after the existing list has been transferred - otherwise it will reach every transferred subscriber.
- Only newsletter subscribers and their orders are sent to Klaviyo - revenue and segments in Klaviyo do not cover the store's total turnover.
- Orders from before go-live are not transferred, so post-purchase automations work fully after a few weeks. History import is a separate option.
- Klaviyo refreshes the catalog every 6 hours. A product with variants is a single catalog item with a "from" price.
- Browser events require the customer's consent to statistics and marketing cookies.
- Flows, campaigns, segments and message content are configured in Klaviyo.
- Order history import to Klaviyo.
- Product variants as separate catalog items.
- Feeding the catalog through the Klaviyo API instead of a feed.
Does Hummerce integrate with Klaviyo?
Yes. The store sends subscriber profiles with consent, orders, on-site behaviour (viewed products, cart, started checkout) and the product catalog to Klaviyo, and unsubscribes from Klaviyo flow back to the store.
Are all store customers sent to Klaviyo?
No. Only newsletter subscribers are sent, together with their orders. That is why revenue in Klaviyo covers sales from subscribers, not the store's total turnover.
Does the integration support abandoned cart?
Yes. The store sends add to cart and started checkout events, and the abandoned cart flow is configured in Klaviyo.
Can we keep our existing subscribers when moving to Klaviyo?
Yes. Subscribers from the previous email marketing system are transferred once with their original consent date, without a confirmation email and without the welcome flow.
Why doesn't a price change in the store show up in emails right away?
Klaviyo fetches the product catalog every 6 hours - price and availability changes arrive with that delay.
How long does a Klaviyo integration take?
From 16 h - covering account configuration, customer parameters, the catalog feed, Google Tag Manager events and tests. Transferring the list from another system and order history import are quoted separately.
Want to see how the Klaviyo integration can support your store's marketing? Book a free demo.
- Panel configuration: Settings > Klaviyo:
- connection: API URL (Klaviyo API by default), API revision, Private API key, Target list ID, Phone prefix (international number format), Test mode (on by default, works without a restart),
- profile parameters: names of the gender, date of birth, region and company account parameters - no defaults, names from the store's configuration,
- sending: Run task switches, separately for order sending, customer sync, list transfer from another system, unsubscribe fetch and log cleanup (switching off works without a restart); Records per run (100 by default), Retry limit (10 by default), Send orders created after (the date from which orders are sent),
- list transfer: name of the parameter that marks subscribers to transfer,
- communication audit: Save communication to FTP, Extended logs, file server details, Audit retention (days) (30 by default).
- At startup the store checks the configuration and logs missing items (e.g. no target list, no consent parameter name) with a description of the consequences.
¶ REST API and MCP
- REST API: no dedicated operations for Klaviyo.
- MCP: general module configuration tools (
ec2_module_describe, ec2_config_search, ec2_config_get, ec2_config_set); they require an account with administrator permissions - see AI assistant - MCP server.
The module has no store texts or email templates - emails are sent by Klaviyo.
The module creates its own parameters, visible in the panel on the customer and order card:
| Parameter |
On object |
Meaning |
| Klaviyo sending status |
customer, order |
queue state: to send, to update, to unsubscribe, sent, do not send, error |
| Klaviyo error count |
customer, order |
retry counter |
| Klaviyo error message |
customer, order |
last error message from Klaviyo |
| Klaviyo profile ID |
customer |
profile ID in Klaviyo |
| Sent to Klaviyo |
customer, order |
whether the object already exists in Klaviyo |