> ## Documentation Index
> Fetch the complete documentation index at: https://docs.eazecustoms.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Submit an import declaration

> Creates and queues a new import customs declaration. You can send either a simplified external IMPORT payload or the full internal declaration payload.

Creates and queues a new import customs declaration. You can send either (1) a simplified external `IMPORT` payload using `type`, or (2) the full internal declaration payload. Use the full payload when you need complete field coverage (all parties, all document groups, deliveries, and declaration items). The owning company is always resolved from your API key — any `companyId` (or `Shipment.companyId`) provided in the request body is ignored.

Validation runs asynchronously — status will move from `processing` → `ready` once complete.

### Request Payload

<ParamField body="type" type="string">
  Required for the simplified external payload. Must be set to `IMPORT`. (Omit if sending the full internal payload).
</ParamField>

<ParamField body="Shipment" type="object" required>
  General shipment metadata mapping to the physical goods in transit.

  <Expandable title="properties">
    <ParamField body="shipmentNo" type="string" required>
      The unique reference number of the shipment (e.g., Master Bill of Lading, Air Waybill).
    </ParamField>

    <ParamField body="shipmentType" type="string" required>
      The direction of transit. Must be set to `IMPORT` (shortcode for import shipment).
    </ParamField>

    <ParamField body="remarks" type="string">
      Additional remarks or notes for the shipment.
    </ParamField>
  </Expandable>
</ParamField>

<ParamField body="commercialReference" type="string" required>
  Commercial reference identifier (e.g., commercial invoice number).
</ParamField>

<ParamField body="procedureType" type="string" required>
  The standard customs procedure code (shortcode). Commonly used values:

  * `H1` — Release for free circulation
  * `H2` — Storage in customs warehousing
  * `H3` — Temporary admission
  * `H4` — Inward processing
  * `H7` — Release for free circulation (DECO / low-value goods under €150)
  * Other codes: `I1`, `I2`, `B1`–`B4`, `C1`, `C2`, `D1`–`D4`.
</ParamField>

<ParamField body="declarationType" type="string" required>
  The type identifier for the declaration (shortcode). Allowed values:

  * `declarationNonEUGoods` (shortcode `IM`) — Standard import declaration from non-EU countries
  * `declarationEUGoods` (shortcode `CO`) — Import declaration for EU goods
  * `declarationExport` (shortcode `EX`) — Export declaration
</ParamField>

<ParamField body="additionalDeclarationType" type="string" required>
  The type code representing the timing and simplification level of the filing (shortcode). Allowed values:

  * `STANDARD` (code `A`) — Standard declaration
  * `ADVANCE_STANDARD` (code `D`) — Pre-lodged standard declaration
  * `SIMPLIFIED_OCCASIONAL` (code `B`) — Simplified occasional declaration
  * `ADVANCE_SIMPLIFIED_OCCASIONAL` (code `E`) — Pre-lodged simplified occasional declaration
  * `SIMPLIFIED_REGULAR` (code `C`) — Simplified regular declaration
  * `ADVANCE_SIMPLIFIED_REGULAR` (code `F`) — Pre-lodged simplified regular declaration
  * `SUPPLEMENTARY_PERIODIC_REGULAR` (code `Y`) — Supplementary periodic declaration
  * `SUPPLEMENTARY_EIDR` (code `Z`) — Entry in declarant's records supplementary declaration
</ParamField>

<ParamField body="representation" type="string" required>
  The customs representation mode (shortcode). Allowed values:

  * `DirectRepresentation` — The customs broker acts in the name of and on behalf of the importer (broker EORI required)
  * `IndirectRepresentation` — The customs broker acts in their own name but on behalf of the importer
  * `NoRepresentation` — The importer files directly
</ParamField>

<ParamField body="declarationOffice" type="string" required>
  The 8-digit customs office identifier where the declaration is submitted (e.g. `NL000432`).
</ParamField>

<ParamField body="goodsLocationType" type="string" required>
  The type code identifying the location category of the goods. Common shortcodes:

  * `D` — Designated place
  * `A` — Recognized place
  * `B` — Approved place
  * `C` — Competent customs office
