Skip to content
Every charge traces to a tariff line in a dated contract, or the document does not render

The console

The screens a coordinator actually lives in

The engine without a console is a curl endpoint. This is where the judgement gets applied, the variance gets cleared and the document gets issued — and where every figure can be walked back to the row it came from.

The screens

Eight surfaces, each built around one decision

The question above each screen is the one the person opening it is actually holding. If a screen cannot name the decision it serves, it is a table with a heading.

Imports, and what was refused

Is what we received actually what we were sent?

Upload a packing list, a carrier invoice or a rate sheet and watch it parse. The counts have to reconcile, and the rows that did not make it are a screen rather than a log line.

  • Parsed, rejected and duplicate counts shown against the rows submitted — and they have to sum
  • Every rejected row exactly as the file wrote it, with the reason it was refused
  • An unrecognised format is an error naming what it could not identify, never an empty result
  • EDI messages that fail show the segment and the position rather than a stack trace

The invoice-audit grid

Which of these lines do we pay, and which do we dispute?

Expected against invoiced, line by line, with the variance at the top. Clear what is right, dispute what is not, and watch the difference walk to zero.

  • Expected charges rated from the contract, beside what the carrier actually billed
  • Matching is charge-code and container aware, so a per-box terminal charge reconciles against four expected lines rather than one
  • Each unmatched line is classified — overbilled, underbilled, or not in the contract at all
  • A disputed surcharge that reappears on next month’s invoice is surfaced with its history
  • The person who raised a dispute cannot be the person who approves it

The shipment file

Where did this number come from?

One screen holding the booking, containers, cargo, milestones, charges, documents and declarations — with every amount traceable to the tariff that produced it.

  • Click an amount and see the charge line, the tariff line, the dated contract and the imported row beneath it
  • A converted amount shows the rate, the source it came from and the date it was effective
  • Chargeable weight shows which quantity won — volumetric, measurement or gross
  • Every read and export appears in the audit trail with the actor, the address and the time

Track and trace

What is about to cost us money?

Milestones from EDI and carrier events, normalised to one vocabulary and ordered by when things happened rather than when the messages landed.

  • Messages arriving days late still place the event at its own timestamp
  • The same status message delivered twice produces one milestone, not two
  • Free-time accrual runs from the gate event, so detention exposure is current rather than lagging
  • Exceptions raised before they cost money — rollover, missed cut-off, free time about to expire

Documents and issuance

Is this ready to leave the building?

Draft, review, issue. Transport documents are fixed forms with numbered boxes, and a document of title has per-original state rather than a status field.

  • A field with no mapping raises rather than rendering an empty box a carrier will reject
  • Review notes raised against a document, assigned, answered and closed before it can be issued
  • Issuing a bill of lading mints its originals; a second issuance is refused while any is outstanding
  • An unissued export carries a "Draft — not negotiable" watermark, and an issued one does not

Who can do what

Roles that match how an operation actually divides the work

Enforced where the query is built rather than hidden in the interface, so a role boundary is not something a direct API call can walk around.

  • Operations manager

    Everything a coordinator can, plus issuing a document, approving a dispute and overriding a screening block with a written reason that is audited.

  • Coordinator

    Bookings, imports, rating, the invoice-audit grid and drafting. Can raise a dispute but not approve one, and cannot issue.

  • Customs broker

    Declarations, classification confirmation and duty computation. The confirmation of a tariff heading is recorded against their name.

  • Finance

    Charges, settlement and the shipment profit and loss. Cannot confirm a classification or issue a transport document.

  • Customer

    Read their own shipments and documents, and provably nothing else. Scoped at the query, tested against every access path.

Above the roles sits the organisation itself. It is applied where the query is built rather than at each endpoint, so a read, list, search or download across organisations answers as though the record does not exist — a 404 rather than a refusal, because a refusal confirms the record is there, and a real shipment reference is a fact about another forwarder’s customer.

See it against one of your own lanes

A console is hard to judge from screenshots. Bring a lane you run often, the contract behind it and last month’s carrier invoice, and we will walk the whole chain from the imported row to the issued document.

Get in touch

Talk to the people building it

No chatbot and no ticket queue. Tell us what your operation actually looks like — the modes you move, whether you clear your own customs, and roughly how many shipments a month — and someone who works on the software will reply.

info@legosphere.com

Please keep customer names, IECs, GSTINs, container numbers and commercial invoices out of this box — it is an ordinary enquiry form, not a channel for a live shipment.