The ICS2 Stop-Words Checker screens a goods description against the European Commission’s official list of vague or unacceptable terms for the entry summary declaration (ENS) under the EU Import Control System 2 (ICS2). Paste the description you intend to declare and the tool flags any word or phrase that appears on the stop-words list, with a note on whether the term is unacceptable as a standalone description (automatic rejection) or only problematic when used on its own. It is a reference check — not an ENS filing, not a customs-compliance determination, and not legal advice.
It is built for export and import documentation teams, customs brokers, and the documentation / declarations side of freight forwarders — and for AI agents assembling ENS or filing pipelines that need a fast, deterministic description-quality gate before the real declaration is lodged. Treat it as a pre-filing description QA check: catch a stop-word in the cargo description while you can still rewrite it, rather than after the carrier or customs authority rejects the ENS.
What the ICS2 stop-words list is
ICS2 is the EU’s advance cargo information programme. Before goods are loaded or enter the customs territory of the Union, an entry summary declaration must describe them. The description field (data element 18 05 000 000, per Commission Delegated Regulation (EU) 2015/2446) must be in plain language and precise enough to allow risk analysis. Generic placeholders like “general cargo”, “consolidated”, “freight all kinds” or “said to contain” tell the authority nothing, so the Commission publishes a list of such terms that are treated as unacceptable. This tool checks your text against that list; it does not reproduce the regulation text, only cites the legal basis.
The list is official EU (European Commission, ICS2), it is non-exhaustive, and it is updated periodically — new carrier-loading and consolidation terms have been added over time. A description that passes this screen has merely avoided the listed words; it has not been accepted.
Worked examples
Three cases that show how the checker behaves — two flagged, one clean. Remember that a clean result is not acceptance of the description.
GET /api/ics2-check?description=general+cargo
→ flagged: “general cargo” (unacceptable as a standalone description — automatic rejection)“general cargo” — flagged. It is a classic placeholder that describes nothing, so on its own it is an automatic rejection for the ENS. Rewrite it as the actual commodity (for example the real product plus its material and use).
GET /api/ics2-check?description=SLAC
→ flagged: “SLAC” (carrier-loading term added 4 May 2026)“SLAC” (shipper’s load and count) — flagged. It is one of the carrier-loading / consolidation terms added to the list on 4 May 2026. Such terms describe how the unit was packed, not what is inside it, so they do not satisfy the description requirement.
GET /api/ics2-check?description=men%27s+cotton+T-shirts%2C+100%25+cotton
→ clean: true (no listed stop-words) — clean ≠ acceptance“men’s cotton T-shirts, 100% cotton” — clean. No listed stop-word appears in the text. That does not mean the description will be accepted: clean ≠ acceptance. The wording must still be accurate and precise enough for the goods, and the final call belongs to the filing party and the customs authority, not to this reference check.
How to use it in a filing workflow
Run the description through this check as a QA step before the ENS is built. For documentation teams and brokers, that means screening the commodity description on the booking, the commercial invoice or the house/master manifest line before it flows into the declaration. For an AI agent building an ENS pipeline, call GET /api/ics2-check?description=<string> for each line item: if flagged is non-empty, surface the term and its note for a human to rewrite the description; if clean is true, continue — while still respecting that clean is not an acceptance signal. The response always carries a caveat and a disclaimer; propagate both rather than collapsing the result into an accept/reject verdict, because this tool does not return one.
What this tool is not
This is a reference check, and only that. It is not an ENS filing, not a customs-compliance determination, and not legal advice. It does not submit anything to ICS2, does not validate a declaration, and does not guarantee that a description that passes the screen will be accepted (clean ≠ acceptance). The stop-words list is non-exhaustive and changes over time, and a description can be rejected for being vague or inaccurate even with no listed term present. For the actual filing, use your customs broker or filer and the current official EU guidance.
Frequently asked questions
What is the EU ICS2 stop-words list?
Does a clean result mean my description will be accepted?
Is this an ICS2 / ENS filing tool or legal advice?
Reference check only — flags terms on the official EU ICS2 stop-words list. Not an ENS filing, not a customs-compliance determination, and not legal advice. A clean result is not acceptance of the description; for filing, use your customs broker or filer.