</ParamField>

<ParamField body="goodsLocationAddressType" type="string" required>
  The code identifying how the address is specified. Common shortcodes:

  * `T` — Postal address (Address)
  * `U` — UN/LOCODE
  * `V` — Customs office ID
  * `W` — GPS/GNSS coordinates
  * `X` — EORI number
  * `Y` — License/Authorization number
</ParamField>

<ParamField body="goodsLocationAddress" type="object" required>
  Physical location coordinates or postal address where goods are situated.

  <Expandable title="properties">
    <ParamField body="Address" type="object" required>
      Postal address details.

      <Expandable title="properties">
        <ParamField body="houseNo" type="string">House or building number.</ParamField>
        <ParamField body="street" type="string">Street address.</ParamField>
        <ParamField body="city" type="string">City name.</ParamField>
        <ParamField body="countryCode" type="string">ISO 2-digit country code (e.g. `NL`).</ParamField>
        <ParamField body="postCode" type="string">Postal/ZIP code.</ParamField>
      </Expandable>
    </ParamField>
  </Expandable>
</ParamField>

<ParamField body="countryOfDestination" type="string" required>
  ISO 2-digit country code of final destination of the transit goods (e.g. `NL`).
</ParamField>

<ParamField body="arrivalTransportType" type="string">
  Border crossing transport mode shortcode. Allowed values:

  * `1` — Maritime transport (Sea)
  * `4` — Air transport
  * `3` — Road transport
  * `2` — Rail transport
  * `8` — Inland waterway transport
</ParamField>

<ParamField body="arrivalTransportNameType" type="string">
  The code specifying the type of vehicle identifier. Common values:

  * `40` — Flight number
  * `10` — IMO ship identification number
  * `30` — Road vehicle registration number
</ParamField>

<ParamField body="arrivalTransportName" type="string">
  The actual name or number identifying the vessel, flight, or vehicle (e.g., `KL0888`).
</ParamField>

<ParamField body="borderTransportType" type="string">
  Active transport mode crossing the customs border (uses the same transport mode shortcodes as `arrivalTransportType`).
</ParamField>

<ParamField body="invoiceCurrency" type="string" required>
  3-letter ISO code for the commercial invoice currency (e.g. `EUR`).
</ParamField>

<ParamField body="incoterm" type="string" required>
  The Incoterm delivery code (shortcode). Allowed values: `EXW`, `FCA`, `FAS`, `FOB`, `CFR`, `CIF`, `CPT`, `CIP`, `DAP`, `DPU`, `DDP`, `XXX`.
</ParamField>

<ParamField body="incotermLocation" type="string">
  The designated location associated with the Incoterm terms (e.g., `Hoofddorp`).
</ParamField>

<ParamField body="Consignee" type="object" required>
  The business entity importing the goods.

  <Expandable title="properties">
    <ParamField body="name" type="string">Business or contact name.</ParamField>
    <ParamField body="street" type="string">Street address.</ParamField>
    <ParamField body="houseNo" type="string">House or building number.</ParamField>
    <ParamField body="city" type="string">City name.</ParamField>
    <ParamField body="state" type="string">State or province code/name.</ParamField>
    <ParamField body="stateRegion" type="string">State region or department.</ParamField>
    <ParamField body="postcode" type="string">Postal/ZIP code.</ParamField>
    <ParamField body="countryCode" type="string">ISO 2-digit country code.</ParamField>
    <ParamField body="eoriNo" type="string">Economic Operators Registration and Identification (EORI) number.</ParamField>
    <ParamField body="vatNo" type="string">Value Added Tax (VAT) registration number.</ParamField>
    <ParamField body="iossNo" type="string">Import One Stop Shop (IOSS) identification number.</ParamField>
  </Expandable>
</ParamField>

