Skip to main content

API terms compliance

As part of complying with Shopify's API terms you agree to sync certain data to the merchant store.


Anchor to Customer requirementsCustomer requirements

The following table lists the types of customer updates you need to sync with Shopify. These requirements only apply to data collected or updated by your app, and only for customers that originate from the merchant's online store or Shopify POS. Sensitive personal information (as defined in the API terms) is excluded from the scope of data listed below.

Via the REST Admin API Customer resource:Via the GraphQL Admin API Customer object:Via the GraphQL Storefront API Customer object:
email_marketing_consentfirstNameacceptsMarketing
statelastNamefirstName
opt_in_levelphonelastName
consent_updated_atemailphone
sms_marketing_consenttaxExemptemail
stateaddressescustomerAddress
opt_in_level
consent_updated_at
accepts_marketing
accepts_marketing_updated_at
first_name
last_name
addresses
default_address
phone
currency
email
tax_exempt

There are two types of orders you must sync with Shopify:

  • Orders created from a Shopify checkout (such as from the online store or Shopify POS)

  • Orders created from a merchant's product listing on a third-party platform

    • For example, if a merchant has Product A stored in Shopify and an order with Product A is created on a third-party platform, you need to sync that order with Shopify

    These requirements only apply to data collected or updated by your app, and sensitive personal information (as defined in the API terms) is excluded.

Anchor to Orders from a Shopify checkoutOrders from a Shopify checkout

For orders originating from a Shopify checkout, the following table lists the types of order updates you need to sync with Shopify, along with the corresponding mutations to use. There may be cases where you can't update some orders due to Shopify restrictions. In such cases, try to sync the data. However, if Shopify blocks you, then you don't need to sync.

Anchor to Orders from a product listing on a third-party platformOrders from a product listing on a third-party platform

You'll need to import orders created from a Shopify product listing on a third-party platform using the orderCreate mutation. Include all data fields on the order, except where Shopify doesn't have the input fields to receive the data.

If you update these orders later, sync the changes with Shopify according to the requirements for orders from a Shopify checkout.


Was this page helpful?