Automate your freight forwarding operations with AI.

Orbitah quotes, books, prepares shipping instructions and documents, reviews the BL and tracks every container. The AI reads emails and documents; rates and validations come from your tables and your business rules.

From quote to delivery with AI.

Every carrier, airline and customer does things their own way: different portals, character rules, filing windows, BL decisions that can't be undone, last-minute changes in the operation. That's where Orbitah goes to work for you.

Freight quoting: Answer every request without building it in Excel.

Requests arrive by email or chat, incomplete and messy. The flow extracts what matters, asks for what is missing, calculates with the current tables and replies in the same thread.

01AI-assisted quotationStaging
InboxOutlook
customer@importer.example09:52

RE: Urgent quote Shanghai – Buenaventura

Already recorded
customer@importer.example09:41

Urgent quote Shanghai – Buenaventura

Hi Laura, I need a price for 2 × 40' HC leaving Shanghai for Buenaventura next week, about 18,000 kg each, FOB. Can you confirm?

You sent the quote09:44

Also listening onWeb formWeb chat
Orbitah

Read the Outlook email0.8 s

A quote request came in. Putting it in your usual format.

Extracted 6 fields with your schema1.1 s

The departure date is missing: “next week” isn't enough. I already asked the customer.

Origin
Shanghai
Destination
Buenaventura
Equipment
2 × 40' HC
Weight
18,000 kg each
Incoterm
FOB
Departure
Pending

Rate from a deterministic node42 ms

Here's the current rate per container:

Maersk

USD 2,180

Hapag-Lloyd

USD 2,040
Price to customerUSD 4,680.00

Above your USD 4,000 threshold3 ms

I sent it to Laura on Teams for approval.

Teams · Laura approved the quote

Recorded only once in your system

  1. Capture inbound requests

    Email, form or web chat enter through a trigger and are normalized into one message.

  2. Extract with a schema

    Route, equipment, weight, volume and incoterm are validated field by field; if something fails, the flow asks or escalates.

  3. Calculate without mistakes

    A deterministic node computes the rate from your tables; the model only hands over parameters.

  4. Approve and record

    Above your threshold, the quote waits for a person; once approved, it is saved in your system exactly once, even if the customer writes twice.

Booking: Book space without chasing the carrier.

Contract or spot, alliance routing, cut-offs and surcharges change by carrier. The flow decides with your rules, submits the request and leaves the booking confirmed in your system.

02Carrier bookingStaging
InboxOutlook
Maersk · Notices3 Oct

Cut-off change · BKG 74 120 553

The documentation cut-off moves to 5 Oct, 12:00.

customer@importer.example11:05

RE: Urgent quote Shanghai – Buenaventura

You notified the customer3 Oct

Connected toMaersk · APIHapag-Lloyd · portal
Orbitah

Valid contract with Maersk12 ms

Your Maersk contract beats today's spot rate, so I'm booking on contract.

Contract

USD 2,180

Spot

USD 2,410

Your rule: contract when it costs less than spot

Request sent by API1.4 s

Maersk has an API, so the request goes straight in. If it were a portal, I'd leave it ready for you to confirm.

Booking requestAPI · MaerskSent
Route
CNSHA → COBUN
Equipment
2 × 40' HC
Departure
Week 41

Maersk confirmed the booking4 min

Booking confirmed. It's in your system and in the Run.

Booking confirmedBKG 74 120 553

MV Cordillera Express · voyage 0412W

ETD 9 OctDocumentation cut-off 6 Oct, 17:00 5 Oct, 12:00

Recorded in your system

Found a cut-off change0.6 s

Maersk moved the documentation cut-off earlier. I've told the team and the customer.

Documentation cut-off moved up−29 h
Operations teamNotified
CustomerNotified
  1. Decide contract or spot

    A condition compares your current contract with the spot offer and chooses by the policy you define.

  2. Submit by API or prepare the portal

    With an API, a connector submits the request and receives the booking number; without one, the request is left ready and a person confirms it in the portal in minutes.

  3. Confirm and record

    Booking, vessel, ETD and documentation cut-off land in your system and in the Run.

  4. Warn in time

    A vessel or cut-off change triggers an email to the team and, if you define it, to the customer.

Shipping instructions: Submit every SI without format rejections.

Every carrier has its character rules, mandatory fields and declarations. The flow builds the SI from the booking and customer data, validates it against that carrier's rules and asks for a review before sending.

03Shipping instructionsStaging
InboxOutlook
Maersk · Documentation3 Oct

SI received · BKG 74 120 553

customer@importer.example3 Oct

Documents BKG 74 120 553

