Fill a booking or shipment from a document with AI¶
Guide information
Requirements
This tutorial requires the installation of the following applications/modules:
Document Parsing - a paid add-on you install separately. It installs Freight Document Parsing automatically alongside Freight Forwarder Management, which adds the Import from Document action and the 5 freight document templates.
A Shipping Instruction or Booking Confirmation repeats data that is already sitting in a PDF, a scanned image or an Excel file. Retyping it into Viindoo costs time and risks a slipped digit on a container number or an MBL No. that later blocks printing the HBL. AI Document Parsing reads the uploaded file and proposes the values - it never writes to the record until you review and click Apply to Record. If a term here is new, see the Freight forwarding glossary.
Running scenario: Hoa (Documentation) at Hai Long Logistics fills the confirmed export
shipment for Nhat Long Footwear (SHP/26xx/000nn, 2 x Container 40FT HC, Hai Phong Port to
Port of Los Angeles, carrier ONE Line, Incoterm CFR (Port of Los Angeles), Freight
Prepaid) directly from the customer’s Shipping Instruction file
SI_NhatLongFootwear_HLLHPHLAX2611-001.pdf.
Before you start¶
The Shipment or Booking already exists. Import from Document only fills a record that is already open - it cannot create a new Shipment or Booking from a document. This shipment was created earlier from a confirmed quotation: see Quote a full container load for sea export.
You are in the User: All Shipments group if you are analyzing a document for a shipment you did not create yourself - User: Own Shipments can only view shipments, it cannot run this wizard.
An administrator has configured and tested an approved AI Provider with a model that can read the uploaded file type - see Set up AI providers and freight document templates. Use the provider preselected in this wizard or choose another approved provider explicitly.
You already have the customer’s document in hand (PDF, a photo, or an Excel file exported to PDF).
Step 1: Open the Import from Document wizard¶
This wizard is the only entry point for AI to read a document - there is no dedicated menu item, only an action on a record that is already open.
Go to and open the shipment for Nhat Long Footwear (SHP/26xx/000nn). Click the gear icon Action at the top of the form, then choose Import from Document.
After you click it: the Import from Document wizard opens on this shipment, with the status bar on Pending and nothing extracted yet.
Tip
Step 1 is done when: the wizard’s Record: line shows SHP/26xx/000nn - the Nhat Long Footwear shipment, not another one.
Step 2: Choose the document type, AI provider and upload the file¶
Choosing the wrong document type sends the AI looking for the wrong set of fields - each document type has its own list of fields to extract.
Document Type: Shipping Instruction (FCL). Only 4 choices appear here because the field’s domain filters by the Shipment: SI FCL, SI LCL, Bill of Lading (Ocean) and Arrival Notice.
AI Provider: OpenAI - preselected because the administrator made it the default in Set up AI providers and freight document templates.
Upload File: choose
SI_NhatLongFootwear_HLLHPHLAX2611-001.pdf.
Tip
Step 2 is done when: Document Type reads Shipping Instruction (FCL) and the file name is visible in the Upload File box.
Step 3: Analyze the document¶
This is the step that actually calls the AI - it can take a few seconds to tens of seconds, depending on how long the file is.
Click Analyze Document.
After you click it: the status bar at the top moves to Done, and three tabs appear:
Extracted Fields - 12 rows: Shipper, Consignee, Notify Party, POL, POD, MBL No., HBL No., Vessel, Voyage, ETD, ETA, Incoterm.
Containers - 2 rows.
Cargo - 1 row.
Note
The number of container and cargo rows is exactly what the AI returned from the file - the system does not count or cross-check this number against a second source in the document (for example a “total packages” line). If the AI misreads and merges 2 containers into 1, the Containers tab will just show 1 row with no warning at all.
Warning
If the file is longer than 40 pages, the system rejects it outright with a message such as: “The document has <N> pages, over the 40-page limit for AI extraction. Please split it into smaller files.” This does not apply to a 1-2 page SI like this one.
Tip
Step 3 is done when: the status is Done and the extracted rows are available for review. A High rating does not replace checking the original document. Review every Low - review carefully or Not found row in Step 4 before applying any data.
Step 4: Cross-check the extracted fields, containers and cargo¶
This step is mandatory by process, even though the software does not force it: the AI can misread a name or split/merge containers incorrectly.
Open the original PDF side by side and read every row of Extracted Fields against it:
Shipper = Nhat Long Footwear, Consignee = Pacific Coast Forwarding Agency, Inc., Notify
Party = Pacific Coast Forwarding Agency, Inc., POL = Hai Phong Port, POD = Port of Los
Angeles, MBL No. = ONEY204512367, HBL No. = HLLHPHLAX2611-001, Incoterm = CFR.
Note
The SI itself reads “SAME AS CONSIGNEE” for Notify Party - a common shorthand. The system auto-replaces that exact phrase with the Consignee’s name, so the row already shows Pacific Coast Forwarding Agency, Inc., not the literal PDF text.
In this example, POL and POD can show Low - review carefully because the SI uses port names while the existing shipment uses the coded locations Vietnam - HPH (VN) and United States - USLAX (US). Check that they refer to the same ports. If those locations are already correct on the shipment, untick Apply for POL and POD to keep them; do not assume that a readable port name has been matched to the right location record.
Then check the other two tabs:
Containers:
ONEU4567895/ sealOL2604187andONEU4568124/ sealOL2604188, both represent 40-foot high-cube containers. Type shows the text returned by AI (for example 40FTHC), which may differ from the Container 40FT HC name in your container-type records. Compare the equipment against the SI.Cargo: 1 row, Sneakers, HS 6404.19.90, 1,200 CTNS, gross weight about 21,600 kg.
If a row is wrong or missing: untick Apply on that row. The Extracted Value column is read-only - you cannot type a correction into it - so the right value has to be typed on the Shipment form after Step 5 instead. The Containers (Container No., Seal No., Match to) and Cargo (Description, HS Code, Quantity, Gross Weight…) tabs are different: you can correct those values directly inside the wizard.
Tip
Step 4 is done when: all 12 header rows, both container rows and the cargo row have been read back against the original SI - none of them left at its default without being looked at.
Decide what to do with a Low-confidence or Not-found field¶
Option |
Use when |
What changes |
|---|---|---|
Untick Apply, type the correct value on the Shipment form after Step 5 |
You can read the correct value on the file and the AI got it wrong |
The field is not written wrong; you fill in the right value yourself |
Untick Apply, leave the field blank |
You are not sure of the value yet and need to check with the customer |
The field keeps its current Shipment value (if any), or stays blank |
Leave Apply ticked on a Low-confidence port/partner field |
You know the missing port or partner record will be created afterwards |
Apply skips that field and shows “Applied with warnings” - no wrong value is written |
If you are not sure, untick Apply and type the correct value on the Shipment form afterwards.
Step 5: Apply the data to the shipment¶
This is the only step that writes anything official - before this, everything sits on the temporary wizard only.
Click Apply to Record.
After you click it: the 2 container lines are written first (the shipment had none yet), the 1 cargo line is written second, then the header fields (Shipper, Consignee, Notify Party, POL, POD, MBL No., HBL No., Incoterm, Vessel, Voyage). The wizard closes and you land back on the shipment form.
Open each created container and check Container Type against the SI. The raw AI Type text in Step 4 does not guarantee that a container-type record was matched. If the field is empty, set Container 40FT HC manually before continuing with booking or cargo loading.
Note
Vessel = ONE COMMITMENT and Voyage = 026W are written to the Shipment, but they do not show on the main form: the “Import Operations” field group they belong to only appears when Direction = Import, and this is an export shipment. Check these two values through the Chatter’s Log tab instead (both fields track changes there).
Warning
If a value - for example a port name - does not match any existing partner record in the system, Apply to Record still runs, but shows a notification “Applied with warnings” together with a line such as “No port found matching ‘…’ for field ‘…’. Skipped.” That field is skipped, not written with a wrong value.
Tip
Step 5 is done when: the shipment shows 2 x Container 40FT HC (ONEU4567895, ONEU4568124), 1 cargo line of 1,200 cartons at about 21,600 kg, and Shipper/Consignee/POL/POD/Incoterm all matching the SI - with no red error banner left.
Step 6: Save the original file to the shipment’s record¶
The wizard does not keep the file you uploaded - skip this step and you lose the original evidence for any dispute later.
On the shipment form, drag the file SI_NhatLongFootwear_HLLHPHLAX2611-001.pdf back into
the Chatter. This is a separate, manual step - Apply to Record in Step 5 does not keep the
file.
Tip
Step 6 is done when: SI_NhatLongFootwear_HLLHPHLAX2611-001.pdf appears in the
shipment’s attachments, next to the data you filled in during Step 5.
See also
Request documents and prepare the SI and draft B/L - where an SI checked here goes next: approval and sending to the carrier.
Known limitations¶
Step |
What Viindoo does today |
What you do instead |
|---|---|---|
Any step |
Cannot create a new Shipment or Booking from a document, only fills one already open |
Create the Shipment first (manually or from a quotation), then run this wizard on it |
Step 4 |
Extracted Value is read-only - no inline correction |
Untick Apply, then type the correct value on the Shipment form after Step 5 |
Step 3-4 |
Container/cargo row count is not cross-checked against a second source |
Count the rows yourself against the original file before Apply |
Step 4 |
“Required fields not found” only warns - it does not block Apply |
Treat the banner as your own stop signal |
Step 5 |
Vessel/Voyage are written but hidden on an export shipment’s form |
Check them through the Chatter’s Log tab instead |
Step 6 |
The uploaded file is discarded when the wizard closes |
Drag the file into the Chatter yourself right after Apply |
Troubleshooting¶
Analyze Document does nothing, or reports a missing file¶
Symptom: “Please upload a document file first.”
Cause: You clicked Analyze Document while the Upload File field was still empty.
Fix: Choose a PDF, image or Excel-exported-to-PDF file first, then click Analyze Document again.
No AI provider or document type selected¶
Symptom: “Please select an AI provider.” or “Please select a document type.”
Cause: Analyze Document checks both fields before calling the AI - this happens when no Default Provider is configured yet (see Set up AI providers and freight document templates).
Fix: Pick a Provider from the list by hand, or ask your Administrator to set a Default Provider on the configuration page.
File rejected for having too many pages¶
Symptom: “The document has <N> pages, over the 40-page limit for AI extraction. Please split it into smaller files.”
Cause: The uploaded PDF has more than 40 pages - rare for a 1-2 page SI, but possible if a customer sends a whole contract bundle in the same file.
Fix: Split out just the SI pages (usually the first 1-2 pages) into a new PDF file and upload that one instead.
Apply finished but a port or partner field was not written, with a warning¶
Symptom: “Applied with warnings” together with “No port found matching ‘…’ for field ‘…’. Skipped.”
Cause: The port name the AI read does not match (even loosely) any partner record in the system whose location type is a sea port or airport.
Fix: Create or correct that port’s name in the carrier and location records in Freight Forwarding configuration (add missing records first), then run Import from Document again, or type the value directly on the Shipment form’s POL/POD field.
Container or cargo line does not match, the wizard creates a new line instead¶
Symptom: After Apply, the Shipment has more container lines than you expected.
Cause: The matching logic pairs container lines by container type, then by order - if the Shipment already had a different-type or different-order container line before you ran the AI, the old line and the new AI line can end up side by side instead of merged.
Fix: Before clicking Apply to Record, check the Match to column on the Containers tab - if a row that should pair with an existing container was left blank, pick that container by hand, then Apply.