Fixed prices · Business-day deadlines · Refund if we're late
Migrations · Magento / Adobe Commerce

Magento and Adobe Commerce to Shopify, store views and .html URLs included

In short

A Magento migration is mostly a data-model translation: EAV attributes become metafields, configurable products become variants (three options at most), store views become Shopify Markets, and the url_rewrite table becomes the redirect map. The hosting, patching and extension upkeep go away. Magento stores usually fit a Tailored Move, or Made-to-Measure when several store views or B2B shared catalogs are involved.

Last updated · Facts and prices checked October 22, 2026 · By the Quick & Sons crew

What leaving Magento actually removes

On Magento you own the server, the PHP version, the Elasticsearch or OpenSearch service, security patches and every extension's compatibility with the next patch. Adobe publishes a support window for each release line1, and staying inside it means a regular upgrade project. On Shopify the platform, hosting, checkout and PCI scope are Shopify's job. What you keep paying for is the plan and the apps you choose.

That trade only works if the data model comes across intact, so that's where we spend the first days.

Magento entities and where they land

Magento's product types don't all have a Shopify twin. The table shows which ones convert directly and which need a decision.

On Magento / Adobe CommerceHow it movesNotes
Simple productsMoves by toolIncluding special prices, which become compare-at prices.
Configurable productsMoves by toolChildren become variants; more than 3 configurable attributes needs a split.
Bundle productsRebuiltFixed bundles use Shopify Bundles; dynamic bundles need an app.
Grouped productsRebuiltBecome a collection section or a quick-add block on one page.
Virtual and downloadable productsMoves by tool plus appFiles are re-attached through a digital downloads app.
Custom options (per product)RebuiltLine item properties in the Horizon product form.
Attributes and attribute setsMoves by tool, after mappingBecome metafield definitions per product category.
Category treeMoves by toolBecomes collections plus menus; anchor categories become automated collections.
Tier prices and customer groupsMapped by handWholesale groups become B2B catalogs; retail tier prices need a discount app.
CustomersMoves by toolMagento hashes passwords, so customers get activation invites.
Orders, invoices, credit memosMoves by toolOrders carry their refunds; Shopify has no separate invoice object.
CMS pages and blocksMoves, then cleaned upPage Builder markup is stripped and layouts rebuilt in Horizon.
Reviews and ratingsMoves through the review appExported and imported into the review app (Tailored and up).
Store views and websitesMapped by handLanguages become Markets; separate brands become separate stores.
URL rewritesMoves by toolBecome the redirect map after de-duplication.

Configurable products, attribute sets and store views

Configurable products. Each configurable product's child simples become variants. Shopify caps a product at three options and 2,048 variants2. Magento lets you configure on as many attributes as you like, so a product configured on colour, size, length and fit gets split or has one attribute demoted to a filter metafield. Children marked "Not visible individually" are imported only as variants, never as standalone products.

Attribute sets. Shopify has no attribute sets. We map each set's attributes to metafield definitions on the product category, so the right spec fields appear on the right products and power Search & Discovery filters.

Store views. Language store views become Shopify Markets with translations through Translate & Adapt. Separate websites with different catalogs or brands usually become separate Shopify stores, which is a Made-to-Measure conversation.

Turning url_rewrite into a Shopify redirect map

Magento keeps every product and category URL in its url_rewrite table, built from URL keys and the configured suffix, which defaults to .html3. We export that table, drop the generated duplicates and point each surviving URL at one Shopify URL4.

Magento / Adobe Commerce URLShopify URLCovers
/{url-key}.html/products/{handle}Default product URL with the .html suffix.
/{category}/{sub-category}.html/collections/{handle}Category paths collapse to one handle.
/{category}/{url-key}.html/products/{handle}Only if "use categories path for product URLs" was on.
/{store-code}/{url-key}.html/{locale}/products/{handle}When store codes were added to URLs; maps to the Market's language path.
/{cms-identifier}/pages/{handle}CMS pages, which have no suffix by default.
/catalog/product/view/id/{id}/products/{handle}System URLs that leak into old links and feeds.
/customer/account/login//account/loginPlus /checkout/cart/ to /cart.

Extensions we usually retire

Magento stores tend to run 20 to 60 extensions. Many of them cover things Shopify does natively:

  • Layered navigation extensions become Search & Discovery filters driven by metafields.
  • One-step checkout extensions go away. Shopify's checkout replaces them, and on non-Plus plans it can't be restructured anyway5.
  • SMTP and transactional email extensions become Shopify notifications, styled to your brand.
  • Adobe Commerce B2B features (company accounts, shared catalogs, negotiable quotes, requisition lists) map to native Shopify B2B, except quotes, which have no native object. See Is Shopify good for B2B? for the honest gaps.
  • ERP connectors are quoted separately. Made-to-Measure includes the data handoff spec.

Magento traps we check before quoting

Thousands of generated rewrites

Magento creates a rewrite for every product-in-category combination. Most were never linked anywhere. We keep the ones with traffic or backlinks and the canonical ones, so the redirect list stays manageable.

Values that differ per store view

Names, descriptions and prices can be overridden per store view. We export each view separately and decide which one is the primary language.

Disabled but indexed products

Disabled products still in Google's index get a redirect to their category instead of a 404.

Media cache paths

Image URLs under /media/catalog/product/cache/ are throwaway. We import originals so Shopify generates its own sizes.

Get a fixed price and a launch date in 15 minutes.

Tell us what you're running today. You'll have a written scope, a price that won't change and the date we'll be held to within one business day.

the usual fit

Tailored Move

$8,900

Established brands that want the new store to look and sell better than the old one. · 15 business days.

Pay the 50% deposit · $4,450

All prices

Sources

  1. Adobe Experience League: Commerce software lifecycle policy, checked October 22, 2026.
  2. Shopify Help Center: Adding variants (limits), checked October 22, 2026.
  3. Adobe Experience League: Commerce search engine optimization (URL keys and suffixes), checked October 22, 2026.
  4. Shopify Help Center: URL redirects, checked October 22, 2026.
  5. Shopify Help Center: Checkout apps, checked October 19, 2026.