Skip to content

SD Sample XML Requests & Responses (V3)

Sample SOAP requests and responses for the EUDRSimplifiedDeclarationServiceV3.

Note

Replace {{wsse_*}} placeholders with your WS-Security credentials.

Environment Endpoint
Production https://eudr.webcloud.ec.europa.eu/tracesnt/ws/EUDRSimplifiedDeclarationServiceV3
Acceptance https://acceptance.eudr.webcloud.ec.europa.eu/tracesnt/ws/EUDRSimplifiedDeclarationServiceV3

submitSd

Request

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
                  xmlns:v4="http://ec.europa.eu/sanco/tracesnt/base/v4"
                  xmlns:sd="http://ec.europa.eu/tracesnt/certificate/eudr/simplified-declaration/v3"
                  xmlns:eudrCommon="http://ec.europa.eu/tracesnt/certificate/eudr/common/v3">
    <soapenv:Header>
        <wsse:Security xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd"
                       xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
            <wsu:Timestamp wsu:Id="TS-1">
                <wsu:Created>{{wsse_created}}</wsu:Created>
                <wsu:Expires>{{wsse_expires}}</wsu:Expires>
            </wsu:Timestamp>
            <wsse:UsernameToken wsu:Id="UT-1">
                <wsse:Username>{{wsse_username}}</wsse:Username>
                <wsse:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordDigest">{{wsse_passwordDigest}}</wsse:Password>
                <wsse:Nonce EncodingType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#Base64Binary">{{wsse_nonce}}</wsse:Nonce>
                <wsu:Created>{{wsse_created}}</wsu:Created>
            </wsse:UsernameToken>
        </wsse:Security>
        <v4:WebServiceClientId>YOUR_CLIENT_ID</v4:WebServiceClientId>
    </soapenv:Header>
    <soapenv:Body>
        <sd:SubmitSdRequest>
            <sd:operatorRole>MICRO_OPERATOR</sd:operatorRole>
            <sd:statement>
                <sd:internalReferenceNumber></sd:internalReferenceNumber>
                <sd:activityType>IMPORT</sd:activityType>
                <sd:countryOfActivity>BE</sd:countryOfActivity>
                <sd:borderCrossCountry>BE</sd:borderCrossCountry>
                <sd:commodities>
                    <sd:position>1</sd:position>
                    <sd:descriptors>
                        <eudrCommon:descriptionOfGoods>Test cocoa product</eudrCommon:descriptionOfGoods>
                        <eudrCommon:goodsMeasure>
                            <eudrCommon:netWeight>200</eudrCommon:netWeight>
                            <eudrCommon:supplementaryUnit>20</eudrCommon:supplementaryUnit>
                            <eudrCommon:supplementaryUnitQualifier>MTQ</eudrCommon:supplementaryUnitQualifier>
                        </eudrCommon:goodsMeasure>
                    </sd:descriptors>
                    <sd:hsHeading>4410</sd:hsHeading>
                    <!-- Producer with GeoJSON location -->
                    <sd:producers>
                        <sd:producerPosition>1</sd:producerPosition>
                        <sd:producerCountry>BE</sd:producerCountry>
                        <sd:producerName>Producer with geojson</sd:producerName>
                        <sd:producerLocation>
                            <sd:geometryGeojson>BASE64_ENCODED_GEOJSON</sd:geometryGeojson>
                        </sd:producerLocation>
                    </sd:producers>
                    <!-- Producer with postal address location -->
                    <sd:producers>
                        <sd:producerPosition>2</sd:producerPosition>
                        <sd:producerCountry>BE</sd:producerCountry>
                        <sd:producerName>Producer with address</sd:producerName>
                        <sd:producerLocation>
                            <sd:postalAddress>
                                <sd:producerStreet>Rue De Geneve 4</sd:producerStreet>
                                <sd:producerPostalCode>1140</sd:producerPostalCode>
                                <sd:producerCity>Brussels</sd:producerCity>
                            </sd:postalAddress>
                        </sd:producerLocation>
                    </sd:producers>
                    <!-- Producer with cadastral identifier -->
                    <sd:producers>
                        <sd:producerPosition>3</sd:producerPosition>
                        <sd:producerCountry>BE</sd:producerCountry>
                        <sd:producerName>Producer with cadastral</sd:producerName>
                        <sd:producerLocation>
                            <sd:cadastralIdentifier>BE-BRU-2024-PARCEL-001</sd:cadastralIdentifier>
                        </sd:producerLocation>
                    </sd:producers>
                </sd:commodities>
                <sd:geoLocationConfidential>false</sd:geoLocationConfidential>
            </sd:statement>
        </sd:SubmitSdRequest>
    </soapenv:Body>
