Skip to main content

OroCommerce to Shopify Plus Migration: What B2B Distributors Need to Know

OroCommerce to Shopify Plus migration for B2B distributors: RFQ workflows, account hierarchy mapping, Symfony code audit, and ERP re-integration.

Migrating off OroCommerce is not the same problem as migrating off a DTC-first platform. OroCommerce was built B2B-native from the start: RFQ workflows, multi-level account hierarchies, and contract pricing are core to the platform, not features bolted on later. That means an OroCommerce migration isn't about adding B2B logic to Shopify. It's about translating B2B logic your team already built and refined in Oro's Symfony-based architecture into Shopify B2B's native structures, without losing the depth that made Oro worth running in the first place. This guide covers what that execution actually involves, for a distributor who has already decided to move.

Why an OroCommerce Migration Is Different From a Magento or Legacy Platform Migration

Most platform migrations to Shopify involve adding B2B capability that didn't exist natively before. An OroCommerce migration runs the opposite direction: the B2B depth already exists, sometimes exceeding what Shopify B2B covers out of the box, and the work is figuring out what maps directly, what needs a native Shopify equivalent, and what genuinely requires a custom build. Uncap's OroCommerce vs. Shopify Plus comparison covers the decision itself, including where Oro has genuine advantages and what Shopify Plus covers natively today. This guide assumes that decision is made and focuses only on the execution.

The Right Migration Order for OroCommerce to Shopify Plus

  1. Inventory every piece of custom Symfony code. OroCommerce is built on the Symfony PHP framework, and most mature Oro implementations carry custom bundles, workflows, and integrations built specifically for that architecture. Document all of it before scoping the Shopify build.

  2. Map account hierarchies and contract pricing before touching the catalog. This is the structural work with no simple export-import path, and it needs to be resolved before catalog and content migration can be validated against real accounts.

  3. Migrate the product catalog and base data. Once account structure is mapped, catalog migration is comparatively straightforward.

  4. Rebuild RFQ workflows against Shopify B2B and Shopify Flow. Oro's native request-for-quote functionality has no direct Shopify equivalent; this gets rebuilt, not imported.

  5. Scope and rebuild the ERP integration. Confirm whether the existing ERP connection can be reused or needs to be rebuilt for Shopify's architecture.

  6. Build the redirect plan and run B2B-specific QA together. Both need to happen before any real account is migrated to production.

  7. Migrate accounts in waves, largest and most complex first in a staging environment, live rollout smallest first. Validate the migration logic against your most complex account before it touches your most important one.

Translating RFQ Workflows to Shopify B2B

Request-for-quote is one of OroCommerce's signature B2B capabilities: a buyer requests pricing on a custom order, a rep responds, negotiation happens inside the platform, and an approved quote converts into an order. Shopify B2B does not include a native RFQ workflow with the same depth Oro provides out of the box. This is the single biggest functional gap in an OroCommerce migration, and it needs to be solved deliberately, not discovered during QA.

The realistic paths are building quote and negotiation logic using Shopify Flow, checkout extensibility, and draft orders, or extending Shopify B2B with a dedicated quoting capability. Whichever approach is chosen, the migration plan needs to treat RFQ as its own scoped workstream from day one, with the same weight as catalog or account migration, not as a feature to figure out after the core platform is live.

Mapping Account Hierarchies and Contract Pricing

OroCommerce's account structure supports multi-level hierarchies: a parent company with subsidiary accounts, each potentially with its own pricing, permissions, and buyers. Shopify B2B supports company accounts with multiple locations and contacts, but the underlying hierarchy model is not identical to Oro's, and a distributor running complex, multi-tier account structures needs this mapped deliberately rather than assumed to translate automatically.

Contract pricing (negotiated rates tied to specific accounts, sometimes with volume tiers or time-bound terms) needs the same deliberate mapping onto Shopify B2B's price lists. Verify during this phase that every account's actual negotiated terms, not just a general customer group price, carries over correctly, and that sub-accounts under a parent company inherit or override pricing the way they did in Oro.

Auditing Custom Symfony Code Before Migration

Because OroCommerce is a Symfony-based, highly customizable platform, mature implementations often include significant custom development: bundles, workflows, and business logic built specifically for that architecture. None of that code ports to Shopify directly. Every custom capability needs to be evaluated individually: does Shopify B2B already cover this natively, does it require a Shopify app, or does it need custom development using Shopify Functions or checkout extensibility.

Skipping this audit is one of the most common ways an OroCommerce migration timeline gets blown, because custom logic that felt like a minor customization in Oro can turn out to be a meaningful build in Shopify's architecture, or the reverse: something the team assumed would need custom work turns out to be a native Shopify B2B feature already.

ERP Re-Integration During the Migration

