Klaviyo
Description
Highlights
- Data-Driven Empowerment: Klaviyo gives full control over store and customer data with real-time insights from 350+ integrations.
- Flexible and Effortless Personalization: Klaviyo is flexible without being complicated. Advanced segmentation and automated flows deliver personalized experiences that convert.
- All-in-One Marketing and Analytics: Unify customer touchpoints with real-time insights across channels to optimize the customer journey.
- Smarter Growth with More Control: Leverage AI-powered analytics, benchmarks, and recommendations from leading B2C brands to drive profitability.
About the Extension
Klaviyo B2C CRM consolidates marketing and analytics in one seamless platform. With real-time insights, AI-powered recommendations, and a vast partner ecosystem, over 187,000 merchants can personalize at scale, optimize effortlessly, and drive revenue without complexity.
Marketing Automation: Engage every customer in the moment with a built-in data platform and AI to drive revenue and loyalty
Email Marketing: Drive immediate sales and lasting loyalty with smarter email that’s powered by real-time data and AI
SMS Marketing: Drive growth with timely, data-driven SMS marketing that integrates seamlessly across channels
WhatsApp Marketing: use all your data to personalise two-way, interactive conversations that engage your customers
Klaviyo AI: Get strategic insights, create faster, and optimize performance with peer benchmarks, predictive analytics, and AI-based recommendations.
Klaviyo B2C CRM consolidates marketing and analytics in one seamless platform. With real-time insights, AI-powered recommendations, and a vast partner ecosystem, over 187,000 merchants can personalize at scale, optimize effortlessly, and drive revenue without complexity.
Marketing Automation: Engage every customer in the moment with a built-in data platform and AI to drive revenue and loyalty
Email Marketing: Drive immediate sales and lasting loyalty with smarter email that’s powered by real-time data and AI
SMS Marketing: Drive growth with timely, data-driven SMS marketing that integrates seamlessly across channels
WhatsApp Marketing: use all your data to personalise two-way, interactive conversations that engage your customers
Klaviyo AI: Get strategic insights, create faster, and optimize performance with peer benchmarks, predictive analytics, and AI-based recommendations.
Details
- Available: English, German, Dutch, Italian, French, Polish, Spanish, Swedish
- Latest update: 23 October 2026
- Publication date: 25 November 2022
- Version: 4.5.0
- Category: CDP
Resources
Reviews (0)
About the Extension Partner
Klaviyo
Partner Status
-
Shopware
Technology Partner Platinum -
Shopware
Extension Partner
Details
- Partner since: 2022
- Extensions: 1
Support
- Based in: USA
- Speaks: German, English
- Response time: Quickly
4.5.0 6.7.0.0 - 6.7.15.1
Added
- Added optional date range (from/till) for the subscriber historical sync, matching the order sync.
- Added the cookie klaviyo_identified, a pseudonymous marker (a hash of the customer or subscriber id) that tells the storefront whether an identity can be loaded. It is only set after Klaviyo cookie consent and is listed in the "Klaviyo Cookies" consent group.
Changed
- Changed the admin settings page into tabs: Credentials, Cookie consent, Tracking, Mapping, Historical sync, Scheduled Sync and Back In Stock.
- Changed the Save button to explain via tooltip why it is disabled (missing credentials or invalid field mapping).
- Changed the historical sync controls to live in the Historical sync tab instead of the page header.
- Changed newsletter subscribers to be identified only after confirming their subscription. Existing klaviyo_subscriber cookies are treated as anonymous until the next confirmation. The subscriber marker is only created at confirmation: if it is removed later (the visitor navigates on before giving consent, or declines and later re-accepts), the subscriber stays anonymous until the next confirmation.
- Changed the "Klaviyo Cookies" consent description.
- Changed the "Export in Klaviyo Format" buttons on the promotion list and detail pages to download the CSV through the authenticated admin API instead of a plain browser navigation. A failed download now shows an error notification.
Fixed
- Fixed historical sync date range excluding records on the last selected day.
- Fixed customer and newsletter subscriber data (email, name, address) being rendered into cacheable storefront HTML. The identity is now loaded client-side from a dedicated no-store endpoint (/account/klaviyo/identity).
- Fixed hardened the promotion code export: it is now an authenticated admin API call that requires the promotion:read privilege. Integrations exporting codes need that privilege from this version on.
Removed
- Removed the Twig blocks klaviyo_integration_settings_content_sales_channel_customer, klaviyo_integration_settings_content_sales_channel_order and klaviyo_integration_settings_actions_historical_events_synchronization_control from the admin settings page template. Their content now lives in the Mapping and Historical sync tabs of klaviyo-integration-settings-general; third-party overrides of these blocks must be moved to the tab templates.
- Removed the unused admin template sw-promotion-list-override/sw-promotion-list.html.twig (targeted the old sw-promotion-list component and was never loaded).
4.4.0 6.7.0.0 - 6.7.15.1
[4.4.0] - 2026-08-26
Fixed
Fixed: Bug in Order Partially Shipped & Partially Paid event
Fixed: Prevent automatic customers sync on plugin installation
Removed
Removed: Automatic daily subscriber sync
4.3.0 6.7.0.0 - 6.7.15.1
[4.3.0] - 2026-06-09
Fixed: The Back In Stock field visibility and inheritance issues.
Changed: The API revision to revision `2026-01-15`.
Removed: Cookie consent requirement for the `Started Checkout` event.
4.2.0 6.7.0.0 - 6.7.15.1
Fixed
Fixed Prevent duplicate products from Abandoned cart mail
Fixed Prevent uncoupling line items after restoring order
Fixed Fix cookie consent handling
Fixed Fix inheritance option for boolean configurations
4.1.0 6.7.0.0 - 6.7.15.1
# Changelog
## [4.1.0] - 2025-10-30
### Added
- **Added** missing customer data properties (e.g., company, title and extra address line) to the customer sync process for **full data integrity**.
- **Added** the plugin version number to all API request headers to **aid debugging and support** on external services.
### Fixed
- **Fixed** a critical bug that caused the creation of **duplicate customer profiles** during data synchronization.
- **Fixed** an issue where product categories were incorrectly sent as a single string; they are now correctly sent as a **list/array** to meet API requirements.
---
## [4.0.1] - 2025-09-11
### Added
- Added missing cookie consent validation to events.
### Fixed
- Fixed translation in plugin.
- Fixed Boolean customer property not being synced.
- Fixed custom field handling for Order Events.
- Fixed warning in `FullCustomerOrderSyncOperation`.
- Fixed subscription through Back In Stock form.
- Fixed sales channel configuration validation.
- Fixed customer address in Order Events.
---
## [4.0.0] - 2025-07-16
This release introduces **date-based filtering** for historical event tracking, significantly **reduces redundant Klaviyo API calls** for improved efficiency, and **removes the external `od/sw6-job-scheduler` dependency**, integrating its functionality directly into the plugin.
### Added
- Added **date-based filtering** for historical event tracking synchronization, allowing more precise data management.
### Changed
- The job scheduler functionality is now **directly integrated into the Klaviyo plugin**, removing the external `od/sw6-job-scheduler` dependency.
- Replaced the text input field for **Klaviyo List ID** with a more convenient **select field** in the configuration settings.
### Fixed
- Resolved an issue where the **onsite script wasn't reliably loading** in the storefront. Users manually loading the script should verify their setup to prevent duplication and conflicts.
- Fixed an issue causing an **infinite loop** in sync tasks, improving stability.
- Corrected issues with **birthday and custom fields** for Customer Profile synchronization, ensuring accurate data.
- Addressed an issue preventing **invalid email addresses** from being properly cleared from the queue.
- Fixed a **Customer Group translation issue**, ensuring correct display across languages.
- Resolved an issue preventing **abandoned carts** from being properly restored.
- Improved **Event Tracking synchronization** reliability and performance.
- Corrected **order date handling** in Order Sync, ensuring accurate historical order data.
3.9.0 6.6.0.0 - 6.6.10.29
Added
- Added optional date range (from/till) for the subscriber historical sync, matching the order sync.
- Added the cookie klaviyo_identified, a pseudonymous marker (a hash of the customer or subscriber id) that tells the storefront whether an identity can be loaded. It is only set after Klaviyo cookie consent and is listed in the "Klaviyo Cookies" consent group.
Changed
- Changed the admin settings page into tabs: Credentials, Cookie consent, Tracking, Mapping, Historical sync, Scheduled Sync and Back In Stock.
- Changed the Save button to explain via tooltip why it is disabled (missing credentials or invalid field mapping).
- Changed the historical sync controls to live in the Historical sync tab instead of the page header.
- Changed newsletter subscribers to be identified only after confirming their subscription. Existing klaviyo_subscriber cookies are treated as anonymous until the next confirmation. The subscriber marker is only created at confirmation: if it is removed later (the visitor navigates on before giving consent, or declines and later re-accepts), the subscriber stays anonymous until the next confirmation.
- Changed the "Klaviyo Cookies" consent description.
- Changed the "Export in Klaviyo Format" buttons on the promotion list and detail pages to download the CSV through the authenticated admin API instead of a plain browser navigation. A failed download now shows an error notification.
Fixed
- Fixed historical sync date range excluding records on the last selected day.
- Fixed customer and newsletter subscriber data (email, name, address) being rendered into cacheable storefront HTML. The identity is now loaded client-side from a dedicated no-store endpoint (/account/klaviyo/identity).
- Fixed hardened the promotion code export: it is now an authenticated admin API call that requires the promotion:read privilege. Integrations exporting codes need that privilege from this version on.
Removed
- Removed the Twig blocks klaviyo_integration_settings_content_sales_channel_customer, klaviyo_integration_settings_content_sales_channel_order and klaviyo_integration_settings_actions_historical_events_synchronization_control from the admin settings page template. Their content now lives in the Mapping and Historical sync tabs of klaviyo-integration-settings-general; third-party overrides of these blocks must be moved to the tab templates.
- Removed the unused admin template sw-promotion-list-override/sw-promotion-list.html.twig (targeted the old sw-promotion-list component and was never loaded).
3.8.0 6.6.0.0 - 6.6.10.29
[3.8.0] - 2026-08-26
Fixed
Fixed: Bug in Order Partially Shipped & Partially Paid event
Fixed: Prevent automatic customers sync on plugin installation
Removed
Removed: Automatic daily subscriber sync
3.7.0 6.6.0.0 - 6.6.10.29
[3.7.0] - 2026-06-09
Fixed: The Back In Stock field visibility and inheritance issues.
Changed: The API revision to revision `2026-01-15`.
Removed: cookie consent requirement for the `Started Checkout` event.
3.6.0 6.6.0.0 - 6.6.10.29
Fixed
Fixed Prevent duplicate products from Abandoned cart mail
Fixed Prevent uncoupling line items after restoring order
Fixed Fix cookie consent handling
3.5.0 6.6.0.0 - 6.6.10.29
# Changelog
## [3.5.0] - 2025-10-30
### Added
- **Added** missing customer data properties (e.g., company, title and extra address line) to the customer sync process for **full data integrity**.
- **Added** the plugin version number to all API request headers to **aid debugging and support** on external services.
### Fixed
- **Fixed** a critical bug that caused the creation of **duplicate customer profiles** during data synchronization.
- **Fixed** an issue where product categories were incorrectly sent as a single string; they are now correctly sent as a **list/array** to meet API requirements.
---
## [3.4.5] - 2025-09-23
### Fixed
- Fixed incorrect administration build.
---
## [3.4.4] - 2025-09-22
### Fixed
- Fixed incorrect administration build.
---
## [3.4.3] - 2025-09-11
### Added
- Added missing cookie consent validation to events.
### Fixed
- Fixed translation in plugin.
- Fixed Boolean customer property not being synced.
- Fixed custom field handling for Order Events.
- Fixed warning in `FullCustomerOrderSyncOperation`.
- Fixed subscription through Back In Stock form.
- Fixed sales channel configuration validation.
- Fixed customer address in Order Events.
---
## [3.4.2] - 2025-07-10
This release significantly improves efficiency by reducing redundant Klaviyo API calls during sync operations, and it prevents the dispatch of multiple Double Opt-In emails to customers.
### Fixed
- Resolved an issue causing an infinite loop in sync tasks.
---
## [3.4.1] - 2025-07-01
This release introduces several changes to enhance the functionality and maintainability of the Klaviyo Shopware integration. The most notable updates include the removal of the dependency on `od/sw6-job-scheduler`, the addition of date-based filtering capabilities, and improvements to serializers for handling customer data.
### Added
- Added date-based filtering for historical event tracking synchronization.
### Changed
- Integrated the job scheduler in the Klaviyo plugin.
- Replaced the text field for `Klaviyo List ID` with a select field in the configuration.
### Fixed
- Fixed birthday and custom fields for Customer Profile sync.
- Fixed onsite script loading issue.
- Fixed invalid email address getting stuck in the queue.
- Fixed Customer Group translation issue.
- Fixed abandoned cart restoration issue.
- Improved Event Tracking synchronization.
- Fixed order date handling in Order Sync.
---
## [3.4.0]
### Added
- Added transfer of custom order fields for the **Placed Order** event.
---
## [3.3.4]
### Fixed
- Created an additional condition to get the order creation date during historical order synchronization.
- Fixed duplicate emails among subscribers when synchronizing subscribers.
- **Fixed error:** `Duplicate email found`.
- Fixed a problem with loading the Promotions page.
---
## [3.3.3]
### Fixed
- Corrected requests related to orders. Customer profile data was removed from order requests, which was constantly transmitted, but was optional.
- When a guest adds items to the cart and then logs in at checkout, an **Added to Cart** event is now also triggered.
- Fixed an error when confirming a subscription from Shopware's double opt-in.
- **Fixed error:** `Call to a member function getCookieConsent() on null`.
- Fixed plugin-generated JS files.
---
## [3.3.2]
### Fixed
- Added a new required field `subscriptions` to Bulk Unsubscribe Profiles, in accordance with the latest breaking changes.
---
## [3.3.1]
### Fixed
- Fixed synchronization of unsubscribed subscribers from Klaviyo to Shopware.
- Fixed the problem with the event creation date in metrics during historical synchronization of orders.
- **Fixed issue:** If there was no `updated_at` in the event, then a `null` value was passed and the historical event was saved with the date and time of synchronization.
---
## [3.3.0]
### Added
- Added an admin warning popup for admins who might be running historical syncs of orders and subscribers at the same time.
---
## [3.2.2]
### Fixed
- Changed the API request for transferring subscribers during historical synchronization because it affected the appearance of the consent status indicating that the subscriber is subscribed.
- **Important changes:** Historical synchronization now works via double opt-in.
- Fixed the functionality of the Product identification field mapping switch. It now affects all events where product data is involved.
---
## [3.2.1]
### Fixed
- Fixed a problem that in some cases caused an error with status `409`.
- **Fixed error:** `Conflict trying to update profile`
- **Fixed error:** `A profile already exists with one of these identifiers.`
---
## [3.2.0]
### Added
- Added synchronization of customers who do not have orders or subscriptions when initiating the corresponding historical synchronizations. Two new Cron Jobs have been added: _**klaviyo.job.full_customer_subs_sync_processing**_ and _**klaviyo.job.full_customer_order_sync_processing**_.
- Documentation: https://overdosedigital.atlassian.net/wiki/spaces/KS6PUG/pages/3495821316/Synchronize+Historical+Data
- Added a new status **Partially Successful** to the Job Scheduler. It signals that the task has been partially completed.
- Documentation: https://overdosedigital.atlassian.net/wiki/spaces/KS6PUG/pages/3031007243/Job+Scheduling+Overview
- Updated the API revision to the latest one – **2024-10-15**. Improved performance of customer creation and update by removing additional requests.
- Added a check for invalid emails when synchronizing customers and subscribers.
### Fixed
- Fixed profile duplication bug when sending customer data to Klaviyo.
- **Fixed error:** `A profile already exist with one of these identifiers`
- Fixed an issue that occurred in the response when identifying a profile from Klaviyo.
- **Fixed error:** `Identify Profile API response expected to be a JSON`
---
## [3.1.3]
### Fixed
- Fixed errors with loading plugin dependencies when installing and enabling the plugin.
---
## [3.1.2]
### Fixed
- Added a fix for asynchronous data synchronization and a fix for the problem of getting the current offset during historical synchronizations.
- Fixed sending shipping events and paid events in historical order synchronization.
---
## [3.1.1]
### Fixed
- Fixed problems with loading the Promotions page.
---
## [3.1.0]
### Added
- Added compatibility with Usercentrics CMP.
- Created a separate cron process for synchronizing historical events. Refactored the code to handle large amounts of data.
---
## [3.0.0]
### Added
- Compatibility release with Shopware 6.6^.
### Fixed
- Fixed an error when saving plugin settings when inserting a value into the List ID for the subscriber sync field.
2.24.0 6.5.0.0 - 6.5.8.19
[2.24.0] - 2026-08-26
Fixed
Fixed: Bug in Order Partially Shipped & Partially Paid event
Fixed: Prevent automatic customers sync on plugin installation
Removed
Removed: Automatic daily subscriber sync
2.23.0 6.5.0.0 - 6.5.8.19
[2.23.0] - 2026-06-09
Fixed: The Back In Stock field visibility and inheritance issues.
Changed: the API revision to revision `2026-01-15`.
Removed: cookie consent requirement for the `Started Checkout` event.
2.22.0 6.5.0.0 - 6.5.8.19
Fixed
Fixed Prevent duplicate products from Abandoned cart mail
Fixed Prevent uncoupling line items after restoring order
Fixed Fix cookie consent handling
2.21.0 6.5.0.0 - 6.5.8.19
# Changelog
## [2.21.0] - 2025-10-30
### Added
- **Added** missing customer data properties (e.g., company, title and extra address line) to the customer sync process for **full data integrity**.
- **Added** the plugin version number to all API request headers to **aid debugging and support** on external services.
### Fixed
- **Fixed** a critical bug that caused the creation of **duplicate customer profiles** during data synchronization.
- **Fixed** an issue where product categories were incorrectly sent as a single string; they are now correctly sent as a **list/array** to meet API requirements.
---
## [2.20.0] - 2025-09-11
### Added
- Added missing cookie consent validation to events.
### Fixed
- Fixed translation in plugin.
- Fixed Boolean customer property not being synced.
- Fixed custom field handling for Order Events.
- Fixed warning in `FullCustomerOrderSyncOperation`.
- Fixed subscription through Back In Stock form.
- Fixed sales channel configuration validation.
- Fixed customer address in Order Events.
---
## [2.19.0] - 2025-07-10
This release significantly improves efficiency by reducing redundant Klaviyo API calls during sync operations, and it prevents the dispatch of multiple Double Opt-In emails to customers.
### Fixed
- Resolved an issue causing an infinite loop in sync tasks.
---
## [2.18.0] - 2025-07-01
This release introduces several changes to enhance the functionality and maintainability of the Klaviyo Shopware integration. The most notable updates include the removal of the dependency on `od/sw6-job-scheduler`, the addition of date-based filtering capabilities, and improvements to serializers for handling customer data.
### Added
- Added date-based filtering for historical event tracking synchronization.
### Changed
- Integrated the job scheduler in the Klaviyo plugin.
- Replaced the text field for `Klaviyo List ID` with a select field in the configuration.
### Fixed
- Fixed birthday and custom fields for Customer Profile sync.
- Fixed onsite script loading issue.
- Fixed invalid email address getting stuck in the queue.
- Fixed Customer Group translation issue.
- Fixed abandoned cart restoration issue.
- Improved Event Tracking synchronization.
- Fixed order date handling in Order Sync.
---
## [2.17.0]
### Added
- Added transfer of custom order fields for the **Placed Order** event.
---
## [2.16.4]
### Fixed
- Created an additional condition to get the order creation date during historical order synchronization.
- Fixed duplicate emails among subscribers when synchronizing subscribers.
- **Fixed error:** `Duplicate email found`.
---
## [2.16.3]
### Fixed
- Corrected requests related to orders. Customer profile data was removed from order requests, which was constantly transmitted, but was optional.
- When a guest adds items to the cart and then logs in at checkout, an **Added to Cart** event is now also triggered.
- Fixed an error when confirming a subscription from Shopware's double opt-in.
- **Fixed error:** `Call to a member function getCookieConsent() on null`.
- Fixed plugin-generated JS files.
---
## [2.16.2]
### Fixed
- Added a new required field `subscriptions` to Bulk Unsubscribe Profiles, in accordance with the latest breaking changes.
---
## [2.16.1]
### Fixed
- Fixed synchronization of unsubscribed subscribers from Klaviyo to Shopware.
- Fixed the problem with the event creation date in metrics during historical synchronization of orders.
- **Fixed issue:** If there was no `updated_at` in the event, then a `null` value was passed and the historical event was saved with the date and time of synchronization.
---
## [2.16.0]
### Added
- Added an admin warning popup for admins who might be running historical syncs of orders and subscribers at the same time.
---
## [2.15.2]
### Fixed
- Changed the API request for transferring subscribers during historical synchronization because it affected the appearance of the consent status indicating that the subscriber is subscribed.
- **Important changes:** Historical synchronization now works via double opt-in.
- Fixed the functionality of the Product identification field mapping switch. It now affects all events where product data is involved.
---
## [2.15.1]
### Fixed
- Fixed a problem that in some cases caused an error with status `409`.
- **Fixed error:** `Conflict trying to update profile`
- **Fixed error:** `A profile already exists with one of these identifiers.`
---
## [2.15.0]
### Added
- Added synchronization of customers who do not have orders or subscriptions when initiating the corresponding historical synchronizations. Two new Cron Jobs have been added: _**klaviyo.job.full_customer_subs_sync_processing**_ and _**klaviyo.job.full_customer_order_sync_processing**_.
- Documentation: https://overdosedigital.atlassian.net/wiki/spaces/KS6PUG/pages/3495821316/Synchronize+Historical+Data
- Added a new status **Partially Successful** to the Job Scheduler. It signals that the task has been partially completed.
- Documentation: https://overdosedigital.atlassian.net/wiki/spaces/KS6PUG/pages/3031007243/Job+Scheduling+Overview
- Updated the API revision to the latest one – **2024-10-15**. Improved performance of customer creation and update by removing additional requests.
- Added a check for invalid emails when synchronizing customers and subscribers.
### Fixed
- Fixed profile duplication bug when sending customer data to Klaviyo.
- **Fixed error:** `A profile already exist with one of these identifiers`
- Fixed an issue that occurred in the response when identifying a profile from Klaviyo.
- **Fixed error:** `Identify Profile API response expected to be a JSON`
---
## [2.14.1]
### Fixed
- Added a fix for asynchronous data synchronization and for the problem of getting the current offset during historical synchronizations.
---
## [2.14.0]
### Added
- Added compatibility with Usercentrics CMP.
- Created a separate cron process for synchronizing historical events and refactored the code to handle large amounts of data.
### Fixed
- Fixed an error when saving plugin settings when inserting a value into the List ID for the subscriber sync field.
---
## [2.13.3]
### Fixed
- Corrected multiple loading records in listing.
- Changed the data type used when transferring product categories in order events.
---
## [2.13.2]
### Fixed
- Fixed an error when the `SwitchBuyBoxVariantEvent` event was triggered on the widget. Fixed dependencies in the template.
---
## [2.13.1]
### Fixed
- Fixed an issue with missing List ID of subscribers on PDP. Redesigned saving the List ID of subscribers in the plugin settings.
- Fixed an error when the `SwitchBuyBoxVariantEvent` event was triggered on the PDP.
---
## [2.13.0]
### Added
- Updated the API revision to the latest version.
- To optimize performance, added a separate cron task to synchronize excluded subscribers.
- The Back in Stock popup is now available when using the `frontend.cms.buybox.switch` route (`SwitchBuyBoxVariantEvent`).
### Fixed
- Fixed filters in Klaviyo Job Listing.
- Fixed an error when applying promotions.
- Fixed a bug when synchronizing customer data.
- Fixed a bug with the display of empty jobs after daily synchronization.
2.11.1 6.5.0.0 - 6.5.8.19
- Release date: 27.3.2024
- Type of release: Patch
- Fix: Outdated code tests that caused errors have been removed.
- Fix: Errors when synchronizing historical data have been fixed.
- Fix: Fixed an error with the lack of translation of the product manufacturer.
- Fix: Fixed a bug with transferring data about a customer group to custom fields.
- Fix: Fixed behavior of the status of the parent job in Klaviyo Job Listing when child jobs are still in progress.
- Fix: Fixed displaying the number of records in Klaviyo Job Listing when loading. Improved listing performance.
- Fix: Fixed a bug related to the "Add to Cart" event when the event was not triggered.
2.11.0 6.5.0.0 - 6.5.8.19
- Release date: 14.3.2024
- Type of release: Minor
- Fix: Fixed a bug in updating customer custom fields.
- Fix: Fixed a bug with exceeding the request limit rate in Klaviyo.
- Fix: Fixed an error in receiving a response from Klaviyo after creating a customer.
- Fix: Fixed transmission of customer's first name, last name and salutation when full synchronizing customers.
- New: Added synchronization of new events of order statuses such as: Partially Paid Order and Partially Shipped Order.
2.10.0 6.5.0.0 - 6.5.8.19
- Release date: 29.2.2024
- Type of release: Minor
- Fix: Added validation of phone numbers in order events. If the phone number does not exist or does not comply with the e.164 standard, the event is posted in Klaviyo without transmitting the incorrect phone number.
- Fix: Correction of some titles.
- New: Added shipping costs missing in variables and data.
2.9.0 6.5.0.0 - 6.5.8.19
- Release date: 6.2.2024
- Type of release: Minor
- Fix: Visibility of Back In Stock on PDP.
- New: The plugin API has been updated to the latest version of the Klaviyo API.
2.8.4 6.5.0.0 - 6.5.8.19
- Release date: 23.1.2024
- Type of release: Patch
- Fix: The category is now displayed after adding a product from a dynamic product group.
- Fix: Plugin provides the correct product URL by domain language.
- Fix: Changing titles in the payload Add To Cart event.
2.8.3 6.5.0.0 - 6.5.8.19
- Release date: 16.1.2024
- Type of release: Patch
- Fix: The add to cart event is now triggered in real time mode, and not according to a schedule
- Fix: Fixed a bug when performing asynchronous subscription operations.
- Fix: Fixed a problem with synchronizing orders with deleted customers.
2.8.2 6.5.0.0 - 6.5.8.19
- Release date: 10.1.2024
- Type of release: Patch
- Fix: Fixed an issue where some product related event was missing product name
- Fix: Fixed an issue where some transaction data was not synced
- Fix: Fixed an issue where some data was missing for cart related events
2.8.1 6.5.0.0 - 6.5.8.19
- Release date: 21.12.2023
- Type of release: Patch
- Fix: Added customer language field that will be sent to Klaviyo upon other data when syncing newsletter recipients.
- Fix: Fixed typos
2.8.0 6.5.0.0 - 6.5.8.19
- Release date: 14.12.2023
- Type of release: Minor
- New: Added better logging across the plugin.
- Fix: Fixed the issue where customers were unable to select promotions in the admin panel grid for export.
- Fix: Fixed an issue where some customers may encounter when purchased/placed orders haven't been updated properly.
- Fix: Fixed an issue where email opt-in banner was missing at Storefront
2.7.1 6.5.0.0 - 6.5.8.19
- Release date: 4.12.2023
- Type of release: Patch
- Fix: Fixed an error/issue with Cookiebot that was thrown in browser console when "Use Default Cookie Notification" was set to yes.
- Fix: Fixed an issue where Order ID was displayed incorrectly ( Order ID was displayed instead of Order Number even though it was set to Order Number in plugin configuration ) in the refunded order Events.
2.7.0 6.5.0.0 - 6.5.8.19
- Release date: 21.11.2023
- Type of release: Minor
- Fix: Added fixes for stable work with cookies manager - CookieBot.
- Fix: Added fixes when synchronizing subscribers.
- Feature: The ‘Daily Subscribers Synchronization’ configuration is added.
- Feature: The ‘Enable cleanup of old jobs’ configuration is added.
2.6.0 6.5.0.0 - 6.5.8.19
- Release date: 9.11.2023
- Type of release: Minor
- Feature: Now Double-Opt in messaging at configuration page is visible in all configuration scopes/sales channels.
2.5.2 6.5.0.0 - 6.5.8.19
- Release date: 1.11.2023
- Type of release: Patch
- Fix: Fixed the issue where selector was not displayed in the "Klaviyo List Name for subscribers" configuration.
2.5.1 6.5.0.0 - 6.5.8.19
- Release date: 24.10.2023
- Type of release: Patch
- Resolved the issue where Klaviyo Public API key validation was not working as intended.
2.5.0 6.5.0.0 - 6.5.8.19
- Release date: 17.10.2023
- Type of release: Minor
2.4.0 6.5.0.0 - 6.5.8.19
- Release date: 10.10.2023
- Type of release: Minor
- Feature: Added compatibility with “Consentmanager” from consentmanager.net
- Improvement: Re-factored “checkout started” event implementation in plugin for better compatibility with Checkout customizations and plugins ( like 1 step checkout and others ). NOTE: If you have extensive customizations of plugin files at checkout we recommend you review and verify customizations on your side.
- Fix: Fixed the issue where “Unsubscribe” in My Account page was not working.
2.3.2 6.5.0.0 - 6.5.8.19
- Release date: 11.9.2023
- Type of release: Patch
- Fix: The "Refunded Order" event is now displayed after clicking the "Synchronized historical events" button
- Fix: Resolving the issue where task manager can come to a standstill/stop.
2.3.1 6.5.0.0 - 6.5.8.19
- Release date: 25.8.2023
- Type of release: Patch
- Fix: "Paid Order" event was not displayed for non-paid order after historical synchronization
2.3.0 6.5.0.0 - 6.5.8.19
- Release date: 25.8.2023
- Type of release: Minor
- Fix: Resolved the issue when events are duplicated in the profile Activity Logs after each historical synchronization
- Fix: Removed dump(extensionData) call method in twig file
- New: When adding "real time" users to Klaviyo "Subscribe to List" api is now used
- New: "Subscribers list" admin configuration option is now a select/dropdown with values pulled from Klaviyo service ( if api credentials are valid)
2.2.0 6.5.0.0 - 6.5.8.19
- Release date: 15.8.2023
- Type of release: Patch
- New: The cart restore link now fills up the address data that the customer has provided before abandoning the cart ( if applicable ).
- Fix: Fixed the issue where some customers may see incorrect dates of the events passed to Klaviyo service ( fulfilled order events etc... ).
2.1.0 6.5.0.0 - 6.5.8.19
- Release date: 7.8.2023
- Type of release: Minor
- New: A new endpoint has been added, which allows you to check the current version of the installed Klaviyo plugin.
- Fix: changed the behaviour of the "Back in stock" modal so it doesn't interfere with sticky elements.
- Fix: Correction of historical data order statuses synchronization.
- Fix: Fixed Klaviyo event sync when tracking checkboxes are unchecked in the admin panel.
2.0.1 6.5.0.0 - 6.5.8.19
Release date: 10.7.2023
Type of release: Patch
Fix: Resolved the issue with error message upon subscription to newsletter in some cases.
2.0.0 6.5.0.0 - 6.5.8.19
Release date: 5.7.2023
Type of release: Major
Compatibility release with Shopware 6.5^
Fix: cleared usage of removed classes & files
Fix: Minor changes to extension configuration classes/templates (on the extension configuration page)
New: Job Scheduler Update - implemented compatibility with Shopware 6.5^ versions
New: Job Scheduler Update - Job scheduler handlers now do extend recommended interfaces
New: Controller routes now have annotation declaration in a new format
New: Some changes that were made make the extension backwards-incompatible. You can see the dependencies in the composer.json file
1.24.0 6.4.4.0 - 6.4.20.2
[1.24.0] - 2026-08-26
Fixed
Fixed: Bug in Order Partially Shipped & Partially Paid event
Fixed: Prevent automatic customers sync on plugin installation
Removed
Removed: Automatic daily subscriber sync
1.23.0 6.4.4.0 - 6.4.20.2
[1.23.0] - 2026-06-09
Fixed: the Back In Stock field visibility and inheritance issues.
Changed: the API revision to revision `2026-01-15`.
Removed: cookie consent requirement for the `Started Checkout` event.
1.22.0 6.4.4.0 - 6.4.20.2
Fixed:
PHP 7.4 compatibility
Prevent duplicate products from Abandoned cart mail
Prevent uncoupling line items after restoring order
Fix cookie consent handling
1.20.0 6.4.4.0 - 6.4.20.2
# Changelog
## [1.20.0] - 2025-11-27
### Fixed
- **Fixed** a PHP 7.4 compatibility issue.
---
## [1.19.0] - 2025-10-30
### Added
- **Added** missing customer data properties (e.g., company, title and extra address line) to the customer sync process for **full data integrity**.
- **Added** the plugin version number to all API request headers to **aid debugging and support** on external services.
### Fixed
- **Fixed** a critical bug that caused the creation of **duplicate customer profiles** during data synchronization.
- **Fixed** an issue where product categories were incorrectly sent as a single string; they are now correctly sent as a **list/array** to meet API requirements.
---
## [1.18.0] - 2025-09-11
### Added
- Added missing cookie consent validation to events.
### Fixed
- Fixed translation in plugin.
- Fixed Boolean Customer property not synced.
- Fixed custom field handling for Order Events.
- Fixed warning in `FullCustomerOrderSyncOperation`.
- Fixed subscription through Back In Stock form.
- Fixed sales channel configuration validation.
- Fixed customer address in Order events.
---
## [1.17.0] - 2025-07-10
This release significantly improves efficiency by reducing redundant Klaviyo API calls during sync operations, and it prevents the dispatch of multiple Double Opt-In emails to customers.
### Fixed
- Resolved an issue causing an infinite loop in sync tasks.
---
## [1.16.0] - 2025-07-01
This release introduces several changes to enhance the functionality and maintainability of the Klaviyo Shopware integration. The most notable updates include the removal of the dependency on `od/sw6-job-scheduler`, the addition of date-based filtering capabilities, and improvements to serializers for handling customer data.
### Added
- Added date-based filtering for historical event tracking synchronization.
### Changed
- Integrated the job scheduler in the Klaviyo plugin.
- Replaced the text field for `Klaviyo List ID` with a select field in the configuration.
### Fixed
- Fixed birthday and custom fields for Customer Profile sync.
- Fixed onsite script loading issue.
- Fixed invalid email addresses getting stuck in the queue.
- Fixed Customer Group translation issue.
- Fixed abandoned cart restoration issue.
- Improved Event Tracking synchronization.
- Fixed order date handling in Order Sync.
---
## [1.15.0]
### Added
- Added transfer of custom order fields for the **Placed Order** event.
---
## [1.14.4]
### Fixed
- Created an additional condition to get the order creation date during historical order synchronization.
- Fixed duplicate emails among subscribers when synchronizing subscribers.
- **Fixed error:** `Duplicate email found`.
---
## [1.14.3]
### Fixed
- Corrected requests related to orders. Customer profile data was removed from order requests, which was constantly transmitted, but was optional.
- When a guest adds items to the cart and then logs in at checkout, an **Added to Cart** event is now also triggered.
- Fixed an error when confirming a subscription from Shopware's double opt-in.
- **Fixed error:** `Call to a member function getCookieConsent() on null`.
- Fixed plugin-generated JS files.
---
## [1.14.2]
### Fixed
- A new required field `subscriptions` has been added to Bulk Unsubscribe Profiles, in accordance with the latest breaking changes.
---
## [1.14.1]
### Fixed
- Fixed synchronization of unsubscribed subscribers from Klaviyo to Shopware.
- Fixed the problem with the event creation date in metrics during historical synchronization of orders.
- **Fixed issue:** If there was no `updated_at` in the event, then a `null` value was passed and the historical event was saved with the date and time of synchronization.
---
## [1.14.0]
### Added
- Added support for the **SwagCustomizedProducts** plugin, which adds custom options to products.
- Documentation: https://overdosedigital.atlassian.net/wiki/x/GQBY-g
- Added an admin warning popup for admins who might be running historical syncs of orders and subscribers at the same time.
---
## [1.13.2]
### Fixed
- Changed the API request for transferring subscribers during historical synchronization because it affected the appearance of the consent status that indicates the subscriber is subscribed.
- **Important changes:** Historical synchronization now works via double opt-in.
- Fixed the functionality of the Product identification field mapping switch. It now affects all events where product data is involved.
---
## [1.13.1]
### Fixed
- Fixed a problem that in some cases caused an error with status `409`.
- **Fixed error:** `Conflict trying to update profile`
- **Fixed error:** `A profile already exists with one of these identifiers.`
---
## [1.13.0]
### Added
- Added synchronization of customers who do not have orders or subscriptions when initiating the corresponding historical synchronizations. Two new Cron Jobs have been added: _**klaviyo.job.full_customer_subs_sync_processing**_ and _**klaviyo.job.full_customer_order_sync_processing**_.
- Documentation: https://overdosedigital.atlassian.net/wiki/spaces/KS6PUG/pages/3495821316/Synchronize+Historical+Data
- Added a new status **Partially Successful** to the Job Scheduler. It signals that the task has been partially completed.
- Documentation: https://overdosedigital.atlassian.net/wiki/spaces/KS6PUG/pages/3031007243/Job+Scheduling+Overview
- Updated the API revision to the latest one – **2024-10-15**. Improved performance of customer creation and update by removing additional requests.
- Added a check for invalid emails when synchronizing customers and subscribers.
### Fixed
- Fixed profile duplication bug when sending customer data to Klaviyo.
- **Fixed error:** `A profile already exist with one of these identifiers`
- Fixed an issue that occurred in the response when identifying a profile from Klaviyo.
- **Fixed error:** `Identify Profile API response expected to be a JSON`
---
## [1.12.1]
### Fixed
- Added a fix for the problem of getting the current offset during historical synchronizations.
---
## [1.12.0]
### Added
- Added compatibility with Usercentrics CMP.
- Created a separate cron process for synchronizing historical events and refactored the code to handle large amounts of data.
---
## [1.11.3]
### Fixed
- Corrected multiple loading records in listing.
- Changed the data type used when transferring product categories in order events.
---
## [1.11.2]
### Fixed
- Fixed an error when the `SwitchBuyBoxVariantEvent` event was triggered on the widget. Fixed dependencies in the template.
---
## [1.11.1]
### Fixed
- Fixed an issue with missing List ID of subscribers on PDP. Redesigned saving the List ID of subscribers in the plugin settings.
- Fixed an error when the `SwitchBuyBoxVariantEvent` event was triggered on the PDP.
---
## [1.11.0]
### Added
- Updated the API revision to the latest version.
- Added a separate cron task to synchronize excluded subscribers, to optimize performance.
### Fixed
- Fixed filters in Klaviyo Job Listing.
---
## [1.10.0]
### Added
- The Back in Stock popup is now available when using the `frontend.cms.buybox.switch` route (`SwitchBuyBoxVariantEvent`).
### Fixed
- Fixed an error when applying promotions.
- Fixed a bug when synchronizing customer data.
- Fixed a bug with the display of empty jobs after daily synchronization.
---
## [1.9.1]
### Fixed
- Removed outdated code tests that caused errors.
- Fixed errors when synchronizing historical data.
- Fixed an error with the missing translation of the product manufacturer.
- Fixed a bug with transferring data about a customer group to custom fields.
- Fixed behavior of the status of the parent job in Klaviyo Job Listing when child jobs are still in progress.
- Improved Klaviyo Job Listing performance.
- Fixed a bug related to the **Add to Cart** event when the event was not triggered.
1.9.0 6.4.4.0 - 6.4.20.2
- Release date: 14.3.2024
- Type of release: Minor
- Fix: Fixed a bug in updating customer custom fields.
- Fix: Fixed a bug with exceeding the request limit rate in Klaviyo.
- Fix: Fixed an error in receiving a response from Klaviyo after creating a customer.
- Fix: Fixed transmission of customer's first name, last name and salutation when full synchronizing customers.
- New: Added synchronization of new events of order statuses such as: Partially Paid Order and Partially Shipped Order.
1.8.0 6.4.4.0 - 6.4.20.2
- Release date: 29.2.2024
- Type of release: Minor
- Fix: Added validation of phone numbers in order events. If the phone number does not exist or does not comply with the e.164 standard, the event is posted in Klaviyo without transmitting the incorrect phone number.
- Fix: Correction of some titles.
- New: Added shipping costs missing in variables and data.
1.7.0 6.4.4.0 - 6.4.20.2
- Release date: 6.2.2024
- Type of release: Minor
- Fix: Visibility of Back In Stock on PDP.
- New: The plugin API has been updated to the latest version of the Klaviyo API.
1.6.4 6.4.4.0 - 6.4.20.2
- Release date: 23.1.2024
- Type of release: Patch
- Fix: The category is now displayed after adding a product from a dynamic product group.
- Fix: Plugin provides the correct product URL by domain language.
- Fix: Changing titles in the payload Add To Cart event.
1.6.3 6.4.4.0 - 6.4.20.2
- Release date: 16.1.2024
- Type of release: Patch
- Fix: The add to cart event is now triggered in real time mode, and not according to a schedule
- Fix: Fixed a problem with synchronizing orders with deleted customers.
1.6.2 6.4.4.0 - 6.4.20.2
- Release date: 10.1.2024
- Type of release: Patch
- Fix: Fixed an issue where some product related event was missing product name
- Fix: Fixed an issue where some transaction data was not synced
- Fix: Fixed an issue where some data was missing for cart related events
1.6.1 6.4.4.0 - 6.4.20.2
- Release date: 21.12.2023
- Type of release: Patch
- Fix: Added customer language field that will be sent to Klaviyo upon other data when syncing newsletter recipients.
- Fix: Fixed typos
1.6.0 6.4.4.0 - 6.4.20.2
- Release date: 14.12.2023
- Type of release: Minor
- New: Added better logging across the plugin.
- Fix: Fixed the issue where customers were unable to select promotions in the admin panel grid for export.
- Fix: Fixed an issue where some customers may encounter when purchased/placed orders haven't been updated properly.
- Fix: Fixed an issue where email opt-in banner was missing at Storefront
1.5.1 6.4.4.0 - 6.4.20.2
- Release date: 4.12.2023
- Type of release: Patch
- Fix: Fixed an error/issue with Cookiebot that was thrown in browser console when "Use Default Cookie Notification" was set to yes.
- Fix: Fixed an issue where Order ID was displayed incorrectly ( Order ID was displayed instead of Order Number even though it was set to Order Number in plugin configuration ) in the refunded order Events.
1.5.0 6.4.4.0 - 6.4.20.2
- Release date: 21.11.2023
- Type of release: Minor
- Fix: Fixed an error that occurred when confirming receipt of a newsletter.
- Fix: Added fixes for stable work with cookies manager - CookieBot.
- Fix: Added fixes when synchronizing subscribers.
- Feature: The ‘Daily Subscribers Synchronization’ configuration is added.
- Feature: The ‘Enable cleanup of old jobs’ configuration is added.
1.4.0 6.4.4.0 - 6.4.20.2
- Release date: 7.11.2023
- Type of release: Minor
- Fix: Issue where Shopware Users which are doing the Double Opt In in Shopware system were not transfered to Klaviyo but with "NOT SUBSCRIBED".
- Fix: Added selector to Klaviyo List name for subscribers.
- Fix: Now Double-Opt in messaging at configuration page is visible in all configuration scopes/sales channels.
1.3.1 6.4.4.0 - 6.4.20.2
- Release date: 24.9.2023
- Type of release: Patch
- Resolved the issue where Klaviyo Public API key validation was not working as intended.
1.3.0 6.4.4.0 - 6.4.20.2
- Release date: 17.10.2023
- Type of release: Minor
- New: Cart restore link now fills up the address data that customer has provided before abandoning the cart ( if applicable ).
- New: Added option to select the mapping for their order as well as delivery status as a mandatory field in a dropdown menu so that this status also arrives in Klaviyo.
1.2.0 6.4.4.0 - 6.4.20.2
- Release date: 10.10.2023
- Type of release: Minor
- Feature: Added compatibility with “Consentmanager” from consentmanager.net
- Improvement: Re-factored “checkout started” event implementation in plugin for better compatibility with Checkout customizations and plugins ( like 1 step checkout and others ). NOTE: If you have extensive customizations of plugin files at checkout we recommend you review and verify customizations on your side.
1.1.3 6.4.4.0 - 6.4.20.2
- Release date: 11.9.2023
- Type of release: Patch
- Fix: The "Refunded Order" event is now displayed after clicking the "Synchronized historical events" button
- Fix: Resolving the issue where task manager can come to a standstill/stop.
1.1.2 6.4.4.0 - 6.4.20.2
- Release date: 25.8.2023
- Type of release: Patch
- Fix: "Paid Order" event was not displayed for non-paid order after historical synchronization
- Fix: Resolved the issue when events are duplicated in the profile Activity Logs after each historical synchronization
- Fix: Removed dump(extensionData) call method in twig file
1.1.1 6.4.4.0 - 6.4.20.2
- Release date: 15.8.2023
- Type of release: Patch
- Fix: Fixed the issue where some customers may see incorrect dates of the events passed to Klaviyo service ( fulfilled order events etc... ).
1.1.0 6.4.4.0 - 6.4.20.2
- Release date: 7.8.2023
- Type of release: Minor
- New: A new endpoint has been added, which allows you to check the current version of the installed Klaviyo plugin.
- Fix: changed the behaviour of the "Back in stock" modal so it doesn't interfere with sticky elements.
- Fix: Correction of historical data order statuses synchronization.
- Fix: Fixed Klaviyo event sync when tracking checkboxes are unchecked in the admin panel.
1.0.19 6.4.4.0 - 6.4.20.2
Release date: 28.6.2023
Type of release: Patch
Feature: Added ability to change order identification variable that will be sent to the klaviyo ( was before: order hash | now you can choose either: order hash OR order id )
IMPORTANT: the plugin is not compatible with Shopware 6.5 yet.
1.0.18 6.4.4.0 - 6.4.20.2
Release date: 24.5.2023
Type of release: Patch
Fixed the issue where Back In Stock was not sending data to Klaviyo
IMPORTANT: the plugin is not compatible with Shopware 6.5 yet.
1.0.17 6.4.4.0 - 6.4.20.1
Release date: 28.4.2023
Type of release: Patch
Fixed the issue where products had incorrect links ( in Klaviyo ) to stores of other languages/domains ( shopware ) if there are numerous domains assigned to a single sales channel
1.0.16 6.4.4.0 - 6.4.20.1
Release date: 5.4.2023
Type of release: Patch
New: Added sales channel information to Klaviyo customer
1.0.15 6.4.4.0 - 6.4.19.0
Release date: 10.2.2023
Type of release: Patch
New: Added compatibility with CookieBot
New: Added and fixed compatibility with the newest versions
1.0.14 6.4.4.0 - 6.4.19.0
Release date: 2.2.2023
Type of release: Patch
New: Added variant identifier selection for BIS
1.0.13 6.4.4.0 - 6.4.18.0
Type of release: Patch
New: Added tracking for "PAID" orders
New: Added product SKU in "Notify in stock" functionality
1.0.12 6.4.4.0 - 6.4.18.0
Release date: 29.11.2022
Type of release: Patch
New: Added cart restore functionality
1.0.11 6.4.4.0 - 6.4.18.0
Release date: 23.11.2022
Type of release: Patch
Fix: Context is kept for background processes
1.0.10 6.4.4.0 - 6.4.17.0
Release date: 03.11.2022
Type of release: Patch
Fix: issue with plugin's local storage item set without cookie consent
1.0.9 6.4.4.0 - 6.4.17.0
Release date: 03.11.2022
Type of release: Patch
Fix: issue with Klaviyo script initialization with no cookie consent allowance
Fix: issue with "Private API Key" field insecure displaying