Skip to content
BinaryScaler

Case study · Logistics

Six systems, one truth.

Meridian's customers asked where their freight was. Answering took a person, three logins and about eleven minutes. Now it takes a page load.

  • 63% fewer enquiries
  • 19% on-time improvement
  • 40M events/month
Sector
Freight forwarding
Duration
10 months
Squad
7 engineers
Scale
40M events/month

Overview

The situation

Meridian moves freight across road, sea and air, using a transport management system, two warehouse systems, a customs platform and two carrier portals. Each held part of the truth about any given shipment.

The customer service team reconciled them by hand, one enquiry at a time.

Challenge

The challenge

The systems did not share identifiers. A shipment was a booking reference in one, a consignment number in another, and a container ID in a third — with the mapping living partly in a spreadsheet and partly in people's heads.

None of the systems could be replaced within the programme's horizon.

  • No shared identifier across the six systems
  • Partner data arriving as EDI, API and emailed CSV
  • Field staff working in areas with no reliable connectivity
  • Customer service resolving each enquiry manually

Approach

What we did

We built an event backbone rather than a new system of record, and solved identity resolution as a first-class problem rather than a mapping table.

01

Ingest everything as events

Every system's changes captured as immutable events — CDC where the database was reachable, API polling where it was not, parsed files where it was neither.

02

Resolve identity properly

A resolution service linking identifiers by deterministic rules first and probabilistic matching second, with every uncertain link routed to a human queue rather than guessed.

03

Build the timeline

One ordered event timeline per shipment, exposed through an API that both the customer portal and internal tooling consume.

04

Lead with exceptions

Rather than a dashboard, an exception queue: delays, mis-scans and customs holds routed to the person who can resolve them, with the full timeline attached.

05

Make the field app offline-first

Local-first data with explicit conflict resolution, so a driver in a dead zone keeps working and their scans reconcile cleanly on reconnection.

Results

The outcome

Customer enquiries fell by 63% once the portal could answer the question directly. The bigger surprise was operational: routing exceptions to a named owner improved on-time delivery by 19% without any change to planning.

Fewer status enquiries

Within two quarters of launch

On-time delivery improvement

From exception routing alone

Events processed monthly

Across six source systems

Saved per enquiry

Manual reconciliation eliminated

We assumed we needed to replace the TMS. What we actually needed was for our existing systems to agree with each other.

Elena Vasquez

Chief Operating Officer · Meridian Logistics

Have a problem shaped like this one?

Bring us the constraint your last partner called impossible. We will tell you on the call whether we believe it.