The sea gateway
Nearly all of Pakistan's sea freight moves through Karachi, which means a Karachi forwarder's day is not the generic freight-forwarding day the software brochures describe. It is an IGM, a rotation number, a berth, a stack, a delivery order and a detention clock. This page is about whether those boxes exist on the screen.
A note before the detail. Cargonio is software, sold and supported from one place across Pakistan. There is no branch in this city, nobody sits in it, and no customer of ours is named here as being in it. What follows is about the screens.
The working day
The order below is the order the screens are built in, because it is the order the file actually moves through an import desk.
Manifest Inbond Shipments (Sea-Import) is a short field set keyed straight off the line's manifest, before anyone has a full file. It is a separate screen from the job on purpose — a manifest record can never be opened as an inbond job, and an inbond job never appears on the manifest list.
Inbond Shipment Entry and Documents Printing (Sea-Import) carries the MBL and the HBL as two separate blocks, each with its own number, date, PP/CC, pieces, UOM, CBM and weights — plus a Total of HBL block that adds the house rows up for you.
The routing block goes past origin and destination into the boxes an import clerk keys after the vessel is alongside.
One block holds every reference the clearance turns on, so nobody has to keep a parallel register.
The container grid is a row per box, and it keeps going after the gate: the vehicle that lifted it, when it was due, when it actually arrived, and where the empty went back.
Free Days, Total Detention Days, Detention Rate / Day and Total Detention Amount sit on the job header above the per-container figures, which is what lets you answer a customer disputing a demurrage bill without reopening the file.
A Container Security schedule records each instrument you posted — instrument, number, date, amount — against Total Security Receivable and Balance Security Receivable, so what is still lying with a shipping line is a number rather than a memory.
Billing
Air freight prices off a rate and a weight. Sea prices off boxes, sizes, volumes and two or three currencies at once, and a generic invoice screen cannot do it. The four mode-bound local invoices carry a container-rate model instead.
A grid of No. of Containers × Container Rate, with the container size and TEU on the row. The sea-import screen adds a currency to each row of the grid — the source system's own behaviour, kept.
CBM and CBM Rate on the header. Freight is CBM × CBM Rate in the document currency, folded into the subtotal with the container freight.
Currency and Ex. Rate, then a second and a third pair. Each charge row converts at its own rate and the PKR sum is the authoritative one, so a line in a third currency stays exact instead of being averaged away.
FRC Freight and PKR Freight are separate boxes because the printed invoice shows them separately. They are presentation, not a second total.
Shipping-line charges and other charges are kept apart on the same document, each row with its own charge code, quantity, rate, currency and exchange rate.
Grand total = subtotal + sales tax + PRA fee + provincial tax − withholding, and every figure is stored a second time in PKR at the document's own rate so the ledger never adds dollars to rupees.
The other direction
An import desk bills; it also pays. And most Karachi houses run export off the same office.
A payable per mode, against a payable type: Shipping Line, Airline, Agent, Transporter, Custom Authority or Other. Finalising it debits Freight & Handling Cost and credits the Agent / Vendor Payable control.
Its own screen on both sea modes, with an Ocean Freight charges grid running rate to FC amount to PKR amount. It posts as a cost reversal against the payable, not as income.
Invoices to agents, credit notes to agents, invoices and debit notes received from agents, credit notes received from agents — four screens per mode, and a credit note posts the exact reverse of the invoice it answers.
The sea-export programme has its own screen and its own number series: Port, Wharf, T/Ship Point 1, Co Loader, CFS Yard, Weboc, Routing, Date Required, Cutt of Dt and the vehicle date.
Form E number and date in three sets, Instrument Type across Form E, Fin. Inst., EPZ NOC and GD, S/B No, S/B Place and S/B Date, M/R No, EGM No, S/I Filing Cut-Off, S/I Filed Date, CY/CFS Cut-Off, Pickup / Stuffing Date and the date and time the bill was handed to the line.
Place of Receipt, Port of Delivery with its code, Freight Payable At with its code, No. of Orig B/Ls, Country of Origin, Place of Issue, FOB/CIF, Loading Pier, B/L Released At and PCD.
Before you ask
The things a Karachi buyer is right to check, answered before the demo rather than during it.
Terminal, Wharf, Shed, Stack and Berth are fields on the job. Nothing is read from a terminal operator's system and nothing is read from a carrier's. ETA, Arrived Date and the vehicle dates on the container rows are keyed by your staff or loaded from a CSV.
A chart-of-accounts record can hold a Weboc Id and a PSW Id, with both passwords encrypted at rest and never returned to a browser, and the Loading Program has a Weboc box. That is record-keeping. Your people still work the portals; no declaration leaves this system.
Free days, a rate per day and the resulting amount are fields. There is no per-line detention tariff table that works the charge out for you.
Posting into and un-finalising inside a closed period are both refused, and the refusal names your Data Block Date. Voiding a freight document is not held to the same boundary — the finance vouchers are, the document void is not. It is on the list to fix and worth knowing now.
Next
The fastest way to check any of the above is to open the sea-import screen yourself and look for the box you were expecting.