
Cartridges mapped to apps, Functions and checkout extensions
Platform Migration
An enterprise replatform from Salesforce Commerce Cloud to Shopify Plus: cartridges mapped to apps, catalog and customers moved, a redirect for every URL, and an honest verdict on fit before anything is built.
Plan the ReplatformThe honest fit check
20,000,000 redirects on Shopify Plus
Salesforce Commerce Cloud earns its place in a store that needs what it was built for: several brands and regions on one platform, a promotion engine marketing lives in, and an integrator on call. It costs its place when the licence, the cartridge estate and the release calendar add up to more than the store earns from them, and when a landing page waits weeks for a sprint.
Shopify Plus suits a brand-led store that sells to consumers in a handful of markets, wants a checkout the platform maintains, and would rather spend on marketing than on hosting and upgrades. It is the wrong move for a store that lives on deep custom order management, heavy B2B with contract pricing and approval chains, or a multi-brand estate that needs one platform behind dozens of sites. Shopify's B2B features and Markets have narrowed those gaps; they have not closed them.
We build on both sides of this move, on ecommerce since 2006, so the verdict is not a pitch for either platform. Where Salesforce Commerce Cloud is the right home we say so. Where Shopify Plus is, the migration below is how we keep what you have earned.
Does this sound familiar?
Each one is a real reason. Whether it outweighs what the platform does for you is what the first call decides.

A platform fee, an integrator retainer and a cartridge estate to maintain, for a store that sells apparel to consumers. The finance team has done the sum against one subscription.

A landing page, a promotion rule or a checkout tweak goes through a cartridge, a code review and a release window. Marketing wants to move at the speed of an app install.

Years of integrator cartridges on the path, overriding each other, written by people long gone. Every platform release is a risk assessment before it is an upgrade.

A checkout customised over years is hard to keep converting. Shopify runs one tested checkout on every store, with Shop Pay for returning buyers.

Three brands became one and the regions consolidated, and the store now carries enterprise machinery for a mid-size consumer catalog.

Sometimes the platform is fine and the build is not. We say so when we see it, and a rescue is the better route than a replatform.
What moves, what is rebuilt, what cannot

Base products become Shopify products and their variation products become variants, up to 2,048 per product, with variation groups, product sets and bundles remodelled in the data map first.

Accounts, addresses and customer groups move. Shopify cannot import passwords, so every customer is invited to set a new one, timed and worded so it reads as an upgrade, not a breach.

Shopify's customer CSV carries no orders. Order history goes in through the Admin API as imported orders, with no confirmation emails sent and no stock moved.

Each cartridge on the path is kept as an App Store app, rebuilt as a Shopify Function or a custom app, replaced by a theme setting, or dropped because nobody used it. The list is agreed before the build.

Campaign and promotion rules become Shopify discounts and Functions, and checkout customisation is rebuilt on checkout extensions, since checkout.liquid is unsupported for the checkout steps.

Page Designer pages and content assets rebuilt as theme sections and pages, a URL map from every old address to its Shopify home, redirects imported in bulk, and rankings watched after cutover.
How a replatform runs
What you are left with
2,048 variants per Shopify product
A Shopify Plus store that sells on the day it goes live, with catalog, customers and order history in place, every promotion rebuilt, and every old URL answering with a redirect. Before that, a data map and a fit verdict you can take to the board.
The redirects are the part enterprise migrations skip at their cost. A Salesforce Commerce Cloud estate runs to tens of thousands of URLs across brands, locales and filtered listings; Shopify imports redirects from a CSV and allows twenty million of them on Plus. A map that misses the filtered pages is how a store loses a third of its traffic in a month. We have rebuilt those; the recovery page is the long version.
Customers get an invitation to set a new password, sent when the store is ready and written in your voice, with the old login still answering for support until the switch is complete. Order history arrives as imported orders, so nobody receives a confirmation email for a 2023 purchase.
And a store you can run without an integrator: an editable theme, documented apps, custom code in a repository you own, and a team that can hand it over or keep it running, whichever you choose.
Pick the starting point
Map, build, cut over: catalog, customers, order history, promotions, checkout logic and redirects handled by one team from the fit verdict to the weeks after launch, with the old store kept warm for rollback.
Stores leave Salesforce Commerce Cloud for more than one platform, and we build on several. The migration hub sets out what moves, what cannot and what it costs to stay, so the destination is a decision rather than a default.
The move is the start. Theme work, custom apps, Functions, checkout extensions and the integrations an enterprise store collects, from the team that built Shopify checkout extensions for a global BNPL provider across five platforms.
Not our word for it

