Skip to content
Logistics

Carrier Status Reconciler

Pulls milestones from every carrier you use, paced to each one's limits, keeps one status per shipment, and flags the late ones before the customer asks.

The shipments board

One status per shipment from every carrier's updates, with the reason in a few words

Carrier Status Reconciler on a wide screen: a dark sidebar with Shipments, Customer updates and Carrier health; the top bar names the fictional forwarder, Charminar Demo Cargo & Customs Pvt Ltd, with a Synthetic data badge and the signed-in customer service executive, Shruti Varma. The Shipments board shows four figures (on track, at risk, late, stale) above tabs by status, filters for customer and mode, and a table of shipments with job number, customer and buyer, route, carriers, promised date, current ETA and a status chip with its reason, such as Late: ETA 2 days past the promised date.The real screen, on synthetic data
Late shipments first, each saying why

Demo built on synthetic data.

1 of 5: The shipments board

The problem

Twelve carriers report status in twelve formats. Answering "where is it?" means checking three websites, and a shipment that stopped moving yesterday still shows "in transit".

What it does

Each at its own paceOne queueAirKestrel Demo AirOceanCoral Demo LinesRoadMusi Demo TrucksDeparted HYDPicked upArrived FRALoadedDeliveredGated in

It collects milestones from each carrier's system, paced to that carrier's limits.

JOB-DEMO-0418Hyderabad to RotterdamMilestone and carrierReceivedPicked up, Hyderabad11 Oct 09:40Musi Demo TrucksGated in, Nhava Sheva12 Oct 18:05Musi Demo TrucksLoaded on vessel13 Oct 07:20Coral Demo LinesDeparted Nhava Sheva13 Oct 22:15Coral Demo LinesOn trackETA 2 Nov, promised 5 Nov

It merges them into one timeline per shipment and one status — on track, at risk or late.

ShipmentsNow 12:40JOB-DEMO-0418ETA 2 Nov, promised 5 NovOn trackJOB-DEMO-0422ETA moved to the promised dayAt riskJOB-DEMO-0409ETA two days past the promised dateLateJOB-DEMO-0431Last update 06:10On trackJOB-DEMO-0431No update since 06:10Carrier: in transitStale

It marks a shipment as stale when a carrier goes quiet, instead of leaving it "in transit".

ToRhine Demo ImportsSubjectJOB-DEMO-0418 has left Nhava ShevaApprove and sendDrafted by the toolNeeds a personDelayJOB-DEMO-0409Damage reportJOB-DEMO-0427

It drafts the customer update. Delays, damage and claims go to a person.

Try to break it

On the call we'll trigger these, live:

  • A carrier's system rate-limits you. Updates slow down; none are lost.
  • A carrier sends the same event twice, out of order. It's recorded once, in the right place.
  • Two carriers give different arrival times. Both are shown, and the later one sets the status.
JOB-DEMO-0418Nhava Sheva to RotterdamArrival in Rotterdam, by carrierCoral Demo LinesETA 2 NovHeron Demo MarineETA 6 NovThe later one sets the statusPromised 5 NovLate

Where it runs

An office server or a cloud account in your name.

Who else does something like this

project44 sells shipment visibility across carriers to shippers, 3PLs and freight forwarders.

The Reconciler is sized for forwarders and 3PLs, runs on your side, and drafts the customer update.

The rules it respects

Consignee details are personal data under the DPDP Act, and they stay with you.

What our tests measured

How we test

These figures come from test runs on Google's Gemini (gemini-3.5-flash-lite), a hosted model, on synthetic data. We'll add runs on a local model.

Shipment-days whose status matched the gold status100%
Late arrivals flagged before the promised date passed98.73%
Median hours between the first flag and the late arrival342
On-time arrivals also flagged At risk or Late at some point46
Carrier event counts that didn't add up (received = applied + held)0
Shipment-days past the silence limit shown as anything but Stale0
Customer updates put in the right folder90.98%
Delay, damage, claim or customs updates put in Draft ready0
  • Run on 14 October 2026
  • Model: gemini:gemini-3.5-flash-lite
  • 885 examples
For your engineers
Engines
Reconciler, Gatekeeper, Proof Console
Sealed mode
Test passed: with sealed mode on, it refuses every outbound connection except to the model you've approved.

Data flow

Twelve carriers (simulated)Replay, by a personHeld for replayCarriers we pullnine, own limitsPollerspaced under each limitEach carrier's readerinto one vocabularyStored firstone row per eventReconciler engineapplied onceOne timelineby event timeCarriers that pushthree, signedWebhooksignature checkedMail serverApprove and senda named personGatekeeper enginedelays go to a personStatus rules, in codeStale beats everythingaudit_log, append-onlyShipments board