Splio Shopify connector

📘

Provided by: Splio
Connector type: Source
Third-party system: E-commerce
Required license: "Marketing Automation", "Marketing Automation + CDP" or "Predictive AI (previously TinyClues)"

Overview

Our Shopify App will let you easily sync all data from your Shopify Store (customers, products, locations, orders, and abandoned checkouts) to Splio. For Rewards synchronization with Shopify, please check the Splio Shopify Rewards Apps guide.

Having your Shopify data synchronized into Splio CDP, Marketing Automation and Loyalty opens many possibilities:


1. Prerequisites

Before starting the setup of the Splio Shopify App, you will need to:

  • have access to your Splio tenant (universe/domain) which will be shared to you by your Splio contact
  • use a Shopify user with the right roles and permissions: store owners, organization owners or any user with the "Manage and install apps and channels" permission

📘

As Shopify metafields can not have a date type, you should make sure to store dates in ISO 8601 format to be able to use date operators in your Target filters.

🚧

To avoid any desynchronization between Shopify and Splio, make sure to never update Splio data synchronized from Shopify. And never delete Shopify data that is needed in Splio. The setup process will create a field for each Shopify data field that is not synched to a system field. Those custom fields are prefixed with shp_. Never delete or rename such a custom field to avoid breaking the data synchronization process.


1.1 Unique key and multi-source management

The Shopify Connector is compatible for a single-source architecture as well as for multi-source cases and we handle different contact unique keys. Most common use cases are:

  • If Shopify in the only source of data to Splio: by default we recommend to use the shp_id as the unique key of your universe
  • If you have multiple sources please read [this section](# Multi-source setup & specifications) on how to chose your unique key to understand the main concepts of contact data management.

2. Connect your Shopify app from the store

Connect your Shopify store to Splio directly through the connection hub. You will be redirected to the Shopify App Store where you will provide all the authorizations to the Splio Shopify App. Once the connection setup, the first data synchronisation with data init will be launched automatically. Be aware that depending of the size of your data history, this may take a wile.

3. Data Synchronization scope

The Splio Shopify App will synchronize the data from one or several Shopify Stores to Splio CDP and Marketing Automation. If you have several Shopify stores or several data sources, you will probably need Splio CDP (check with your Splio contact to get recommendations based on your specific context).

3.1 Shopify Customers into Splio Contacts

It is essential to keep in mind that based on the value in Shopify of email_marketing_consent and sms_marketing_consent, each Shopify Customer will be subscribed to a dedicated list in Splio. As Splio is considered the primary "source of truth" for list subscriptions and blacklists, Splio's lists subscriptions will only be updated in case of a newer value in Shopify based on the consent_updated_at.

Whenever a customer is deleted in Shopify, it will trigger the contact deletion from Splio.

3.2 Shopify Product Variants into Splio Products

If you are not using Splio CDP, Shopify Product Variant id is the Splio Product external_id.

Whenever a variant or a product is deleted in Shopify, it will be deleted from Splio in the next data synchronization. To keep your data consistent, we advise you to never delete a variant or a product that has been sold. Instead, you can archive the product to avoid any product deletion in Splio. This way, you can still target contacts based on their purchase of those products in the future.

3.3 Shopify Locations into Splio Stores

If you are using Shopify PoS, the Shopify Locations where customers may order are synched into Splio Stores.

Shopify Abandoned checkouts, orders and refunds into Splio Orders

Only Abandoned checkouts and Orders that have a Customer are synched into Splio Orders / Purchases.

  • When a checkout is created in Shopify it creates a Splio order with completed as false. This will let you build your abandoned cart campaign.
  • When an order is created in Shopify, it creates an order with completed as true. For now, if an order is updated in Shopify (fulfilled, canceled, refunded...), it will not be updated in Splio.
  • In the context of Shopify Markets, you may have two currencies for each order and you can use them both to personalize your email designs:
    • Shopify shop_money is used in Splio orders total price: this is your store currency
    • Shopify presentment money is used in Splio in custom fields (shp_presentment_money*) to display the amount in the currency your customers have used when ordering.

🚧

Shopify POS only supports a unique currency which is the shop_currency. It does not display the presentment_currency, and therefore oblige to use one unique currency for the Shopify Shop.

📘

If needed, you can request access to a detailed mapping of Shopify fields with Splio through the Contact Us form or your Splio Contact.

📘

Please note that as Shopify send abandoned checkouts as only customers leaving the checkout page (not triggered by the end user), if you have the Marketing Automation + CDP license, you can use our web tracker to sync add_to_cart events.

3.4 Unsubs

If you need to integrate the subscription and unsubs data to your Shopify Store, the integration should be done on your side based on files exports from Splio.

4. Sync frequency

Initialization are launched automatically at the app setup and will synchronize by default the last 24 hours of your Shopify Store history to let you validate the data schema with your Splio contact. After validation initialization is launched to sync data with 13 months of history by default.

For all the data scopes you are synchronising (contact, orders, abandoned checkout, locations) when new changes are made to your store (creation or updates) changes will be reflected at most in five minutes.

🚧

If you make a major change on your Shopify store by backfilling specific data, please contact us before proceeding. Major updates during run might take longer than an initialisation and can slow down the overall process.

5. Multi-source setup & specifications

Splio Shopify connector is built to handle multiple sources architecture patterns. In most common cases you will pick the shp_id as the unique key for Splio contact, but other patterns are possible. Your contact at Splio will setup the unique key during the setup of your tenant and Shopify Connector. Please read this article on how to choose your unique key in case of a multi-source setup.

5.1 ID Lookup

In any case the connector has a identifier lookup (ID Lookup) built-in to avoid creating any contact duplicates in to Splio CDP.

We prioritize the search fields by default to the contact key, email and then phone. If a customer if found be the email, the search by the phone is not necessary. If the customer is not found by the email, but the phone we update the customer. If different customers are found by the phone we update the first customer returned.

📘

Product catalog

If you have different data sources for your product catalog, we will also apply the ID Lookup to avoid creating new products from the Shopify Store (based on the variant_id).


5.2 Optional mapping for data overlap

As explained here, updates of contact is based on the last win strategy in case of multi-source setup. The Shopify connector default mapping might be overlapping with your other sources and some data might be useful for a marketing purpose to be stored in specific fields.

For instance you might have the postal code synced from Shopify (matching the postal code of the shipping address of the order) but also from your PoS that is the postal code filled by the clerk or the client directly. Important fields for marketing purposes can be: postal code, date of birth, language.

In that case we recommend to have a custom field to the data from Shopify and the other sources : shp_dob, source_dob, source_2_dob. The Splio CDP is then capable of matching the best data from the different sources and compute a field cdp_dob that you can use in your marketing automation.