Before you start
Things you need to know:
The Dotdigital for Magento connector can be found on GitHub.
It's available for Community Edition (version 1.6.1 upwards), and Enterprise Edition (version 1.11.1 upwards).
Benefits of the integration
Straightforward and speedy installation and integration allow for swift synchronisation of all of your Dotdigital email data with your Magento ecommerce customer data. It's the most feature-rich integration for Magento 1 and Magento 2 in both B2C and B2B channels.
Making use of key Dotdigital features such as OrderInsight, external dynamic content, automation, and page and ROI tracking, the connector enables:
storage of all your customers' orders, carts and wishlists
segmentation on purchase behaviour
automation of email triggers, such as a welcome series or post-purchase feedback
reporting on page visits and ROI for each campaign
abandoned cart emails, including the cart contents
inclusion of dynamic product recommendations in emails
sending of SMS order status notifications
insertion of uniquely generated voucher codes for each individual customers in your campaigns.
Core data synchronisation process
The core data synchronisation process works through the creation and population of database tables during the installation process, and these are then updated and maintained by a handful of observers and cron services.
Creation of databases
Upon installation of the connector, we create nine new database tables:
email_contact - All contacts to be synced to Dotdigital
email_order - All orders to be synced
email_wishlist - All wishlists to be synced
email_review - All reviews to be synced
email_quote - All quotes to be synced
email_catalog - All products to be synced
email_automation - All contacts due to enrolo or that have enrolled into a program to be synced
email_campaign - All campaign sends sent or due to be sent (abandoned cart or review requests only) to be synced
email_importer - All batches of data that have been imported or are due to be imported to be synced
During installation, these tables become populated with your historical data, after which time they are updated automatically by cron services.
Cron services
The following cron services batch data from these tables and add them to the importer table ready for import:
ddg_automation_customer_subscriber_guest_sync
Batches data from email_contact tableddg_automation_order_and_quote_sync
Batches data from email_order and email_quote tables. Also finds orders placed by guests and adds contacts to email_contact tableddg_automation_reviews_and_wishlist
Batches data from email_review and email_wishlist tablesddg_automation_catalog_sync
Batches product data from email_catalog table
All of the above cron services can have their frequency configured.
All of this data gets batched and then added to the email_importer table, which involves the running of the following cron service:
ddg_automation_importer
Looks for the oldest non-imported import and kicks off an import. This runs every five minutes by default, but the frequency can be configured, and checks the status of the last import and, if complete, marks it as done and then starts the next one.
The importer also checks the import fault file for all contact imports and if it contains suppressed contacts, it updates their status in both the email_contact table and the core Magento newsletter table.
The following cron services also perform the following tasks:
ddg_automation_abandonedcarts
Detects abandoned carts based on the time settings you specify and adds contacts that are due to receive an email to the email_campaign table.
Runs every five minutes.ddg_automation_campaign
Creates contacts and performs sends of all unsent campaigns.
Abandoned cart and review requests only, runs every five minutes.ddg_automation_status
Creates and enrols any contacts into the email_automation table that haven't been added yet.
Runs every 15 minutes.ddg_automation_cleaner
Archives files created from the batching process.Runs once a month.
Magento multisite implementation
If you have multiple Magento websites and stores, the connector can support this. All the data we send includes both the website and the store the data originated from, so you can use this information for segmentation.
In addition to this, all settings can be configured on a per-website basis, allowing different websites to sync to different Dotdigital accounts.