Submit EUDR DDS to EU TRACES¶
The /submit_eudr_dds endpoint submits an EUDR Due Diligence Statement (DDS) to the EU TRACES EUDR SOAP API.
This endpoint is typically used after you have processed one or more collections via the Batch APIs and want to submit the resulting geolocations + statement metadata to TRACES.
Endpoint¶
What it does¶
- Collects (or accepts) the GeoJSON geolocation payload for submission
- Formats the DDS payload according to the TRACES EUDR SOAP schema
- Submits the statement to TRACES
- Stores the returned identifiers for later retrieval
Inputs¶
You can provide the submission payload in either of these ways:
- Submit from collections (recommended)
- Provide
collectionsand let the API fetch the required staged EUDR payload + geolocations - Submit with an explicit GeoJSON
- Provide
geojson_file(upload) orgeojson_base64(base64 string) - Provide the required statement fields via query params (operator/product/etc.)
Parameters¶
Query parameters¶
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
collections |
list[str] | No* | None | List of collection IDs to combine in the DDS submission |
internal_reference_number |
str | No | None | Internal reference number for the statement (e.g. DLE20/357) |
activity_type |
str | No | DOMESTIC |
Activity type: DOMESTIC or BORDER_CROSS |
operator_role |
str | No | REPRESENTATIVE_OPERATOR |
Must match the role assigned to your TRACES NT account (OPERATOR, TRADER, REPRESENTATIVE_OPERATOR, REPRESENTATIVE_TRADER) |
operator_name |
str | No** | None | Operator name (overrides staged value if provided) |
operator_address |
str | No** | None | Operator address (overrides staged value if provided) |
operator_email |
str | No** | None | Operator email (overrides staged value if provided) |
operator_country |
str | No** | None | Operator country code (overrides staged value if provided) |
operator_eori |
str | No** | None | Operator identifier value (EORI, VAT, etc.) (overrides staged value if provided) |
operator_identifier_type |
str | No | eori |
Operator identifier type (eori, vat, cin, duns, comp_reg, comp_num, cbr, ship_man_comp_imo, ship_reg_owner_imo, remos, gln, tin) |
operator_phone |
str | No** | None | Operator phone number (overrides staged value if provided) |
product_type |
str | No** | None | Product type (overrides staged value if provided) |
product_quantity |
float | No** | None | Product quantity (overrides staged value if provided) |
product_description |
str | No | None | Product description (overrides staged value if provided) |
hs_code |
str | No** | None | HS code (overrides staged value if provided) |
production_country |
str | No** | None | Production country code (overrides staged value if provided) |
species_common_name |
str | No | None | Species common name (wood products) |
species_scientific_name |
str | No | None | Species scientific name (wood products) |
supplier_name |
str | No** | None | Supplier name (overrides staged value if provided) |
comment |
str | No | None | Optional comment |
geo_location_confidential |
bool | No | None | Whether geo location is confidential |
associated_statements |
str | No | None | JSON array of associated statements ([{"referenceNumber":"...","verificationNumber":"..."}, ...]) |
* If you don’t provide collections, you must provide a GeoJSON payload and all required statement fields.
** Required when submitting directly (i.e., when collections is not provided and values can’t be sourced from staged collection data).
Form / file inputs¶
| Parameter | Type | Required | Description |
|---|---|---|---|
geojson_file |
file | No* | Upload a GeoJSON file for submission |
geojson_base64 |
str | No* | Base64-encoded GeoJSON string for submission |
* Provide either geojson_file or geojson_base64 if you are not submitting from collections.
Response¶
Returns JSON including the identifiers returned by TRACES (reference + verification numbers) and submission metadata.
Notes / constraints¶
- Payload size limit: the TRACES SOAP submission has a 25 MB limit for the GeoJSON payload; the endpoint validates this.
- Environment: the implementation defaults to the TRACES acceptance WSDL.
Related endpoints¶
/export_eudr_dds: generate the TRACES-ready GeoJSON + PDF audit trail as a ZIP/retrieve_eudr_dds: retrieve DDS status/info from TRACES and optionally update stored values