</soapenv:Envelope>

Response

<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
    <S:Header>
        <ns2:Security xmlns:ns1="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"
                      xmlns:ns2="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">
            <ns1:Timestamp>
                <ns1:Created>2026-05-20T12:17:41.575+02:00</ns1:Created>
                <ns1:Expires>2026-05-20T12:17:46.576+02:00</ns1:Expires>
            </ns1:Timestamp>
        </ns2:Security>
    </S:Header>
    <S:Body>
        <ns5:SubmitSdResponse xmlns:ns5="http://ec.europa.eu/tracesnt/certificate/eudr/simplified-declaration/v3">
            <ns5:sdIdentifier>e3b3206d-6625-47a0-b2ef-b8a7b9da1217</ns5:sdIdentifier>
        </ns5:SubmitSdResponse>
    </S:Body>
</S:Envelope>

submitSd (with Grouped Declarations)

Submit an SD that references previously submitted simplified declarations for grouping.

Request

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
                  xmlns:v4="http://ec.europa.eu/sanco/tracesnt/base/v4"
                  xmlns:sd="http://ec.europa.eu/tracesnt/certificate/eudr/simplified-declaration/v3"
                  xmlns:eudrCommon="http://ec.europa.eu/tracesnt/certificate/eudr/common/v3">
    <!-- SOAP Header with WS-Security (same as submitSd) -->
    <soapenv:Body>
        <sd:SubmitSdRequest>
            <sd:operatorRole>MICRO_OPERATOR</sd:operatorRole>
            <sd:statement>
                <sd:internalReferenceNumber>GROUPED-REF-001</sd:internalReferenceNumber>
                <sd:activityType>IMPORT</sd:activityType>
                <sd:countryOfActivity>BE</sd:countryOfActivity>
                <sd:borderCrossCountry>BE</sd:borderCrossCountry>
                <sd:commodities>
                    <sd:position>1</sd:position>
                    <sd:descriptors>
                        <eudrCommon:descriptionOfGoods>Grouped cocoa product</eudrCommon:descriptionOfGoods>
                        <eudrCommon:goodsMeasure>
                            <eudrCommon:netWeight>5000</eudrCommon:netWeight>
                        </eudrCommon:goodsMeasure>
                    </sd:descriptors>
                    <sd:hsHeading>4410</sd:hsHeading>
                    <sd:producers>
                        <sd:producerPosition>1</sd:producerPosition>
                        <sd:producerCountry>BE</sd:producerCountry>
                        <sd:producerName>Producer with geojson</sd:producerName>
                        <sd:producerLocation>
                            <sd:geometryGeojson>BASE64_ENCODED_GEOJSON</sd:geometryGeojson>
                        </sd:producerLocation>
                    </sd:producers>
                </sd:commodities>
                <sd:geoLocationConfidential>false</sd:geoLocationConfidential>
                <!-- Grouped declarations: references to previously submitted SD -->
                <sd:groupedDeclarations>
                    <eudrCommon:groupedDeclaration>S26BECB39D2GRX</eudrCommon:groupedDeclaration>
                </sd:groupedDeclarations>
                <sd:groupedDeclarations>
                    <eudrCommon:groupedDeclaration>S26BELSCV861ZVV</eudrCommon:groupedDeclaration>
                </sd:groupedDeclarations>
            </sd:statement>
        </sd:SubmitSdRequest>
    </soapenv:Body>
</soapenv:Envelope>

Grouped declarations behaviour

Only SD references are accepted; DDS references are rejected. Referenced declarations receive GROUPED status and cannot be individually withdrawn or updated while the referencing grouped declaration is active. Submission is blocked if any referenced statement is not in AVAILABLE status.


updateSd

