ediverse Explore the platform

Spotlight PEPPOL BIS Billing 3.0 The EU e-invoicing mandate is here — France Sept 2026, Belgium Jan 2026, Germany 2025.

DeviceDefinition — Medical device catalogue entry

Where Device represents a physical instance (the infusion pump at bed 412), DeviceDefinition represents the catalogue reference: model, manufacturer, generic properties, parent UDI, CE / FDA marking.

Purpose of the resource

In 2024, the European MDR regulation (2017/745) and the FDA UDI rule mandate that every medical device placed on the market carries a unique global identification (UDI), with a static Device Identifier (DI) component at catalogue level, and a Production Identifier (PI) at instance level. DeviceDefinition is the FHIR carrier of the DI: one per model, shared by every Device that instantiates it.

Typical cases: infusion pump, defibrillator, MRI scanner, hip prosthesis, syringe, analyser kit, software device (Software as a Medical Device, SaMD).

Key fields

FieldTypeCardinalityRole
identifierIdentifier[]0..*External identifiers (GTIN, FDA Device ID…).
udiDeviceIdentifierBackboneElement[]0..*Specific UDI identifiers (DI only; PI lives on Device).
regulatoryIdentifierBackboneElement[]0..*Regulatory identifier (FDA, EU MDR, MHRA UK…).
manufacturerString / manufacturerstring | Reference(Organization)0..1Manufacturer.
deviceNameBackboneElement[]0..*Names (UDI label name, marketing name, model number).
modelNumberstring0..1Model number.
classificationBackboneElement[]0..*Classification (Class I, IIa, IIb, III for MDR).
propertyBackboneElement[]0..*Properties (colour, volume, flow rate…).
versionBackboneElement[]0..*Versions (firmware, software).
specializationBackboneElement[]0..*Supported standards (SDC, BLE, FHIR endpoint…).
safetyCodeableConcept[]0..*Safety characteristics (latex-free, MR-conditional…).
shelfLifeStorageProductShelfLife[]0..*Storage shelf life.
languageCodeCodeableConcept[]0..*Interface languages.
contactContactDetail[]0..*Manufacturer technical contact.
noteAnnotation[]0..*Additional notes.

JSON example

Catalogue for an intelligent infusion pump, Class II, firmware 3.2.1, CE marked by TUV-SUD:

json devicedefinition-example.json
{
  "resourceType": "DeviceDefinition",
  "id": "example-infusion-pump",
  "identifier": [{
    "system": "http://hl7.org/fhir/sid/gs1",
    "value": "(01)09504000059118"
  }],
  "udiDeviceIdentifier": [{
    "deviceIdentifier": "09504000059118",
    "issuer": "GS1 / FDA UDI",
    "jurisdiction": "EU"
  }],
  "manufacturerString": "Acme Med Devices",
  "deviceName": [{
    "name": "Acme Smart Pump 4000",
    "type": "udi-label-name"
  }],
  "modelNumber": "SP-4000",
  "classification": [{
    "type": {
      "coding": [{
        "system": "http://terminology.hl7.org/CodeSystem/v2-0203",
        "code": "MR",
        "display": "Class II"
      }]
    }
  }],
  "property": [{
    "type": {
      "coding": [{
        "system": "http://snomed.info/sct",
        "code": "118552005",
        "display": "Infusion pump"
      }]
    }
  }],
  "version": [{
    "type": {
      "coding": [{
        "system": "http://terminology.hl7.org/CodeSystem/device-version-type",
        "code": "firmware"
      }]
    },
    "value": "3.2.1"
  }],
  "regulatoryIdentifier": [{
    "type": "basic",
    "deviceIdentifier": "DEN-123456",
    "issuer": "FDA",
    "jurisdiction": "USA"
  }, {
    "type": "basic",
    "deviceIdentifier": "CE 0123",
    "issuer": "TUV-SUD",
    "jurisdiction": "EU"
  }]
}

Typical use cases

  • UDI catalogue: every device model registered in GUDID (US) or EUDAMED (EU) has a matching DeviceDefinition.
  • Medical-device vigilance: correlate incidents by model (product recall).
  • Hospital inventory: reference devices with their generic properties.
  • CE / FDA continuum: carry both FDA and CE identifiers.
  • SaMD (Software as a Medical Device): describe a software device with its firmware versions.

Common pitfalls

  • DI / PI confusion: the Device Identifier (DI) is static and lives on DeviceDefinition. The Production Identifier (PI: serial number + lot + expiry date) lives on Device.
  • Missing UDI issuer: udiDeviceIdentifier.issuer (GS1, HIBCC, ICCBBA) must always be populated — without it, the identifier is ambiguous.
  • Non-MDR classification: use MDR codes (Class I, IIa, IIb, III) for the EU. Mixing them up with FDA Class I, II, III is misleading.
  • Multiple versions without type: a device often has firmware + software + hardware. Always qualify version.type.
  • Safety code as text: use the HL7 v3 SafetyCode ValueSet rather than "latex-free" as free text.
  • Device — physical instance referencing this definition.
  • DeviceAssociation — association of a device with a patient or location.
  • DeviceMetric — metrics produced by the device.
  • Organization — manufacturer.
  • SubstanceDefinition — substances contained in a combination device.

See also: Device — the physical instance and DeviceAssociation — device-patient association.