Logistics operator — under NDA
Shipping label generation, built from the ground up.
- Sector
- Logistics
- Engagement
- Duration — to confirm
- Scope
- Backend platform and carrier integration
- Stack
- Node.js · JavaScript · Postgres · AWS
01 — The problem
Every carrier wanted the same parcel described a different way, and the difference was being absorbed by people rather than by software.
Carrier APIs disagree about addresses, service codes and what counts as a valid weight. Left unresolved, that disagreement turns into re-keyed data, rejected labels and parcels that sit still while somebody works out which field was wrong.
Narrative drafted from the brief — replace with the engagement detail
02 — What discovery found
The failures clustered in a handful of carrier-specific edge cases, not across the board.
The existing backend already held everything a label needed; nothing was missing, only unreachable.
Adding a carrier was a code change, which is why the list had stopped growing.
03 — What we built
One Node.js label service on AWS in front of the carriers, so the rest of the business describes a parcel once.
Carrier adapters
One per carrier, each owning that carrier’s quirks so nothing leaks into the rest of the system.
Backend integration
Reads the order and address data already held in Postgres rather than asking anyone to enter it twice.
Failure handling
A rejected label says which field the carrier objected to, in language the warehouse can act on.
04 — What changed
Qualitative — add figures when you have them
A new carrier is configuration, not a release
The adapter boundary is where carrier differences stop, so adding one no longer touches the rest of the platform.
Rejections became legible
The people printing labels can resolve most failures themselves instead of escalating them.
The parcel is described once
Address and service data comes from the system of record, so there is one version of it to be wrong.
Got something shaped like this? Let's talk.
Discovery is free — you get a written proposal either way