Integrate with Magento 2.x (CE and EE)

Last updated at:


Klaviyo integrates with both Magento 2 CE and Magento 2 EE. There are two steps to integrating Magento 2 with Klaviyo:

  1. Enabling the Magento 2 Integration in Klaviyo.
  2. Installing the Klaviyo Extension in Magento.

This guide covers both steps for Magento 2 stores.


Set up a Magento API Key

To integrate your Magento 2 store with Klaviyo there are several steps. First you'll set up a role in your Magento 2 store with full permissions. Then you'll create a new user in your Magento 2 store dedicated to your Klaviyo account, and assign it to this role.

  1. From your Magento 2 store admin click System and then click User Roles under Permissions.
  2. Click Add New Role.
  3. Click the Role Resources tab set Resource Access to All.
  4. Click the Role Info tab, then name the role "Klaviyo" and click Save.
  5. Click System and then click All Users under Permissions.
  6. Click Add New User.
  7. Now that you've created a new user, click the User Role tab and set the Role to Klaviyo.
  8. Click the User Info tab. Set the User Name to "klaviyo" and enter a Password. When you switch back to you Klaviyo account, this User Name will serve as the API Username and the Password will serve as the Password / API Key. The rest of the values are required, but are not related to your Klaviyo integration (you can use your own email address). Fill in the rest of the information and click Save User.
    When enabling the Magento 2 Integration in Klaviyo the User Name will serve as the API Username the Password will serve as the Password / API Key.

Enable the Magento 2 Integration in Klaviyo

Use the Magento API key you created to enable the Magento 2 integration in Klaviyo.

  1. In your Klaviyo account click the Integrations tab and click on the Magento 2 integration.
  2. Enter the following information:
    • Site URL: The site URL is the address of your Magento instance.
    • API Username:  The username you created for your new user with API permissions.
    • Password / API key:  The password you created for your new user.
  3. Click Connect to Magento 2.

Your data will begin to sync into Klaviyo in minutes. You've successfully enabled the Magento 2 integration.

Install the Klaviyo Extension in Magento

The Klaviyo Extension/Plugin adds web tracking and viewed product tracking to your Magento store. You need to prepare two things before installing the Klaviyo Extension:

With this information prepared you can begin to install the Klaviyo extension.

  1. From your Magento store admin click System and then click Web Setup Wizard.
  2. In the Web Setup Wizard click Component Manager.
  3. If you haven't already, sign in and sync to your Magento Marketplace account.
  4. Find the klaviyo/magento2-extension and install it.
  5. After the installation is complete, navigate back to your Magento store admin, click Stores and then click Configuration under Settings.
  6. From the Klaviyo dropdown click General. Set Enable Klaviyo Extension to Yes and enter your six digit Public Klaviyo API Key.
  7. Click Save Config.

Your installation of the Klaviyo extension is now complete.

Sync a Magento Signup Form to a Klaviyo List

For customers using the extension version 1.0.6 or higher, you can subscribe new signups to a list in Klaviyo if they have a subscribed status of 1 in Magento. To configure this, go to the Magento 2 integration settings page in Klaviyo. Then, select the checkbox to Subscribe new customers to a Klaviyo list and select the list you would like to sync subscribers to.

To install version 1.0.6 or higher, please install the extension via composer. The package can be found here.


If you are using an older version of Magento 2, you can sync a Magento signup form so that users are added to a Klaviyo list using the following method:

  1. Create a list in Klaviyo that you want to sync with your Magento sign up form.
  2. Create a private API key.
  3. From your Magento store admin, click Stores and then click Configuration under Settings.
  4. From the Klaviyo dropdown click General.
  5. Fill in you Private Klaviyo API Key and click Save Config.
    You may be prompted to flush your cache at this point. This is expected whenever updating configuration files in Magento 2.
  6. From the Klaviyo dropdown click Newsletter.
  7. From the dropdown select the Klaviyo list you want to sync your Magento signup form.
  8. Click Save Config and flush your cache again.

Your Magento signup form is now synced with your Klaviyo list.

This process syncs all future subscribers. Existing subscribers need to be manually migrated from your Magento list into Klaviyo.

Data Synced with the Magento 2 Integration

The Magento 2 integration syncs with Klaviyo every 30 minutes.

Klaviyo's Magento 2 integration and complementary extension pulls key customer information from your Magento platform. Here's some of the data we sync from Magento:

  • Customer information including first name, last name, and location.

    Klaviyo syncs all customers that subscribe to your Magento 2 newsletter list moving forward. It is important to ensure that any customer that makes it to your Magento 2 newsletter list has consented to receiving marketing emails.

  • Sales and order data including which items were purchased, item images, item categories and any discounts applied.
  • Fulfillment, refunded and canceled order data.
  • When people visit your website and which items they view; you won't have to add the Klaviyo tracking snippet to your site as this web tracking is already handled by our extension for Magento.

Convert Magento Order Values into a Single Currency

Klaviyo supports the conversion of all foreign currencies in Magento into one primary currency in Klaviyo. When this feature is enabled, the conversion happens when Magento syncs order data into Klaviyo. This is especially helpful if you have multiple stores with transactions in different currencies.

Klaviyo will check if the order_currency_code is the same as the set global_currency_code. If not, Klaviyo will convert the order total from the order currency to the global currency specified in your integration settings. This ensures that your financial analytics are accurate.

Contact customer support if you are interested in enabling this feature in your Klaviyo account.


Was this article helpful?
28 out of 53 found this helpful