Schedule a demo
Segment

Material item

Serves as the master definition for an inventory supply item (stocked or non-stocked), carrying the item identifier, description, status, item type or category, manufacturer, and UDI. It is the anchor segment in MFN materials management master file messages used to synchronize the item catalog between materials management systems and clinical systems such as OR documentation, pharmacy, and supply chain applications.

38fields
1required
v2.9HL7 version
itm.py
from zato.hl7v2.v2_9 import ITM
from zato.hl7v2.v2_9 import EI, CWE

itm = ITM()
itm.item_identifier = EI(entity_identifier='ITEM001')
itm.item_description = 'Surgical Gloves Large'

Build ITM segments in Python

How to construct and work with real-world ITM segments.

1

Surgical supply item

Surgical gloves master data

from zato.hl7v2.v2_9 import ITM
from zato.hl7v2.v2_9 import EI, CWE

itm = ITM()
itm.item_identifier = EI(entity_identifier='ITEM001')
itm.item_description = 'Surgical Gloves Large'
itm.item_status = CWE(
    identifier='A',
    text='Active'
)
itm.item_type = CWE(
    identifier='SUP',
    text='Supply',
    name_of_coding_system='HL70778'
)
2

Medication item

Pharmaceutical master data

from zato.hl7v2.v2_9 import ITM
from zato.hl7v2.v2_9 import EI, CWE

itm = ITM()
itm.item_identifier = EI(entity_identifier='ITEM002')
itm.item_description = 'Acetaminophen 500mg Tablet'
itm.item_status = CWE(
    identifier='A',
    text='Active'
)
itm.item_type = CWE(
    identifier='MED',
    text='Medication',
    name_of_coding_system='HL70778'
)
3

Equipment item

Medical equipment master data

from zato.hl7v2.v2_9 import ITM
from zato.hl7v2.v2_9 import EI, CWE

itm = ITM()
itm.item_identifier = EI(entity_identifier='ITEM003')
itm.item_description = 'Blood Pressure Monitor'
itm.item_status = CWE(
    identifier='A',
    text='Active'
)
itm.item_type = CWE(
    identifier='EQP',
    text='Equipment',
    name_of_coding_system='HL70778'
)

Learn by building

Step-by-step guides for working with HL7 v2 in Zato.

Frequently asked questions

ITM contains material item information including item identifiers, descriptions, types, and status for materials management.

Common item types from HL70778 include SUP (Supply), MED (Medication), and EQP (Equipment).

Use item_identifier field with EI datatype:

from zato.hl7v2.v2_9 import ITM
from zato.hl7v2.v2_9 import EI

itm = ITM()
itm.item_identifier = EI(entity_identifier='ITEM001')

ITM contains item master data while ILT contains lot-specific information. Multiple ILT segments can reference the same ITM.

Contract_date windows and manufacturer_contact_information make it easier to align fresh ingredients, supplements, and fitness accessories with reliable vendor touchpoints for proactive, healthy-lifestyle programs.

from zato.hl7v2.v2_9 import ITM
from zato.hl7v2.v2_9 import DR, XPN, XTN

itm = ITM()
itm.contract_date = DR(
    dr_1='20240101',
    dr_2='20251231'
)
itm.manufacturer_contact_name = XPN(
    family_name='Harvest',
    given_name='Wellness'
)
itm.manufacturer_contact_information = XTN(
    telecommunication_use_code='WPN',
    telecommunication_equipment_type='PH',
    country_code='1',
    area_city_code='503',
    local_number='5550199'
)

Zato connects to any system that speaks HL7v2 over MLLP or FHIR over REST. This includes Epic, Cerner, Meditech, Allscripts, and other EHR platforms.

Yes, Zato has built-in MLLP support for sending and receiving HL7v2 messages. MLLP channels handle the framing protocol automatically.

Zato supports HL7 v2.9, which is backward compatible with earlier versions including v2.3, v2.5, and v2.7. Standard segments and datatypes are available as typed Python classes.

Yes. Zato handles both HL7v2 and FHIR natively, so you can parse v2 messages and build FHIR resources with IG-specific extensions in the same service. Typed Python classes are available for both protocols, including extensions from US Core, UK Core, Da Vinci, and other Implementation Guides.

ITM field reference

Complete list of fields in the ITM segment, HL7 v2.9.

#Python nameDatatypeUsageRepeatableTable
1item_identifierEIRequiredNo-
2item_descriptionSTOptionalNo-
3item_statusCWEOptionalNoHL70776
4item_typeCWEOptionalNoHL70778
5item_categoryCWEOptionalNo-
6subject_to_expiration_indicatorCNEOptionalNoHL70532
7manufacturer_identifierEIOptionalNo-
8manufacturer_nameSTOptionalNo-
9manufacturer_catalog_numberSTOptionalNo-
10manufacturer_labeler_identification_codeCWEOptionalNo-
11patient_chargeable_indicatorCNEOptionalNoHL70532
12transaction_codeCWEOptionalNoHL70132
13transaction_amount_unitCPOptionalNo-
14stocked_item_indicatorCNEOptionalNoHL70532
15supply_risk_codesCWEOptionalNoHL70871
16approving_regulatory_agencyXONOptionalYesHL70790
17latex_indicatorCNEOptionalNoHL70532
18ruling_actCWEOptionalYesHL70793
19item_natural_account_codeCWEOptionalNoHL70320
20approved_to_buy_quantityNMOptionalNo-
21approved_to_buy_priceMOOptionalNo-
22taxable_item_indicatorCNEOptionalNoHL70532
23freight_charge_indicatorCNEOptionalNoHL70532
24item_set_indicatorCNEOptionalNoHL70532
25item_set_identifierEIOptionalNo-
26track_department_usage_indicatorCNEOptionalNoHL70532
27procedure_codeCNEOptionalNoHL70088
28procedure_code_modifierCNEOptionalYesHL70340
29special_handling_codeCWEOptionalNoHL70376
30hazardous_indicatorCNEOptionalNoHL70532
31sterile_indicatorCNEOptionalNoHL70532
32material_data_safety_sheet_numberEIOptionalNo-
33united_nations_standard_products_and_services_code_unspscCWEOptionalNoHL70396
34contract_dateDROptionalNo-
35manufacturer_contact_nameXPNOptionalNo-
36manufacturer_contact_informationXTNOptionalNo-
37class_of_tradeSTOptionalNo-
38field_level_event_codeIDOptionalNoHL70180

Ready to build integrations?

Get started with Zato and connect your systems in minutes.

Open source In Python