ARTICLE

Omnichannel Retail for Multi-Brand Retailers: Consolidating 4 Legacy Platforms into One Unified System

Omnichannel Retail for Multi-Brand Retailers: Consolidating 4 Legacy Platforms into One Unified System

A $120M jewelry retailer consolidated four separate e-commerce platforms (Magento 1.x, Shopify, custom ASP.NET, legacy PHP) into a single Adobe Commerce infrastructure. Results: 28% reduction in operational costs, 6x improvement in order processing speed, unified inventory across 300+ retail locations, 40% decrease in stockouts, and 22% revenue growth from improved inventory availability. The 18-month consolidation replaced platform fragmentation with unified commerce delivering better customer experience and financial results.


The Problem: Four Platforms, Zero Synergy

“Omnichannel” was a word this company used. What they actually had was “multi-channel fragmentation.”

Jewelry Boutique Group (anonymized for this case study) owned four distinct brands acquired over a 10-year period:

  1. Heritage Jewels – 150 stores, Magento 1.14 (9 years old), $60M revenue
  2. Modern Metals – 80 stores, Shopify Plus, $35M revenue
  3. Artisan Collection – 50 stores, custom ASP.NET, $15M revenue
  4. Emerging Stones – 20 stores, legacy PHP, $10M revenue

Each had its own e-commerce platform. A customer could buy Heritage Jewels online but couldn’t check Modern Metals inventory at the same location. Store associates had four separate POS systems. Inventory was manually synced between locations via spreadsheet. The CFO called it “a beautiful disaster.”

At Bemeir, we proposed something different: consolidate to a single Adobe Commerce platform unified with a modern OMS (Order Management System) and real-time POS integration. Single source of truth for inventory, orders, and customers across all brands, all channels, all locations.

This is the story of an 18-month transformation that moved Jewelry Boutique Group from “we have four separate businesses” to “we are one business operating four brands.”


The Starting State: The Audit

Before you consolidate anything, you understand what you’re consolidating.

Platform Inventory:

Platform Brand Status SKUs Integrations Debt Level
Magento 1.14 Heritage Jewels EOL (2020) 18K 23 custom modules Critical
Shopify Plus Modern Metals Current 8K 12 apps Moderate
ASP.NET Artisan Collection Custom 6K 5 custom APIs High
PHP Legacy Emerging Stones Legacy 2K 2 integrations Critical
Total 34K

Inventory Discrepancies:

They thought they had 34K SKUs. Audit revealed:
– 2,400 SKUs existed in multiple systems with different IDs (never synchronized)
– 600 SKUs were in inventory but couldn’t be ordered online
– 1,200 SKUs had different pricing across platforms
– Average inventory discrepancy across all 300 stores: 18%

Order Processing:

  • Heritage Jewels: 2 hours from order to fulfillment
  • Modern Metals: 45 minutes (Shopify advantage)
  • Artisan Collection: 6 hours (custom system delays)
  • Emerging Stones: 8 hours (legacy system bottleneck)

A customer buying from two brands paid separate shipping, received separate tracking numbers, couldn’t return one item through another brand’s channel.

The Cost:

This fragmentation had a price:
– 8 FTEs managing manual data syncs
– $2.1M annual infrastructure costs (four platforms)
– 2% annual revenue loss from inventory mistakes and customer confusion
– 6-week order-to-fulfillment for consolidated orders


The Architecture: One Commerce Engine, Many Brands

The solution: a single Adobe Commerce instance that ran all four brands with unified backend operations.

Key Design Decisions:

  1. Single Database, Multiple Websites: One Magento instance runs all four brands as separate websites. Shared products where possible (e.g., diamonds can appear across brands), brand-specific customization where needed.

  2. Unified Inventory via NetSuite OMS: The source of truth for inventory isn’t Magento – it’s NetSuite. Magento queries NetSuite’s real-time inventory API. When a customer checks availability at 3 PM, they see actual stock across all channels and locations.

  3. Order Routing Logic: Orders don’t stop in Magento. They route through NetSuite OMS where fulfillment rules decide: fulfill from nearest store? Nearest distribution center? Drop-ship? Cross-brand shipment?

  4. Customer Consolidation: A customer with accounts in Heritage Jewels and Modern Metals now has one account. They see both brands’ purchase history, can earn unified loyalty points, and receive one marketing email instead of two.


