Due Diligence Statement (DDS) β V4 API Reference¶
Service: EUDRDueDiligenceStatementServiceV4
Namespace: http://ec.europa.eu/tracesnt/certificate/eudr/due-diligence-statement/v4
Endpoint: /tracesnt/ws/EUDRDueDiligenceStatementServiceV4
Security: WS-Security (UsernameToken over HTTPS)
Overview¶
EUDR Due Diligence Statement (DDS) service for operators pursuant to Regulation. A Due Diligence Statement is submitted by an Information System user prior to placing relevant products on the market or exporting them. The due diligence process comprises three steps: information gathering, risk assessment, and risk mitigation. An operator is any natural or legal person who, in the course of a commercial activity, places relevant products on the market or exports them. The Information System assigns a reference number and a verification number to each submitted DDS.
Operations¶
submitDds¶
Submit a new Due Diligence Statement. The operator or authorised representative submits a DDS prior to placing relevant products on the Union market or exporting them. Accepts optional references for grouping: the voluntary act of creating a new DDS that references previously submitted DDS or SD declarations via their reference numbers. Referenced declarations receive GROUPED status and cannot be individually withdrawn or amended while the referencing grouped declaration is active. Blocked if any referenced statement is not in available status. Role: OPERATOR or REPRESENTATIVE_OPERATOR. Returns the UUID assigned by the Information System.
- Request:
SubmitDdsRequest(Type:SubmitDdsRequestType) - Response:
SubmitDdsResponse(Type:SubmitDdsResponseType) - Faults:
BusinessRulesValidationException,PermissionDeniedException
amendDds¶
Amend an existing Due Diligence Statement within the 72-hour amendment window. The 72-hour window starts when the entry becoming AVAILABLE and allows the operator to amend the declaration while retaining the same reference number. After this window closes, amendments are only allowed if the operatorβs Competent Authority has granted an extension (by request only). Re-triggers risk profiling β the identification of risks of non-compliance based on risk criteria for the purpose of assigning a risk status to the DDS. Blocked if the DDS is not in available status. If the amendment window has elapsed, the request is rejected with a PermissionDeniedException carrying the error EUDR_API_AMEND_DEADLINE_ELAPSED; submit a new DDS instead.
- Request:
AmendDdsRequest(Type:AmendDdsRequestType) - Response:
AmendDdsResponse(Type:DdsModificationResponseType) - Faults:
BusinessRulesValidationException,PermissionDeniedException
withdrawDds¶
Withdraw a Due Diligence Statement within the 72-hour amendment window. Blocked if the DDS has GROUPED status β a lifecycle state assigned when the DDS has been associated with a grouped declaration. Also blocked if the DDS is under active checks by competent authorities.
- Request:
WithdrawDdsRequest(Type:WithdrawDdsRequestType) - Response:
WithdrawDdsResponse(Type:DdsModificationResponseType) - Faults:
BusinessRulesValidationException,PermissionDeniedException
getDds¶
Retrieve DDS overview (status, reference number, and verification number) by providing the UUID assigned by the Information System.
- Request:
GetDdsRequest(Type:GetDdsRequestType) - Response:
GetDdsResponse(Type:DdsOverviewResponseType) - Faults:
NotFoundException
getDdsByInternalReference¶
Retrieve DDS overview (status, reference number, and verification number) by providing the internal reference number assigned by the operator's own system.
- Request:
GetDdsByInternalReferenceRequest(Type:GetDdsByInternalReferenceRequestType) - Response:
GetDdsByInternalReferenceResponse(Type:DdsOverviewResponseType) - Faults:
NotFoundException
getDdsByIdentifiers¶
Discontinued as an API operation. The getDDSByIdentifiers API operation has been discontinued. This feature is now available exclusively through our web application UI and only to the non-SME Downstream Operator or Trader role.
- Request:
GetDdsByIdentifiersRequest(Type:GetDdsByIdentifiersRequestType) - Response:
GetDdsByIdentifiersResponse(Type:GetDdsByIdentifiersResponseType) - Faults:
NotFoundException,PermissionDeniedException
Types¶
SubmitDdsRequestType¶
Submit a new Due Diligence Statement pursuant to Regulation. The DDS documents the three-step due diligence process: information gathering, risk assessment, and risk mitigation. Accepts optional references for grouping β the voluntary act of creating a new DDS that references previously submitted DDS or SD declarations via their reference numbers. Validation is atomic: blocked if any referenced statement has GROUPED status. The Information System assigns a reference number and verification number upon successful submission.
| Field | Type | Required | Description |
|---|---|---|---|
operatorRole |
OperatorRoleType |
Yes | β |
statement |
DueDiligenceStatementBaseType |
Yes | β |
SubmitDdsResponseType¶
Response containing the UUID assigned by the Information System to the submitted DDS.
| Field | Type | Required | Description |
|---|---|---|---|
uuid |
UuidType |
Yes | β |
AmendDdsRequestType¶
Amend an existing DDS within the 72-hour amendment window. The operator may amend the declaration while retaining the same reference number. After this window closes, amendments are only allowed if the operatorβs Competent Authority has granted an extension (by request only). Blocked if the DDS is not in available status. Grouped declarations cannot be added, modified or removed on amend: submitting a statement that contains groupedDeclarations is rejected with the EUDR-GROUPING-NOT-ALLOWED-ON-AMEND error. Grouping can only be set on the initial submission. Re-triggers risk profiling.
| Field | Type | Required | Description |
|---|---|---|---|
uuid |
UuidType |
Yes | β |
statement |
DueDiligenceStatementBaseType |
Yes | β |
WithdrawDdsRequestType¶
Withdraw a DDS within the 72-hour amendment window. Blocked if the DDS is not in available status β a lifecycle state assigned when associated to a grouped declaration.
| Field | Type | Required | Description |
|---|---|---|---|
uuid |
UuidType |
Yes | β |
DdsModificationResponseType¶
Response for amend/withdraw operations, containing the resulting DDS lifecycle status.
| Field | Type | Required | Description |
|---|---|---|---|
uuid |
UuidType |
Yes | β |
status |
EudrStatusType |
Yes | β |
GetDdsRequestType¶
Request to retrieve DDS overview by one or more UUIDs assigned by the Information System.
| Field | Type | Required | Description |
|---|---|---|---|
uuidList |
UuidType |
Yes | β |
GetDdsByInternalReferenceRequestType¶
Request to retrieve DDS overview from the operator-assigned internal reference number.
| Field | Type | Required | Description |
|---|---|---|---|
internalReference |
InternalReferenceNumberType |
Yes | β |
DdsOverviewResponseType¶
Response containing DDS overview information: UUID, internal reference, reference number, verification number, lifecycle status, and optional rejection reason or communication from competent authority.
| Field | Type | Required | Description |
|---|---|---|---|
ddsOverviewList |
OverviewType |
No | β |
GetDdsByIdentifiersRequestType¶
Retrieving full DDS content over the API is no longer supported. Statement detail access is possible only over the UI. This type is retained in the schema only to preserve API contract compatibility.
| Field | Type | Required | Description |
|---|---|---|---|
referenceAndVerificationNumber |
ReferenceAndVerificationNumberType |
Yes | β |
GetDdsByIdentifiersResponseType¶
Response type retained only for binding compatibility. It is never populated: retrieving DDS content over the API is no longer supported and the operation always returns a NotFoundException. Detail retrieval is available only over the UI.
| Field | Type | Required | Description |
|---|---|---|---|
statement |
DueDiligenceStatementBaseType |
Yes | β |
DueDiligenceStatementBaseType¶
Core payload of a Due Diligence Statement. Contains the information of product details, operator identification, geolocation of production plots, and country of production. Relevant commodities: cattle, cocoa, coffee, oil palm, rubber, soya and wood. Relevant products: products listed in Annex I that contain, have been fed with or have been made using relevant commodities. Products must be deforestation-free: produced on land not deforested after 31 Dec 2020; for wood, harvested without inducing forest degradation after 31 Dec 2020.
| Field | Type | Required | Description |
|---|---|---|---|
internalReferenceNumber |
InternalReferenceNumberType |
No | Internal reference in the operator's own system. If not provided, generated by the Information System. |
activityType |
ActivityType |
Yes | The type of commercial activity: IMPORT (release for free circulation), EXPORT, or DOMESTIC (placing on the market). |
representedOperator |
EconomicOperatorIdentificationType |
No | The represented operator on whose behalf the authorised representative is acting. Required when operatorRole is REPRESENTATIVE_OPERATOR. Contains operatorReferenceNumber, address, email, name and phone. |
countryOfActivity |
EuropeanCountryType |
No | EU Member State where the economic activity takes place. |
borderCrossCountry |
EuropeanCountryType |
No | Country of entry (for IMPORT activity) or country of exit (for EXPORT activity) at the customs territory border. |
comment |
EditorialCommentType |
No | Editorial comment for the competent authority. |
commodities |
DdsCommodityType |
Yes | Relevant commodities and products declared in this DDS. Each commodity includes HS code, commercial description, quantity, producer geolocation, and country of production. |
geoLocationConfidential |
boolean |
Yes | If TRUE, geolocation data is confidential and not disclosed down the supply chain. If FALSE, geolocation data can be disclosed to downstream operators and traders. |
groupedDeclarations |
GroupedDeclarationsType |
No | List of previously submitted DDS or SD declarations referenced by this statement for grouping. Each reference includes a reference number and verification number. Referenced declarations receive GROUPED status. |
DdsCommodityType¶
A commodity entry in the DDS, representing a relevant commodity or relevant product. Includes HS code classification, commercial description, species information (for wood), and producer geolocation data.
| Field | Type | Required | Description |
|---|---|---|---|
position |
long |
No | Ordinal position of this commodity within the DDS. |
descriptors |
CommercialDescriptionType |
Yes | Commercial description and quantity measures for this commodity. |
hsHeading |
HSHeadingType |
Yes | Commodity code from the Harmonized Commodity Description and Coding System (HS). 2 to 10 digit code identifying the product category. |
speciesInfo |
SpeciesInformationType |
No | Species information required for wood-based products to support verification that harvesting did not induce forest degradation. |
producers |
DdsProducerType |
No | Producers of this commodity with geolocation of the plot of land where the commodity was produced. Geolocation must be expressed as lat/long coordinates with 6 decimal digits minimum; polygons required for plots greater than 4 hectares (except cattle). |
DdsProducerType¶
Producer information including country of production and geolocation of the plot of land where the commodity was produced. Geolocation is provided as GeoJSON geometry (base64 encoded): lat/long coordinates with minimum 6 decimal digits; polygons for plots greater than 4 hectares (except cattle where establishment coordinates suffice).
| Field | Type | Required | Description |
|---|---|---|---|
position |
long |
No | Ordinal position of this producer within the commodity. |
country |
CountryType |
Yes | Country of production: the country where the relevant commodity was produced. ISO 3166-1 alpha-2 code. |
name |
string (max 500) |
No | Name of the producer (natural or legal person). |
geometryGeojson |
base64Binary |
No | GeoJSON geometry (base64 encoded) representing the geolocation of the plot of land. Must contain lat/long coordinates with minimum 6 decimal digits. Polygons required for plots greater than 4 hectares (except cattle where point coordinates for the establishment suffice). Supported geometry types: Point, MultiPoint, Polygon, MultiPolygon, GeometryCollection. When geoLocationConfidential is true, this element is omitted. |
geometryData |
string |
No | Information message about geolocation. When geoLocationConfidential is true, this element contains a message indicating that geolocation data is confidential and not disclosed. |
SpeciesInformationType¶
| Field | Type | Required | Description |
|---|---|---|---|
scientificName |
ScientificNameType |
No | The scientific name is string not case sensitive. |
commonName |
ScientificNameType |
No | The common name is string not case sensitive. |
OperatorRoleType¶
Roles permitted for DDS submission. OPERATOR: any natural or legal person who, in the course of a commercial activity, places relevant products on the market or exports them, excluding downstream operators. REPRESENTATIVE_OPERATOR: an authorised representative β any natural or legal person established in the Union who has received a written mandate from an operator to act on its behalf in relation to specified tasks with regard to the operator's obligations under Regulation.
| Value | Description |
|---|---|
OPERATOR |
Operator: places relevant products on the market or exports them |
REPRESENTATIVE_OPERATOR |
Authorised representative: acts on behalf of an operator under written mandate |
Constraints: Base: string
ScientificNameType¶
Used to specify the scientific (or common) name (Box 6).
Constraints: Base: string, Max length: 200, Min length: 1
Common Types¶
SummaryAddressType¶
| Field | Type | Required | Description |
|---|---|---|---|
name |
string (max 200) |
No | β |
country |
CountryType |
No | β |
AddressType¶
| Field | Type | Required | Description |
|---|---|---|---|
country |
CountryType |
Yes | β |
street |
StreetAndNumberType |
Yes | β |
postalCode |
PostalCodeType |
Yes | β |
city |
CityType |
Yes | β |
fullAddress |
NonStructuredAddressType |
No | β |
EconomicOperatorIdentificationType¶
| Field | Type | Required | Description |
|---|---|---|---|
operatorReferenceNumber |
EconomicOperatorReferenceNumberType |
No | β |
operatorAddress |
AddressType |
No | β |
summaryAddress |
SummaryAddressType |
No | β |
operatorEmail |
EmailType |
No | β |
operatorPhone |
PhoneType |
No | β |
operatorName |
string (max 200) |
Yes | β |
EconomicOperatorReferenceNumberType¶
| Field | Type | Required | Description |
|---|---|---|---|
identifierType |
IdentifierTypeType |
Yes | β |
identifierValue |
IdentifierValueType |
Yes | β |
GroupedDeclarationsType¶
| Field | Type | Required | Description |
|---|---|---|---|
groupedDeclaration |
ReferenceNumberType |
Yes | β |
ReferenceAndVerificationNumberType¶
| Field | Type | Required | Description |
|---|---|---|---|
referenceNumber |
ReferenceNumberType |
Yes | β |
verificationNumber |
VerificationNumberType |
Yes | β |
OverviewType¶
| Field | Type | Required | Description |
|---|---|---|---|
uuid |
UuidType |
Yes | β |
internalReferenceNumber |
InternalReferenceNumberType |
Yes | β |
referenceNumber |
ReferenceNumberType |
No | β |
referenceNumberInfo |
string |
No | Human-readable status message about the reference number, populated in every lifecycle state: - Under system analysis: while the automated risk analysis has not concluded and no reference number is assigned yet. - Under Competent Authority review (Article 17): when the submission was profiled as high risk and is pending manual review. - Assigned (status AVAILABLE): once the reference number is released; the actual value is returned in the referenceNumber element and this field carries the accompanying informational text (DDS or SD variant). Optional and non-structured; intended for display alongside referenceNumber. Backwards compatible (minOccurs=0). |
verificationNumber |
VerificationNumberType |
No | β |
status |
EudrStatusType |
Yes | β |
rejectionReason |
RejectionReasonType |
No | β |
communicationToOperator |
CommunicationToOperatorType |
No | β |
date |
dateTime |
No | β |
updatedBy |
UpdatedByType |
No | β |
version |
integer |
No | β |
CommunicationToOperatorType¶
Communication sent by CA to Operator
| Field | Type | Required | Description |
|---|---|---|---|
date |
dateTime |
Yes | Creation or amend/update date. |
content |
string (max 1000) |
Yes | Message content. |
CommercialDescriptionType¶
This type allows you to express one single commercial description and associate it with individual quantitative metrics.
| Field | Type | Required | Description |
|---|---|---|---|
descriptionOfGoods |
string (max 150) |
Yes | Single commercial description. |
goodsMeasure |
GoodsMeasureType |
Yes | Units of measurement combinations for the declared commodity |
GoodsMeasureType¶
For Import or Export activities, providing the Net Mass in kg is mandatory. For Domestic activities, at least one measurement unit must be provided: Net Mass in kg or Supplementary Units. When a supplementary unit quantity is used, the corresponding supplementary unit type, e.g. m3, must also be selected.
| Field | Type | Required | Description |
|---|---|---|---|
percentageEstimationOrDeviation |
DecimalThreePrecType |
No | Percentage estimate or deviation |
netWeight |
DecimalSixteenTotalSixPrecType |
No | The weight must be provided in Kg. |
supplementaryUnit |
DecimalSixteenTotalSixPrecType |
No | The number of units, when a manufactured product is quantified in this way. |
supplementaryUnitQualifier |
SupplementaryUnitQualifierType |
No | This field must be provided if the value is provided in supplementaryUnit field. It represents the type of the numberofUnits field. |
EudrStatusType¶
Universal lifecycle status for EUDR documents
| Value | Description |
|---|---|
SUBMITTED |
β |
AVAILABLE |
β |
REJECTED |
β |
WITHDRAWN |
β |
CANCELLED |
Declaration cancelled by the operator before availability |
ARCHIVED |
β |
SUSPENDED |
Not active in current release |
UPDATED |
Not active in current release |
GROUPED |
β |
OBSOLETE |
β |
Constraints: Base: string
ReferenceNumberType¶
Constraints: Base: string, Max length: 14
InternalReferenceNumberType¶
Constraints: Base: string, Max length: 50
CountryType¶
ISO 3166-1 alpha-2 codes
Constraints: Base: string, Pattern: [a-zA-Z]{2}
StreetAndNumberType¶
Constraints: Base: string, Max length: 300, Min length: 1
NonStructuredAddressType¶
Constraints: Base: string, Max length: 250, Min length: 1
UuidType¶
Universally unique identifier (UUID).
Constraints: Base: string, Pattern: [0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}
VerificationNumberType¶
Verification number
Constraints: Base: string, Max length: 35, Min length: 5
ActivityType¶
| Value | Description |
|---|---|
DOMESTIC |
β |
IMPORT |
β |
EXPORT |
β |
Constraints: Base: string
PostalCodeType¶
Constraints: Base: string, Max length: 80, Min length: 1
CityType¶
Constraints: Base: string, Max length: 200, Min length: 1
EmailType¶
Constraints: Base: string, Pattern: [a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}, Max length: 200
PhoneType¶
Constraints: Base: string, Max length: 50
EditorialCommentType¶
A version of a SD may have an editorial comment associated to it, with an explanation for the CA (Box 5)
Constraints: Base: string, Max length: 2000
UpdatedByType¶
Constraints: Base: string, Max length: 200, Min length: 1
RejectionReasonType¶
Rejection reason of the DDS
Constraints: Base: string, Max length: 1000, Min length: 0
IdentifierTypeType¶
| Value | Description |
|---|---|
eori |
Economic Operators Registration and Identification number (EORI) |
vat |
VAT identification number (VATIN) |
gln |
Global location number |
tin |
Tax Identification Number (TIN) |
cbr |
Central Business Register (CBR) |
cin |
Company Identification Number (CIN) |
duns |
The nine-digit D-U-N-S Number (DUNS) |
comp_num |
National company number (NCN) |
comp_reg |
Registration number in official national company register (NCR) |
oni |
Other National Identifier (ONI) |
Constraints: Base: string
IdentifierValueType¶
Constraints: Base: string, Max length: 80
SupplementaryUnitQualifierType¶
Constraints: Base: string, Max length: 4, Min length: 3
DecimalThreePrecType¶
Decimal type with precision three
Constraints: Base: decimal
DecimalSixteenTotalSixPrecType¶
Decimal number with a total of 16 and 6 fraction digits
Constraints: Base: decimal
HSHeadingType¶
Commodity code from the Harmonized Commodity Description and Coding System
Constraints: Base: string, Pattern: [0-9]{2,10}, Max length: 10, Min length: 2
EuropeanCountryType¶
| Value | Description |
|---|---|
AT |
Austria |
BE |
Belgium |
BG |
Bulgaria |
CY |
Cyprus |
CZ |
Czech Republic |
DE |
Germany |
DK |
Denmark |
EE |
Estonia |
ES |
Spain |
FI |
Finland |
FR |
France |
GR |
Greece |
HR |
Croatia |
HU |
Hungary |
IE |
Ireland |
IT |
Italy |
LT |
Lithuania |
LU |
Luxembourg |
LV |
Latvia |
MT |
Malta |
NL |
Netherlands |
PL |
Poland |
PT |
Portugal |
RO |
Romania |
SE |
Sweden |
SI |
Slovenia |
SK |
Slovakia (Slovak Republic) |
XI |
United Kingdom (Northern Ireland) |
Constraints: Base: string