WorkflowTrade Finance & Correspondent Banking

Evaluate · accuracy

ECCN Classification Software: Test It on Lines You Planted

No regulator publishes an accuracy benchmark for ECCN classification software, so a vendor's figure tells you little. Plant goods lines whose classification you already know, count every outcome, and fail the tool on the one that matters: a wrong answer stated with confidence.

Updated · 14 min read

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

ECCN classification software proposes an Export Control Classification Number for a product from its description and specifications, and the only reliable way to judge it is a seeded test: give it goods lines whose classification you already know, without the answers, and count what comes back. Buyers range from exporters' compliance teams to bank trade desks, and the stakes differ. An exporter files on the answer; a bank uses it to decide whether a goods line needs a specialist before a payment or a presentation moves. Botminds' Trade Sanctions & Dual-Use Screening proposes classifications on every goods line a bank screens, and this page sets out the test we would want any bank to run on it, or on anything else, before relying on it.

Why one HS code can hide many classifications

27

export control classification numbers BIS names among the items inside the 50 high-priority HS codes

plus EAR99 items

8

of those 27 sit in category 2B, machine tools and their parts

BIS, CHPL

0.0006mm

the spindle run-out figure on which one control-list entry turns

15 CFR 774, 2B998.a

BIS lists 2A001, 2A101, 2A991, 2B001, 2B002, 2B003, 2B201, 2B991, 2B992, 2B993, 2B998, 3A001, 3A002, 3A090, 3A991, 3A992, 3B001, 3B991, 3B992, 5A001, 5A991, 6A002, 6A003, 6A993, 7A003, 7A994 and 9A991 among the items the 50 codes cover, alongside EAR99 items. Software that reads the HS code alone cannot choose between them.Source: BIS, Common High Priority Items List; Commerce Control List

What is ECCN classification software, and who uses it?

It is any tool that suggests where an item sits on the Commerce Control List, from a searchable copy of the list to systems that read a product description and propose an entry with a score. BIS describes the target precisely: an ECCN is a five-character code whose first digit is the category, whose letter is the product group and whose last three digits name the entry (BIS, Classify your item). An item subject to the EAR that matches no entry is EAR99.

Exporters use such tools to classify their own catalogue, where they hold the engineering drawings and can answer every parameter. Banks use them differently. A trade desk sees a goods description on an invoice, an HS code and sometimes a datasheet, and needs to know whether the line deserves a specialist's attention before the credit's clock runs out. The software's job there is triage with reasons, not a filing. That changes what a good result looks like, and so what a good test measures.

Why vendor accuracy figures tell you little

Because they are measured on someone else's goods, usually as a single percentage, and most goods are not controlled. A test set where most lines are EAR99 rewards a tool for saying EAR99; a high overall score can hide a complete failure on the controlled lines that matter. We found no regulator or peer-reviewed benchmark for this task, for banks or exporters, so a published figure cannot be checked against anything independent.

An illustration: the same score, two very different tools

Test lines that are EAR99
90 of 100
Tool A, which always answers EAR99: overall accuracy
90%
Tool A, on the 10 controlled lines
0 of 10
Tool B, which holds doubtful lines: controlled lines caught
10 of 10
An arithmetic illustration on a hypothetical set of 100 lines, not a measurement of any product. A single accuracy number says nothing about where the errors fall.

The right question is not "how often is it right?" but "how often is it wrong while sounding sure, and on which goods?" A classification proposal held for a specialist costs minutes. A wrong proposal that passes unexamined on a high-priority line can put a bank in the position the EAR's knowledge standard is written for. That asymmetry is the whole design of a seeded test.

How do you test ECCN classification software?

You plant goods lines with known answers among ordinary ones, hide the answers, run the tool as it would run in production and score every outcome against a key your own specialist signs. The method borrows from how screening systems are tested with planted names, applied to goods. Four rules make it trustworthy.

The answer key must come from outside the tool. Use classifications the exporter has confirmed in writing, BIS classification rulings your customers have shared, or your specialist's documented determinations on closed files. BIS answers formal classification requests within 14 calendar days, so a disputed planted line can be settled by the authority itself (15 CFR 750.2).

The lines must look like your documents. Use real invoice wording from past presentations, including the thin descriptions, not clean catalogue entries. A tool that is accurate on datasheets and lost on invoices is the wrong tool for a trade desk.

The tool must not know which lines are planted. Mix them into a normal day's volume and run them at the production threshold.

Every outcome is scored, including abstentions. A held line is an outcome, not a gap in the data.

The seeded set: twelve lines you already know

Twelve line types cover the ways classification goes wrong on a trade desk. Each is described by what it tests, not by a classification we assert; the right answer for each comes from your own key.

Twelve planted line types, and what each one tests

