Document type · Bills of lading

Bill of lading automation

FlowDocs reads ocean bills of lading — master, house, sea waybill or a scan of a stamped original — and returns the fields you named, one row per container line, as CSV, a real Excel workbook, or signed JSON posted to your own endpoint. You define the fields once and the same template works across carrier layouts.

The bills of lading you actually receive.

Real doc types, real fields — configured per template. No hardcoded parser per carrier.

Master Bill of Lading (MBL)

Carrier to NVOCC. Carrier, B/L number, booking number, vessel and voyage, port of loading, port of discharge, container and seal numbers, package count, gross weight, measurement, freight terms.

House Bill of Lading (HBL)

Forwarder to shipper. Same freight, different parties: actual shipper, consignee, notify party, place of receipt, place of delivery, plus the master B/L it moves under.

Sea waybill

Non-negotiable, so there is no original to surrender — but the data is the same. Shipper, consignee, route, containers, weights and delivery terms.

Switch bill of lading

Reissued with substituted parties or ports. The fields you named come back from whichever version you send.

Telex or express release copy

Usually a scan or photograph of a stamped paper original. FlowDocs OCRs it when the PDF carries no readable text.

Combined transport bill of lading

Carries an inland leg as well as the sea leg — place of receipt and place of delivery differ from the ports, and both can be separate fields.

The manual work.

These are the recurring items ops teams name when we ask what takes their time on freight paperwork.

  • The same shipment arrives twice — a master B/L from the carrier and a house B/L from the forwarder — carrying different shipper and consignee parties, and both get re-keyed.

  • One B/L can list many containers, each with its own seal number, package count and weight, so a single document turns into many rows of data entry.

  • Container and seal numbers are long alphanumeric strings; one mistyped character is not caught until the box is at the port.

  • Every carrier and NVOCC uses a different form, so a tool that reads by position on one layout breaks on the next.

  • Originals frequently arrive as scans or phone photographs of a stamped paper B/L, with no text layer to read at all.

Built for bills of lading

Why FlowDocs fits ocean paperwork.

Master and house on separate templates

A master and a house B/L describe one shipment with different parties on it. Define a field template for each — the parties, the references and the route fields you need — and run the right one against the right document.

One row per container line, not one per document

A B/L listing six containers comes back as six rows. Every row carries the file it came from and its line number, so a multi-container document reconciles back to its source without anyone tracking it by hand.

Reads by field, not by position

FlowDocs sends the document text and your field names to the model and asks for a value for each. Nothing is anchored to a coordinate on a form, so a new carrier layout does not need a new template.

Scans and photographs are OCRed first

FlowDocs tries the PDF’s own text layer first. When that returns almost nothing — the normal case for a scanned or photographed original — it falls back to OCR before extracting anything.

Confidence beside every value

The model reports how certain it was about each field. That number is stored with the value and shown beside it in the results table. A dash means the field was not found on that document. Nothing is withheld on the strength of a score — every row exports either way.

CSV, Excel or your own endpoint

Export as CSV or as a real .xlsx workbook, both with a source_document and row column ahead of your own fields, or have FlowDocs POST each finished job as signed JSON to a URL you control. There is no TMS connector — the import into your system stays yours.

Bills of lading FAQ.

Can FlowDocs read any carrier’s bill of lading?

You configure the fields you need — shipper, consignee, notify party, container number, seal number, port of loading, port of discharge, vessel, voyage, gross weight, freight terms — and FlowDocs extracts them regardless of the carrier’s layout, because it works from the document’s text and your field names rather than from positions on a form. A field that is not present on a particular B/L comes back empty and renders as a dash.

Does it handle both master and house bills of lading?

Both. They describe the same freight with different parties, so the usual setup is one field template per type — the master template naming the carrier and NVOCC parties, the house template naming the actual shipper and consignee. You can also share a single template for the fields both carry.

What happens when one B/L lists several containers?

You get one row per line, not one row per document. A bill of lading listing six containers returns six rows, each with its own container and seal number, package count and weight, and each row names the file it came from and its line number within that file.

Can it read a scanned or photographed bill of lading?

Yes. FlowDocs first tries to read the text embedded in the PDF. When a document yields almost no readable text — which is what a scan or a phone photograph of a stamped original looks like — it automatically falls back to OCR before extracting fields. Images sent as JPEG or PNG go straight to OCR.

How do I know which values to check?

Every extracted value carries the model’s confidence for that specific field, stored with the value and shown beside it in the results table. Where a field was not found on the document, the cell shows a dash instead of a value. FlowDocs does not hold rows back or route them anywhere on the strength of a score — the whole extraction exports either way, and what you do with a low number is your call.

Can I send the data straight into CargoWise or my TMS?

Not directly — FlowDocs has no TMS connector and does not write into another system. What it gives you is the data in three shapes: a CSV, a real Excel workbook, and signed JSON posted to an endpoint you control as each job finishes. The import into your own system is the step you keep.

What are the field names in the export?

Your own. The CSV header, the Excel header and the JSON keys are the field names from your template, in the order you defined them. FlowDocs adds exactly two columns of its own ahead of them: source_document, the original filename, and row, the line number within that document.

How large a batch can I send?

Up to 50 documents in one job, each up to 25 MB and 300 pages, with up to 50 fields per extraction. Documents can be uploaded in the app, posted to the API with a key, or forwarded to an address FlowDocs gives your automation — the attachment on a forwarded email is read without anyone opening the app.

Send us a bill of lading.
See what comes back.

No signup, no call. Send one document and we’ll return clean, structured data within a day.

You can delete or paste over the names, values and routes first — the extraction still runs on whatever is left. Use a tool that removes the text rather than a black box drawn on top: a drawn box hides it from you, not from a parser.

Send a redacted document