Vietnam import tax & landed cost API

Import duty (MFN or FTA rate by HS code), excise, environmental tax and VAT in the legal order, with the landed cost per unit of goods imported to Vietnam.

GETPOSThttps://apibox.io.vn/v1/vn-import-cost

Send an 8-digit hs_code and the value as cif (or fob / exw + freight + insurance) in any currency with an exchange_rate (otherwise today's Vietcombank buying rate is fetched). The API reads the 2026 tariff line from /v1/hs-code and computes, each tax on top of the previous base: customs value, import duty (MFN rate, the special preferential rate of an agreement with fta — a C/O form such as E, D, EUR.1, CPTPP, RCEP with origin_country — or the normal rate of 150% MFN with mfn=false), excise tax on customs value + duty (Luật Thuế TTĐB 66/2025), environmental protection tax per unit, and import VAT on the sum (8% while the reduction applies and the goods are not excluded, else 10%).

The answer has a steps table with each base, rate, amount and legal reference, the total payable at customs and the landed_cost (customs value + duties + excise + environmental tax + other_costs, adding VAT only when vat_deductible=false) per unit when quantity is sent. Any rate can be overridden (import_duty_rate, excise_rate, environmental_tax_per_unit, vat_rate, additional_import_tax for anti-dumping or safeguard duties). Excise items marked by engine size or seats need excise_rate.

Parameters

NameInTypeRequiredDefault
hs_codequery|bodystringno8-digit Vietnamese tariff line (e.g. 2203.00.91); or send import_duty_rate.
cifquery|bodynumbernoCIF value (= customs value). Or fob / exw with freight, insurance.
currencyquery|bodystringnoVNDCurrency of the values.
exchange_ratequery|bodynumbernoVND per unit of currency (default: Vietcombank transfer buying rate today).
ftaquery|bodystringnoC/O form or agreement: E, D, AJ, VJ, AK, AANZ, AI, VK, VC, EAV, CPTPP, AHK, EUR.1, UK, S, VIFTA, RCEP.
origin_countryquery|bodystringnoISO alpha-2 exporting country (RCEP groups, excluded countries, CPTPP Mexico).
quantityquery|bodynumbernoUnits (for environmental tax and the cost per unit).
excise_ratequery|bodynumbernoOverride the excise rate (%).
environmental_tax_per_unitquery|bodynumbernoEnvironmental tax per unit (VND).
other_costsquery|bodynumbernoLocal costs added to the landed cost (VND).
datequery|bodystringnoImport date (VAT reduction, excise schedule).

Example

curl "https://apibox.io.vn/v1/vn-import-cost?hs_code=2203.00.91&fob=9000&freight=800&insurance=200&currency=USD&exchange_rate=25000&fta=EUR.1&origin_country=DE&quantity=12000&date=2026-11-11" \
  -H "Authorization: Bearer YOUR_API_KEY"

Response

{
  "date": "2026-11-11",
  "currency": "USD",
  "exchange_rate": 25000,
  "exchange_rate_source": "exchange_rate parameter",
  "value_basis": "FOB + freight + insurance",
  "value_parts": {
    "fob": 9000,
    "freight": 800,
    "insurance": 200
  },
  "value_foreign": 10000,
  "hs": {
    "code": "22030091",
    "code_formatted": "2203.00.91",
    "description_vi": "Có nồng độ cồn không quá 5,8% tính theo thể tích",
    "unit": "lít/kg",
    "mfn_rate": 35,
    "normal_rate": 52.5,
    "vat": "10/8",
    "special_consumption_tax": 65,
    "environmental_tax": null,
    "fta": {
      "agreement": "EVFTA",
      "cell": 22
    },
    "tariff_year": 2026
  },
  "fta": "EVFTA",
  "origin_country": "DE",
  "customs_value": 250000000,
  "import_duty": 55000000,
  "additional_import_tax": 0,
  "excise_tax": 198250000,
  "environmental_tax": 0,
  "vat": 50325000,
  "vat_rate": 10,
  "total_taxes": 303575000,
  "payable_at_customs": 303575000,
  "other_costs": 0,
  "vat_deductible": true,
  "landed_cost": 503250000,
  "quantity": 12000,
  "landed_cost_per_unit": 41937.5,
  "steps": [
    {
      "step": 1,
      "name": "Customs value",
      "name_vi": "Trị giá tính thuế (trị giá hải quan)",
      "base": "10,000 USD × 25000",
      "rate": null,
      "amount": 250000000
    },
    {
      "step": 2,
      "name": "Import duty",
      "name_vi": "Thuế nhập khẩu",
      "base": 250000000,
      "rate": 22,
      "amount": 55000000,
      "basis": "special preferential rate EVFTA"
    },
    {
      "step": 3,
      "name": "Excise tax",
      "name_vi": "Thuế tiêu thụ đặc biệt",
      "base": 305000000,
      "rate": 65,
      "amount": 198250000,
      "ref": "Luật Thuế TTĐB 66/2025/QH15 Điều 6 khoản 1 điểm b"
    },
    {
      "step": 4,
      "name": "Environmental protection tax",
      "name_vi": "Thuế bảo vệ môi trường",
      "base": 0,
      "rate": null,
      "amount": 0
    },
    {
      "step": 5,
      "name": "Import VAT",
      "name_vi": "Thuế GTGT hàng nhập khẩu",
      "base": 503250000,
      "rate": 10,
      "amount": 50325000,
      "basis": "10%: Không được giảm VAT theo 174/2025/NĐ-CP - PL2: Bia theo quy định của Luật Phòng, chống tác hại của rượu, bia;"
    }
  ],
  "reviewed": "2026-11-11",
  "disclaimer": "Reference calculation, not legal advice; check the official text."
}

Use cases

  • Quote landed cost before ordering goods from China or the EU
  • Compare MFN and FTA rates when choosing a supplier country
  • Estimate cash needed at customs clearance
  • Compute cost of goods for import accounting

FAQ

In what order are the taxes computed?

Import duty on the customs value; excise on customs value + import duty (+ anti-dumping / safeguard); environmental tax per unit; VAT on customs value + import duty + excise + environmental tax.

Which FTA rate is used?

The rate of the agreement you send in fta from the tariff workbook, if the line has one and your origin_country is not excluded; RCEP rates depend on the exporting country. Otherwise the MFN rate is used and a note explains why.

Is this the amount on the customs declaration?

It is an estimate. Customs may adjust the value (royalties, commissions, related-party prices) and uses the exchange rate of the declaration week; check the decree for the exact tariff.

Related APIs

Start with 1,000 free requests every month. Get free API key →