Request

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
                  xmlns:v4="http://ec.europa.eu/sanco/tracesnt/base/v4"
                  xmlns:sd="http://ec.europa.eu/tracesnt/certificate/eudr/simplified-declaration/v3"
                  xmlns:eudrCommon="http://ec.europa.eu/tracesnt/certificate/eudr/common/v3">
    <!-- SOAP Header with WS-Security (same as submitSd) -->
    <soapenv:Body>
        <sd:UpdateSdRequest>
            <sd:sdIdentifier>e3b3206d-6625-47a0-b2ef-b8a7b9da1217</sd:sdIdentifier>
            <sd:statement>
                <sd:internalReferenceNumber>26BEDWNW9JD1TN</sd:internalReferenceNumber>
                <sd:activityType>IMPORT</sd:activityType>
                <sd:countryOfActivity>BE</sd:countryOfActivity>
                <sd:borderCrossCountry>BE</sd:borderCrossCountry>
                <sd:commodities>
                    <sd:position>1</sd:position>
                    <sd:descriptors>
                        <eudrCommon:descriptionOfGoods>Test cocoa product amended</eudrCommon:descriptionOfGoods>
                        <eudrCommon:goodsMeasure>
                            <eudrCommon:netWeight>300</eudrCommon:netWeight>
                            <eudrCommon:supplementaryUnit>30</eudrCommon:supplementaryUnit>
                            <eudrCommon:supplementaryUnitQualifier>MTQ</eudrCommon:supplementaryUnitQualifier>
                        </eudrCommon:goodsMeasure>
                    </sd:descriptors>
                    <sd:hsHeading>4410</sd:hsHeading>
                    <sd:producers>
                        <sd:producerPosition>1</sd:producerPosition>
                        <sd:producerCountry>BE</sd:producerCountry>
                        <sd:producerName>Producer Name amended</sd:producerName>
                        <sd:producerLocation>
                            <sd:geometryGeojson>BASE64_ENCODED_GEOJSON</sd:geometryGeojson>
                        </sd:producerLocation>
                    </sd:producers>
                </sd:commodities>
                <sd:geoLocationConfidential>false</sd:geoLocationConfidential>
            </sd:statement>
        </sd:UpdateSdRequest>
    </soapenv:Body>
</soapenv:Envelope>

Response

<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
    <!-- Response Header (same structure as submitSd response) -->
    <S:Body>
        <ns5:UpdateSdResponse xmlns:ns5="http://ec.europa.eu/tracesnt/certificate/eudr/simplified-declaration/v3"
                              xmlns:ns3="http://ec.europa.eu/tracesnt/certificate/eudr/common/v3">
            <ns5:uuid>e3b3206d-6625-47a0-b2ef-b8a7b9da1217</ns5:uuid>
            <ns5:version>2</ns5:version>
            <ns5:status>AVAILABLE</ns5:status>
        </ns5:UpdateSdResponse>
    </S:Body>
</S:Envelope>

withdrawSd

Request

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
                  xmlns:v4="http://ec.europa.eu/sanco/tracesnt/base/v4"
                  xmlns:sd="http://ec.europa.eu/tracesnt/certificate/eudr/simplified-declaration/v3">
    <!-- SOAP Header with WS-Security (same as submitSd) -->
    <soapenv:Body>
        <sd:WithdrawSdRequest>
            <sd:sdIdentifier>e3b3206d-6625-47a0-b2ef-b8a7b9da1217</sd:sdIdentifier>
        </sd:WithdrawSdRequest>
    </soapenv:Body>
</soapenv:Envelope>

Response

<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
    <!-- Response Header (same structure as submitSd response) -->
    <S:Body>
        <ns5:WithdrawSdResponse xmlns:ns5="http://ec.europa.eu/tracesnt/certificate/eudr/simplified-declaration/v3"
                                xmlns:ns3="http://ec.europa.eu/tracesnt/certificate/eudr/common/v3">
            <ns5:uuid>e3b3206d-6625-47a0-b2ef-b8a7b9da1217</ns5:uuid>
            <ns5:status>WITHDRAWN</ns5:status>
        </ns5:WithdrawSdResponse>
    </S:Body>
</S:Envelope>

getSd

Request

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
                  xmlns:v4="http://ec.europa.eu/sanco/tracesnt/base/v4"
                  xmlns:sd="http://ec.europa.eu/tracesnt/certificate/eudr/simplified-declaration/v3"
                  xmlns:eudrCommon="http://ec.europa.eu/tracesnt/certificate/eudr/common/v3">
    <!-- SOAP Header with WS-Security (same as submitSd) -->
    <soapenv:Body>
        <sd:GetSdRequest>
            <sd:uuidAndVersionNumberList>
                <eudrCommon:uuid>e3b3206d-6625-47a0-b2ef-b8a7b9da1217</eudrCommon:uuid>
                <!-- versionNumber is optional -->
                <eudrCommon:versionNumber>1</eudrCommon:versionNumber>
            </sd:uuidAndVersionNumberList>
        </sd:GetSdRequest>
    </soapenv:Body>
</soapenv:Envelope>

Response

