Skip to Content
Getting startedYour first migration

Your first migration

This walks through the New Migration wizard end-to-end. By the end you’ll have a migration in Draft status with credentials set and resources enabled — ready for an extract run.

Have the source platform credentials and a Shopify Admin API token ready before you start. The wizard validates them before letting you finish.

Step 1 — Source

You choose what kind of move this is before the wizard opens, using the button you click:

  • New migration — copy from another platform into a fresh Shopify store. This is the normal replatform, and the rest of this page.
  • Bulk edit — read records out of a Shopify store you already run, map them, and write them back to the same store. It opens the same wizard under the heading New bulk edit. See Update an existing Shopify store.

Both buttons sit in the header of the Dashboard and the Migrations page.

Which button you click can’t be changed later — it decides how records are written. To switch, cancel and start again from the other button.

Click New migration. The wizard opens on three steps: Source, Destination, Resources. Fill in the first one:

FieldWhat to enter
Source platformPick the platform the merchant is migrating away from. Today: Dandomain, HostedShop, Magento, Scannet, Shopify (as source), and WooCommerce. Pick File upload if there’s no store to connect to and you’ll supply the data as files. BigCommerce is listed as coming soon. (Not shown in a bulk edit — the source is the store itself.)
Migration nameThe merchant’s brand name (e.g. Northwind Home Goods). Shows up in the migrations list.
SlugAuto-derived from the name. Used in URLs and internal references. Edit if the auto value collides.

Every platform except File upload then asks for the credentials that let Graftport read the store. File upload connects to nothing, so it asks for none — you attach a file to each resource after the migration is created. See Add a file source.

Step 2 — Destination

The destination is always Shopify. Pick a store you have already connected, or enter the Admin API access token for the destination store — the shpat_… value from a custom Shopify app installed on that store. See Connected stores for the difference.

The token must have read+write scopes for every resource you plan to load. See Destination → Shopify for the exact scope list per resource.

You can also skip this step and start in sandbox mode: extract and transform still work, and the migration tells you load is disabled until you add a destination.

Step 3 — Resources

Select which resource types this migration will move. The most common combination is products + collections + customers. Orders and gift cards are opt-in because they involve PII and money.

Order matters, and Graftport handles the dependencies between resources for you.

For each enabled resource, the wizard starts you on the current default mapping template version. You can fork or edit mappings later from the migration’s Sources tab.

If you picked File upload, there are no default mappings to start from: choose the resources you have files for and each starts with a blank mapping. Nothing is selected by default. You’ll attach the file and write the mapping once the migration exists.

Creating the migration writes nothing to Shopify. The wizard only records what you want moved — you decide when anything runs.

After the wizard

You’ll land on the migration’s detail page, which has four tabs:

TabWhat’s on it
SourcesEvery resource this migration moves, and under each one the feeds it reads from — a store connection, an uploaded file, or several. Mappings and per-source actions live here.
RunsThis migration’s run history.
SettingsName and slug, status and stage, source and destination credentials, run behaviour switches, 301 redirects — and, at the foot, the danger zone for purging loaded records and deleting the migration.
CostWhat this migration has cost so far and what the rest is forecast to cost.

The migration starts in Draft status — it can be edited freely, and no run has executed yet. It also starts at the Setup stage on the migrations board; the two are independent, and Migration → Stages explains why.

From here:

  1. Verify credentials by triggering an extract-only run. See Runs → Phases for what that does.
  2. Inspect a few rows in the Data explorer.
  3. Iterate on mappings if anything in the extract surprises you.
  4. Promote to Active and run a full extract → transform → load.

Don’t run a load against a production destination until you’ve at least extracted and transformed once and reviewed the staged payloads. The platform makes this safe, but you still want to look.

Last updated on