Laura, attached are the invoice and packing list. Marks: IMP-ANDINA / BUN / 1-412.

Commercial invoice.pdfPacking list.pdf
Maersk · Bookings29 Sep

Confirmation BKG 74 120 553

Connected toMaersk · APIHapag-Lloyd · portal
Orbitah

SI built from 3 sources1.6 s

I built the SI from the Maersk confirmation and the documents the customer sent.

SI · BKG 74 120 553

  • ShipperExportadora del Pacífico S.A.
  • ConsigneeImportadora Andina SAS
  • NotifySame as consignee
  • DescriptionINDUSTRIAL SPARE PARTS F/GEARBOXES
  • MarksIMP-ANDINA / BUN / 1-412
  • HS code8483.40

24 fields validated · 1 fix42 ms

The description had 36 characters per line and Maersk allows 35. I shortened it without changing the meaning.

Description · line 1Maersk allows 35 characters per line

−INDUSTRIAL SPARE PARTS FOR GEARBOXES36

+INDUSTRIAL SPARE PARTS F/GEARBOXES34

No DG signals0.4 s

I checked the description, HS code and documents: no sign of dangerous goods, so no DG declaration is needed.

  • Description has no dangerous goods terms
  • HS 8483.40 is not on the IMDG list
  • No document mentions batteries or chemicals

Ready to submit by API0.2 s

Before submitting it, I passed it to Laura for review.

Teams · Laura reviewed the SI

Submitted by API · Maersk

  1. Build the SI from your data

    Shipper, consignee, notify, description and marks come from the booking and the customer's documents.

  2. Validate the carrier's rules

    A deterministic node checks lengths, HS codes and mandatory fields before submitting.

  3. Detect dangerous goods

    If the description suggests DG cargo, the flow requires the declaration and escalates to a person.

  4. Submit or leave ready

    By API it is submitted; by portal it is prepared so someone can load it without retyping.

Documentation: Don't let a late document roll your cargo.

VGM, declarations, advance manifests, pre-alerts and customs templates have different windows and different tolerances. The flow keeps the list per shipment and warns before each one closes.

04Shipment documentsStaging
Shipment file · BKG 74 120 553
Cut-off 5 Oct, 12:00
  • VGM

    Sent · 3 Oct, 16:20

  • DG declaration

    Not applicable to this cargo

  • Pre-alert to destination agent

    Sent · 4 Oct, 11:30

  • Advance manifest

    Filed · 4 Oct, 18:05

  • Customs template

    Filed · 5 Oct, 09:42

Connected toMaersk · APIHapag-Lloyd · portal
Orbitah

5 documents with their windows0.9 s

I built the list against the 5 Oct, 12:00 cut-off. Every document has an owner and a window.

Pre-alert drafted with AI2.1 s

I drafted the pre-alert for the Buenaventura agent from the shipment data. Laura reviews it before it goes out.

agent@buenaventura.exampleDrafted with AI

Pre-alert BKG 74 120 553

Arriving: 2 × 40' HC with 412 boxes on the MV Cordillera Express, ETA 7 Nov.

Reviewed by Laura

2 windows close within 24 h4 Oct, 06:00

The manifest closes in 18 h and the customs template is missing the certificate of origin. I escalated it to Laura.

Teams · Laura, the certificate of origin is missing

Closes in 18 h

4 filings with timestamps12 ms

Everything was filed before cut-off. Each filing is in the Run with its timestamp.

Evidence in the Run
  • VGM3 Oct, 16:20
  • Pre-alert4 Oct, 11:30
  • Advance manifest4 Oct, 18:05
  • Customs template5 Oct, 09:42

Keeps the 9 Oct sailing

  1. One list per shipment

    Every document with its status, its owner and its filing window.

  2. Generate the repetitive

    Pre-alerts and templates are drafted with AI from the shipment data and a person reviews them.

  3. Warn before the deadline

    A timer watches every window and escalates when time is short and there is no evidence of filing.

  4. Keep the evidence

    Every filing stays in the Run with a timestamp, for audits and claims.

Bill of lading: Fix the BL before you're charged for it.

Late corrections are charged and some decisions cannot be undone. The flow compares the draft with the instructions, flags the differences and leaves the irreversible to a person.

05BL reviewStaging
InboxOutlook
Maersk · Documentation8 Oct

RE: Draft BL · corrected

Maersk · Documentation8 Oct

Draft BL · BKG 74 120 553

You requested the correction8 Oct

Connected toMaersk · APIHapag-Lloyd · portal
Orbitah

Draft checked against the SI1.8 s

I read the draft and a deterministic node compared it field by field with the SI we submitted.

Draft against the SI

