Skip to content
Madsoft
← All work
06Logistics2026

Cross-Border Trade Platform

Export trading company · Northern Europe to West Africa

A bilingual trade platform and the mail system behind it — container capacity, sailing dates, shipment tracking and correspondence, all on infrastructure the company owns.

40FTFREEREF
The system

A visitor ticks what they are shipping and sees the volume in cubic metres with the container that fits it; the next sailing and its remaining space sit in the hero, and departures that have left disappear on their own. Customers follow a consignment by reference through a status timeline that carries no personal detail. Behind the site runs the company's own mail: an SMTP gateway with DKIM signing, a retrying outbound spool and webmail on its own database, so enquiries arrive in a mailbox the company controls. Dutch and English are one build, and the test suite fails if a line exists in one language and not the other.

Outcomes

  • Two languages as one build, enforced by tests
  • Volume calculator and live sailing capacity on the page
  • Site, tracking and mail on infrastructure the company owns

Engagement

Client named under NDA. Several engagements are active public-sector contracts, so we describe the mechanism rather than the customer.

Source, references and a walkthrough can be arranged for serious evaluation.

01The situation

A trader consolidating household goods — fridges, furniture, sometimes a car — into containers leaving Northern Europe for West Africa. Every enquiry arrived by phone or a messaging app, and every one was a version of the same two questions: how much will this fit into, and when does the next container leave. Both answers were worked out by hand, so a quote took a day it did not need to take, and the answer to the second question was stale by the time it was given.

02The hard part

Two languages with genuinely equal standing — the paying customers speak one, the people receiving the goods speak the other — on a site that had to stay quick on a cheap phone and keep working with JavaScript switched off. And the company could not put its correspondence, or its customers' details, on a third-party service it did not control.

03Decisions
  1. 01

    Answer the two questions on the page

    The visitor picks items from a list; the page totals the cubic metres, names the option that fits — shared load, twenty foot, forty, high cube — and carries the list into the quote form. The next sailing and the space left on it are in the hero. Most enquiries now arrive already specified, which is the difference between starting a conversation and answering a quote.

  2. 02

    Two languages, one build, enforced by a test

    Both language files share one structure, and a test fails when a key exists in one and not the other. A second language maintained by goodwill drifts within a month, and the drift is invisible to whoever does not read that language. The only version that stays true is the one the build refuses to break.

  3. 03

    Tracking that reveals nothing

    A customer enters a reference and sees a timeline from received to delivered. No name, no address, no email — nothing that would turn a guessed reference into somebody's personal data. Staff move the status from an admin panel and can tell the customer in their own language, which is the whole of what tracking has to be.

  4. 04

    The mail system is part of the product

    Correspondence runs through a gateway the company owns, with DKIM-signed outbound mail, a queue that retries, and delivery configured end to end. The contact form writes the enquiry to disk if that gateway cannot be reached, so an outage costs a few minutes rather than a customer.

The technical dossier for this engagement

This page describes the shape of the work. The dossier describes how it was actually built — and goes to a named person at a named institution rather than onto a public URL.

  • System architecture, including the integration boundaries and why they were drawn there
  • The data model for the records the system is accountable for
  • Security posture: authentication, authorisation, audit trail and key handling
  • Deployment topology, failover behaviour and what happens during an outage
  • The measured before-and-after, where the client has cleared it for release
  • Named CVs for the engineers who did the work

Sent under a mutual NDA. Client names and locations are redacted unless that client has given written consent, which some have and some have not. Prepared individually — expect it within two working days, not instantly.

Next project

Amara Vale

Start here

Bring us the problem nobody has solved.

A 30-minute technical briefing. We will tell you what we would build, roughly what it costs, and honestly whether we are the right people for it.