Most OroCommerce implementations at real B2B scale are already connected to an ERP for inventory, pricing, and order sync. That integration work needs to be scoped alongside the storefront migration, not treated as a follow-on project once Shopify is live. Confirm whether the ERP connection can be adapted for Shopify's API or needs to be rebuilt, and test it against real account-specific pricing and inventory before any migrated account goes live.

The Redirect Plan and B2B-Specific QA

URL structure changes between OroCommerce and Shopify, and some Oro URLs may be gated behind account permissions in ways that complicate a straightforward redirect map. Every public and gated URL needs a mapped redirect, tested before launch.

QA needs to go beyond confirming the site loads. Verify that account hierarchies function correctly (a sub-account sees its own pricing and permissions, not the parent's), that RFQ and quoting workflows complete end to end, that contract pricing applies correctly at checkout, and that ERP sync reflects real data before any account places a real order.

How Uncap Runs an OroCommerce Migration

Uncap Commerce implements the migration to fixed scope, built around the parts of an OroCommerce migration that actually carry risk: account hierarchy and contract pricing mapping, RFQ workflow reconstruction, a full audit of custom Symfony code before any of it is assumed to need rebuilding, and ERP integration scoped alongside the storefront. Uncap's OroCommerce migration page covers what the engagement includes; this playbook is the execution detail underneath it.

Uncap is a Shopify Platinum Partner and Shopify Expert since 2013, with over 380 B2B commerce projects delivered for distributors and wholesalers, including migrations off dedicated B2B platforms like OroCommerce. See how that work comes together in Uncap's case studies.

A Real-World Scenario: Where the Real Work Was

Picture an industrial distributor running OroCommerce with a three-level account hierarchy (a national buying group, regional subsidiaries, and individual branch accounts), each with its own contract pricing, plus an active RFQ workflow their sales team used daily for custom orders. The initial migration estimate treated account migration and RFQ rebuilding as roughly equal-sized workstreams to catalog migration.

In practice, catalog migration took two weeks. Mapping the three-level account hierarchy and verifying contract pricing at every level took five weeks, and rebuilding the RFQ workflow using Shopify Flow and draft orders took another four, run partly in parallel. The parts of OroCommerce that made it worth running in the first place (account depth and RFQ) were exactly the parts that took the most careful work to translate, not the catalog everyone expected to be the hard part.

Where to Start

An OroCommerce to Shopify Plus migration is not a story about adding B2B capability. It's about translating B2B depth your team already built (account hierarchies, contract pricing, RFQ workflows, custom Symfony logic) into Shopify's native architecture without losing what made it work. The catalog is rarely the hard part. The account structure and the RFQ workflow are.

Talk to our experts about migrating your OroCommerce operation to Shopify Plus.

Frequently asked questions

How long does an OroCommerce to Shopify Plus migration take?

For a typical mid-market B2B operation, 12 to 18 weeks. Operations with large catalogs, complex multi-level account hierarchies, or an active RFQ workflow that needs rebuilding should plan toward the longer end of that range, since those are the workstreams that most often extend past the initial estimate.

Does Shopify B2B have a native RFQ feature like OroCommerce?

Not with the same depth. OroCommerce's request-for-quote workflow is a core native feature; Shopify B2B's quoting and negotiation capability needs to be built using Shopify Flow, checkout extensibility, and draft orders, or extended with a dedicated app. This is typically the single largest functional gap to plan for in an OroCommerce migration.

Can custom Symfony code from OroCommerce be reused on Shopify?

No. OroCommerce's custom bundles and workflows are built specifically for its Symfony architecture and do not port to Shopify. Every piece of custom functionality needs to be individually evaluated: covered natively by Shopify B2B, buildable as a Shopify app, or requiring custom development using Shopify Functions.

Will our account hierarchy and contract pricing survive the migration?

Yes, but not automatically. Multi-level account hierarchies and contract pricing need to be mapped deliberately onto Shopify B2B's company accounts and price lists, since the underlying data models differ. This is one of the two highest-risk workstreams in an OroCommerce migration, alongside RFQ workflow reconstruction.

Keep reading
All notes

Shopify Tax Exemption Setup for B2B Buyers

Jul 2, 2026

Commercetools to Shopify Plus Migration Guide

Jul 2, 2026

Magento to Shopify Plus Migration: B2B Playbook

Jul 2, 2026
The Field Notes newsletter

Insights, guides, and trends. Once a month.

One email, last working day of the month. The notes worth keeping from building commerce on Shopify.

InsightsField-tested lessons from live Shopify builds.
GuidesStep-by-step playbooks for B2B, migrations, and performance.
TrendsWhat’s actually moving in commerce and AI, no hype.
Subscribe 2,400+ operators
StrategyWholesaleGrowthAI
Monthly · no spam · unsubscribe anytime