FieldDraftSI
ConsigneeImportadora Andina SASCorrected by MaerskImportadora Andina SAS
Gross weight36,000 kg36,000 kg
SealsML-CO 4471, 4472ML-CO 4471, 4472

12 fields compared · 9 matching fields hidden

1 difference in 12 fields40 ms

The consignee doesn't match the SI. Better to fix it now: after departure it's charged.

Consignee· Doesn't match the SI

Maersk took it from your customer profile, not the SI

Correcting it after departure costs USD 150

Email in the same thread0.7 s

I asked Maersk for the exact change, in the same thread as the draft.

documentation@carrier.exampleSent

RE: Draft BL · BKG 74 120 553

Consignee: change “Importadora Andina S.A.S.” to “Importadora Andina SAS”, as stated in the SI.

1 decision that can't be undone3 ms

The BL type can't be changed later with Maersk, so that decision belongs to a person.

BL typeIrreversible with this carrier
Original · 3 copiesSea Waybill

Teams · Laura approved: Original, 3 copies

  1. Compare draft and instructions

    The AI reads the draft and a deterministic node checks every field against the SI.

  2. Flag differences with context

    Consignee, weight, seals: every difference with its origin and what it costs to fix late.

  3. Request the correction

    An email to the carrier with the exact changes, in the same thread.

  4. Approve the irreversible

    Original or Sea Waybill, number of originals, release: always a person.

Container tracking: Know about a delay before your customer does.

Some carriers publish events through an API; others only have a portal. The flow consolidates both into one timeline per shipment and answers the customer before they ask.

06Container trackingStaging
InboxOutlook · WhatsApp
Maersk · DCSA API14 Oct

Balboa transshipment rescheduled

WhatsApp · Importadora Andina10 Oct

Hi, where is my cargo?

Answered by Orbitah10 Oct

Scheduled read9 Oct

Every 6 h · BKG 74 120 553

Connected toMaersk · DCSA APITerminal · portal
Orbitah

Portal read in read-only mode8.4 s

The terminal has no API, so an isolated browser agent read its portal. I saved the screenshot as evidence.

terminal-shanghai.example/containersRead-only
ContainerStatusETA
MSKU 482 913-0Departed Shanghai7 Nov
TCLU 771 204-5Departed Shanghai7 Nov

Screenshot saved · 9 Oct, 06:10

4 events in one timeline30 ms

I merged the Maersk API events with what I read on the portal into one timeline per container.

Timeline · MSKU 482 913-0

  1. Gate in

    6 Oct, 08:14

    Portal
  2. Loaded on board

    8 Oct, 21:40

    DCSA API
  3. Departed

    9 Oct, 03:12

    DCSA API
  4. ETA Buenaventura

    7 Nov 10 Nov

    Estimated

Latest event: departed 9 Oct20 ms

The customer asked on WhatsApp. I answered with the latest event and the ETA.

WhatsAppSent

It left Shanghai on 9 Oct on the MV Cordillera Express. Estimated arrival in Buenaventura: 7 Nov.

The ETA moves 3 days15 ms

Maersk rescheduled the Balboa transshipment and the ETA moves to 10 Nov. I told the team; Laura approves the customer notice.

ETA Buenaventura7 Nov10 Nov+3 days
Operations teamNotified
CustomerLaura approved · notified
  1. Read portals without an API

    An isolated browser agent signs in, reads the status and returns the data with its evidence.

  2. Consolidate events

    API events and portal readings in one chronology per container.

  3. Answer “where is my cargo?”

    A customer's chat or email is answered with the latest event and the ETA.

  4. Warn about exceptions

    A delay or a rollover triggers a notice to the team and, if you define it, to the customer.

Designed for enterprise.

What an operations director and a systems analyst need to verify before trusting a shipment to a workflow.

Observable
Telemetry, metrics and per-node traces into your monitoring stack, over OpenTelemetry. Every flow version is immutable and can be compared with the previous one.
Explainable
Nothing is a black box: every AI decision is kept as schema-validated parameters and every action as a node with its record.
Secure
Isolated organizations with their own encryption key, scoped roles, redacted personal data and a security audit log. Controls designed for SOC 2 and ISO 27001; formal certification is on the roadmap and we will not claim it until we have it.
Scalable
Stateless processing that scales horizontally, durable execution that resumes without duplicating work, and models from several providers selectable per node.

Where do you want to start?

Tell us which part of the shipment takes most of your time today. We will show you Orbitah with a flow that looks like yours.

We build the first flow with you, on a case of yours, in Staging and on test data. No migration of your main system.

Book a demo

We use your data only to reply to you. None of it is shared with third parties.