Migrate from Shopify (legacy) to Shopify (Data sync)
Last updated: October 22, 2024
Available with any of the following subscriptions, except where noted:
All products and plans |
Learn more about the new Shopify integration powered by Data sync, compared to the legacy Shopify integration.
Shopify using Data sync
The Shopify (legacy) integration syncs orders and checkout data into HubSpot’s deals object, which was not built to represent ecommerce data. This has made it cumbersome to build reports and effective marketing campaigns using order and cart data. Additionally, when a syncing error occurred, it was hard to tell what happened and how to fix it.
Now, the new Shopify integration, powered by data sync, has new order and cart objects which makes it easier to sync ecommerce data with HubSpot. This integration also offers two-way syncing for contacts and products, so users can be sure both Shopify and HubSpot have the most updated information. Additionally, you can get insight into syncing errors and utilize sync settings, to ensure syncing is working as required.
Please note: the new Shopify integration offers better syncing functionality and an enhanced data model in comparison to the legacy integration, however, there are some feature gaps. These features are on the roadmap and will be coming soon:
- Revenue attribution reporting is not supported for orders.
- You cannot restrict view permissions on order and cart records.
Key features of Shopify (Data sync)
- Two-way contact sync.
- Two-way product sync.
- One-way order sync: new orders object to represent order data in HubSpot.
- One-way cart sync: new cart object to represent abandoned checkouts in HubSpot.
- Advanced sync settings: you have granular control on the sync setup between platforms.
- Sync insights including: in sync, failing, and excluded.
- Dedicated record pages for orders and carts.
- Associate orders and carts to other objects.
- Create lists based on orders or carts.
Difference between Shopify (legacy) and Shopify (Data sync)
Shopify (legacy) | Shopify (Data sync) |
Limited two-way contact sync:
|
Advanced two-way sync:
|
Shopify orders are synced to the deals object. | Shopify orders are synced to the new orders object. Also, additional properties are synced into the new object, including: Order tracking number, shipping details, discounts codes etc. |
Shopify abandoned checkouts are synced to the deals object. | Shopify abandoned checkouts are synced to the carts object. Also, additional properties are synced into the new object, including: cart discount, referral site etc. |
There are no sync insights. | Sync insights include: in sync, failing, and excluded object records. |
There are basic sync settings. | Advanced sync settings with granular control on sync customization. |
Additional properties are synced from Shopify to HubSpot for all objects. |
Please note: the following will apply when migrating data from Shopify (legacy) to Shopify (Data sync):
- Because of the difference in the data model, there will be duplicate Shopify order and checkout data on the deals object from the previous integration and Orders and Cart objects from the new integration.
- Contact data will only be updated and will not result in duplicates as Shopify (Data sync) deduplicates contact by email ID.
- Product data will only be updated and not duplicated unless the product name has been changed. Data sync uses product name for deduplication. Therefore, if product names have changed, there could be some product duplicates.
Migrate and connect the Shopify integration
- In your HubSpot account, click the settings settings icon in the top navigation bar.
- In the left sidebar menu, under Account setup, navigate to Integrations > Connected apps.
- Click the Shopify app.
- In the alert at the top of the page, click Install now to update to the new version of Shopify.
- Click Install Shopify V2.
- Type uninstall, then click Uninstall.
- Click Next.
- Enter your subdomain, then click Connect to Shopify.
- Click Install.
- When Shopify is connected, click Set up sync.
- Select the data that you want to sync. Click the Shopify dropdown menu and select an object. Then, click the HubSpot dropdown menu and select the object where the Shopify data will sync to.
- Click Next in the top right.
- Configure your sync direction, set up sync rules, and associate records.
- In the top right, click Review.
- In the Review screen, review the rules you’ve configured, then click Save and sync.
Workflow actions migration
Accounts that are migrating to the latest Shopify via Data Sync integration will need to manually migrate some of their deal-based workflows to order or cart-based workflows. The legacy Shopify integration syncs Shopify orders and cart to HubSpot deals, and the new integration syncs Shopify Orders to HubSpot Orders, and Shopify Carts to HubSpot Carts.
The migration tool will create a new Order or Cart-based workflow from an original deal-based workflow, then the deal properties and associations in the original workflow will be mapped to order or cart properties and associations, depending on your selection.
Migrate deal-based workflows
Migrate your deal-based workflows to Order or Cart based workflows, depending on your Shopify set up.
- In your HubSpot account, click the settings settings icon in the top navigation bar.
- In the left sidebar menu, under Account setup, navigate to Integrations > Connected apps.
- Click the Shopify app.
- Navigate to the Feature discovery tab.
- Under Migrate your existing data to Shopify v2, click Migrate now.
- Review the list of eligible existing workflows to migrate.
- Select a Order object or Cart object workflow. Then, click to toggle the Migrate workflow switch on. The migrated Order or Cart workflow will be disabled by default, you can edit the workflow when it has been migrated and then, turn it on.
- In the bottom left, click Migrate workflows.
- To check the status of the migration, click Check status in the Migrate your existing data to Shopify v2 box.
- The migrated workflow will display in the workflows tool with (migrated) appended to the end of the workflow name.
Supported workflow actions
Within deal-based workflows, the following workflow actions are supported to be migrated:
- SET_PROPERTY
- LIST_BRANCH
- EMAIL_NOTIFICATION
- TASK
- DELAY
SET_PROPERTY
Set a property value with text or other property values. When migrating this workflow action, a new Order or Cart property will be created if an Order or Cart property does not already exist with the same name. The properties will be created using the mapping rules in the below section.
LIST_BRANCH
Create different branches for a workflow. When migrating this workflow action, deal properties and associations with Order or Cart properties and associations will be replaced using the mapping rules in the below section.
Please note: only Based on matching filter criteria branches will be supported for migration, not all branch types. Learn more about branches in workflows.
Send an email using a workflow. Deal associations will be created using the mapping rules in the below section.
EMAIL NOTIFICATION
Send an internal email notification to users. Deal properties and other object properties in the body and subject line will be replaced using the mapping rules in the below section.
TASK
Create a task in the CRM object with title, body/notes and associations and assign it to the owner of a deal or a user. Any associations and deal properties will be replaced using the mapping rules in the below section.
DELAY
Create delays between actions.
Please note: only Set amount of time, Days of the week or Time of the day are supported. Learn more about delays in workflows.
Mappings
Depending on the type of workflow you select to migrate your deal-based workflow to, the below mappings will apply for deal properties, associations and pipelines:
Deal property mappings
Deal property | Order property | Cart property |
dealname | hs_order_name | hs_cart_name |
amount | hs_total_price | hs_total_price |
amount_in_home_currency | hs_homecurrency_amount | hs_homecurrency_amount |
createdate | hs_external_created_date | hs_external_created_date |
deal_currency_code | hs_currency_code | hs_currency_code |
dealstage | hs_pipeline_stage | |
pipeline | hs_pipeline |
Deal associations mappings
Deal association | Order association | Cart association |
DEAL_TO_LINE_ITEM | ORDER_TO_LINE_ITEM | CART_TO_LINE_ITEM |
DEAL_TO_COMMERCE_PAYMENT | ORDER_TO_COMMERCE_PAYMENT | |
DEAL_TO_COMPANY | ORDER_TO_COMPANY | |
DEAL_TO_COMPANY_UNLABELLED | ORDER_TO_COMPANY | |
DEAL_TO_CONTACT | ORDER_TO_CONTACT | CART_TO_CONTACT |
DEAL_TO_DATA_SYNC_STATE | ORDER_TO_DATA_SYNC_STATE | CART_TO_DATA_SYNC_STATE |
DEAL_TO_DISCOUNT | ORDER_TO_DISCOUNT | CART_TO_DISCOUNT |
DEAL_TO_INVOICE | ORDER_TO_INVOICE | |
DEAL_TO_SUBSCRIPTION | ORDER_TO_SUBSCRIPTION | |
DEAL_TO_TICKET | ORDER_TO_TICKET | CART_TO_TICKET |
DEAL_TO_ORDER | CART_TO_ORDER | |
DEAL_TO_QUOTE | ORDER_TO_QUOTE | CART_TO_QUOTE |
ENGAGEMENT_TO_DEAL | TASK_TO_ORDER | TASK_TO_CART |
Deal default pipeline stages mappings
Deal ecommerce pipeline stage | Order pipeline stage | Cart status (hs_external_stage) |
CHECKOUT_ABANDONED | abandoned | |
CHECKOUT_PENDING | ||
CHECKOUT_COMPLETED | recovered | |
PROCESSED | PROCESSED | |
SHIPPED | SHIPPED | |
CANCELLED | CANCELLED | |
Custom Stage |