uk_duty_calculator
Estimate UK import duty and VAT for a commodity code using live GOV.UK Trade Tariff rates. Get duty, VAT, and total landed cost from customs value, origin country, and optional freight/insurance.
Instructions
Estimate UK import duty and VAT for a commodity code using the LIVE GOV.UK Trade Tariff — rates are fetched per request, not from a static table. The CIF value is composed from customs_value + freight_cost + insurance_cost; duty = CIF x the duty rate for the origin country; VAT (typically 20%) applies on the duty-inclusive value.
Provide commodity_code (6-10 digits), origin_country (ISO-2) and customs_value in GBP; freight_cost, insurance_cost and incoterm are optional refinements.
Behavior: live lookup plus deterministic arithmetic on the returned rate; an unknown or non-declarable commodity code errors with HMRC's message (a 6-digit code may need extending to its 8/10-digit declarable line); origin-dependent measures the tariff cannot resolve automatically surface in warnings. Rate-limited (anonymous use: 25 requests/day per IP): a 429 error body carries retry_after_seconds and a Retry-After header — back off and retry, or call get_subscribe_link for higher limits.
Returns: commodity_code and description, origin country, cif_value, duty_rate (+ percent), duty_amount, vat_rate, vat_amount, total_import_taxes, total_landed_cost and warnings under result; validity.as_of marks the live-rate timestamp; plus confidence, _source and citation (the FreightUtils v1 response envelope).
Limitations: an estimate, not a customs ruling — excise, quotas, anti-dumping measures, reliefs and origin-proof requirements can change the outcome; confirm with a customs broker or HMRC before relying on it.
Related: hs_code_lookup (find the 6-digit code first), incoterms_lookup (who actually pays these costs).
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| incoterm | No | Incoterms 2020 basis of the customs_value — documents which costs are already included. | |
| freight_cost | No | Freight cost in GBP — added to the CIF value. Default: 0. | |
| customs_value | Yes | Goods value in GBP. Example: 1000. | |
| commodity_code | Yes | HS/UK tariff code, 6-10 digits. Example: "8471300000" (portable computers). 6-digit codes may need the declarable 8/10-digit line. | |
| insurance_cost | No | Insurance cost in GBP — added to the CIF value. Default: 0. | |
| origin_country | Yes | ISO 2-letter country of origin. Examples: "CN", "DE", "US". |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| ok | Yes | ||
| result | Yes | ||
| _source | Yes | ||
| citation | Yes | ||
| validity | No | ||
| warnings | No | ||
| confidence | Yes | ||
| blocking_errors | No | ||
| envelope_version | Yes | ||
| normalized_input | No |