Case studies
E-Commerce
Case studies
E-Commerce

Phased replatforming without downtime

Client:NAF NAF Spain
Program:Shopify Plus → Sylius Plus
NAF NAF Spain migrated from Shopify Plus to Sylius Plus while the store remained live.
The approach prioritized staged cutovers, validation gates, and explicit ownership for the highest risk areas first. The goal was controlled change on a revenue system with predictable behavior during the transition.
01

Context and constraints

The store operated with live traffic and revenue sensitive flows.
The migration path had to protect checkout continuity, SEO behavior, and operational correctness across integrations and data flows.

Constraints that shaped decisions

Live revenue and daily operations during migration
Checkout and payments cannot be paused
SEO exposure during URL and rendering changes
Integrations with systems of record
Limited rollback options after data moves
02

Failure modes prioritized

Scope was defined around failure modes that can silently damage revenue or operations. The plan assumed issues would surface under real traffic, so detection and gating were built into each stage.

Primary failure modes

Checkout regressions in edge flows
Data correctness drift between systems
SEO regressions from routing and rendering differences
Integration coupling with ERP, CRM, PIM
Observability gaps during traffic cutovers
03

Approach: staged cutovers from Shopify Plus to Sylius Plus

The migration was split into stages to limit blast radius and keep rollback realistic at each step. Each stage had entry criteria, validation gates, and exit criteria before exposure expanded.

Stage pattern used

01Identify high risk domains: checkout, catalog, pricing, promotions, integrations
02Establish data contracts and ownership for systems of record
03Build parallel paths where traffic can be segmented
04Cut over in stages, expanding exposure only after validation
05Validate data correctness and critical flows after each cutover window
04

Data migration and correctness controls

Moving platforms changes data shape, lifecycle, and failure behavior. Correctness controls were designed to detect drift early and limit rework during live cutovers.

Controls used during migration

Consistency checks across product, price, inventory, orders
Reconciliation routines for the most revenue sensitive entities
Idempotent sync patterns for integration flows
Clear ownership for data contracts and exceptions handling
05

SEO continuity under platform change

SEO risk increases when rendering, routing, and URL structure shift.
Controls focused on preserving indexing behavior and detecting regressions during staged exposure.

What was validated

Redirect coverage and indexing signals for preferred URLs
Crawl behavior and indexing signals during transitions
Key template parity for critical landing paths
Monitoring for regressions during each cutover stage
06

Ownership boundaries

Ownership was made explicit across integrations, data flows, release responsibility, and incident response. That reduced hidden dependencies and ambiguity during cutovers.
Boundary examples
  • Systems of record ownership and data contracts
  • Integration responsibilities and failure handling
  • Release and rollback responsibility per stage
  • Monitoring ownership and incident response process
07

Outcome in operational terms

The store stayed operational during migration stages while risk concentrated areas moved behind validation gates.
Post cutover behavior remained predictable under real traffic, with clearer boundaries for safe change.
What changed after staged cutovers
  • Smaller blast radius for releases
  • More explicit validation routine for high risk flows
  • Fewer unknown dependencies in integrations
  • Higher confidence in making changes safely
What to take from this case
Phased migration works when scope is defined by failure modes and ownership boundaries. The same pattern applies when change cost and release risk reached a point where incremental fixes stop reducing exposure.
Case study: Phased replatforming without downtime