Skip to main content
WZ SolutionsWZ SolutionsSoftware Engineering
Retail & Distribution · 2025

Strangling a legacy ERP without stopping operations

Incremental replacement of an unmaintainable ERP, one capability at a time, with both systems running in parallel throughout.

Client: Distribution company (anonymised)

Planned downtime across the migration programme
Zero
Cutover, with rollback available at every step
Incremental
Data migration validated against legacy totals
Reconciled
Business rules that previously existed only in code
Test-covered
The challenge

A decade-old system still ran the business but could no longer be changed: the original vendor was gone, there were no tests, and a single schema change risked invoicing. Two previous rewrite attempts had been abandoned.

What we built

Rather than a rewrite, we placed an API facade in front of the legacy system and migrated capabilities behind it one at a time — starting with reporting, which carried no write risk, then procurement, then stock. Each migration shipped with a regression suite pinning existing behaviour and a per-route rollback. The legacy system stayed authoritative until the last consumer of each capability had moved.

Technologies used

  • Node.js
  • TypeScript
  • PostgreSQL
  • Kafka
  • Docker
  • Kubernetes
  • Nginx

Services engaged

More work

Other case studies

Recognise this problem?

If any of the above sounds like your operation, a short discovery conversation will tell us both quickly whether there is a fit.

Or email walter.mussagy@gmail.com — we reply within one business day.