Guide

How to write a commercial invoice (with a checklist)

7 min read
Published Updated

What is a commercial invoice?

A commercial invoice (CI) is the primary financial document in an international shipment. It serves as the seller's formal demand for payment, a record of the transaction value, and the document that customs authorities in both the exporting and importing country use to assess duties and taxes.

Unlike a proforma invoice — which is an advance estimate — a commercial invoice is issued after goods are ready to ship and reflects the actual agreed price, quantity, and terms. Banks use it for documentary credit (L/C) settlement. Declaring agents use it as the primary value reference for customs filing. Buyers use it to match against their purchase order before releasing payment.

A poorly prepared CI creates downstream problems: customs holds, duty assessments on the wrong value, L/C discrepancies, or mismatches with the Packing List that your declaring agent then has to reconcile under time pressure.

Required fields on a commercial invoice

There is no single universal CI format, but the following fields are expected by customs authorities, banks, and counterparties in most international trade lanes. Missing or inconsistent fields are the most common source of documentary credit refusals.

  • Invoice number and date — unique identifier and the date of issue, not the date of shipment
  • Seller details — full legal name, address, and contact of the exporting entity
  • Buyer details — full legal name and address of the importer or consignee
  • Notify party — if different from the buyer; often the declaring agent or freight forwarder
  • Description of goods — specific enough for HS classification; avoid vague terms like 'spare parts' or 'samples'
  • HS code — include at least the 6-digit WCO harmonised code; destination countries may require 8–10 digits
  • Quantity and unit of measure — must match the Packing List exactly
  • Unit price and total amount — in the agreed transaction currency
  • Incoterms 2020 term and named place — for example, FOB Singapore Port or CIF Los Angeles
  • Country of origin — declared origin for duty and preferential tariff purposes
  • Payment terms — T/T, L/C, D/P, D/A, or open account
  • Bank details or L/C reference — if payment is documentary

Incoterms 2020 and the invoice value

Incoterms 2020 defines 11 trade terms — EXW, FCA, FAS, FOB, CFR, CIF, CPT, CIP, DAP, DPU, and DDP — that allocate cost, risk, and responsibility between buyer and seller. The Incoterms term you declare on the CI directly affects how the customs value (CIF or FOB basis depending on the importing country) is calculated.

Singapore Customs uses a CIF (Cost, Insurance, and Freight) basis for dutiable imports. This means if your CI states an FOB value, the declaring agent must add estimated freight and insurance to arrive at the customs value. If you use CIF as your Incoterms, that value should flow directly into the customs declaration. Mismatches between the CI Incoterms and what the declaring agent uses in the TradeNet filing are a common cause of post-clearance queries.

Always state the Incoterms term alongside a specific named place — for example, 'FOB Port of Shanghai' rather than just 'FOB'. This removes ambiguity about where costs transfer.

How the commercial invoice links to other documents

The CI does not travel alone. Declaring agents, banks, and forwarders cross-check it against several other documents in the shipment package:

The Packing List must match the CI on quantity, product description, and gross weight. Discrepancies — for example, CI shows 500 units but the PL shows 12 cartons of 40 units each — raise an immediate question from the declaring agent or bank.

The Bill of Lading or Air Waybill must show a consignee and notify party consistent with the CI. The B/L description of goods should match the CI description closely enough that a bank or customs officer can confirm they relate to the same shipment.

Certificates of origin, phytosanitary certificates, or import permits reference the goods description and value from the CI. If you revise the CI after these certificates are issued, you may need to reissue the certificates as well.

Common commercial invoice mistakes

  • Vague goods description — customs may reclassify under a higher-duty HS code if the description is ambiguous
  • Incoterms term without a named place — the port or city must be specified
  • Value understatement — intentional or accidental undervaluation creates customs liability and can result in penalties
  • Currency mismatch with the L/C — the CI currency must match the letter of credit to the letter
  • Missing HS code — increasingly required by modern customs systems and expedites release
  • Notify party omitted — freight forwarders and declaring agents need this field to coordinate arrival
  • Invoice date after B/L date — the CI must be dated on or before the Bill of Lading date for most banks

Commercial invoice checklist before you send

Use this checklist before sending the CI to your counterparty, forwarder, or declaring agent.

  • Invoice number is unique and date is the issue date (not estimated ship date)
  • Seller and buyer legal names match the sales contract and any L/C
  • Goods description is specific — no vague product terms
  • HS code is included at minimum 6-digit level
  • Quantity and unit match the draft Packing List
  • Unit price and total are in the agreed transaction currency
  • Incoterms 2020 term is stated with a named port or place
  • Country of origin is declared
  • Payment terms or L/C reference is visible
  • Notify party is included if different from the buyer

This guidance covers common international trade practice. Your specific transaction may require additional fields depending on the importing country's customs requirements, the commodity type, preferential trade agreement claims, or your bank's L/C conditions. Confirm final requirements with your declaring agent, freight forwarder, bank, or legal adviser.

How to write a commercial invoice (with a checklist) | Documents Dock