The Migration: Phased, Parallel, Paranoid

This wasn’t “shut down old systems, flip the switch, pray.” This was a carefully orchestrated 18-month march with parallel running and extensive testing.

Phase 1: Preparation (Months 1-3)

  • Audit all 34K SKUs, consolidate duplicates down to 28K distinct products
  • Design data migration scripts and validate 100% of mappings
  • Set up Adobe Commerce staging environment that mirrors production traffic patterns
  • Build API integrations with all legacy systems (to maintain parallel operation)
  • Train team on new system

Data cleanup was brutal:

Phase 2: Foundation (Months 4-6)

  • Launch Adobe Commerce instance with Heritage Jewels brand only
  • All orders still process through legacy Magento 1.14 (parallel operation)
  • New system handles 5% of traffic, legacy handles 95%
  • Monitor and validate every order against legacy system

This parallel running cost extra: two systems, two databases, data sync infrastructure. But it eliminated risk. If Adobe Commerce went down, customers could still order via legacy system.

Phase 3: Modern Metals Migration (Months 7-9)

  • Migrate Modern Metals from Shopify to Adobe Commerce
  • Point Modern Metals domain to new instance
  • Keep Shopify running in read-only mode for 30 days (fallback)
  • Monitor order processing, fulfillment, customer support metrics

Result: 12% speed improvement in order processing (Shopify Plus to Adobe Commerce), but 18% spike in support tickets (customers confused by UI changes). Solution: added proactive onboarding to email.

Phase 4: Artisan Collection (Months 10-12)

  • Most complex migration (custom ASP.NET system with non-standard product data)
  • Built custom ETL pipeline to map ASP.NET data models to Magento
  • 2-week data validation phase (found 300 products with incomplete descriptions, 150 with wrong pricing)
  • Soft launch with 10% of traffic; ramped to 100% over 2 weeks

Phase 5: Emerging Stones & Full Consolidation (Months 13-15)

  • Migrate Emerging Stones (smallest, least complex)
  • Decommission all legacy platforms
  • Final validation: confirm all orders, inventory, customers migrated correctly
  • Full OMS integration live (unified inventory, order routing)

Phase 6: Optimization & Tuning (Months 16-18)

  • Performance optimization (database query tuning, caching strategy)
  • Staff training on new admin, new operations workflows
  • Documentation and runbooks for future operations
  • Decommission old infrastructure

The Technical Challenges: What Actually Broke

Challenge 1: Inventory Sync Latency

NetSuite is the source of truth, but Magento had to reflect inventory in <5 seconds. If a customer checks stock, adds to cart, and completes checkout within 30 seconds, they should get accurate inventory at every step.

Initial implementation: Magento queried NetSuite API every page load. This was too slow (1-2 second latency per request).

Solution: Cache inventory in Redis with 60-second TTL, updated by NetSuite webhooks when stock changes:

Result: Inventory freshness at 95th percentile latency of 150ms.

Challenge 2: Order Routing Logic

When a customer buys a ring from Heritage Jewels and a necklace from Modern Metals, how do you fulfill it?

Options:
1. Ship separately from two locations (customer hates this)
2. Consolidate to one location (can take 3-5 days longer)
3. Split shipment intelligently (complex, risky)

They chose option 3 with these rules (implemented in NetSuite OMS):

This logic prevented many “out of stock” situations and consolidated ~65% of multi-brand orders to single shipments.

Challenge 3: Customer Data Unification

Heritage Jewels customer “john@example.com” also existed in Modern Metals as “john@jewels.example.com” (different email, same person).

How do you know they’re the same person?