<ParamField body="Consignor" type="object">
  The business entity exporting the goods.

  <Expandable title="properties">
    <ParamField body="name" type="string">Business or contact name.</ParamField>
    <ParamField body="street" type="string">Street address.</ParamField>
    <ParamField body="houseNo" type="string">House or building number.</ParamField>
    <ParamField body="city" type="string">City name.</ParamField>
    <ParamField body="state" type="string">State or province code/name.</ParamField>
    <ParamField body="stateRegion" type="string">State region or department.</ParamField>
    <ParamField body="postcode" type="string">Postal/ZIP code.</ParamField>
    <ParamField body="countryCode" type="string">ISO 2-digit country code.</ParamField>
    <ParamField body="eoriNo" type="string">Economic Operators Registration and Identification (EORI) number.</ParamField>
    <ParamField body="vatNo" type="string">Value Added Tax (VAT) registration number.</ParamField>
    <ParamField body="iossNo" type="string">Import One Stop Shop (IOSS) identification number.</ParamField>
  </Expandable>
</ParamField>

<ParamField body="SupportingDocuments" type="array">
  Header-level attachments or referenced certificates.

  <Expandable title="items">
    <ParamField body="typeCode" type="string" required>The document type code (e.g. `N935` for commercial invoice, `380` for commercial invoice).</ParamField>
    <ParamField body="description" type="string">Document serial number or reference ID.</ParamField>
  </Expandable>
</ParamField>

<ParamField body="AdditionalInformations" type="array">
  Header-level statements or declarations.

  <Expandable title="items">
    <ParamField body="typeCode" type="string" required>Declaration code (e.g. `30600` for low value VAT statement).</ParamField>
    <ParamField body="description" type="string">Additional statement notes.</ParamField>
  </Expandable>
</ParamField>

<ParamField body="DeclarationItems" type="array" required>
  List of items (goods) in the shipment.

  <Expandable title="items">
    <ParamField body="description" type="string" required>A detailed commercial description of the item.</ParamField>
    <ParamField body="commodityCode" type="string" required>8-10 digit Harmonized System (HS) code.</ParamField>
    <ParamField body="quantity" type="number" required>Number of packages/items.</ParamField>
    <ParamField body="grossMass" type="number" required>Gross weight of the item in kilograms.</ParamField>
    <ParamField body="netWeight" type="number" required>Net weight of the item in kilograms.</ParamField>
    <ParamField body="netPrice" type="number" required>Net price/value of the item.</ParamField>
    <ParamField body="currency" type="string" required>Price currency code (e.g. `EUR`).</ParamField>
    <ParamField body="originCountry" type="string" required>ISO 2-digit country of origin of the goods.</ParamField>
    <ParamField body="supplementaryQuantity" type="number">Quantity of supplementary units.</ParamField>
    <ParamField body="supplementaryQuantityUnit" type="string">Supplementary unit code (e.g. `NAR` for number of units, `LTR` for liters).</ParamField>
    <ParamField body="additionalProcedureCodes" type="string">Additional customs procedure exemption code (e.g. `F48` for customs exemption under the Union Customs Code).</ParamField>
    <ParamField body="SupportingDocuments" type="array">Item-level supporting document references.</ParamField>
  </Expandable>
</ParamField>