Planted lineAnswer key fromWhat a good tool does
A catalogue item the manufacturer has classified, ECCN on its datasheetThe manufacturerProposes the same entry and cites the datasheet
The same item with the datasheet removedThe manufacturerHolds it, and names the missing parameter
An EAR99 item whose HS code is on the high-priority listExporter confirmationFlags the list position, proposes EAR99, does not call it controlled
A controlled item whose HS code is not on the listBIS ruling or specialistProposes the controlled entry; the list is not the test
A complete machine tool and its spare part on two linesSpecialistTreats them as different items with different entries
A component whose entry turns on a figure the invoice omitsSpecialistHolds it below threshold, quoting the deciding parameter
A vague description ("industrial parts")SpecialistRefuses to propose and asks for detail
A description that conflicts with the HS codeSpecialistFlags the conflict before proposing
An item affected by a recent control-list amendmentCurrent CCL textUses the current text and shows its version
A consumer good bound for a listed transshipment pointExporter confirmationProposes EAR99 and flags the route separately
A line in another language or with a trade name onlySpecialistHolds it rather than guessing from the name
A duplicate of line 1 with a different HS codeThe manufacturerNotices that the same goods carry two codes
Our test design. Plant each type two or three times among a normal day's goods lines; the key is signed by your export controls specialist before the run, not after.

The hardest line: a spindle, three entries and EAR99

The line that separates good tools from bad is a component whose entry depends on a number the invoice does not give. The spindle on the fictional sample credit in this series is a good model. On the Commerce Control List, 2B991 covers "Numerical control units for machine tools and 'numerically controlled' machine tools"; spindle assemblies of spindles and bearings appear under 2B998.a when "specially designed" for 2B991 machine tools and their run-out or camming is better than 0.0006 mm total indicator reading; and tilting spindles designed for contouring control sit under 2B008.d (15 CFR 774, Supplement No. 1). A spindle that meets none of those may be EAR99.

Plant it in pairs. The same spindle with a datasheet that states its run-out, and again without; the same spindle described as a spare for a named machine, and again as a stand-alone cartridge. A good tool changes its proposal, or its confidence, when the deciding detail changes, and says which detail moved it. A tool that gives the same answer at the same confidence in every version of the pair is reading the words "CNC" and "spindle", not the control list.

Trade Sanctions & Dual-Use Screening lists what it rejected, and why

The goods line for twelve CNC milling spindles, HS 8466.93, Tier 4.B of the high-priority list, expanded on the transaction manifest. A proposed entry at 0.71 confidence, below the 0.80 threshold, with a link explaining why, and to the right the alternatives the agent considered and rejected, each with a score and a sentence of reasoning.
Fictional sample data from Botminds' Trade Sanctions & Dual-Use Screening. Held below the threshold, this is a question for the specialist, not a classification. The rejected alternatives and their reasons are what a seeded test should score, not only the top answer.

What to count, and what to fail on

Count four outcomes for every planted line, and set one of them as a hard stop. The grid below is the scoring frame; the numbers inside it are yours to fill.

Score every planted line in one of four cells, and fail on the bottom right

The proposal was rightThe proposal was wrong
Proposal held for a person
The proposal was rightRight, but held

Costs a specialist a few minutes. Acceptable, and the rate tells you where the threshold sits.

The proposal was wrongWrong, and held

The test working as designed: the doubt was real and a person caught it.

Proposal confident enough to pass
The proposal was rightRight, and confident

The only cell that saves time. Count it by goods category, not overall.

The proposal was wrongWrong, and confident

The failure that matters. On a controlled or high-priority line, one is enough to stop the purchase.

Our scoring frame. Report each cell by goods category and by HS chapter, never only as a total. A single wrong-and-confident outcome on a controlled or high-priority line should stop a purchase or a go-live until it is explained.

Three further measures complete the picture. The hold rate by category shows where the threshold sits: if most machine-tool lines are held, the specialist's queue is the real cost. Citation accuracy checks that the quoted control-list text and the page reference are right, line by line, since a correct entry with a wrong citation cannot be audited. Behaviour on change checks that a planted pair moves the proposal when the deciding detail moves.

Is EAR99 dual-use? Plant it anyway

EAR99 means an item is subject to the EAR but described by no entry on the Commerce Control List, and BIS is explicit that it is not a free pass: EAR99 items "do not require a license for export, reexport, or transfer (in country) in most situations" but "may require a license if destined for a prohibited or restricted end user, end use or destination of concern" (BIS, Classify your item). Whether an EAR99 item is "dual-use" is a matter of words; whether it is restricted depends on where it goes and who uses it.

That is why EAR99 lines belong in the seeded set. FinCEN and BIS warned in 2022 that "illicit actors often attempt to procure EAR99 items" (FIN-2022-Alert003). BIS's high-priority list mixes EAR99 and controlled items under the same HS codes. And for Russia, Belarus, Iran and the occupied Crimea region, the EAR itself sets licence requirements by HS code for a set of items drawn from both ECCN-listed and EAR99 goods (15 CFR 746, Supplement No. 7). A tool that answers "EAR99" and stops has answered the classification question and missed the one the bank is asking. How HS codes and ECCNs fit together explains that second question.