Result: 8,400 duplicate customer records merged into 7,200 unique customers. Loyalty points consolidated, purchase history unified.

Challenge 4: POS System Integration

300 retail locations, each with a POS system (mixture of Square, Shopify, legacy proprietary systems). Each needed to sync with the new omnichannel system in real-time.

They had to:
1. Standardize data format across all POS systems (created a custom adapter layer)
2. Guarantee delivery (implemented idempotent APIs – same order shipped twice doesn’t double-count)
3. Handle failure gracefully (if POS goes offline, orders still process; sync up when back online)


The Results: Numbers That Justify 18 Months of Chaos

Operational Efficiency:

Metric Before After Impact
Annual Infrastructure Cost $2.1M $1.5M -28% ($600K savings)
FTEs in Data Sync/Ops 8 2 -75% (freed up for strategy)
Order Processing Time (avg) 5.2 hours 52 minutes -83%
Order Processing Time (p99) 14 hours 2.8 hours -80%
System Uptime 97.2% 99.7% +2.5%

Inventory Accuracy:

Metric Before After Impact
Average Store Inventory Discrepancy 18% 2.1% -88%
Stockout Rate (across 300 stores) 6.2% 3.7% -40%
Overstock Rate 11.3% 5.8% -49%

Customer Experience:

Metric Before After Impact
Homepage-to-Purchase Time (avg) 12 minutes 8.1 minutes -32%
Cart Abandonment Rate 64% 51% -20%
Customer Satisfaction Score 7.2/10 8.4/10 +17%
Cross-Brand Purchases (% of customers) 2% 14% +600%

Financial Results:

Metric Before After Impact
Annual E-Commerce Revenue $120M $147M +22%
Gross Margin 38% 42% +4% (from better inventory)
Customer Lifetime Value $2,100 $2,890 +38%
Return Rate (from inventory errors) 3.1% 0.8% -74%

Revenue growth of 22% (incremental ~$27M) in year 1 alone. Infrastructure savings of $600K/year recurring.

Timeline and Cost:

Phase Duration Cost Notes
Planning & Audit 3 months $180K Extensive data analysis, planning
Implementation 12 months $1.2M Engineering, infrastructure, integrations
Optimization & Training 3 months $220K Tuning, staff training, documentation
Total 18 months $1.6M Payback: 7 months

What Bemeir Learned (And What You Should Know)

Lesson 1: Parallel Running is Worth the Cost

Running legacy and new systems in parallel for 6+ months felt wasteful. But it eliminated the risk of a bad migration. The cost of parallelization ($150-200K) was trivial compared to the cost of a failed cutover (reputational damage, lost orders, customer support chaos).

Lesson 2: Data Quality Is Your Bottleneck

Not infrastructure, not features. The slowest part of this project was the first 3 months: auditing SKUs, cleaning duplicates, validating migrations. Spend extra time here. Every hour spent on data cleanup saves 10 hours of troubleshooting post-launch.

Lesson 3: Inventory Is the Hardest Problem

Sounds simple: show accurate stock to customers. In practice, it’s the trickiest challenge because it touches every system. Caching strategy, sync frequency, fallback behavior, inventory visibility rules per brand – all critical. Start here.

Lesson 4: Staff Training Can’t Be an Afterthought

Launched the new system, and store associates didn’t know how to use the new POS integrations. Support tickets spiked 40%. Lesson: train staff in Month 3, not Month 18. Do dress rehearsals with 5-10 stores before full rollout.

Lesson 5: You Can’t Consolidate Without an OMS

If this project had tried to route orders and inventory through Magento alone, it would have failed. The OMS (NetSuite in this case) handled 60% of the logic. Magento is a storefront. Let it be a storefront.


Let us help you get started on a project with Omnichannel Retail for Multi-Brand Retailers: Consolidating 4 Legacy Platforms into One Unified System and leverage our partnership to your fullest advantage. Fill out the contact form below to get started.

more articles about ecommerce

Read on the latest with Shopify, Magento, eCommerce topics and more.