WorkflowTrade Finance & Correspondent Banking

Learn · two codes

ECCN vs HS Code: Why a Customs Code Can't Tell You It's Dual-Use

An HS code says what a product is for customs; an ECCN says whether, and why, it is export-controlled. BIS calls them entirely unrelated, yet banks get HS codes and regulators write their alerts in them, so Botminds' Trade Sanctions & Dual-Use Screening uses the HS code to flag a goods line and never to classify it.

Updated · 12 min read

See one case, screen by screen →
Watch with transcript →

An ECCN and an HS code answer different questions. The HS code, six digits under the World Customs Organization's Harmonized System and ten in the U.S. Schedule B and tariff schedule, says what a product is, for duties and trade statistics. The Export Control Classification Number, five characters on the Commerce Control List, says whether the product is controlled for export and why, based on its technical parameters. You cannot read one from the other. A bank still has to work with both, because invoices carry HS codes while the question it must answer is about export controls. Botminds' Trade Sanctions & Dual-Use Screening reads the HS code on every goods line to decide where to look, and leaves the classification to the exporter's evidence and a specialist.

An ECCN is distinct from and entirely unrelated to either a Schedule B number or a Harmonized Tariff System (HTS) code.

BIS, Classify your item

What is the difference between an ECCN and an HS code?

They are built by different bodies, for different purposes, on different evidence. The HS code describes what a good is made of and what it is for, in the terms customs officers use. FinCEN and BIS summarized it for banks in 2023: the Harmonized System "is administrated by the World Customs Organization and is updated every five years", it assigns six-digit codes, and countries add digits for further detail (FIN-2023-Alert004, footnote 5). The ECCN describes performance: accuracy, speed, power, the number of axes a machine can coordinate. BIS says an ECCN identifies items "for export control purposes", with a category digit, a product-group letter and a three-digit entry (BIS).

Two codes, two questions

HS code (and Schedule B, HTS)ECCN
What it answers

HS code (and Schedule B, HTS): What is this product, for duty and trade statistics?

ECCN: Is this product controlled for export, and for which reason?

Who keeps it

HS code (and Schedule B, HTS): The World Customs Organization; in the U.S., the Census Bureau for Schedule B and the USITC for the tariff schedule

ECCN: BIS, on the Commerce Control List

Shape

HS code (and Schedule B, HTS): Six digits internationally, ten in the U.S.

ECCN: Five characters: category, product group, entry

Decided by

HS code (and Schedule B, HTS): The product’s nature and use

ECCN: Technical parameters: accuracy, speed, axes, materials

Where a bank sees it

HS code (and Schedule B, HTS): Invoices, packing lists, sometimes the credit

ECCN: Only if the exporter states it, or in a licence

If nothing fits

HS code (and Schedule B, HTS): A residual heading, such as parts not specified elsewhere

ECCN: EAR99: subject to the EAR, but on no control-list entry

Our comparison, drawn from BIS's classification guidance and the 2023 FinCEN–BIS alert. Neither code can be derived from the other.

Who assigns an ECCN, and who assigns an HS code?

The exporter is responsible for both, through different routes. For the HS-based codes, BIS sends people elsewhere: "Contact the U.S. Census Bureau for information on Schedule B numbers. Contact the U.S. International Trade Commission for information on HTS codes." For the ECCN, BIS lists three routes: ask the manufacturer, self-classify, or request an official classification, which BIS answers within 14 calendar days (15 CFR 750.2).

The difference in practice is who knows enough. The HS code can usually be chosen from the product's description. The ECCN often cannot: deciding between two entries can turn on a figure such as a spindle's run-out in thousandths of a millimetre. That is why the HS code reaches the bank's documents and the ECCN often does not.

The same goods, measured three ways

6digits

in an HS code, the international layer national schedules build on

World Customs Organization

10digits

in a U.S. Schedule B number for exports, whose first six are the HS code

FinCEN–BIS, 2023

5characters

in an ECCN, set by technical parameters on the Commerce Control List

BIS

FinCEN and BIS: the United States 'uses a 10-digit code to classify products for export, known as a Schedule B number, with the first six digits being the HS number'.Source: FIN-2023-Alert004; BIS, Classify your item

Can you find an ECCN from an HS code?

No. An HS code can tell you where to start looking, never where to stop. BIS's high-priority list shows why: its fifty HS codes take in low-technology EAR99 goods and controlled items alike, and BIS lists twenty-seven different ECCNs among them, from machine tools to navigation equipment (BIS, CHPL). The same six digits can describe an uncontrolled item and a controlled one.

