Importing Data From Shopify to Mailmodo
Last updated April 10, 2024
Our Shopify integration takes all the information about the customers who purchase from your Shopify store and the products they purchase and sends it over to Mailmodo. Learn how to integrate your Shopify store with Mailmodo .
Once you've got the customer data into Mailmodo, you can do some really cool stuff with the data. For e.g. You can make targeted email campaigns that are just right for the people who shop in your store. You can even suggest products to them based on what they've bought before.
In this article, we'll get into the nitty-gritty of how the data-syncing process happens between Mailmodo and Shopify. It's all about making your online store and email marketing work together seamlessly.
What Types of Data Are Synced From Shopify to Mailmodo?
Here are the different types of data that we import from Shopify to Mailmodo:
Customers
Shopify customers are imported as Contacts in Mailmodo along with their properties. At the time of importing, all the Shopify customers are added to the SHOPIFY_CONTACTS
list in Mailmodo which can be later used for creating segments, sending campaigns, or triggering journeys.
Here are the properties that are automatically synced from Shopify:
- Email, First and Last Name, City, State/Region, Zip Code, Country, and Phone Number → These are default properties in Mailmodo which are automatically populated with all available data from Shopify.
- Email Subscription Status → Whether or not a customer has opted-in to email marketing.
- Shopify Tags → Any custom tags assigned to that customer in Shopify, e.g., Wholesale or VIP.
To learn more on how Shopify customer profile fields are mapped into contact properties in Mailmodo, see the documentation guide on how Shopify customer properties are mapped to Mailmodo contact properties.
Initial Sync
When Shopify is integrated for the first time or you explicitly request for resyncing of data from the Shopify integration’s page, the following things will happen:
- Sync all the Shopify customer profile which has email address into Mailmodo. In case of duplicate email addresses in Shopify, then we will always update the data with the latest value received from Shopify
- If a profile already exists in Mailmodo at the time of syncing then we will update the contact properties in Mailmodo with the data we received from Shopify
- All the customers imported from Shopify will be added to the
SHOPIFY_CONTACTS
list in Mailmodo - While importing customers from Shopify, we will update the subscription status in Mailmodo accordingly.
Ongoing Sync
Once the initial sync is completed, ongoing sync happens in real time i.e. whenever a new customer is created or an existing customer profile is updated in Shopify, we will update the information in Mailmodo in real-time.
- For new Shopify Customers → Create a new contact in Mailmodo, map the contact properties with the information received, and add them to the
SHOPIFY_CONTACTS
list - For existing Shopify Customers → Update contact properties in Mailmodo based on the information received from Shopify
NOTE: that Mailmodo will only import Shopify customers with valid email addresses. So, whenever you see a mismatch between customers in Shopify and contacts in the SHOPIFY_CONTACTS list, it can happen because of the following reasons: 1. Shopify Customer doesn't have an email address 2. Shopify Customer email address is not valid 3. Shopify Customers have duplicate email address 4. Contacts in SHOPIFY_CONTACTS got archived and we haven’t received any updates for them.
Products
Once the integration is enabled, we start syncing product catalog information like product details, variant details, and collections. Once synced, this information is available for customers to personalize email templates and create segments.
Initial Sync
When Shopify is integrated for the first time or you explicitly request for resyncing of data from the Shopify integration’s page, the following things will happen:
- Start syncing all the catalog objects like products, product variants, and collections from Shopify
- For each catalog object, sync relevant metadata fields. For e.g., for products, we will sync the title, price, description, etc. whereas for collections we will sync the type of collections, title, published date, product in the collection, etc.
- Once information is synced, the same can be used in template creation and contact segmentation as per business needs.
NOTE: None of the catalog information can be edited in Mailmodo. Mailmodo will only have read-only access to the information.
To learn more about how the product information can be used for sending personalized campaigns, check out our template creation and segmentation guide.
Ongoing Sync
Once the initial sync is complete, ongoing sync happens in real time i.e. whenever a product catalog is changed, we will update the information in real time in Mailmodo.
- Adding new products in Shopify → The new product information will be added to Mailmodo.
- Update existing products in Shopify → The product information will be updated in Mailmodo in real-time.
- Deleting products in Shopify → The products will be deleted in Mailmodo as well i.e. they won’t be available while creating segments or templates.
NOTE: product updation and deletion is a forward-looking activity i.e. they only impact future campaigns. Past campaigns sent will continue to show the old product information.
Orders
Shopify orders are stored as events against the Mailmodo contacts and exposed to you as User Shopify Activity in the platform to help you analyze these actions and understand how customers engage with the business. Within Mailmodo, you can use these Shopify activities to create segments and trigger marketing automation flows.
Initial Sync
Sync all the past order history information for the contacts imported from Shopify. You can see the status of sync progress on the integrations page. Depending upon the amount of data, it might take a few minutes to a couple of hours for sync completion.
Ongoing Sync
After the initial sync, as and when orders are created or updated in Shopify, the same information will be updated in Mailmodo in real-time.
List of User Shopify Activity Available in Mailmodo
To make it easier for Shopify store owners to segment customers and set up email campaigns, we are tracking and exposing the lifecycle of Shopify orders for customers as Shopify Activities against the contacts in Mailmodo.
Placed Order
A placed Order is triggered whenever a customer completes a purchase on the Shopify store. This event also provides data on how many customers have placed an order from your Shopify store. The information tracked for this event encompasses all details related to the order such as order value, purchased items, product names, variants, etc.
Checkout Started
Checkout Started is triggered whenever the customer starts the checkout on the Shopify store. This event also provides data on how many customers have started the checkout process from your Shopify store. The information tracked for this event encompasses all details related to the items in someone's cart including product names, images, checkout URL, and variant information so you can use this information in your follow-up emails.
https://shopify.dev/changelog/checkout_started-now-triggers-on-every-checkout-visit-in-checkout-extensibility-1
NOTE: check-out event will only be tracked if the user has entered an email address on the Shopify store. Mailmodo does not track the Checkout Started event if there is no email address.
Fulfilled Order
A fulfilled Order event is triggered when an order is marked as "fulfilled" in your Shopify store. This event also provides data on how many customer orders have a Fulfillment Status of "fulfilled." The information tracked for this event encompasses all details related to the fulfilled items including product names, images, and variant information so you can use this information in your follow-up emails.
NOTE: No event is triggered for parital fullfilled order i.e. if you have setup journey using Fulfilled Order as trigger option then contacts will be enrolled only when the order against the contact is completely fulfilled.Also, partially fulfilled orders are included in Fullfiled Order event at the time of segmentation
Refunded Order
A refunded Order event is triggered when an order is marked as "refunded" in your Shopify store. This event also provides data on how many customer orders have been refunded in your store. The information tracked for this event encompasses all details related to the refunded items including product names, images, and variant information so you can use this information in your follow-up emails.
NOTE: Partially refunded orders are included in the Refunded Order event at the time of segmentation.
Cancelled Order
A canceled Order event is triggered when an order is marked as "canceled" in your Shopify store. This event also provides data on how many customer orders have a Cancellation Status of "Cancelled”. The information tracked for this event encompasses all details related to the canceled items including canceled reason, product names, images, and variant information so you can use this information in your follow-up emails.
Abandoned Checkout
Unlike other Shopify Activities, Abandoned Checkout is a derived event that gets triggered 20 minutes after the Checkout Started event has happened and the customer has still not completed the purchase for the given checkout on the Shopify store.
You can use abandoned checkout events to create journeys in Mailmodo. For e.g. checkout recovery workflows .
NOTE: There is no correlation between Shopify Abandoned Checkout and Mailmodo Abandoned Checkout. Mailmodo Abandoned Checkout event is triggered only for customers with the valid email address. So, you will always see a higher number of Abandoned Checkouts in Shopify.
Cart Abandoned
Cart Abandoned is similar to Abandoned Checkout, just that it is triggered if a user leaves one or more items in their cart instead of checkout. This is triggered 60 minutes after the cart is abandoned. You can use cart abandoned events to create journeys in Mailmodo.
Ordered Product
Similar to Abandoned Checkout activity, Ordered Product is a derived event that provides data on how many customers have purchased individual items on your Shopify Store. This is useful for creating segments based on product information that’s not available in the Placed Order event. The information tracked for this event encompasses all details related to the order such as product name, quantity, SKU, total order value, etc.
For example, if someone buys shoes and a pair of socks, we will have one Placed Order activity for the whole order but two Ordered Product activities each for the type of product purchased against the contacts.
The ordered Product event is available for segmentation purposes. If you are looking to create a journey, then use the Placed Order event.
Updated Shipment Status
This event gets triggered whenever there's an update in the delivery status of a particular order. You get delivery updates, from third party tools such as DTDC, Shiprocket etc in your store. Which in turn gets synced to Mailmodo. You can filter further by choosing 'Delivery Status' and one of the values such as 'Ready to pickup', 'Confirmed', 'Out for delivery', etc.
More Resources
To learn more, check out our detailed guides on how to use Shopify activities for creating segments and setting up journeys:
If you face any problem then reach out to us at Mailmodo Support or share your thoughts at Mailmodo Product Feedback .