A Jebel Ali-based freight forwarder with 14 customer-facing agents ran their entire shipment ops on spreadsheets and Outlook. Every shipment update — late arrivals, customs holds, container reshuffles — generated 8–12 status emails per agent per day. The MD told us, “I hired forwarders. They've become email-formatters.”
Replace the spreadsheets with an internal ops tool that pulls live shipment data, AI-summarises exceptions, and drafts customer status updates the agent can send with one click. Success: each agent saves a measurable chunk of time per week, with no drop in customer satisfaction.
We didn't build a CRM. We built a thin “exceptions layer” on top of their existing data — pulling from CargoWise via their REST API, plus port and customs feeds.
The summarisation runs through Claude with a strict structured-output schema — we don't trust free-form output for anything customer-facing. Each draft customer email shows a preview the agent reviews before sending. Never auto-sent.
We deliberately kept the UI plain. Retool, not a custom React app. Postgres for the exception log, n8n for the orchestration. The MD wanted “good,” not “shiny.” Total build: 7 weeks.
- 12 hours saved per agent per week, validated by time-tracking before and after.
- Customer NPS unchanged — the AI drafts read like the agent's voice because we trained on the agent's past emails.
- The MD now spends Monday mornings on commercial strategy, not on triaging emails.
“Apptology asked us not to over-engineer. That's the first time a software vendor has ever said that to me.”
We'd embed a senior agent in week 1 instead of week 3. The early prompts missed industry vocabulary that the agent later flagged. Not a quality issue, but a confidence-building cost.