Take HS 8466.93, "parts and accessories" for machine tools. A replacement spindle filed under it might fall under a control-list entry for spindle assemblies whose run-out is better than 0.0006 mm, under another for tilting spindles designed for contouring control, or under neither, and be EAR99 (15 CFR 774, Supplement No. 1). The HS code is the same in every case. Tables that map HS codes to ECCNs can suggest which entries to read; they cannot make the choice, and none of BIS's three routes to a classification runs through one.

Why does the EAR still use HS codes?

Because for a few destinations the EAR controls goods by HS code, not by ECCN. Supplement No. 7 to Part 746 lists six-digit codes that need a licence when destined to the occupied Crimea region of Ukraine, to Iran, or to Russia or Belarus, and says the requirement extends "to HTS Codes at the 8 and 10 digit level when those HTS-8 and HTS-10 codes begin with the HTS-6 Codes" (15 CFR 746, Supplement No. 7). Supplements No. 2, 4 and 6 set further HS-coded requirements for Russia and Belarus; Supplement No. 4 alone lists more than 2,000 codes. The listed codes include 846693, machine-tool parts, and 848210, ball bearings. The supplement describes its items as a subset of those "identified in specific Export Control Classification Numbers or designated as EAR99".

So for those destinations, an HS code on an invoice can by itself mean a licence is needed, whatever the ECCN. For every other destination it means nothing on its own. That asymmetry is the most useful thing a bank can know about the two codes: the destination decides whether the HS code is a control or merely a signal.

Even where the EAR does control by code, the code on the invoice is not the end of the reading. The supplement takes its six-digit codes from the U.S. tariff schedule's 2023 edition, and it reaches beyond them: its items "include any modified or designed 'components,' 'parts,' 'accessories,' and 'attachments' therefor regardless of the HTS Code or HTS Description" of those parts, with an exception for minor items such as fasteners. A part for a listed machine can be caught under a code that appears nowhere on the list.

How an HS code on an invoice can mislead

An HS code on a commercial invoice is a declaration by the seller or its forwarder, not a finding. It is usually right, because customs depends on it, but nobody checks it before the bank sees it, and the people most interested in avoiding scrutiny choose it. FinCEN and BIS warned in 2022 that illicit actors "will engage complicit shippers (or customs brokers) to obscure either the nature of the goods or their ultimate destinations" (FIN-2022-Alert003).

Three checks catch most of the problem without any engineering. Does the HS code on the invoice match the one on the packing list and any transport document? Does the code fit the words beside it: a "spindle" under a heading for furniture parts deserves a question? And does the code fit the buyer's line of business, which is one of the red flags in BIS's Know Your Customer guidance? A code that fails any of these is a reason to ask, whatever list it is or is not on.

Why FinCEN and BIS wrote their alerts in HS codes

Because HS codes are what a bank can see. The 2023 supplemental alert pointed banks to the HS codes printed on invoices, packing slips and transport documents, and explained where its nine codes came from: the list is "primarily based on the HS code classification of Russian weapons system components recovered on the battlefield in Ukraine" (FIN-2023-Alert004). Regulators chose the code the bank already holds, not the one it would have to ask for.

The alerts were also explicit that low-level goods matter. In 2022 FinCEN and BIS warned that illicit buyers often seek EAR99 items, which "generally" need no licence to most destinations (FIN-2022-Alert003). An HS-code alert reaches those goods; an ECCN-based one would not.The fifty high-priority codes, tier by tier, are set out on a page of their own.

Two goods lines, read both ways

On the fictional sample credit used throughout this series, an export of spindles, bearings and tool holders from Houston to a buyer in Gebze, Türkiye, the two codes tell different stories. The table reads each line by its HS code and by what an export controls review needs.

The sample credit's goods lines, by HS code and by export control question

Goods lineHS code and high-priority listLicence by HS code?What the ECCN turns on
12 CNC milling spindles, 18,000 rpm8466.93, Tier 4.BOnly if bound for Russia, Belarus, Iran or occupied Crimea; Türkiye is none of theseWhether it is a spindle assembly with run-out better than 0.0006 mm, a tilting spindle, or neither: a datasheet question
48 ball bearings8482.10, Tier 3.BAs aboveTreated as EAR99 in the sample file; destination and end user still matter
A lot of tool holders8466.10, not on the listNot in Supplement No. 7, though Supplement No. 4 lists 846610 for Russia and BelarusNot flagged by code; read with the rest of the presentation
Fictional sample data, read against BIS's high-priority list and 15 CFR 746, Supplement No. 7. The end-user statement in the sample names an ultimate consignee in Kazakhstan, which is not a Supplement No. 7 destination either; it is a diversion question, not a code question.Source: BIS, CHPL; 15 CFR 746, Supplement No. 7

