Important: Version 15-10-2015 deprecation
A newer version of Shopify is available in Stitch. This version will still continue to replicate data, but may be deprecated at a future date.
Connections created before January 2, 2019 use this version. Upgrade to the latest version (1.0) to take advantage of the new enhancements.
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 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
- Sign into your Stitch account.
-
On the Stitch Dashboard page, click the Add Integration button.
-
Click the Shopify icon.
-
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. - 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 enterstitch-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
- Next, you’ll be prompted to sign into your Shopify account. Enter your Shopify credentials.
- Click Log in.
- After the authorization process is successfully completed, you’ll be directed back to Stitch.
- 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.
- 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.
-
To track a table, click the checkbox next to the table’s name. A green checkmark means the table is set to replicate.
-
To track a column, click the checkbox next to the column’s name. A green checkmark means the column is set to replicate.
- Repeat this process for all the tables and columns you want to replicate.
- 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.
Initial replication jobs with Anchor Scheduling
If using Anchor Scheduling, an initial replication job may not kick off immediately. This depends on the selected Replication Frequency and Anchor Time. Refer to the Anchor Scheduling documentation for more information.
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
Schemas and versioning
Schemas and naming conventions can change from version to version, so we recommend verifying your integration’s version before continuing.
The schema and info displayed below is for version 15-10-2015 of this integration.
checkouts
Replication Method: Key-based Incremental
Primary Key: id
Contains Nested Structures?:
Yes
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.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
collects
table contains info about collects, which is the link between products and custom collections.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
custom_collections
table contains info about your custom collections.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
customers
table contains info about your shop's customers.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
metafields
table contains metadata for shop and order resources.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
order_refunds
table contains info about refunds applied to transactions.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
orders
table contains information about your shop's completed orders.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
products
table contains info about the products for sale in your shop.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
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.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
Related | Troubleshooting |
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.