EUDAMED Bulk Upload Validation Error Playbook: Fix XML Rejections
Playbook for diagnosing EUDAMED bulk upload validation errors, including XSD failures, UDI mismatches, EMDN issues, certificate links, DTX codes, and pre-upload checks.
What This Article Covers / Does Not Cover
This article covers one specific operational task: how to diagnose, fix, and prevent validation errors when uploading device data to EUDAMED via XML bulk upload or M2M Data Exchange (DTX). It provides a structured error catalog, a troubleshooting decision tree, a pre-upload validation checklist, and guidance on the most common rejection scenarios including Basic UDI-DI problems, EMDN code errors, certificate linkage failures, and Notified Body confirmation bottlenecks.
This article does not cover EUDAMED actor registration basics, how to obtain an SRN, UDI system fundamentals, or general MDR compliance. For EUDAMED registration fundamentals, see EUDAMED Registration Guide. For common registration mistakes, see EUDAMED Registration Mistakes. For UDI labeling basics, see Medical Device Labeling and UDI System Guide.
The May 2026 Deadline Context
From May 28, 2026, all new medical devices placed on the EU market must be registered in EUDAMED before distribution. Existing devices must be registered by November 28, 2026. For manufacturers with large portfolios, XML bulk upload is the only practical approach — manual entry of hundreds or thousands of device records is neither efficient nor reliable.
However, EUDAMED's XML bulk upload pipeline enforces multiple layers of validation. A single formatting error can reject an entire upload batch. XSD schema version 3.0.25 is now mandatory for all DTX service requests (as of EUDAMED v2.22.0). The system processes valid objects and rejects invalid ones within the same upload — partial success is the norm, not the exception.
EUDAMED Bulk Upload Validation Layers
EUDAMED applies three sequential validation layers to every upload:
| Layer | What It Checks | Failure Result | Who Can Fix |
|---|---|---|---|
| 1. XSD Schema Validation | XML structure, data types, field lengths, occurrence rules, enumeration values | Entire XML rejected if structurally invalid | Your IT/regulatory data team |
| 2. Business Rule Validation | Logical consistency: UDI-DI format, Basic UDI-DI linkage, EMDN codes, certificate references, operator roles | Individual objects rejected; valid objects process | Regulatory data team + NB coordination |
| 3. Notified Body Confirmation | Basic UDI-DI confirmation by NB for Class III and Class IIb implantable devices under Annex IX+X | Basic UDI-DI status remains "Submitted" until confirmed | NB operations team |
Error Catalog: XSD Schema Validation Errors
What Triggers XSD Errors
XSD validation is the first gate. It checks that your XML conforms to the published schema. Common failures:
| Error Category | Example Error Code | Typical Cause | Fix |
|---|---|---|---|
| Invalid data type | E-I-40000 | Text in a numeric field, date in wrong format | Ensure dates use ISO 8601 (YYYY-MM-DD); numbers have no text characters |
| Field length exceeded | E-I-40000 (sub-code varies) | Device description exceeds maximum character limit | Truncate or restructure; check XSD annotation for max length |
| Missing mandatory element | E-I-40000 | Required field left empty or omitted | Populate all mandatory fields per the XSD annotation |
| Invalid enumeration value | E-I-40000 | Risk class entered as "Class IIa" instead of the schema enumeration code | Use exact enumeration values from the XSD (e.g., IIA, IIB, III) |
| Malformed XML structure | Parsing error | Unclosed tags, incorrect nesting, encoding issues | Validate XML against XSD using an XML editor or command-line tool before uploading |
| Incorrect tag position | E-I-40000 | Elements in wrong order within parent | Follow the exact sequence defined in the XSD schema |
Pre-Upload XSD Validation Checklist
| Step | Action | Tool |
|---|---|---|
| 1 | Download current XSD schema from EUDAMED DTX documentation | EUDAMED help portal |
| 2 | Validate XML against XSD locally before upload | XMLSpy, Oxygen XML, xmllint, or online XSD validators |
| 3 | Check XSD schema version matches EUDAMED current version (v3.0.25 as of 2026) | Release notes |
| 4 | Verify all enumeration values match schema definitions exactly | XSD annotation review |
| 5 | Confirm date fields use ISO 8601 format | Spreadsheet/data validation |
| 6 | Validate UDI-DI format per issuing entity rules (GS1: 14-digit with leading zeros) | Issuing entity specification |
| 7 | Run a test upload in the EUDAMED sandbox environment first | EUDAMED test/play environment |
Error Catalog: Business Rule Validation Errors
Basic UDI-DI Errors
| Error Pattern | Root Cause | Fix |
|---|---|---|
| Duplicate Basic UDI-DI | Basic UDI-DI already registered in EUDAMED | Verify device is not already registered; use PATCH to update instead of POST |
| Grouping mismatch | Basic UDI-DI groups devices with different risk classes or intended purposes | Re-evaluate grouping strategy; each Basic UDI-DI must cover same risk class, intended purpose, and conformity assessment procedure |
| Incorrect conformity assessment procedure | Annex X selected for a device that does not qualify (only Class III or IIb implantable under Annex IX+X) | Select the correct annex combination that matches the NB certificate |
| Missing link to UDI-DI | Basic UDI-DI registered without associated UDI-DI records | Register UDI-DI records and link to Basic UDI-DI |
| Legislative framework mismatch | Directive vs. Regulation framework incorrectly selected | Verify whether device is legacy (Directive) or Regulation; ensure correct framework tag |
UDI-DI Errors
| Error Pattern | Root Cause | Fix |
|---|---|---|
| GS1 format validation failure | UDI-DI not padded to 14 digits with leading zeros | GS1 GTIN-8: pad with 6 leading zeros; GTIN-12: pad with 2; GTIN-13: pad with 1 |
| Check digit failure | GS1 check digit does not validate | Recalculate check digit per GS1 algorithm |
| UDI-DI not linked to Basic UDI-DI | Orphan UDI-DI without parent Basic UDI-DI | Ensure UDI-DI references a registered Basic UDI-DI |
| Issuing entity mismatch | Issuing entity code does not match UDI-DI format | Use correct issuing entity identifier (e.g., GS1 = 01 for GTIN) |
| Master UDI-DI format error | GMN format validation applied incorrectly for contact lenses | Follow EUDAMED user guide specific rules for Master UDI-DI |
| Direct marking DI issue | Direct marking UDI-DI format differs from label UDI-DI without justification | Ensure direct marking DI matches label DI or document the reason for difference |
EMDN Code Errors
| Error Pattern | Root Cause | Fix |
|---|---|---|
| Obsolete EMDN code | Code removed in latest EMDN version update | Use current EMDN code version; EUDAMED v2.22.0 removed obsolete codes from selection lists |
| Non-leaf code selected | EMDN code at category level rather than specific device level | Navigate to the most specific (leaf-level) EMDN code that matches the device |
| EMDN code does not match intended purpose | Code describes a different device type | Cross-reference EMDN code against device description and intended use in technical documentation |
| EMDN version not specified | Missing version attribute in XML | Include EMDN version in the appropriate XML tag |
Certificate Linkage Errors
| Error Pattern | Root Cause | Fix |
|---|---|---|
| Certificate not found in EUDAMED | NB has not uploaded the certificate to the NB/Certificates module | Coordinate with NB to upload certificate before linking to device |
| Certificate-device mismatch | Certificate scope does not cover the device being registered | Verify certificate scope covers the Basic UDI-DI device group |
| Expired certificate | Certificate end date has passed | Renew certificate or register under a different valid certificate |
| NB not designated for the conformity assessment procedure | NB scope of designation does not cover the annex selected | Verify NB designation scope on NANDO before linking |
Operator Role Errors
| Error Pattern | Root Cause | Fix |
|---|---|---|
| SRN not active | Actor registration not yet confirmed by Competent Authority | Wait for CA confirmation; follow up with CA if delays exceed expected timeline |
| Incorrect role for action | Attempting device registration with an SRN that has an inappropriate role (e.g., importer trying to register devices) | Only manufacturers and system/procedure pack producers can register devices |
| Product Designer SRN missing | Product Designer SRN not included for devices requiring it | Add Product Designer SRN in the appropriate XML field |
| Non-EU manufacturer without Authorized Representative | Non-EU manufacturer attempting to register without linked AR | Ensure AR registration is complete and linked before device registration |
Notified Body Confirmation Bottleneck
For Class III and Class IIb implantable devices certified under Annex IX + Annex X, Article 29 requires the Notified Body to confirm the Basic UDI-DI in EUDAMED at the time of certificate upload. This creates a dependency:
NB Confirmation Dependency Flow
Manufacturer registers Basic UDI-DI
→ Status: "Submitted"
→ EUDAMED sends confirmation request to NB
→ NB verifies Basic UDI-DI matches certificate
├── Match confirmed → Status: "Registered"
└── Mismatch or NB cannot verify → Status remains "Submitted"
→ Manufacturer must correct data OR coordinate with NBCommon NB Confirmation Blockers
| Blocker | Cause | Resolution |
|---|---|---|
| Wrong annex selected | Manufacturer selected Annex X for a device certified under Annex IX alone | Correct the conformity assessment procedure in EUDAMED to match the actual certificate |
| NB scope mismatch | NB not designated for Annex X | Use the correct annex combination that matches the NB's designation scope |
| Certificate not uploaded | NB has not uploaded the certificate to the NB/Certificates module | Coordinate with NB to upload certificate first |
| Basic UDI-DI changed after certification | Manufacturer changed grouping after certificate issuance | Obtain NB approval for the change before updating EUDAMED |
| NB processing backlog | NB overwhelmed with confirmation requests | Prioritize highest-risk devices; engage NB early in the process |
Troubleshooting Decision Tree
START: Bulk upload returned errors
├── Is the entire upload rejected?
│ ├── YES → XSD schema validation failure
│ │ ├── Check XML well-formedness (parsing error)
│ │ ├── Validate against current XSD schema (v3.0.25)
│ │ └── Fix structural issues and re-upload entire batch
│ └── NO → Partial success; some objects processed, some rejected
│ └── Download XML response file from Response column
│ └── For each rejected object, identify error code
│ ├── Basic UDI-DI error → See Basic UDI-DI error table
│ ├── UDI-DI format error → Check issuing entity rules
│ ├── EMDN code error → Verify against current EMDN version
│ ├── Certificate linkage error → Coordinate with NB
│ ├── Operator/role error → Verify SRN status and role
│ └── Business rule error → Check specific error code in Annex 1 of DTX guidePre-Upload Validation Checklist
Complete this checklist before every bulk upload session:
| # | Check | Pass/Fail | Notes |
|---|---|---|---|
| 1 | XML validated against current XSD schema (v3.0.25) | ☐ | |
| 2 | All mandatory fields populated per XSD annotations | ☐ | |
| 3 | Date fields in ISO 8601 format (YYYY-MM-DD) | ☐ | |
| 4 | GS1 UDI-DI padded to 14 digits with leading zeros | ☐ | |
| 5 | Risk class matches classification rationale in technical file | ☐ | |
| 6 | Conformity assessment procedure matches NB certificate | ☐ | |
| 7 | EMDN codes are current (not obsolete) and at leaf level | ☐ | |
| 8 | Basic UDI-DI grouping is consistent with certificate structure | ☐ | |
| 9 | Device description matches Declaration of Conformity | ☐ | |
| 10 | SRN is active and role is correct (manufacturer/SPP producer) | ☐ | |
| 11 | NB certificates are uploaded in NB/Certificates module (for certified devices) | ☐ | |
| 12 | Legacy device framework (Directive vs. Regulation) is correctly assigned | ☐ | |
| 13 | Attachments referenced in XML are included in the ZIP folder with correct paths | ☐ | |
| 14 | No duplicate UDI-DI entries within the upload batch | ☐ | |
| 15 | Test upload performed in EUDAMED sandbox environment | ☐ |
RACI: Bulk Upload Process
| Task | Regulatory Affairs | IT/Data Team | Quality | Notified Body | Management |
|---|---|---|---|---|---|
| Data preparation and cleansing | R | C | C | I | A |
| XML generation from source data | C | R | I | I | I |
| XSD schema validation | I | R | I | I | I |
| Pre-upload checklist execution | R | C | C | I | A |
| Upload execution | R | C | I | I | I |
| Error response file analysis | R | C | C | I | I |
| NB confirmation follow-up | R | I | C | R | A |
| Data quality verification post-upload | R | C | R | I | A |
Common Failure Modes and Remediation
| Failure Mode | Root Cause | Remediation |
|---|---|---|
| Mass rejection of entire batch | One malformed XML element triggers XSD failure for the whole file | Validate XML locally before upload; use XML editors with real-time schema validation |
| Recurring EMDN errors | Internal master data uses outdated EMDN version | Update product master data to current EMDN version before generating XML |
| NB confirmation never arrives | Wrong conformity assessment annex selected; NB cannot match certificate | Verify annex combination matches certificate; contact NB with specific Basic UDI-DI and certificate reference |
| Duplicate Basic UDI-DI rejection | Device already registered (possibly by AR or parent company) | Search EUDAMED for existing registration; use PATCH to update instead of POST |
| GS1 check digit failure | UDI-DI generated without proper check digit calculation | Use GS1 check digit calculator; validate before including in XML |
| Partial upload confusion | Some devices registered, some rejected; team loses track | Maintain a device-by-device upload tracker with status columns; re-submit only rejected objects |
| Data mismatch with technical documentation | EUDAMED data entered differently from technical file/DoC | Treat EUDAMED as a regulatory data governance program; ensure single source of truth between PLM/QMS and EUDAMED data |
| Running out of time before deadline | Underestimated data cleansing and validation effort | Start at least 6 months before deadline; prioritize by device risk class (Class III first) |
Sources
European Commission. "Guidelines on Data Exchange with EUDAMED Production." v2.18.0, 2025. webgate.ec.europa.eu/eudamed-help/
European Commission. "EUDAMED Release Notes." v3.18.0. webgate.ec.europa.eu/eudamed-play-help/
European Commission. "EUDAMED User Guide – UDI Devices." webgate.ec.europa.eu/eudamed-help/
Ente Certificazione Macchine. "EUDAMED: Avoiding Basic UDI-DI Upload Errors." entecerma.it/en/eudamed-avoiding-basic-udi-di-upload-errors/
Registrar Corp. "EUDAMED Registration Deadlines 2026: A Mandatory Compliance Guide." registrarcorp.com
MedEnvoy. "EUDAMED and swissdamed Mandatory Registration Requirements." medenvoyglobal.com
osapiens. "EUDAMED 2026: Key Steps for Medical Device Manufacturers." osapiens.com
EUDAMED. "Bulk Upload." webgate.ec.europa.eu/eudamed-play-help/en/data-exchange/bulk-uploading-downloading/bulk-upload.html