Shopify - Data Mapping

Default mapping our Splio Shopify connector which can be completed during the setup phase upon request with your Splio contact. The default mapping can also be personalized if some data are not relevant to you (specified as default in the tables below).

Contact scope

Shopify fieldSplio fieldTypeComments
idshp_idmandatory
emailemailmandatory
email_marketing_consent.stateshp_accepts_email_marketingmandatory
email_marketing_consent.consent_updated_atshp_accepts_email_marketing_updated_atmandatory
sms_marketing_consent.stateshp_accepts_sms_marketingmandatory
sms_marketing_consent.consent_updated_atshp_accepts_sms_marketing_updated_atmandatory
created_atcreation_datedefault
updated_atshp_updated_atmandatory
first_namefirstnamedefault
last_namelastnamedefault
orders_countshp_orders_countdefault
stateshp_statedefault
total_spentshp_total_spentdefault
last_order_idshp_last_order_iddefault
last_order_nameshp_last_order_namedefault
phonecellphonedefault
tagsshp_tagsdefaulteach tag is encapsuled in []. By default truncated to 255 chars. If you are a heavy user of tags, you need to request an extension of field size to your Splio Contact.
default_address.cityshp_default_address_citydefault
default_address.zipshp_default_address_zipdefault
default_address.country_codeshp_default_address_country_codedefault
default_address.country_nameshp_default_address_country_namedefault
default_address.companyshp_default_address_companydefault
default_address.nameshp_default_address_namedefault

Product Scope

Shopify fieldSplio fieldComments
variants.idexternal_id
titlename
body_htmldescriptionMake sure the description is under 120 char, otherwise you will have a non valid HTML.
vendorbrand
variants.skusku
product_typecategory
image.srcimg_url
variants.priceprice
variants.idshp_variant_id
idshp_product_id
variants.titleshp_variant_title
variants.option1shp_variant_option1
variants.option2shp_variant_option2
variants.option3shp_variant_option3
variants.inventory_quantityshp_variant_inventory_quantity
variants.created_atshp_created_at
variants.updated_atshp_updated_at
tagsshp_product_tagseach tag is encapsuled in []. By default truncated to 255 chars. If you are a heavy user of tags, you need to request an extension of field size to your Splio Contact.
variants.barcodeshp_variant_barcode
product.statusshp_product_status

📘

Note that the product catalog in Splio is at the variant level (and not the parent). If you need to use the parent level for display purpose in your email designer, reach out to your contact at Splio.


Orders scope

Shopify fieldSplio fieldComments
idexternal_id(order_id in datahub)
customer.idcontact_id(customer_key in datahub)
processed_atorder_date
total_pricetotal_price(total_amount in datahub)
total_discountsdiscount_amount
total_taxtax_amount
total_shipping_price_set.shop_money.amountshipping_amount
currencycurrency
discount_codes.codediscount_codes
location_idshp_location_id
total_price_set.presentment_money.currency_codeshp_presentment_money_currency
total_price_set.presentment_money.amountshp_presentment_money_total_price
total_discount_set.presentment_money.amountshp_presentment_money_discount_amount
total_shipping_price_set.presentment_money.amountshp_presentment_money_shipping_amount
created_atshp_created_at
updated_atshp_updated_at
customer_localeshp_customer_locale
order_status_urlshp_order_status_url
processing_methodshp_processing_method
discount_codes.code[0]shp_discount_codes
app_idshp_app_id
source_nameshp_source_name
order_numbershp_order_number
tagsshp_tags

line_items / order items

Shopify fieldSplio fieldComments
line_item.variant_idproduct_id
currencycurrency
line_item.quantityquantity
line_item.priceunit_price
line_item.total_discountdiscount_amount
line_item.tax_lines.price_set.shop_money.amounttax_amount

📘

Note that total_line_amount in Splio is calculated as line_item.price_set.shop_money.amount * line_item.quantity) - splioSum([number(line_item.discount_allocations.amount_set.shop_money.amount)])


Abandoned checkouts

Shopify fieldSplio fieldComments
idorder_idprefixed by 'ach_'
customer.idcontact_id(customer_key in datahub)
created_atorder_date
total_pricetotal_price(total_amount in datahub)
total_discountsdiscount_amount
total_taxtax_amount
total_shipping_price_set.shop_money.amount OU shipping_lines.priceshipping_amount
currencycurrency
location_idshp_location_id
abandoned_checkout_urlshp_abandoned_checkout_url
total_price_set.presentment_money.currency_codeshp_presentment_money_currency
total_price_set.presentment_money.amountshp_presentment_money_total_price
total_discount_set.presentment_money.amountshp_presentment_money_discount_amount
total_shipping_price_set.presentment_money.amountshp_presentment_money_shipping_amount
created_atshp_created_at
updated_atshp_updated_at
customer_localeshp_customer_locale
order_status_urlshp_order_status_url
processing_methodshp_processing_method
discount_codes.code[0]shp_discount_codes
app_idshp_app_id
source_nameshp_source_name
order_numbershp_order_number
tagsshp_tags

line_items / order items

Shopify fieldSplio fieldComments
line_item.variant_idproduct_id
currencycurrency
line_item.quantityquantity
line_item.priceunit_price
line_item.total_discountdiscount_amount
line_item.tax_lines.price_set.shop_money.amounttax_amount

📘

Note that total_line_amount in Splio is calculated as line_item.price_set.shop_money.amount * line_item.quantity) - (count(line_item.discount_allocations) > 0 ? sum(line_item.discount_allocations.amount_set.shop_money.amount):0)


Refunds scope

The refund scope applies the same mapping as the order scope excpect from the total line amount formula:

total line amount = (number(refund_line_item.line_item.price_set.shop_money.amount) \* refund_line_item.line_item.quantity)

How to add metafields?

During the setup phase you will be able to add all the metafields needed in your Marketing Automation. Your contact at Splio well help you set the metafields in your connector and you need to provide the list with the technical name.

📘

Typical data useful for your marketing automation can be date of birth, gender, language are not is the default Shopify data mapping. As such we recommend you to add them into your metafields mapping, rather than tags for better usability.

You can find the definition of your metafields in your Shopify Admin > Settings > Custom Data

Here is an exemple of JSON to provide to Splio:

[
  {
    "splio_custom_field_id": "shp_meta_civility",
    "splio_custom_field_type": "text",
    "shopify_metafield_resource": "customer",
    "shopify_metafield_namespace": "global",
    "shopify_metafield_key": "civility"
  },
  {
    "splio_custom_field_id": "shp_meta_dob",
    "splio_custom_field_type": "date",
    "shopify_metafield_resource": "customer",
    "shopify_metafield_namespace": "global",
    "shopify_metafield_key": "dob"
  }
]