The bank's rule: HS flags, never classifies

A bank should use the HS code for three things and nothing else: to place a goods line on the high-priority list, to test it against HS-coded licence requirements for the destinations that have them, and to decide whether the line needs the exporter's classification and a specialist's eye. What it must not do is treat a listed code as proof that the goods are controlled, or an unlisted code as proof that they are not.

How Trade Sanctions & Dual-Use Screening uses the two codes on one goods line

  1. Agent

    Read the HS code

    From the invoice and packing list, cited to its page; a conflict between the two is itself flagged.

  2. Agent

    Place it

    On the high-priority list and its tier, and against HS-coded licence rules for the stated and implied destinations.

    Never: Calls a listed code “controlled”

  3. Agent

    Propose a classification

    From the description and any datasheet, with a confidence, the quoted control-list text and the entries rejected.

    Never: Derives the ECCN from the HS code

  4. A person decides

    Export Controls Specialist

    Reads the technical parameters against the control list, or asks the exporter for its ECCN and basis.

  5. A person decides

    Trade Sanctions Analyst

    Decides the line with a reason code.

The flow on the fictional sample desk. The HS code decides where the agents look; the ECCN, and the decision, come from evidence and people.

General Prohibition 10 is why the rule matters. The prohibition turns on knowledge of a violation, not on the code printed on an invoice (15 CFR 736.2(b)(10)). A bank that cleared a goods line because its HS code was unlisted, while the end-user statement named a different consignee, would have looked at the wrong evidence. Testing classification software on planted lines includes an unlisted controlled item for exactly this reason.

In Trade Sanctions & Dual-Use Screening, the HS code places the line; the proposal shows its doubt

The classification view for twelve CNC milling spindles: HS 8466.93 shown as Tier 4.B of the common high-priority list, destination Gebze, Türkiye, named among common transshipment points. A proposed entry is held at 0.71 confidence below the 0.80 threshold, with what the invoice says, what it does not say and what the datasheet adds, and a list of alternatives considered and rejected.
Fictional sample data. The HS code and its tier sit in one row of the evidence; the proposal is held for the specialist, because the invoice does not state the parameters the control list turns on.

What is a Schedule B number, and is it the same as an HS code?

A Schedule B number is the ten-digit U.S. code for classifying exported goods, kept by the Census Bureau, and its first six digits are the international HS code. For imports the U.S. uses the ten-digit Harmonized Tariff Schedule, kept by the U.S. International Trade Commission. Both are customs and statistics codes, and both are, in BIS's words, unrelated to the ECCN.

For a bank, the practical point is that the first six digits are what matter for the high-priority list and for Supplement No. 7, and those six digits are the same whichever ten-digit schedule the documents use. The full solution, including how it reads every goods line, is on the Trade Sanctions & Dual-Use Screening page.

Questions people ask

Is an ECCN the same as an HTS code?

No. The HTS code is the U.S. tariff classification for imports, based on the six-digit Harmonized System. The ECCN is an export control classification on the Commerce Control List. BIS describes the two as entirely unrelated.

Can one HS code cover goods with different ECCNs?

Yes. BIS says the fifty HS codes on its high-priority list cover EAR99 items and items under twenty-seven different ECCNs. A single code such as 8466.93 can include both controlled and uncontrolled machine-tool parts.

Is EAR99 an HS code?

No. EAR99 is an export control designation for items subject to the EAR that match no Commerce Control List entry. An EAR99 item still has an HS code, and for some destinations that HS code alone can create a licence requirement.

Why do invoices show HS codes but not ECCNs?

Customs and trade statistics need the HS code, so it travels with the goods. The ECCN is needed for export licensing and is often known only to the manufacturer or exporter. Banks that need it should ask the customer, as BIS recommends for licence questions.

Does an HS code on the high-priority list mean a licence is needed?

Not by itself. It means the goods line deserves a closer look. Licences by HS code apply only to the destinations covered by the HS-coded supplements to Part 746: Russia, Belarus, Iran and the occupied Crimea region. Elsewhere, the ECCN, the destination and the end user decide.

Trade Sanctions & Dual-Use Screening.
See it on your own files.

An agentic solution from Botminds. One transaction broken into its parties, banks, vessel, ports and goods lines, each screened, cited and decided against a recorded list version Book a demo, or explore how it works.