Skip to content
QSWEQB
hardScenarioConceptMidSenior

Two shipments of the same product were declared under different commodity codes. Why does that matter, and whose problem is it?

The code sets the duty rate, the controls that apply and whether the goods can move at all, so two codes mean two different amounts of tax paid on identical goods. It is the importer's legal responsibility rather than the freight forwarder's, and inconsistency is what an audit looks for.

4 min readUpdated 2026-07-26

What the interviewer is scoring

  • Does the candidate know the code determines duty, controls and admissibility
  • Whether responsibility is correctly placed with the importer rather than the broker
  • That classification is treated as governed master data rather than a per-shipment field
  • Whether the candidate raises origin and value as the other two declaration pillars
  • Does the candidate connect inconsistency to audit exposure and retrospective assessment

Answer

The code decides more than the tax

A commodity code — built on the Harmonized System maintained by the World Customs Organization, extended with further digits by individual jurisdictions — is the classification that tells a customs authority what the goods are.

It determines three separate things, and candidates usually name only the first.

The duty rate. Different codes attract different percentages, and the gap between two plausible classifications of the same item can be substantial.

Which controls apply. Licensing, quotas, sanitary and phytosanitary requirements, dual-use export controls. Some codes cannot move without a permit, and no amount of paperwork elsewhere substitutes.

Whether preferential treatment is available. Trade agreements reduce or eliminate duty for goods of a qualifying origin, and eligibility is expressed per code.

So two codes on identical goods is not a tidiness problem. It means two different amounts of tax were paid, and possibly that a control was applied to one shipment and skipped on the other.

It is the importer's liability, not the broker's

The common misconception, and worth being direct about. A customs broker or freight forwarder submits the declaration, and in most regimes the importer of record is legally responsible for its accuracy — including the classification, even when a third party chose it.

Practically that means "the broker picked it" is not a defence when an authority reassesses, and the reassessment can reach back years and arrive with interest and penalties. It also means the importer needs its own view of the correct code rather than inheriting whatever appeared on the last declaration, which is precisely what a system should be providing.

The other two pillars

Classification is one of three inputs, and an interview will usually probe whether you know the others.

Origin is where the goods are considered to have been produced, which is not the same as where they shipped from. Goods assembled in one country from parts made elsewhere have rules deciding which country counts, and origin determines whether a trade agreement's preferential rate applies. Claiming preference requires evidence, and claiming it wrongly is a common finding.

Customs value is what the duty percentage is applied to. It is usually based on the transaction price with defined adjustments, and the awkwardness is that the invoice value and the customs value are frequently different figures — a distinction that surprises engineers building an integration and assuming one field serves both.

Code, origin, value. Get any of the three wrong and the declaration is wrong.

Classification is master data, not a shipment field

The design failure behind the question is treating the code as something entered per shipment. Entered per shipment, it varies per shipment — by who typed it, by which broker, by whether anyone checked.

It belongs on the product, as governed master data with an owner, a justification and a history.

product SKU-44120, cotton knitted t-shirt
  code            6109.10          (jurisdiction-specific digits appended per market)
  assigned_by     trade compliance
  basis           note on file: knitted, >85% cotton
  effective_from  2024-03-01
  reviewed        2026-01-14
  ruling_ref      none

The fields that people leave out are the ones that matter under audit. Basis records why this code and not the adjacent one, which is the question an officer asks. Effective dates matter because the nomenclature itself is revised periodically, so a code valid three years ago may no longer exist and historical declarations must remain explicable against the version in force then.

Where a classification is genuinely contested or commercially significant, an importer can seek a binding ruling from the authority, which fixes the treatment. Recording the ruling reference against the product is what turns a judgement into a defence.

Detecting the inconsistency you already have

The practical engineering contribution is usually not choosing codes — that is a trade compliance specialism — but making divergence visible.

The useful checks are unglamorous. Reconcile declared codes against the master record per shipment and report mismatches, because the divergence is often between what you told the broker and what they filed. Look for one product declared under several codes across a period. Look for one code covering implausibly many distinct products, which is the signature of a catch-all someone used to get a shipment moving. And compare duty paid per unit across shipments of the same product, since a step change is a classification change somebody made without telling anyone.

When you find you have been wrong

The last question is the uncomfortable one, and the answer is not "quietly start using the right code".

Most regimes provide a route for voluntary disclosure of a past error, and using it typically produces a materially better outcome than being found — often reducing or removing penalties, though the duty and interest remain owed. Switching silently leaves an unexplained discontinuity in your own filing history, which is exactly the pattern audit selection looks for.

That decision belongs to trade compliance and legal rather than to engineering. What engineering owes them is the ability to answer, quickly and defensibly: which shipments used the wrong code, over what period, for what value, in which jurisdictions. A system that can produce that list in an afternoon changes what the conversation with the authority looks like.

The code is the importer's legal statement about their own goods. Two codes for one product is not untidy data, it is two different tax positions on the same thing, and the inconsistency is what gets noticed.

Likely follow-ups

  • Who is liable if the broker chose the wrong code?
  • What are the other two things that decide the duty besides the code?
  • How would you stop two teams classifying the same product differently?
  • The correct code is more expensive and you have used the cheap one for a year. Now what?

Related questions

Further reading

customsclassificationhs-codescompliancemaster-data