Adobe Commerce (previously Magento)

Sailthru's extension for Adobe Commerce 2.x is designed to get Sailthru integrated into your Adobe Commerce 2 store with ease and high configurability. The extension offers a turnkey integration for the vast majority of e-commerce stores built on Adobe Commerce. It can also be easily customized and extended to suit a wide range of needs.

The Sailthru Adobe Commerce 2 Module allows you to:

  • Reroute all emails through Sailthru.
  • Capture user login, logout, abandoned cart, and purchases.
  • Customize your purchase confirmation transactional message.
  • Sync pre-existing Adobe Commerce customers into Sailthru upon site login.
  • Add all newly registering customers to a Sailthru list of your choice.
  • Extend Adobe Commerce's subscription feature to add users to/from a Sailthru list of your choice.
  • Enable Personalize JS, which allows you to use Sailthru pageview-tracking and Site Personalization Manager.
If you are using Adobe Commerce 1.x, please use the other version of the Sailthru Adobe Commerce Extension.

Best Practice: Connecting your Sailthru account with a third party vendor requires a 3rd party API Key and Secret. For your account security, you should use a different Key and Secret for each integration. Contact support to request an integration-specific Key and Secret.


Clone or download the Adobe Commerce 2 Extension from GitHub. Instructions how to install the plugin are located in the GitHub repository's README.


API Keys

Once the Sailthru Adobe Commerce 2 Module is installed, login into the Adobe Commerce admin interface.

  1. From the Admin screen, click Stores, then Configuration.
  2. On the Configuration screen, click Sailthru to expand the Sailthru tab, then click Setup.
  3. On the Sailthru Setup screen, note that API validation is not yet working. You will need to enter your credentials.
  4. Obtain your API keys from My Sailthru, enter them here, and click Save. After saving, the screen will confirm you have valid credentials.
  5. Now you'll be able to configure the rest of the plugin, including Content Library preferences, Lists, and Transactionals.


After setting up your credentials, it's time to setup how you'd like your content to be reflected in Sailthru. To do this, click the Content tab in the Sailthru menu.  

The extension can update Sailthru every time you update your products. Additionally, you can control whether master and variant products are synced.

To enable these features

  1. Under Enable Product Intercept, select Enable.
  2. Select the appropriate values for master and variant products.

Note: All products synced through the extension will have vars for isMaster and isVariant to use for filtering. Variant products will also have a parent_id to to match against in your Zephyr template code.

The extension also comes with auto-tagging functionality. To configure, expand the Content Tags section and select the appropriate values from the drop-downs. Tags can come from SEO Keywords, product categories ('tees', 'mens'), as well as product attributes (color, style, isNew, etc).

Content Deletion

When you delete content in Adobe Commerce, it can also be deleted from Sailthru. From the configuration screen, set Remove Products from Sailthru to Yes.



After setting up how your products will be sent to Sailthru, click the Lists tab under the Sailthru settings. Here you'll be able to configure which list users are added to when they register on your site, as well as configuring which list to use for newsletter subscriptions through Adobe Commerce's subscription system.

User Deletion

When you delete a user in Adobe Commerce, that user can also be deleted from Sailthru. From the configuration screen, set Remove Customers in Sailthru to Yes.

Abandoned Cart Messages and Other Transactionals

Click the Transactionals tab. Once there, you can configure your Abandoned Cart and other transactional options.

To set up Abandoned Cart, click the arrow across from Sailthru Abandoned Cart to expand the configuration options. You can pick a template from your pre-existing Sailthru templates, and set the amount of time after which you'd like the Abandoned Cart message to be sent. Additionally, you can enable Abandoned Carts for guest users who have a Sailthru cookie associated to your site. This will allow you to send abandoned cart emails to known users that are not explicitly logged into their Adobe Commerce account at the time of visit but have visited the site from an email campaign, such as a newsletter.

