What gets migrated
Vortex Staging supports more than 20 entity types covering catalogue, customers, content, store configuration, commerce, and metaobjects. Here is the high-level breakdown.| Data type | What is included |
|---|---|
| Products | Complete catalogue with variants, images, pricing, inventory levels per location, metafields, and sales channel publishing |
| Collections | Manual and automated (smart) collections with their rules, product associations, and images |
| Customers | Profiles with addresses, tags, marketing consent (email and SMS), notes, and tax exemptions |
| Orders | Historical orders with line items, payments, shipping details, transactions, customer associations |
| Discount codes | Percentage, fixed-amount, BXGY, and free shipping discounts with all rules and stacking settings |
| Gift cards | Active gift cards with their balances and expiration dates |
| Pages | Static pages such as About Us, Contact, custom content pages with full HTML |
| Blogs and articles | Blog structures with articles, author info, tags, and featured images |
| Files | Media files including images, videos, documents, and 3D models |
| Themes | Store theme configurations |
| Navigation menus | Menu structures with nested items, links, and parent-child hierarchy |
| URL redirects | URL redirect paths and targets for SEO continuity |
| Store policies | Refund policy, privacy policy, terms of service, and shipping policy |
| Locations | Store locations with addresses for multi-location inventory |
| Markets | International market configurations including regions and currencies |
| Delivery profiles | Shipping profiles with zones, rates, conditions, and product associations |
| Catalogs and price lists | Catalog configurations with price list rules, adjustments, and per-variant pricing |
| Metaobject definitions | Custom content type schemas with field definitions and access settings |
| Metaobjects | Individual metaobject records with all field values |
How migration works
The migration follows a deterministic seven-step pipeline.- Connect your stores. You authorise the Vortex Staging app on each Shopify store (source and destination). Vortex IQ holds the OAuth tokens; no API keys are passed around in the open.
- Select what to migrate. Choose entity types from the bulk migration screen, or browse and pick specific items in selective migration.
- Data extraction. The platform reads source store data through Shopify’s official GraphQL Admin API with cursor-based pagination, respecting Shopify’s API rate limits.
- Intelligent mapping. Data is transformed for the destination store. Products match by handle, customers by email, orders to customers by email, collections to products by handle, inventory to locations by name. Missing locations are auto-created in the destination.
- Duplicate detection. Before creating, Vortex Staging checks if a record with the same matching key already exists in the destination, and if it does, it is skipped (Ignore mode) or deleted and recreated (Delete and Recreate mode, non-production destinations only).
- Creation in destination. New records are created. Original Shopify IDs cannot be preserved (Shopify generates new IDs), but the relationships are kept via handles, emails, and SKUs.
- Progress tracking. Per-entity progress, status, and downloadable error logs are exposed in Migration history in real time.
Intelligent mapping in detail
The matching keys used for duplicate detection are deterministic and documented:| Entity type | Matched by |
|---|---|
| Products | Product handle (URL slug) |
| Collections | Collection handle |
| Customers | Email address or phone number |
| Orders | Order name / number |
| Gift cards | Last 4 digits of code plus value |
| Discount codes | Discount code |
| Pages | Page handle |
| Blogs | Blog handle |
| Files | Filename |
| Navigation menus | Menu handle |
| URL redirects | Redirect path |
| Metaobjects | Metaobject handle |
What happens to original IDs
Shopify assigns new unique IDs when records are created in the destination. The original IDs from the source store cannot be preserved (this is a Shopify platform constraint, not a Vortex Staging limitation). Vortex Staging maintains relationships through identifying fields (email addresses, product handles, SKUs, location names) so that a customer migrated alongside their orders is still linked to those orders in the destination, even though both records have new internal IDs.Recommended migration order
For best results, migrate data in this order. Vortex Staging will not enforce it, but the dependency chain is real and skipping it causes broken associations.- Locations (if using multi-location inventory)
- Metaobject Definitions (before any Metaobjects that depend on them)
- Metaobjects
- Files (so product images are present)
- Customers (so orders can link to them)
- Products (your catalogue)
- Collections (which reference products)
- Gift Cards (linked to customers by email)
- Discount Codes (which may reference products and customers)
- Orders (which reference customers and products)
- Content (Pages, Blogs, Articles)
- Navigation Menus and URL Redirects
- Store Policies
- Delivery Profiles, Markets, Catalogs and Price Lists
Common use cases
- Complete store migration. Replatforming from one Shopify store to another. Select every entity type and let Vortex Staging handle the data transfer.
- Merging multiple stores. Consolidating regional stores into one. Run separate migrations from each source. Duplicate detection ensures customers and products do not duplicate.
- Testing on a development store. Migrate to a Shopify development store to test theme changes or app installs against production-shaped data. Use customer data anonymisation when sensitive PII would otherwise leave production.
- Customer database transfer. Migrate just Customers when you need to move a list to a new store while preserving marketing consent and addresses.
FAQ
Will the source store be modified during migration?
No. Vortex Staging is read-only against the source. Source data is never modified or deleted. Migration only reads from the source and writes to the destination.Can I run a migration multiple times?
Yes. Duplicate detection means already-migrated records are skipped on retry, so re-running a migration is safe. Failed records can be retried after the underlying issue is fixed.How long does a migration take?
A small store (under 1,000 products) typically completes in 15-30 minutes. Medium stores (1,000-10,000 products) take 1-3 hours. Large stores can take several hours, particularly when orders, customers, files, and metaobjects are all selected.Are customer passwords migrated?
No. Shopify encrypts passwords and they cannot be transferred between stores. Customers will need to use Forgot Password to set a new one in the destination.Related pages
- Onboarding, the recommended setup walkthrough
- Bulk content migration, the bulk migration UI in detail
- Field mapping and data, the per-field migration reference
- FAQs and known issues, common questions and platform limitations
- Shopify connector, the underlying connector
- Nerve Centre Shopify cards, KPIs to monitor before and after migrations
- Ask Viq, question patterns including “what changed in the last migration?”