Skip to content

Shipment & Logistics Tracking

What is the Shipments Module?

The Shipments module provides end-to-end logistics visibility for every purchase order in Tawridy. It tracks goods from the moment a carrier is booked through customs clearance and final delivery to your warehouse or project site. Supporting all major carriers (DHL, FedEx, Aramex, and sea freight forwarders), the module handles the complexities of GCC cross-border trade -- including Incoterms that determine cost responsibility, HS code classification for customs, and duty rate calculations. Every shipment maintains a live status trail so your procurement, logistics, and finance teams always know exactly where goods are and what costs to expect.

How It Connects

DirectionConnected ModuleRelationship
In <--Purchase OrdersEach shipment is linked to one or more PO line items
Out -->GRN (Goods Receipt)Shipment arrival triggers GRN creation for receiving inspection
Out -->DocumentsShipping documents (BL, AWB, packing list, COO) are stored and linked
BothInventoryIn-transit stock is tracked as a virtual inventory location until delivery
In <--SuppliersSupplier shipping terms and preferred carriers are pulled from the supplier record

Step-by-Step Guide

  1. Create a shipment -- navigate to Operations > Shipments > New Shipment. Alternatively, open a Purchase Order and click "Create Shipment" to auto-link PO line items.
  2. Select PO line items -- choose which items from the PO are included in this shipment. Partial shipments are fully supported (e.g., 200 of 500 units shipping now).
  3. Enter carrier details -- select the carrier (DHL, FedEx, Aramex, sea freight, or custom) and enter the tracking number, booking reference, and estimated departure date.
  4. Set the Incoterm -- choose the applicable Incoterm (FOB, CIF, DDP, EXW, etc.). The system automatically calculates which costs fall on the buyer vs. supplier based on the selected term.
  5. Add customs information -- enter HS codes for each line item. The system suggests duty rates based on the destination country and origin. Verify or override as needed.
  6. Upload shipping documents -- attach Bill of Lading (BL) or Airway Bill (AWB), commercial invoice, packing list, certificate of origin, and any required compliance certificates.
  7. Track status updates -- the shipment progresses through its lifecycle. Status updates can be entered manually or pulled automatically via carrier API integrations.
  8. Process customs clearance -- when the shipment reaches the destination port, log customs submission, duty payment, and clearance confirmation.
  9. Confirm delivery -- once goods arrive at the destination, mark the shipment as Delivered. This triggers a prompt to create a GRN for receiving inspection.

Shipment Status Lifecycle

Booked --> In Transit --> Arrived at Port --> Customs --> Cleared --> Out for Delivery --> Delivered
                                                |
                                                v
                                             Held (customs issue)

Incoterms and Cost Responsibility

IncotermFreightInsuranceCustoms (Import)DutyUse Case
EXWBuyerBuyerBuyerBuyerBuyer controls full logistics
FOBBuyerBuyerBuyerBuyerCommon for sea freight; risk transfers at port of origin
CIFSellerSellerBuyerBuyerSeller handles freight + insurance to destination port
DDPSellerSellerSellerSellerSeller delivers duty-paid; simplest for buyer
DAPSellerSellerBuyerBuyerSeller delivers to destination; buyer clears customs

Key Fields Explained

FieldDescription
shipment_numberAuto-generated reference (format: SHP-YYYY-NNNN).
po_referenceLinked Purchase Order number(s). A shipment can span multiple POs from the same supplier.
carrierLogistics provider: DHL, FedEx, Aramex, sea freight forwarder, or custom entry.
tracking_numberCarrier-issued tracking or booking reference for live status lookups.
incotermThe agreed Incoterm (EXW, FOB, CIF, DDP, DAP, etc.) governing cost and risk split.
hs_codesHarmonized System codes per line item, used for customs classification and duty calculation.
duty_rateImport duty percentage based on HS code and destination country tariff schedule.
estimated_arrivalExpected delivery date at the final destination.
actual_arrivalRecorded date when goods physically arrived.
statusCurrent shipment state in the lifecycle (Booked, In Transit, Customs, Cleared, Delivered).
customs_referenceDeclaration number issued by the customs authority upon submission.
freight_costTotal freight charges for this shipment.
insurance_costInsurance premium, if applicable under the selected Incoterm.
duty_amountCalculated import duty: (declared_value x duty_rate).

Tips & Best Practices

TIP

Use the "Split Shipment" feature when a supplier ships goods in multiple consignments against a single PO. Each split creates its own tracking trail while maintaining the parent PO link for consolidated reporting.

WARNING

Always verify HS codes before customs submission. Incorrect classification can result in shipment holds, penalty duties, or goods being confiscated. Use the built-in HS code lookup tool or consult your customs broker for complex items.

TIP

Set up carrier API integrations in Settings > Integrations for DHL, FedEx, and Aramex. Once connected, tracking status updates are pulled automatically every 4 hours, eliminating manual status entry.

TIP

For sea freight shipments, attach the Bill of Lading as soon as it is available. The BL is required for customs clearance and GRN processing. The system will flag shipments approaching port arrival that are missing a BL document.

WARNING

Incoterm selection directly impacts your landed cost calculations. Changing the Incoterm after a shipment is booked requires approval, as it alters the financial responsibility split between buyer and supplier.

FAQ

Q: Can one shipment contain items from multiple POs? A: Yes, as long as all POs are issued to the same supplier. This is common when a supplier consolidates multiple orders into a single container or consignment to reduce freight costs.

Q: How are duty rates determined? A: Duty rates are suggested based on the HS code and the destination country's published tariff schedule. Tawridy maintains rate tables for all six GCC countries. You can override the suggested rate if your customs broker advises a different classification.

Q: What happens if customs holds a shipment? A: The shipment status changes to Held. You can log the reason (missing document, inspection required, classification dispute) and attach any correspondence. The system sends alerts to the procurement and logistics teams. Once resolved, update the status back to Cleared.

Q: Does Tawridy calculate landed cost automatically? A: Yes. Landed cost = product cost + freight + insurance + duty + customs brokerage fees. The calculation respects the selected Incoterm to avoid double-counting costs that the supplier has already covered.

Q: Can I track shipments from suppliers who do not use major carriers? A: Yes. Select "Custom Carrier" and enter the carrier name and tracking details manually. Status updates for custom carriers must be entered manually since there is no API integration.