What a demonstration shows, and what a seeded test proves

A vendor demonstrationA seeded test on your lines
Goods

A vendor demonstration: Clean catalogue descriptions chosen by the vendor

A seeded test on your lines: Your own invoice wording, thin descriptions included

Answer key

A vendor demonstration: The vendor’s

A seeded test on your lines: Your specialist’s, signed before the run, backed by exporter or BIS determinations

Score

A vendor demonstration: One accuracy percentage

A seeded test on your lines: Four cells by category, with the wrong-and-confident cell as a hard stop

Abstention

A vendor demonstration: Rarely shown

A seeded test on your lines: Counted as an outcome, with the missing parameter named

Change

A vendor demonstration: Static

A seeded test on your lines: Planted pairs that should move the proposal

Evidence

A vendor demonstration: A slide

A seeded test on your lines: Every proposal with its citation, kept for audit

Who is responsible for ECCN classification?

The exporter, in the first instance. BIS lists three ways to determine an item's ECCN: ask the manufacturer or developer, self-classify with "a technical understanding of the item and a familiarity with the structure of an ECCN", or request an official classification under section 748.3 of the EAR (BIS, Classify your item). It also warns that "ECCNs may change over time", so a manufacturer's code should be checked against the current list.

A bank is not the classifier, but it is responsible for what it does with a classification. If its tool proposes an entry and its staff rely on it to clear a goods line, the bank owns that decision. That is the reason to test the tool, and to keep its original output beside every human decision.

How Trade Sanctions & Dual-Use Screening is tested on a bank's desk

Run it before first use, again after every material change to the control list or the tool, and on a sample of closed lines each quarter. The 2026 interagency model risk guidance expects validation to happen before a model is first used, while placing generative and agentic AI outside its formal scope and leaving those tools to the bank's own governance (SR 26-2, April 17, 2026). A seeded test is the evidence that governance needs.

In Botminds' Trade Sanctions & Dual-Use Screening the pieces the test needs are part of the design. The classification threshold, 0.80 on the sample desk, is a versioned setting that the systems administrator proposes and the Sanctions Compliance Officer approves, and its effect on the last thirty days is shown before it is saved. Every override keeps the agent's proposal, confidence and alternatives beside the person's reason; on the sample desk 7 of 214 proposals were overridden in thirty days. Every agent runs a named model and prompt version. A bank can rerun the same planted set after any change and compare the four cells. What the goods-line agent does and refuses describes the agent under test; the Trade Sanctions & Dual-Use Screening page shows the rest.

A seeded test protocol for ECCN classification software

  1. Build the key first

    Twelve line types, two or three of each, answers signed by your specialist and backed by exporter or BIS determinations.

  2. Use your own wording

    Real invoice descriptions from past presentations, thin ones included.

  3. Hide the plants

    Mix them into a normal day’s lines and run at the production threshold.

  4. Score four cells

    Right and confident, right but held, wrong and held, wrong and confident, by category.

  5. Set the hard stop

    Any wrong-and-confident outcome on a controlled or high-priority line stops go-live until explained.

  6. Check the citations

    Quoted control-list text and page references verified line by line.

  7. Test the pairs

    The proposal or its confidence must move when the deciding detail moves.

  8. Repeat on change

    After each control-list amendment, model or prompt change, and quarterly on closed lines.

Questions people ask

What is the best ECCN classification software?

The one that does best on your seeded test, judged on the wrong-and-confident cell rather than overall accuracy. Exporters and banks need different things: an exporter needs a classification it can file, a bank needs triage that shows its doubt and sends the hard lines to a specialist.

How accurate is automated export classification?

Nobody independent has published a number. We found no regulator or peer-reviewed benchmark, so any figure comes from the vendor's own test set. Measure it on your own goods, with your own key.

What is the difference between 2B991 and 2B998?

2B991 covers numerical control units and numerically controlled machine tools not controlled elsewhere. 2B998 covers assemblies, circuit boards and inserts specially designed for 2B991 machine tools, including spindle assemblies with run-out or camming better than 0.0006 mm total indicator reading. Both are controlled for anti-terrorism reasons.

How do you determine an ECCN number?

Ask the manufacturer, self-classify using the Commerce Control List and BIS's order of review, or submit a classification request to BIS, which answers within 14 calendar days. Whichever route, check the code against the current control list, since entries change.

What is EAR99?

EAR99 is the designation for an item subject to the EAR that no Commerce Control List entry describes. It usually needs no licence, but can need one for a prohibited end user, end use or destination, which is why banks still screen EAR99 goods lines.

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.