<CodeGroup>
  ```json Simplified Import theme={null}
  {
    "type": "IMPORT",
    "referenceNumber": "180-43189090",
    "consignee": {
      "name": "EZC B.V.",
      "street": "Hoofdweg 85",
      "city": "Hoofddorp",
      "postCode": "2133 LV",
      "countryCode": "NL",
      "eoriNo": "NL100006139B01"
    },
    "consignor": {
      "name": "Shanghai Textile Co. Ltd",
      "countryCode": "CN",
      "street": "No. 88 Nanjing Road",
      "city": "Shanghai",
      "postCode": "200001"
    },
    "DeclarationItems": [
      {
        "description": "Mens cotton trousers",
        "commodityCode": "6203421100",
        "quantity": 500,
        "grossMass": 250,
        "netWeight": 220,
        "netPrice": 1875,
        "currency": "EUR",
        "originCountry": "CN"
      }
    ],
    "documents": [
      {
        "type": "SupportingDocument",
        "code": "N935",
        "description": "INV-2026-00042"
      }
    ],
    "transport": {
      "mode": "AIR",
      "identifier": "KL0888"
    }
  }
  ```

  ```json Import with Office & Incoterm theme={null}
  {
    "type": "IMPORT",
    "referenceNumber": "180-43189092",
    "declarationOffice": "NL000432",
    "incoterm": "DDP",
    "incotermLocation": "Hoofddorp",
    "goodsLocation": {
      "postCode": "2132 NG",
      "houseNumber": "25",
      "countryCode": "NL"
    },
    "consignee": {
      "name": "EZC B.V.",
      "street": "Hoofdweg 85",
      "city": "Hoofddorp",
      "postCode": "2133 LV",
      "countryCode": "NL",
      "eoriNo": "NL100006139B01"
    },
    "consignor": {
      "name": "Shanghai Textile Co. Ltd",
      "countryCode": "CN"
    },
    "DeclarationItems": [
      {
        "description": "Mens cotton trousers",
        "commodityCode": "6203421100",
        "quantity": 500,
        "grossMass": 250,
        "netWeight": 220,
        "netPrice": 1875,
        "currency": "EUR",
        "originCountry": "CN",
        "supplementaryQuantity": 500,
        "supplementaryQuantityUnit": "NAR"
      }
    ],
    "transport": {
      "mode": "AIR",
      "identifier": "KL0888"
    }
  }
  ```

  ```json Full Payload (Internal Parity) theme={null}
  {
    "Shipment": {
      "shipmentNo": "180-43189999",
      "shipmentType": "IMPORT",
      "remarks": "Created via external API full payload"
    },
    "commercialReference": "INV-2026-07001",
    "procedureType": "H1",
    "declarationType": "declarationNonEUGoods",
    "additionalDeclarationType": "STANDARD",
    "representation": "DirectRepresentation",
    "declarationOffice": "NL000432",
    "goodsLocationType": "D",
    "goodsLocationAddressType": "T",
    "goodsLocationAddress": {
      "Address": {
        "houseNo": "25",
        "street": "Mainstraat",
        "city": "Hoofddorp",
        "countryCode": "NL",
        "postCode": "2132NG"
      }
    },
    "countryOfDestination": "NL",
    "arrivalTransportType": "4",
    "arrivalTransportNameType": "40",
    "arrivalTransportName": "KL0888",
    "borderTransportType": "4",
    "invoiceCurrency": "EUR",
    "incoterm": "DDP",
    "incotermLocation": "Hoofddorp",
    "Consignee": {
      "name": "EZC B.V.",
      "street": "Hoofdweg 85",
      "city": "Hoofddorp",
      "postcode": "2133LV",
      "countryCode": "NL",
      "eoriNo": "NL100006139B01"
    },
    "Consignor": {
      "name": "Shanghai Textile Co. Ltd",
      "city": "Shanghai",
      "countryCode": "CN"
    },
    "SupportingDocuments": [
      {
        "typeCode": "N935",
        "description": "INV-2026-07001"
      }
    ],
    "AdditionalInformations": [
      {
        "typeCode": "30600",
        "description": "Low value goods"
      }
    ],
    "DeclarationItems": [
      {
        "description": "Men's cotton trousers",
        "commodityCode": "6203421100",
        "quantity": 500,
        "grossMass": 250,
        "netWeight": 220,
        "netPrice": 1875,
        "currency": "EUR",
        "originCountry": "CN",
        "supplementaryQuantity": 500,
        "supplementaryQuantityUnit": "NAR",
        "additionalProcedureCodes": "F48",
        "SupportingDocuments": [
          {
            "typeCode": "N935",
            "description": "INV-2026-07001"
          }
        ]
      }
    ]
  }
  ```
</CodeGroup>

<ResponseExample>
  ```json 201 Created theme={null}
  {
    "declarationId": 42,
    "shipmentId": 15,
    "referenceNumber": "INV-2026-07001",
    "status": "processing",
    "lrn": "NL202600001"
  }
  ```

  ```json 400 Bad Request theme={null}
  {
    "statusCode": 400,
    "message": [
      "DeclarationItems.0.commodityCode must be a valid HS code"
    ],
    "error": "Bad Request"
  }
  ```
</ResponseExample>
