Shopify integration summary

Stitch’s Shopify integration replicates data using the Shopify REST Admin API. Refer to the Schema section for a list of objects available for replication.

Shopify feature snapshot

A high-level look at Stitch's Shopify (v15-10-2015) integration, including release status, useful links, and the features supported in Stitch.

STITCH
Release Status

Released

Supported By

Stitch

Stitch Plan

Free

DATA SELECTION
Table Selection

Unsupported

Column Selection

Unsupported

REPLICATION SETTINGS
Anchor Scheduling

Unsupported

Advanced Scheduling

Unsupported

Table-level Reset

Unsupported

Configurable Replication Methods

Unsupported

TRANSPARENCY
Extraction Logs

Unsupported

Loading Reports

Supported

Connecting Shopify

Step 1: Add Shopify as a Stitch data source

  1. Sign into your Stitch account.
  2. On the Stitch Dashboard page, click the Add Integration button.

  3. Click the Shopify icon.

  4. Enter a name for the integration. This is the name that will display on the Stitch Dashboard for the integration; it’ll also be used to create the schema in your destination.

    For example, the name “Stitch Shopify” would create a schema called stitch_shopify in the destination. Note: Schema names cannot be changed after you save the integration.

  5. In the Shopify Shop field, enter the name of the shop you want to connect to Stitch. For example: If the shop URL was stitch-data.shopify.com, you’d enter stitch-data into this field.

Step 2: Define the historical sync

The Sync Historical Data setting will define the starting date for your Shopify integration. This means that data equal to or newer than this date will be replicated to your data warehouse.

Change this setting if you want to replicate data beyond Shopify’s default setting of 1 year. For a detailed look at historical replication jobs, check out the Syncing Historical SaaS Data guide.

Step 3: Create a replication schedule

In the Replication Frequency section, you’ll create the integration’s replication schedule. An integration’s replication schedule determines how often Stitch runs a replication job, and the time that job begins.

Shopify integrations support the following replication scheduling methods:

To keep your row usage low, consider setting the integration to replicate less frequently. See the Understanding and Reducing Your Row Usage guide for tips on reducing your usage.

Step 4: Authorize Stitch to access Shopify

  1. Next, you’ll be prompted to sign into your Shopify account. Enter your Shopify credentials.
  2. Click Log in.
  3. After the authorization process is successfully completed, you’ll be directed back to Stitch.
  4. Click All Done.

Step 5: Set tables and columns to replicate

To complete the setup, you’ll need to select the tables and columns you want to replicate to your data warehouse.

Check out the Schema section to learn more about the available tables in Shopify and how they replicate.

  1. In the list of tables that displays - or in the Tables to Replicate tab, if you skipped this step during setup - locate a table you want to replicate.
  2. To track a table, click the checkbox next to the table’s name. A green checkmark means the table is set to replicate.

  3. To track a column, click the checkbox next to the column’s name. A green checkmark means the column is set to replicate.

  4. Repeat this process for all the tables and columns you want to replicate.
  5. When finished, click the Finalize Your Selections button at the bottom of the screen to save your selections.

Note: If you change these settings while a replication job is still in progress, they will not be used until the next job starts.

Initial and historical replication jobs

After you finish setting up Shopify, its Sync Status may show as Pending on either the Stitch Dashboard or in the Integration Details page.

For a new integration, a Pending status indicates that Stitch is in the process of scheduling the initial replication job for the integration. This may take some time to complete.

Free historical data loads

The first seven days of replication, beginning when data is first replicated, are free. Rows replicated from the new integration during this time won’t count towards your quota. Stitch offers this as a way of testing new integrations, measuring usage, and ensuring historical data volumes don’t quickly consume your quota.


Shopify table schemas


checkouts

Replication Method: Key-based Incremental
Primary Key: id
Contains Nested Structures?: Yes

The checkouts table contains info about abandoned checkouts. Abandoned checkouts are defined as checkouts where the customer has entered their billing and shipping information, but not completed the ordering process.

Table Info & Attributes

checkouts & Nested Structures

This table contains nested structures. If you use a data warehouse that doesn't natively support nested structures, some of the attributes listed below may be in a subtable.

