All posts
Functional5 min read

Managing International Import Workflows in Odoo

Handle international purchases in Odoo - tracking incoterms, recording landed costs, managing customs documentation, and coordinating freight forwarders through the import-to-stock process.

International Import Workflow in Odoo#

Importing goods involves more steps than a domestic purchase: negotiating incoterms, coordinating freight, clearing customs, and applying landed costs. Odoo can track each step and ensure the true cost is reflected in inventory.

Step 1 - Purchase Order with Incoterms#

Purchase → New PO:

  • Vendor: Overseas Supplier Ltd. (China)
  • Currency: USD (or CNY with FX conversion)
  • Incoterms: FOB Shanghai (vendor's responsibility ends when goods are on the vessel)

Incoterms field: select from the dropdown (FOB, CIF, EXW, DAP, DDP, etc.)

The selected incoterm determines:

  • Where your liability for the goods begins
  • Who pays freight, insurance, and customs
  • The valuation point for customs duty calculation

Step 2 - Freight Forwarder Bill of Lading#

When the vendor ships:

  • Receive the Bill of Lading (carrier document)
  • Record the shipment on the PO chatter: "Shipped FOB Shanghai - ETA 2027-10-28"
  • Scheduled Date on the receipt: update to expected arrival date

Track the container in transit - no Odoo action needed until goods arrive.

Step 3 - Customs Clearance#

When the ship arrives:

  1. Customs broker submits entry and pays duties
  2. Broker sends customs entry summary: duties paid, value, HS codes
  3. Record the customs broker bill in Odoo:

- Vendor: Customs Broker Co.

- Lines: Customs Duties $2,400 / Broker Fee $350

Step 4 - Warehouse Receipt#

When goods clear customs and arrive at your warehouse:

Inventory → Receipts → [Linked to PO] → Validate:

  • Enter actual quantities received
  • Record lot/serial numbers if tracked
  • Goods enter WH/Input → putaway rules route to final location

Step 5 - Apply Landed Costs#

Inventory → Operations → Landed Costs → New:

  • Picking: the just-validated receipt
  • Costs:

- Ocean Freight: $3,500 (from freight forwarder invoice)

- Customs Duties: $2,400

- Broker Fee: $350

- Port Handling: $200

  • Split Method: by Current Cost (or weight)
  • Validate → Odoo distributes landed costs across all imported products

Final Inventory Cost#

Each product's cost = Purchase Price + Allocated Landed Costs

Example: Product imported at $10/unit, 1,000 units:

  • Purchase: $10,000
  • Landed costs (allocated share): $650
  • True landed cost: $10.65/unit (used for COGS when sold)

Try ERPeek on your own Odoo module - ask questions, scaffold tests, and explore your codebase in plain language.

Get started free