Skip to content

DDS Migration: V1 to V3

Detailed field-by-field mapping

For a complete field-level mapping, see DDS Field-Level Mapping V1→V3.

V1 Submission: EUDRSubmissionServiceV1/tracesnt/ws/EUDRSubmissionServiceV1 V1 Retrieval: EUDRRetrievalServiceV1/tracesnt/ws/EUDRRetrievalServiceV1 V3 (unified): EUDRDueDiligenceStatementServiceV3/tracesnt/ws/EUDRDueDiligenceStatementServiceV3

Key change: V3 consolidates submission and retrieval into a single service.

Namespace change: http://ec.europa.eu/tracesnt/certificate/eudr/submission/v1http://ec.europa.eu/tracesnt/certificate/eudr/due-diligence-statement/v3 http://ec.europa.eu/tracesnt/certificate/eudr/retrieval/v1 → merged into the above http://ec.europa.eu/tracesnt/certificate/eudr/model/v1http://ec.europa.eu/tracesnt/certificate/eudr/common/v3 (shared types)


Operation changes

V1 Service V1 Operation V3 Operation Change
Submission submitDds submitDds Request/response types renamed; operatorRole replaces operatorType
Submission amendDds amendDds Request/response types renamed
Submission retractDds withdrawDds Renamed from retract to withdraw
Retrieval getDdsInfo getDds Renamed; moved to DDS service
Retrieval getDdsInfoByInternalReferenceNumber getDdsByInternalReference Renamed; moved to DDS service
Retrieval getStatementByIdentifiers getDdsByIdentifiers Renamed; moved to DDS service

Request/Response type changes

Submission operations

V1 V3 Notes
SubmitStatementRequest SubmitDdsRequest Renamed; adds operatorRole replacing operatorType; values reduced to OPERATOR / REPRESENTATIVE_OPERATOR
SubmitStatementResponse SubmitDdsResponse Field renamed: ddsIdentifieruuid
AmendStatementRequest AmendDdsRequest Field renamed: ddsIdentifieruuid
AmendStatementResponse AmendDdsResponse Now returns uuid and status (lifecycle status, e.g. AVAILABLE) instead of HTTP status string
RetractStatementRequest WithdrawDdsRequest Operation + type renamed; field ddsIdentifieruuid
RetractStatementResponse WithdrawDdsResponse Now returns uuid and status (lifecycle status, e.g. WITHDRAWN) instead of HTTP status string

Retrieval operations (new in V3 DDS service)

V1 V3 Notes
GetStatementInfoRequest GetDdsRequest Renamed; accepts up to 100 UUIDs
GetStatementInfoResponse GetDdsResponse Renamed; uses OverviewType from common XSD
GetDdsInfoByInternalReferenceNumberRequest GetDdsByInternalReferenceRequest Renamed
GetDdsInfoByInternalReferenceNumberResponse GetDdsByInternalReferenceResponse Renamed
GetStatementByIdentifiersRequest GetDdsByIdentifiersRequest Renamed
GetStatementByIdentifiersResponse GetDdsByIdentifiersResponse Renamed

Fault changes

V1 V3 Notes
DdsPermissionDeniedException PermissionDeniedException Renamed (generic)
BusinessRulesValidationException BusinessRulesValidationException Unchanged
NotFoundException New — used by getDds, getDdsByInternalReference, getDdsByIdentifiers

Data model changes

Change Details
operatorTypeoperatorRole Field renamed; values reduced to OPERATOR / REPRESENTATIVE_OPERATOR (TRADER roles removed)
ddsIdentifieruuid Identifier field renamed across all request types
nameAndAddressoperatorAddress + operatorName V1 combined name+address split into structured fields
volume removed from GoodsMeasure Use netWeight or supplementaryUnit instead
netWeight type changed From DecimalThreePrecType to DecimalSixteenTotalSixPrecType (16 total, 6 fraction)
supplementaryUnit type changed From nonNegativeInteger to DecimalSixteenTotalSixPrecType
supplementaryUnitQualifier type changed From fixed enum (60+ values) to free-text string (3-4 chars)
percentageEstimationOrDeviation added New field in GoodsMeasure
ScientificNameType max length Increased from 100 to 200
speciesInfo moved Now in DDS-specific namespace
Operator identifier types reduced Only eori, vat, gln, tin remain (8 types removed)
operatorName added New mandatory field (was inside address in V1)
TRADE activity type removed Traders no longer submit DDS
associatedStatementsgroupedDeclarations Renamed; now uses GroupedDeclarationsType with groupedDeclaration reference numbers (max 2000)
Common model introduced V3 uses shared eudr-common.xsd types
Retrieval merged into DDS service No separate retrieval service
GROUPED, OBSOLETE, SUSPENDED, UPDATED, DRAFT statuses New in V3
CANCELLED status removed Removed from external enumeration

Status values

V1 Value V3 Value Change
AVAILABLE AVAILABLE Unchanged
SUBMITTED SUBMITTED Unchanged
REJECTED REJECTED Unchanged
CANCELLED Removed
WITHDRAWN WITHDRAWN Unchanged
ARCHIVED ARCHIVED Unchanged
DRAFT New
SUSPENDED New — not active in current release
UPDATED New — not active in current release
GROUPED New — grouped declaration status
OBSOLETE New — superseded declaration

Error codes (Retrieval)

Error Code Description
EUDR_NUMBER_EMPTY Reference or verification number is null/empty
EUDR_NUMBER_INVALID Contains prohibited characters
EUDR_NUMBER_TOO_LONG Exceeds maximum allowed length
EUDR_WEBSERVICE_STATEMENT_NOT_FOUND DDS not found or not in AVAILABLE/ARCHIVED status
Back to top