SAP–Shopify sync rebuilt from legacy PHP to Symfony

Six storefronts depended on a fragile black-box sync with SAP. We took it over and replaced it step by step with a Symfony middleware — without stopping the business.

6 storefronts kept in sync with SAP
2-way sync — catalogue down, orders back up

A multi-brand retail group sells through six Shopify storefronts — a mix of B2C and B2B — with SAP as the source of truth behind all of them. Between the two sat a custom PHP integration that nobody dared to touch.

The challenge

  • The legacy sync failed silently, so inventory quietly drifted apart across the six stores.
  • The middleware was unstructured code, which made every new feature or bug fix a risk.
  • Standard Shopify B2B features were not enough: wholesale needed tiered pricing and net-term settlements that mirror SAP data exactly.

What we did

We took over the integration and replaced it gradually — a strangler-fig migration that kept the stores selling while the legacy code shrank:

  • Rebuilt the synchronisation engine in Symfony with message queues, so high-volume SAP updates no longer time out.
  • Engineered reliable two-way workflows: products, inventory and customer price lists flow down from SAP; orders and customer data flow back up.
  • Implemented bespoke returns-and-exchanges logic so RMA statuses and stock adjustments stay synchronised in real time.
  • Built a custom B2B module inside Shopify: customer-specific price tiers and a bulk-ordering flow for wholesale buyers purchasing hundreds of SKUs.
  • Added detailed logging around every SAP handshake, so a failed order sync can be traced to its exact cause.

The outcome

Inventory and pricing are now consistent across all six storefronts, the new backend rides out peak B2B ordering seasons, and the system no longer depends on one person who understands the old code.

“Our B2B operations were held back by a system everyone was afraid to touch. Now we have a stable engine that syncs perfectly with SAP, and we can finally roll out new features for our wholesale partners.” — e-commerce director, retail group

industry

E-commerce & wholesale

tech stack

Symfony, SAP, Shopify, message queues

service

Modernisation & Upgrades

More case studies

Maintenance & Support Laravel maintenance for two established travel websites

How we took ongoing technical ownership of two live Laravel travel websites — cutting a key search page from about 17 seconds to about 1 second along the way.

Maintenance & Support Stabilising an inherited Laravel platform nobody dared to restart

A half-finished Typo3-to-Laravel migration, a 15 GB repository and a production server nobody dared to reboot. Audit first — then backups, security fixes, Docker and ~500 tests.

Modernisation & Upgrades MySQL upgrade that cut about $10k a year in AWS costs

An outdated MySQL 5.7 database was quietly adding about $900 a month in AWS Extended Support fees. We planned and ran a safe upgrade to 8.0 around a live legacy application.

Maintenance & Support Culinary events platform: years of maintenance and a UK launch

We keep a Dutch culinary events platform stable through high-traffic ticket sales — and refactored its legacy Symfony core so the same system could launch in the UK.

Maintenance & Support 300,000-SKU product catalogue: instant search and stable syncs

A custom PHP product information system struggled under 300k+ SKUs: slow searches and fragile Shopify and Shopware syncs. We modernised it in place — no rewrite.

Modernisation & Upgrades REST API on a legacy Symfony app for a headless React frontend

Instead of rewriting a Symfony 3.4 events platform, we exposed its existing business logic through 20+ REST endpoints — unblocking a full React migration at a fraction of rewrite cost.

Product Development From no-code prototype to a production SaaS platform

A validated MVP built on Make, Bubble and Replit had hit its ceiling. We re-platformed it into a multi-tenant Symfony + React SaaS with a grounded AI content engine.

Product Development An AI legal-training MVP, live in about two weeks

Law students practise argumentation against AI judge personas grounded in real legal documents. We designed and shipped the production-ready MVP in roughly two weeks.

Maintenance & Support Keeping a Symfony 1 / PHP 5.4 website safely in business

A property website on Symfony 1 and PHP 5.4 still earned its keep. We maintain it carefully — SEO updates, feeds, cache issues — and brought production changes back under Git control.

Rescue & Incident Response The outage that wasn’t the application: a Route 53 DNS story

Internal business systems stopped resolving even though the servers were healthy. We traced the outage layer by layer to incomplete Route 53 delegation and restored access.

Maintenance & Support Technical SEO cleanup for two Laravel travel websites

After a difficult migration history, two travel websites had canonical, sitemap, redirect and indexation problems. We cleaned up the technical foundation as part of ongoing maintenance.

Product Development A real-time crypto signals SaaS on Symfony and ClickHouse

Tick-by-tick market data from major exchanges, analysed and delivered as trading signals in under half a second — through a web dashboard and a Telegram bot.

Product Development Monetising AI chatbots in WordPress — with no user accounts

Five AI personas, a freemium paywall and Nordic Swish payments — built as a custom WordPress plugin that charges users without ever asking them to register.

system risk check

Want results like these for your application?

Start with a System Risk Check — a fixed-price technical audit of your application with a written, prioritised report. The report is yours, whatever you decide next.