Skip to Content
Source platformsShopify (as source)

Shopify (as source)

Use this when the source store is itself a Shopify store. Common cases:

  • Consolidations — merging two Shopify stores into one.
  • Sandbox → production — moving a finished sandbox into the live store.
  • Plus migrations — moving a non-Plus store onto a Plus organization with shared payments and customers.

Credentials

FieldExampleNotes
Source shop domainsource-store.myshopify.comHostname only — no protocol, no trailing slash. Always the .myshopify.com form, not the custom domain.
Admin API access tokenshpat_…From a custom app installed on the source store.

Required Admin API scopes

Install a custom app on the source store and grant read scopes for each resource you plan to migrate:

ResourceScope
Products, collectionsread_products
Customersread_customers
Ordersread_orders, read_all_orders
Discount codesread_discounts, read_price_rules
Gift cardsread_gift_cards
Blogs, articlesread_content
Marketsread_markets
Redirectsread_online_store_pages

You only need scopes for what’s enabled on the migration. Adding more later means re-issuing the token.

Quirks Graftport handles

  • Pagination — Graftport pages through the source’s catalog automatically; no manual chunking needed.
  • Rate limits — Graftport backs off and retries when Shopify throttles. You don’t need to babysit long extracts.
  • Metafields come along automatically for every resource that supports them. The default mapping copies them by namespace; fork if the merchant needs renaming or filtering.
  • Locales — primary locale only by default. Multi-locale stores need a fork that emits one Shopify Translation per non-primary locale.
Last updated on