ZKELETON//HL7 → FHIR Open converter

HL7 v2 → FHIR R4 mapping reference

Which FHIR R4 resource does each HL7 v2 segment become — and what happens to the fields that don’t map cleanly? This is the runnable reference: every example is produced by a real converter you can paste your own messages into.

The short answer

HL7 v2 segments map to FHIR R4 resources: PID→Patient, PV1→Encounter, OBX→Observation, DG1→Condition, AL1→AllergyIntolerance, RXE→MedicationRequest, RXA→Immunization, IN1→Coverage, NK1→RelatedPerson. Paste a full message into the converter to see the whole bundle.

Segment → resource map

HL7 v2 segmentFHIR R4 resourceWhat it carries
MSHBundle / MessageHeaderMessage envelope
PIDPatientDemographics, identifiers, race/ethnicity (US Core)
PV1EncounterVisit, class, participants
DG1ConditionDiagnosis
OBXObservationResults, value[x], reference range, interpretation
OBRDiagnosticReport / ServiceRequestOrder / report
AL1AllergyIntoleranceAllergy + reaction
RXEMedicationRequestEncoded pharmacy order
RXAImmunizationAdministration (VXU)
IN1CoverageInsurance
NK1RelatedPersonNext of kin

Field-by-field guides

More segment guides are being added. Need one now? Run the message in the converter — it maps every segment it recognizes and surfaces the rest.

Why this reference is different

Built by Zkeleton

Zkeleton builds conversion and data infrastructure for healthcare. This converter is free, runs entirely in your browser, and never sends a message anywhere — we keep it open because clean data plumbing should be a commodity, not a toll.