<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
    <!-- Response Header (same structure as submitSd response) -->
    <S:Body>
        <ns5:GetSdResponse xmlns:ns3="http://ec.europa.eu/tracesnt/certificate/eudr/common/v3"
                           xmlns:ns5="http://ec.europa.eu/tracesnt/certificate/eudr/simplified-declaration/v3">
            <ns5:sdOverviewList>
                <ns3:uuid>e3b3206d-6625-47a0-b2ef-b8a7b9da1217</ns3:uuid>
                <ns3:internalReferenceNumber>REF-0001000087</ns3:internalReferenceNumber>
                <ns3:referenceNumber>S26BECB39D2GRX</ns3:referenceNumber>
                <ns3:verificationNumber>H6ORMNTX</ns3:verificationNumber>
                <ns3:status>AVAILABLE</ns3:status>
                <ns3:date>2026-05-20T10:20:01.000Z</ns3:date>
                <ns3:updatedBy>User25 User25</ns3:updatedBy>
            </ns5:sdOverviewList>
        </ns5:GetSdResponse>
    </S:Body>
</S:Envelope>

getSdByInternalReference

Request

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
                  xmlns:v4="http://ec.europa.eu/sanco/tracesnt/base/v4"
                  xmlns:sd="http://ec.europa.eu/tracesnt/certificate/eudr/simplified-declaration/v3">
    <!-- SOAP Header with WS-Security (same as submitSd) -->
    <soapenv:Body>
        <sd:GetSdByInternalReferenceRequest>
            <sd:internalReference>REF-0001000087</sd:internalReference>
        </sd:GetSdByInternalReferenceRequest>
    </soapenv:Body>
</soapenv:Envelope>

Response

<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
    <!-- Response Header (same structure as submitSd response) -->
    <S:Body>
        <ns5:GetSdByInternalReferenceResponse xmlns:ns3="http://ec.europa.eu/tracesnt/certificate/eudr/common/v3"
                                              xmlns:ns5="http://ec.europa.eu/tracesnt/certificate/eudr/simplified-declaration/v3">
            <ns5:sdOverviewList>
                <ns3:uuid>e3b3206d-6625-47a0-b2ef-b8a7b9da1217</ns3:uuid>
                <ns3:internalReferenceNumber>REF-0001000087</ns3:internalReferenceNumber>
                <ns3:referenceNumber>S26BECB39D2GRX</ns3:referenceNumber>
                <ns3:verificationNumber>H6ORMNTX</ns3:verificationNumber>
                <ns3:status>AVAILABLE</ns3:status>
                <ns3:date>2026-05-20T10:20:01.000Z</ns3:date>
                <ns3:updatedBy>User25 User25</ns3:updatedBy>
            </ns5:sdOverviewList>
        </ns5:GetSdByInternalReferenceResponse>
    </S:Body>
</S:Envelope>

getSdByIdentifiers

Not supported over the API

Retrieving full SD content over the API is no longer supported. Declaration detail access is possible only over the UI. Any call to this operation returns a NotFoundException fault with the message "Declaration detail access is possible only over UI", regardless of the caller's role, and no declaration content is returned.

Request

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
                  xmlns:v4="http://ec.europa.eu/sanco/tracesnt/base/v4"
                  xmlns:sd="http://ec.europa.eu/tracesnt/certificate/eudr/simplified-declaration/v3"
                  xmlns:eudrCommon="http://ec.europa.eu/tracesnt/certificate/eudr/common/v3">
    <!-- SOAP Header with WS-Security (same as submitSd) -->
    <soapenv:Body>
        <sd:GetSdByIdentifiersRequest>
            <sd:referenceAndVerificationNumber>
                <eudrCommon:referenceNumber>S26BECB39D2GRX</eudrCommon:referenceNumber>
                <eudrCommon:verificationNumber>H6ORMNTX</eudrCommon:verificationNumber>
            </sd:referenceAndVerificationNumber>
        </sd:GetSdByIdentifiersRequest>
    </soapenv:Body>
</soapenv:Envelope>

Response

<S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
    <S:Body>
        <S:Fault>
            <faultcode>S:Server</faultcode>
            <faultstring>Declaration detail access is possible only over UI</faultstring>
            <detail>
                <ns5:NotFoundException xmlns:ns5="http://ec.europa.eu/tracesnt/certificate/eudr/simplified-declaration/v3">
                    <ns5:message>Declaration detail access is possible only over UI</ns5:message>
                </ns5:NotFoundException>
            </detail>
        </S:Fault>
    </S:Body>
</S:Envelope>