FinchContext
Run with

Build a Customs SAD / Single-Window Declaration Dataset

Skill: Convert shipment data into a Single Administrative Document customs declaration dataset

Region: Global (WCO Data Model / EU SAD — import & export declarations) Category: Customs — Single Administrative Document (SAD) / Single-Window declaration dataset Does: Takes commercial shipment data (invoice, packing list, transport docs) and produces a structured SAD / Single-Window import (or export) declaration dataset — HS classification, customs-value build-up from the Incoterm, origin/preference, procedure codes, and per-item duty/VAT lines, aligned with the WCO Data Model and the EU SAD box structure. Schema version: WCO Data Model 3.x / EU Single Administrative Document (Annex B UCC-IA box set)

The AI assembles the declaration dataset from your documents; it does not transmit to a customs authority and is not a customs-broker substitute. HS classification, valuation method, and preference eligibility carry legal liability — have a licensed customs broker confirm the classification, procedure codes and valuation before lodging in the national system (e.g. EU AES/ICS2 national import systems, CDS, ABI/ACE).


When this applies


Build procedure

  1. Read the source — commercial invoice (parties, Incoterm, value, currency), packing list (gross/net mass, packages), transport document (mode, country of dispatch), and any preference/origin proof.
  2. Identify parties and the procedure — exporter/consignor, importer/consignee, declarant/representative; the requested + previous procedure code (SAD Box 37).
  3. Classify each item — assign the HS/commodity code (CN8 / 10-digit TARIC for the EU); record description, origin country, gross/net mass.
  4. Build the customs value — start from the invoice value and adjust to the valuation basis (CIF for the EU): add freight/insurance to the named place per the Incoterm; deduct post-importation costs.
  5. Determine duty & import VAT — apply the duty rate for the HS code/origin (less any preference), then import VAT on (customs value + duty + other charges).
  6. Assemble header + item lines — totals (packages, gross mass, invoice value) in the header; one line per HS item.
  7. Emit the dataset — structured JSON keyed to SAD boxes, per the worked example.
  8. Validate — work through the checklist.

Source → SAD box map

From the source → SAD box
Declaration type (IM/EX) + procedure Box 1
Consignor / exporter Box 2
Consignee / importer Box 8
Declarant / representative Box 14
Country of dispatch / export Box 15
Country of origin (per item) Box 34
Country of destination Box 17
Incoterm / delivery terms Box 20
Total invoice value & currency Box 22
Total packages Box 6
Gross mass (kg) Box 35
Net mass (kg) Box 38
Commodity (HS/CN/TARIC) code Box 33
Procedure code (requested/previous) Box 37
Customs value Box 47 (basis)
Duty / VAT calculation Box 47 (type/rate/amount)

Document structure (declaration dataset)

Declaration
├── header
│   ├── type (IM/EX), totalProcedure
│   ├── declarant / exporter / importer
│   ├── countryDispatch / countryDestination
│   ├── incoterm, invoiceValue, currency
│   └── totals (packages, grossMass)
└── items[ ]
    ├── itemNo, description
    ├── commodityCode (HS/CN/TARIC), originCountry
    ├── grossMass, netMass
    ├── procedureCode (requested+previous)
    ├── customsValue
    └── duties[ ] (type, base, rate, amount)

Code tables

Declaration type (Box 1, first subdivision)

Code Meaning
IM Import (from outside the territory)
EX Export (to outside the territory)
CO Goods in intra-union/community trade with special status

Procedure codes (Box 37, requested + previous; EU 4-digit example)

Code Meaning
4000 Release for free circulation (no previous procedure)
4071 Release for free circulation from a customs warehouse
1000 Permanent export
5100 Inward processing

Duty/tax type (Box 47, EU example)

Code Meaning
A00 Customs duty
B00 Import VAT
A20 Additional / anti-dumping duty

Calculation rules


Worked example (end-to-end)

Input — import shipment

One line of electronics, HS 8517.62.00, origin CN, into the EU (DE); invoice value €10,000.00 CIF Hamburg; gross 520 kg, net 500 kg, 20 packages; duty rate 0%, import VAT 19%.

After valuation (intermediate)

Output — declaration dataset (JSON)

{
  "header": {
    "type": "IM",
    "declarationProcedure": "4000",
    "exporter": { "name": "Shenzhen Electronics Co", "country": "CN" },
    "importer": { "name": "Northwind GmbH", "eori": "DE123456789012345" },
    "countryDispatch": "CN",
    "countryDestination": "DE",
    "incoterm": "CIF",
    "incotermPlace": "Hamburg",
    "invoiceValue": 10000.00,
    "currency": "EUR",
    "totals": { "packages": 20, "grossMass": 520.0 }
  },
  "items": [
    {
      "itemNo": 1,
      "description": "Base stations for cellular networks",
      "commodityCode": "8517620000",
      "originCountry": "CN",
      "grossMass": 520.0,
      "netMass": 500.0,
      "procedureCode": { "requested": "40", "previous": "00" },
      "customsValue": 10000.00,
      "duties": [
        { "type": "A00", "base": 10000.00, "rate": 0.0, "amount": 0.00 },
        { "type": "B00", "base": 10000.00, "rate": 19.0, "amount": 1900.00 }
      ]
    }
  ]
}

Valuation note: CIF value used directly as the customs value; import VAT base = customs value + duty = €10,000.00.


Validation checklist


Last updated: 2026-06-12 — confirm the national Single-Window message schema, current TARIC/HS rates, and procedure-code set with a licensed customs broker before lodging.