EU EUDAMED Basic UDI-DI & UDI-DI Validation Architecture
Validate European Union MDR & IVDR Basic UDI-DI keys and packaging UDI-DI hierarchies for EUDAMED regulatory submission.
Quick Technical Summary: Validate European Union MDR & IVDR Basic UDI-DI keys and packaging UDI-DI hierarchies for EUDAMED regulatory submission. Implementation conforms to FDA 21 CFR 801.20 / EU MDR 2017/745.
Specification & Structural Breakdown
The European Union EUDAMED database utilizes a two-tier hierarchy: the Basic UDI-DI identifies the device model family on regulatory certificates, while the UDI-DI identifies the specific sellable packaging unit.
| Level | Key Name | Length | Character Rules |
|---|---|---|---|
| Family / Model | Basic UDI-DI (GS1 GSRC) | Up to 29 chars | Company prefix + model identifier + 2 check characters |
| Family / Model | Basic UDI-DI (HIBCC) | Up to 29 chars | ++[LIC][Product Line][Check Characters] |
| Family / Model | Basic UDI-DI (ICCBBA) | Up to 29 chars | ==[Facility][Class][Category][Check] |
| Item Packaging | UDI-DI | 14 numeric (GS1) | Standard GTIN-14 with Modulo-10 check digit on box barcode |
Test EU EUDAMED Basic UDI-DI & UDI-DI Validation Architecture Live
Paste raw inputs up to 32KB and inspect deterministic parsed JSON in real-time across 330+ Cloudflare edge locations. Pure compute, zero cold-starts.
Parsed JSON Response Model
The edge microservice transforms input payloads into strongly-typed hierarchical JSON with zero cold starts:
{
"eudamedReadiness": "VALID",
"basicUdiDi": "008848380DEVICEFAM88",
"issuingAgency": "GS1",
"deviceRiskClass": "Class IIb Active Implantable",
"notifiedBodyConformity": "PASS",
"udiDiMatched": "00884838012345"
}
Copy-Paste Integration Code
Integrate this validator directly into your application using your production API key:
curl --request POST \
--url "https://fda-eu-mdr-medical-device-udi-decoder-gs1-hibcc-iccbba.stanzaapi.com/api/v1/udi/decode" \
--header "Content-Type: application/json" \
--header "x-api-key: YOUR_API_KEY" \
--data '{
"udi": "(01)00884838012345(17)260831(10)LOT7788(21)SN991823"
}'
const response = await fetch("https://fda-eu-mdr-medical-device-udi-decoder-gs1-hibcc-iccbba.stanzaapi.com/api/v1/udi/decode", {
method: "POST",
headers: {
"Content-Type": "application/json",
"x-api-key": process.env.API_KEY || "YOUR_API_KEY"
},
body: JSON.stringify({
"udi": "(01)00884838012345(17)260831(10)LOT7788(21)SN991823"
})
});
const data = await response.json();
console.log(data);
import requests
import json
url = "https://fda-eu-mdr-medical-device-udi-decoder-gs1-hibcc-iccbba.stanzaapi.com/api/v1/udi/decode"
headers = {
"Content-Type": "application/json",
"x-api-key": "YOUR_API_KEY"
}
payload = {
"udi": "(01)00884838012345(17)260831(10)LOT7788(21)SN991823"
}
response = requests.post(url, json=payload, headers=headers)
print(response.json())
package main
import (
"bytes"
"fmt"
"io"
"net/http"
"os"
)
func main() {
url := "https://fda-eu-mdr-medical-device-udi-decoder-gs1-hibcc-iccbba.stanzaapi.com/api/v1/udi/decode"
payload := []byte(`{"udi":"(01)00884838012345(17)260831(10)LOT7788(21)SN991823"}`)
req, _ := http.NewRequest("POST", url, bytes.NewBuffer(payload))
req.Header.Add("Content-Type", "application/json")
req.Header.Add("x-api-key", os.Getenv("API_KEY"))
res, err := http.DefaultClient.Do(req)
if err != nil {
panic(err)
}
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}
Frequently Asked Questions & Technical Notes
No. Under EU MDR rules, the Basic UDI-DI appears exclusively on the EU Declaration of Conformity and technical documentation. Only the packaging UDI-DI is encoded into the barcode.
GS1 calculates two check characters using a Modulo-89 algorithm over the alphanumeric prefix.
Related Medical Device UDI Barcode & AIDC Engine Formats
Explore sibling specifications and standards in the same developer cluster:
GS1 UDI Barcode Format & AI Parser Guide (GS1-128 & DataMatrix)
Parse GS1-128 linear barcodes and 2D DataMatrix medical device UDIs into structured DI/PI attributes in milliseconds.
View Format →HIBCC Medical Device Barcode Decoder & Modulo-43 Checksum Spec
Parse primary and secondary HIBCC medical barcodes with Modulo-43 check character validation.
View Format →ICCBBA ISBT 128 Medical Device & Cellular Therapy UDI Spec
Decode ICCBBA ISBT 128 medical and biologics identifiers for human cells, tissues, and cellular products.
View Format →FDA Global UDI Database (GUDID) Submission & Compliance Spec
Validate medical device UDI records against FDA GUDID data requirements before submitting to the FDA.
View Format →