These items are marked with a *

checkouts Attributes

While we try to include everything Shopify has here, this may not be a full list of attributes. Refer to Shopify's documentation for a full list and description of each attribute.

  • Checkout ID (id)

  • abandoned_checkout_url

  • billing_address__address1

  • billing_address__address2

  • billing_address__city

  • billing_address__company

  • billing_address__country

  • billing_address__firstname

  • billing_address__id

  • billing_address__lastname

  • billing_address__phone

  • billing_address__province

  • billing_address__zip

  • billing_address__name

  • billing_address__province_code

  • billing_address__country_code

  • billing_address__default

  • buyer_accepts_marketing

  • cancel_reason

  • cart_token

  • closed_at

  • completed_at

  • created_at

  • currency

  • customer__accepts_marketing

  • customer__created_at

  • customer__email

  • customer__first_name

  • customer__id

  • customer__last_name

  • customer__note

  • customer__orders_count

  • customer__state

  • customer__total_spent

  • customer__updated_at

  • customer__tags

  • discount_codes*

  • email

  • gateway

  • landing_site

  • line_items__fulfillment_service

  • line_items__grams

  • line_items__price

  • line_items__product_id

  • line_items__quantity

  • line_items__requires_shipping

  • line_items__sku

  • line_items__title

  • line_items__variant_id

  • line_items__variant_title

  • line_items__vendor

  • note

  • referring_site

  • shipping_address__address1

  • shipping_address__address2

  • shipping_address__city

  • shipping_address__company

  • shipping_address__country

  • shipping_address__firstname

  • shipping_address__latitude

  • shipping_address__longitude

  • shipping_address__lastname

  • shipping_address__phone

  • shipping_address__province

  • shipping_address__zip

  • shipping_address__name

  • shipping_address__province_code

  • shipping_address__country_code

  • shipping_lines*

  • source_name

  • subtotal_price

  • tax_lines*

  • taxes_included

  • token

  • total_discounts

  • total_line_items_price

  • total_price

  • total_tax

  • total_weight

  • updated_at

collects

Replication Method: Full Table
Primary Key: id
Contains Nested Structures?: No

The collects table contains info about collects, which is the link between products and custom collections.

Table Info & Attributes

collects Attributes

While we try to include everything Shopify has here, this may not be a full list of attributes. Refer to Shopify's documentation for a full list and description of each attribute.

  • Collect ID (id)

  • collection_id

  • created_at

  • featured

  • position

  • product_id

  • sort_value

  • updated_at

custom_collections

Replication Method: Key-based Incremental
Primary Key: id
Contains Nested Structures?: No

The custom_collections table contains info about your custom collections.

Table Info & Attributes

custom_collections Attributes

While we try to include everything Shopify has here, this may not be a full list of attributes. Refer to Shopify's documentation for a full list and description of each attribute.

  • Custom Collection ID (id)

  • body_html

  • handle

  • image

  • published

  • published_at

  • published_scope

  • sort_order

  • template_suffix

  • title

  • updated_at

customers

Replication Method: Key-based Incremental
Primary Key: id
Contains Nested Structures?: Yes

The customers table contains info about your shop's customers.

Table Info & Attributes

customers & Nested Structures

This table contains nested structures. If you use a data warehouse that doesn't natively support nested structures, some of the attributes listed below may be in a subtable.

These items are marked with a *

customers Attributes

While we try to include everything Shopify has here, this may not be a full list of attributes. Refer to Shopify's documentation for a full list and description of each attribute.

  • Customer ID (id)

  • accepts_marketing

  • addresses*

  • created_at

  • default_address*

  • email

  • first_name

  • multipass_identifier

  • last_name

  • last_order_id

  • last_order_name

  • note

  • orders_count

  • state

  • tags

  • tax_exempt

  • total_spent

  • updated_at

  • verified_email

metafields

Replication Method: Key-based Incremental
Primary Key: id
Contains Nested Structures?: No

The metafields table contains metadata for shop and order resources.

Table Info & Attributes

metafields Attributes