Shopify Verified Skill Badge
9 experts
Shopify Verified Skill Badge
8 expertsTrusted by 100+ companies
Keep reading



FAQ
Tell us about your store and we will come back with straight answers.
Talk to usThree to six months for most enterprise stores: three to four weeks for the data map and the fit verdict, two to four months for the build, the imports and the integrations, and a cutover window at the end. Several brands or locales, a large cartridge estate or a heavy ERP integration run longer, and the data map says how long before you commit.
Not if the redirects are done properly, and that is most of the work. Every old URL, including category pages, filtered listings and content pages across every locale, is mapped to its Shopify address and imported as a 301 redirect; Shopify allows 100,000 redirects on a standard plan and 20,000,000 on Plus. Structured data is checked on the new templates and rankings are watched for weeks after cutover. Our failed migration recovery page describes what happens when this step is skipped.
No. Shopify cannot import passwords from another platform, so each customer is invited to set a new one. We time the invitations for launch, write them in your voice and keep the old store reachable for support during the switch.
Yes, through the Admin API rather than the CSV import, which takes customers but not their orders. Orders are created as imported orders, so no confirmation emails go out and no stock moves. Customers see their past orders in their new account.
Each cartridge on the path is decided before the build: kept as an app from the App Store, rebuilt as a Shopify Function or a custom app, replaced by a theme setting, or dropped. Custom apps that use Function APIs need a Shopify Plus plan, which for a store of this size is the plan in question anyway.
For a store coming off Salesforce Commerce Cloud, almost always. Custom apps with Function APIs, the largest redirect counts and the deepest checkout customisation are Plus features. B2B is available on Basic, Grow, Advanced and Plus, and public apps with Functions run on any plan. The fit verdict names the plan the store actually needs. We do not quote Shopify's prices here because they change.
Rebuilt rather than copied. Campaigns and promotion rules are mapped one by one to Shopify discounts, and the ones Shopify's discount types cannot express are written as Shopify Functions. Scripts were deprecated on 30 June 2026 and checkout.liquid is unsupported for the checkout steps, so Functions and checkout extensions are the only route, and the data map lists every rule before the build starts.
A Shopify product holds up to 2,048 variants. Base products become products and variation products become variants; variation groups, product sets and bundles are remodelled in the data map, since Shopify has no direct equivalent for each. If the catalog cannot be made to fit without losing sales, that is a reason to stay, and we say so.
Individually, after the data map, which is the first deliverable and the one that tells us the size of the catalog, the number of cartridges to rebuild, the brands and locales in play and the integrations behind the store. Nothing on this site carries a price list because no two estates arrive in the same state.
No. The Salesforce Commerce Cloud store keeps trading until the Shopify store has passed every test, and the switch is a DNS change in a quiet window with the old store kept warm for rollback. Orders placed in the gap are reconciled by hand.
Estates that need one platform behind dozens of brand sites, stores whose order management is deeply custom, and B2B businesses that live on contract pricing, approval chains and quoting. Shopify's B2B features and Markets have narrowed those gaps, not closed them. For those stores the migration hub sets out the other destinations, and staying is one of them.
Each is re-pointed to Shopify's Admin and Storefront APIs, through an App Store integration where one exists and through a custom app where it does not. ERP, order management, PIM, email and reviews are mapped in the data map, and analytics is set up before launch so the first week's numbers compare with the last week on the old platform.
Yes. Shopify's Hydrogen framework on Oxygen hosting, with the Storefront API and the Customer Account API behind it, is the route for a store that came from a PWA Kit storefront. Shopify's own guidance is that a headless storefront costs more to build and run than a theme, so the fit verdict says whether it pays for your store.
Shopify Markets lets one store set currency, language, pricing, domains, product availability and taxes per market, which covers most country setups. Several brands usually mean several Shopify stores sharing apps and integrations. The data map lays out which it is for your estate before the build.
Let’s build something great together!
Send the store URL and a line on what runs behind it: brands, locales, cartridges, integrations. Within two business days you have a first read on fit and what the data map would take.