Converting HL7 v2 messages into FHIR resources sounds like a mapping exercise. In production, it is a long tail of edge cases: ADT^A04 messages that arrive with Z-segments the receiving team never documented, ORU^R01 results with vendor-specific extensions, MFN messages that the conversion tool has to either drop cleanly or convert into something coherent. The six tools below handle that long tail with various degrees of grace, and the choice between them is one of the higher-stakes decisions in a FHIR integration project. For broader context on EHR-side integration, see additional EHR connectivity walkthroughs.
The FHIR integration platforms reference guide outlines where conversion fits in the broader integration stack.
The 6 Conversion Tools to Evaluate
- Microsoft FHIR Converter. An open-source, JSON-rules-based v2-to-FHIR mapper, originally built by Microsoft for the Azure FHIR stack and now widely used outside it.
- Mirth Connect with FHIR Channels. The dominant open-source integration engine, with channel templates for common v2 message types and FHIR REST destinations.
- HAPI HL7 v2 to FHIR Converter. A Java library aligned with the HL7 v2-to-FHIR Implementation Guide, used in HAPI-centric stacks where the conversion runs in the same JVM as the server.
- Rhapsody Message Mapper. A commercial mapper with a visual editor, used by hospital IT teams that prefer point-and-click configuration over rule-file editing.
- InterSystems IRIS HL7 Production. The conversion side of the IRIS platform, with strong handling of HL7 v2 message routing alongside FHIR REST production.
- LinuxForHealth v2-to-FHIR. An IBM-backed open-source library implementing the official HL7 v2-to-FHIR mapping guide, with strong reference support for the standard mappings.
What Separates Them in Practice
Three operational factors drive the choice.
The first is alignment with the HL7 v2-to-FHIR Implementation Guide. The IG defines the canonical mappings for ADT, ORU, ORM, SIU, and MDM messages; tools that follow the guide give the team a defensible answer when downstream consumers ask why a field landed where it did. Tools that ship their own mapping conventions force the team to document the divergence.
The second is handling of custom segments. The same hospital can run two versions of the same v2 interface, with different custom segments per source system. A converter that lets the team extend the standard mappings with site-specific rules is the converter that survives the first year. The third is error visibility. When a conversion fails, the operator needs to see why, where in the message the failure happened, and whether the failed message has been routed to a dead-letter queue. Tools without that visibility become operational liabilities the first time a lab feed fails silently.
For shortlists of the broader FHIR API tooling that surrounds conversion, the top FHIR API tools for legacy system connectivity walkthrough covers the adjacent product category.
How to Approach the Decision
Selection turns on the team's existing integration footprint and HL7 v2 expertise. A team already running Mirth picks Mirth FHIR channels and gets to production fast. A team running an IRIS stack picks the IRIS HL7 production. A team standing up FHIR conversion from scratch with no incumbent engine usually starts with the Microsoft FHIR Converter for its low setup cost and strong rules-based extensibility.
For the broader FHIR server landscape that consumes the converted resources, the top FHIR servers for EHR connectivity walkthrough is the right next stop. The right choice tends to be visible in retrospect by what the team stopped thinking about, not by what they advocated for during selection.
Sources
- V2-to-FHIR Introduction - IG, HL7, 2024
- v2 FHIR Converter - GitHub, LinuxForHealth, 2024
- V2-to-FHIR IG home - IG, HL7, 2024

