# Freight Forwarder Customer Portal

> Real-time, two-way sync with Oracle Transport Management, where adding a new field is a config change, not a release.

- **Client:** Transform Technologies
- **Industry:** Freight forwarding
- **Stack:** Angular, Spring Boot, Spring Cloud, Kafka, Oracle Transport Management, MongoDB Atlas, AWS S3, OAuth 2.0, Jenkins

## The problem

Transform Technologies, the technology company behind a large UAE-based freight forwarder in the Transworld group, wanted its customers to stop asking for updates and start serving themselves: bookings, shipment details, bills of lading, invoices and statements of accounts, all in one place.

The catch: every piece of that data lives in Oracle Transport Management. The portal had to stay in step with OTM in both directions, in near real time, across many companies and locations, without a developer being called every time OTM gained a field.

## What we built

- **OTM sync by configuration:** A framework where JSON configuration decides which OTM API fields are pulled, how often, and which related APIs run next. Transformations use Spring Expression Language. A new field is a config change.
- **Customer self-service:** Bookings, shipment details, bills of lading, invoices and statements of accounts. Shipping instructions can be staged and edited until final submission, which updates OTM.
- **Documents both ways:** Document management on Amazon S3 with a built-in viewer; uploads are pushed to OTM and BLs are pulled from it.
- **Multi-company access:** An admin view across domains and locations, role-based rights, and custom OAuth 2.0 on Spring Security.
- **Notifications:** Event-driven email and WhatsApp updates, with end-to-end logs.

## How it's built

Over seven Spring Cloud microservices behind Spring Cloud Gateway with Eureka discovery. Services never call each other directly: they talk through Kafka. Each service has its own MongoDB Atlas database, and a dedicated service turns events into email and WhatsApp notifications, which keeps the portal independent of OTM's availability.

## Results

- Customers see bookings, documents, invoices and statements without calling the forwarder.
- New OTM fields are added through configuration, without a code release.
- Part of a relationship with the Transworld group that began in 2018 and continues.

> We have been working with InfoMover Technologies since 2018. They have built several solutions for us, including NVOCC customer portal, feeder customer portal, bill of lading printing app, freight customer portal, a chartering solution, a big-data & analytics solution for our group of companies, a couple of integration solutions of which one was EDIFACT file based integration, and a couple of mobile apps. Each project exceeded our expectations. I wish them all the best! — Prabhakar Posam, CIO, Transworld Group of Companies · CEO, Transform Technologies

## Related services

- [Software & Solution Architecture](https://infomovertech.com/services/software-architecture)
- [Enterprise Platforms & Integrations](https://infomovertech.com/services/enterprise-platforms-and-integrations)