While we try to include everything Shopify has here, this may not be a full list of attributes. Refer to Shopify's documentation for a full list and description of each attribute.

  • Metafield ID (id)

  • created_at

  • description

  • key

  • namespace

  • owner_id

  • owner_resource

  • value

  • value_type

  • updated_at

order_refunds

Replication Method: Full Table
Primary Key: id
Contains Nested Structures?: Yes

The order_refunds table contains info about refunds applied to transactions.

Table Info & Attributes

order_refunds & Nested Structures

This table contains nested structures. If you use a data warehouse that doesn't natively support nested structures, some of the attributes listed below may be in a subtable.

These items are marked with a *

order_refunds Attributes

While we try to include everything Shopify has here, this may not be a full list of attributes. Refer to Shopify's documentation for a full list and description of each attribute.

  • Order Refund ID (id)

  • created_at

  • note

  • restock

  • refund_line_items*

  • transactions*

  • user_id

orders

Replication Method: Key-based Incremental
Primary Key: id
Contains Nested Structures?: Yes

The orders table contains information about your shop's completed orders.

Table Info & Attributes

orders & Nested Structures

This table contains nested structures. If you use a data warehouse that doesn't natively support nested structures, some of the attributes listed below may be in a subtable.

These items are marked with a *

orders Attributes

While we try to include everything Shopify has here, this may not be a full list of attributes. Refer to Shopify's documentation for a full list and description of each attribute.

  • Order ID (id)

  • billing_address*

  • browser_ip

  • buyer_accepts_marketing

  • cancel_reason

  • cancelled_at

  • cart_token

  • client_details__accept_language

  • client_details__browser_height

  • client_details__browser_ip

  • client_details__browser_width

  • client_details__session_hash

  • client_details__user_agent

  • closed_at

  • created_at

  • currency

  • customer__accepts_marketing

  • customer__created_at

  • customer__email

  • customer__first_name

  • customer__id

  • customer__last_name

  • customer__note

  • customer__orders_count

  • customer__state

  • customer__total_spent

  • customer__updated_at

  • customer__tags

  • discount_codes*

  • email

  • financial_status

  • fulfillments*

  • fulfillment_status

  • tags*

  • gateway

  • landing_site

  • line_items*

  • location_id

  • name

  • note

  • note_attributes*

  • number

  • order_number

  • payment_gateway_names

  • processed_at

  • processing_method

  • referring_site

  • refunds

  • shipping_address*

  • shipping_lines*

  • source_name

  • subtotal_price

  • tax_lines*

  • taxes_included

  • token

  • total_discounts

  • total_line_items_price

  • total_price

  • total_tax

  • total_weight

  • updated_at

  • user_id

  • order_status_url

products

Replication Method: Key-based Incremental
Primary Key: id
Contains Nested Structures?: Yes

The products table contains info about the products for sale in your shop.

Table Info & Attributes

products & Nested Structures

This table contains nested structures. If you use a data warehouse that doesn't natively support nested structures, some of the attributes listed below may be in a subtable.

These items are marked with a *

products Attributes

While we try to include everything Shopify has here, this may not be a full list of attributes. Refer to Shopify's documentation for a full list and description of each attribute.

  • Product ID (id)

  • body_html

  • created_at

  • handle

  • images*

  • options*

  • product_type

  • published_at

  • published_scope

  • tags*

  • template_suffix

  • title

  • metafields_global_title_tag

  • metafields_global_description_tag

  • updated_at

  • variants*

  • vendor

transactions

Replication Method: Key-based Incremental
Primary Key: id
Contains Nested Structures?: No

The transactions table contains info about transactions, which are created for every order that results in money exchange. This includes authorizations, sales, captures, voids, and refunds.

Table Info & Attributes

transactions Attributes

While we try to include everything Shopify has here, this may not be a full list of attributes. Refer to Shopify's documentation for a full list and description of each attribute.

  • Transaction ID (id)

  • amount

  • authorization

  • created_at

  • device_id

  • gateway

  • source_name

  • payment_details

  • kind

  • order_id

  • receipt

  • error_code

  • status

  • test

  • user_id

  • currency


Questions? Feedback?

Did this article help? If you have questions or feedback, feel free to submit a pull request with your suggestions, open an issue on GitHub, or reach out to us.