Platform & architecture
Platform migrations don't fail on technology. They fail on context
Most e-commerce platform migrations don’t fail on technology.
They fail at integration. But not the way people imagine.
The problem is rarely the technical complexity of connecting two systems. Protocols, queues, APIs and data mappings are known problems with known solutions. The problem is knowledge of how the legacy system really behaves. And that knowledge almost always lives in the heads of one or two people, not in the documentation.
The pattern that repeats
The new platform is ready and tested. The ERP integration is “documented”. The schedule says the next step is to connect the two.
That’s when the behaviors the documentation never captured start to show up:
- the edge case where an order with a certain payment method goes down a different flow;
- the tax exception someone handled directly in code;
- the alternative flow built years ago by someone who now works elsewhere, to solve a problem nobody remembers anymore.
That’s where the project stalls. Not for lack of technical skill. For lack of context, which is much harder to recover than it looks.
Why context disappears
E-commerce systems accumulate decisions. Every campaign, every tax requirement, every new partner leaves a layer. Some of it becomes documentation. Most of it becomes behavior: it lives in the code, in configuration, in a scheduled job, in someone’s spreadsheet.
While the system works, nobody needs to understand why it works that way. The knowledge stays latent, and the organization doesn’t even notice it depends on it.
A migration is the moment when that latent knowledge has to become explicit, all at once, under deadline pressure. And that’s exactly when you find out that whoever knew has left, or moved to another initiative, or only remembers half of it.
What separates the migration that delivers from the one that slips
It isn’t the platform you chose. It’s the process of capturing knowledge before it walks out the door with the people who hold it.
In practice, that means a few unglamorous things:
Map behavior, not just interfaces. Integration docs say which fields flow. What matters is knowing what happens in each case: the order canceled after invoicing, the partial exchange, the item out of stock after confirmation.
Find out who knows, early. Every critical integration has an “owner of the context”. Finding out who that is, and securing their time on the project, is worth more than any tool.
Treat exceptions as requirements. The happy path almost never brings a migration down. What brings it down is the exception nobody listed because “it always worked”.
Test with real data, as early as possible. Synthetic data passes any test. Production data carries the cases nobody remembered to describe.
Documentation is an insurance policy
There’s a tendency to treat integration documentation as a bureaucratic deliverable, something done at the end if there’s time left.
It’s the opposite. Integration documentation is an insurance policy: low premium, high payout. It costs little to write while the knowledge is still around. It costs a lot to rebuild once it has left the company, in the middle of the migration, with the cutover date already set.
In your last migration, what stalled things: the technology, or the context nobody had written down?