Skip to Content
ConceptsMigration

Migration

A migration is the top-level workspace — one per merchant move. It holds:

  • A source platform + credentials (Magento or Shopify-as-source).
  • A destination (always Shopify) + an Admin API token.
  • A set of enabled resources (products, customers, …) and the mapping pinned to each.
  • The full run history for this merchant.

Lifecycle

A migration moves through three statuses:

StatusMeaning
DraftJust created. Free to edit credentials, resources, mappings. Safe scratch space.
ActiveIn production. Runs are billable. Credential and resource changes are still allowed.
ArchivedMigration is done or abandoned. Read-only. New runs are blocked but existing data and history remain inspectable.

Promote Draft → Active from the migration’s Status controls once you’ve validated an extract and a dry-run transform.

Editing vs versioning

You can change the merchant’s display name, swap credentials when they rotate, or enable a new resource without rebuilding history. But every run is a frozen record of what happened: once a run shows that it transformed row X with mapping version V, that pairing never changes.

This is intentional. It means you can answer “what did we send to Shopify on March 14?” by reading the run’s history, not by replaying logic in your head.

Slug and URL

Each migration has a slug derived from its name on creation. The slug appears in the URL (/migrations/<slug>) and in shareable links. Slug edits are allowed but break previously shared links — change with care.

Last updated on