To set up your other transactionals, click the arrow across from General Transactionals to expand the General Transactionals settings. From here, you can choose to send all transactional mail through Sailthru using the  Send API. To do this, select enable in the Send all transactions through Sailthru dropdown, and then choose a Sailthru-verified email from in the From Email dropdown. This will send all Adobe Commerce-generated mail through Sailthru using a Sailthru template called "MagentoGeneric". The email will be rendered the same as if sent from Adobe Commerce, with the addition of our beacon and unsubscribe links.

Note: If you want to change your From Email Address and are not satisfied with any of the available options, you create another at After saving it there, refresh your Adobe Commerce Settings screen and it should appear.

To completely override Adobe Commerce's purchase email template with a Sailthru template, select "enable" for Override Adobe Commerce Purchase Confirmation, then select a template from the Purchase Confirmation Template dropdown.

After this, your store should be fully configured and connected with Sailthru.

Email Queueing

When enabled, email queueing adds more resilience to your Adobe Commerce instance and makes customer pageload times faster for email-related workflows.

Before enabling the email queue, please verify your Adobe Commerce instance is configured with queue support. To enable, visit Sailthru > Messaging > Advanced in your Adobe Commerce Store Configuration Settings.


Product Auto-Tagging

The extension allows you to source auto-tags for content from three properties: SEO keywords, Categories, and Product Attributes. The SEO Keywords and Categories can be used to automatically create Sailthru interest tags for products. Enabling Product Attributes will add the values for various attributes as tags (red, cotton, XS) as well as properties that can be toggled (New, Curated Picks, Premiere Collection, etc).

Note: Discuss your tagging strategy with with your Customer Success Manager as SEO keywords may not always be a good fit for interest tags.

Content API & Product Details 

Products synchronized through the Sailthru Adobe Commerce 2 module will pass the following vars and parameters to the Content Library. These vars and parameters can be used to filter Data Feeds or filter content directly in emails using Zephyr (see the personalize or filter_content functions), allowing you the flexibility to make fine-grained decisions on content to display, if needed.

  • General
    • title
    • url
    • sku
    • description
    • price
    • weight
    • inventory (if available)
    • categories
    • status
    • parent_id (if variant)
  • Product Attributes (color, material, activity, occasion)
  • Images
    • full (the original full-size image)
    • thumb (a Adobe Commerce-generated and cached thumbnail)
  • Boolean Properties (0 or 1)
    • isMaster
    • isVariant
    • isConfigurable
    • isSalable
    • isAvailable
    • isVirtual
    • isInStock
    • isVisible
  • Product Attributes (new, cool_picks)
  • Price-related
    • price
    • groupPrice
    • formattedPrice (HTML string)
    • calculatedFinalPrice
    • minimalPrice
    • specialPrice
    • specialToDate
    • specialFromDate
  • Adobe Commerce-Specific
    • entity_id
    • storeId (main store)
    • storeIds (all stores)
    • typeId
    • websiteIds
    • relatedProductIds
    • upSellProductIds
    • crossSellProductIds

Purchase API - Abandoned Cart and Confirmation Emails

Order and Abandoned Cart emails are sent via the Sailthru Purchase API. Both will have the following vars available, minus those related to completed orders (e.g. tax and shipping).


  • Shipping
  • Tax
  • Discount
  • OrderId
  • Quantity
  • price (total cost)
  • time
  • channel

Per-item level:

  • id
  • title
  • qty
  • url
  • image (url)
  • vars > products attributes: (e.g. vars.Size => XS or vars.Color => Red)

Using Variants in Zephyr

If using variants in the Content Library, you can use Zephyr to help control their display in emails, e.g. prevent more than one variant of a product in a set of recommendations:

{content = horizon_select(content, length(content))}

{**Dedupe for parent_id to not recommend item more than once**}
{usedproducts = []}
{new_content = filter(content, lambda c: (contains(usedproducts,c.parent_id) ? false : push("usedproducts", c.parent_id) || true))}

Contact us