Plugin for Sylius to add Mailchimp ecommerce features

Plugin for Sylius to add Mailchimp ecommerce features



This is a Sylius Plugin that connect your store with Mailchimp to use their ecommerce features:

Some of that features are:

  • Product blocks: Customizable product blocks provide you with a quick way to promote your best-selling items or
    showcase seasonal products in your campaign or automation email. Once you connect your store, we’ll automatically pull
    product images, descriptions, and prices for you.

  • Product recommendations: Product recommendations feature analyzes the previous purchase behavior of your customers
    and automatically suggests products they’re most likely to buy.

  • E-commerce automations: Welcome first-time customers, Reward your best customers, Send a product follow-up message,
    Re-engage lapsed customers.

  • Abandoned cart: Allows you to give customers the incentive they need to return to your store, so you can recapture
    sales and generate more revenue.

  • Order notifications: Allow you to design, send, and track all of those notifications you need to send customers—like
    order confirmations, invoices, shipping confirmations, refund confirmations, and cancellation confirmations—directly
    through your Mailchimp account.


You can see this plugin in action in our Sylius Demo application.


  1. Run composer require odiseoteam/sylius-mailchimp-plugin.

  2. Add the plugin to the AppKernel:

public function registerBundles(): array
    $bundles = [
        new OdiseoSyliusMailchimpPluginOdiseoSyliusMailchimpPlugin(),
  1. Import the configurations on your config.yaml:
    - { resource: "@OdiseoSyliusMailchimpPlugin/Resources/config/config.yaml" }
  1. Add the enviorment variables:

If you want to use different List Id for each Sylius Channel, you need to
implement the MailchimpListIdAwareInterface on your Channel entity. If you don’t do that
the default list id will be used.


After installing this plugin the store will be connected to Mailchimp. This mean that Mailchimp will be updated with
your realtime data using differents event listeners.

Get the mailchimp service on your class

/** @var Mailchimp $mailchimp */
$mailchimp = $this->get('odiseo.mailchimp_plugin.mailchimp');

Available CLI commands to synchronize your store data with Mailchimp.

$ bin/console odiseo:mailchimp:sync-stores
$ bin/console odiseo:mailchimp:sync-customers
$ bin/console odiseo:mailchimp:sync-products
$ bin/console odiseo:mailchimp:sync-carts
$ bin/console odiseo:mailchimp:sync-orders


  • Promo codes sync.
  • Connected Sites sync.

Test the plugin

You can follow the instructions to test this plugins in the proper documentation page: Test the plugin.


This plugin is maintained by Odiseo. Want us to help you with this plugin or any Sylius project? Contact us on [email protected].


Add a Comment

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *