Speak to an Expert

Healthcare

FHIR vs HL7: Which Healthcare Interoperability Standard to Choose

Two healthcare data standards, often conflated. Here's what they actually are, where each fits, and how to choose for a modern build.

Niranjana
Jul 20, 2026 · 7 min read
FHIR vs HL7: Which Healthcare Interoperability Standard to Choose

FHIR vs HL7: Which Healthcare Interoperability Standard to Choose

Healthcare interoperability standards are often spoken about as a confusing alphabet soup. They're actually a fairly clean evolution. Here's the working developer's view.

Key takeaways

  • HL7 v2 is the legacy messaging standard. Still everywhere, especially in hospital systems.
  • HL7 v3 / CDA is the document-based standard. Used in some clinical document exchange.
  • FHIR is the modern, JSON-based, REST-oriented standard. The future, increasingly the present.
  • For new builds: FHIR. For integration with existing hospital infrastructure: you'll touch HL7 v2.

What each standard actually is

HL7 v2

Pipe-delimited messages, 1980s/90s era. Looks like: MSH|^~\&|HOSP|FAC|LAB|FAC|20260518.... Used for ADT (admit/discharge/transfer), lab orders, lab results, scheduling. Almost every hospital information system speaks it.

HL7 v3 / CDA

Document-based, XML. Clinical Document Architecture (CDA) wraps a clinical narrative with structured metadata. Used for discharge summaries, referrals, continuity-of-care documents. Heavyweight.

FHIR

Fast Healthcare Interoperability Resources. JSON (or XML), REST-style. A patient is GET /Patient/123. Resources include Patient, Observation, Encounter, Condition, MedicationRequest, DiagnosticReport, etc. Designed for modern apps.

Which to use when

New consumer-facing health app: FHIR (R4 or R5). Done.

Integrating with an Indian hospital information system: You'll likely touch HL7 v2 for ADT and lab data, even if your own model is FHIR. Build a translation layer.

Cross-system document exchange (referrals, discharge summaries): FHIR Bundle or CDA, depending on the receiver.

ABDM in India: FHIR R4 with Indian profiles (called NDHM FHIR Implementation Guide).

Practical advice

Model your internal data in FHIR. Have an adapter layer that translates to/from HL7 v2 when you talk to a legacy system. This insulates your app from legacy integrations and makes future migrations easier.

Common pitfalls

Underestimating HL7 v2 parsing complexity. The standard is decades old, "extensions" are common, every vendor has their own dialect. Use a proper library (HL7apy, NHapi).

Overestimating FHIR maturity in your stack. Servers, libraries, and toolchains are mature in some languages (Java, .NET, Python) and less so in others. Verify before committing.

What we recommend

FHIR-first for everything new. HL7 v2 adapter where you must integrate with legacy hospital systems. Use FHIR profiles that match your locale (ABDM in India, US Core in the US, etc.).

FAQs

Is HL7 v3 dead? Mostly. CDA documents still exist; v3 messaging is rare in new work.

What's SMART on FHIR? Authorization protocol over FHIR for healthcare apps. Worth using if you serve clinicians.

DICOM? Different beast, imaging. FHIR has bridges via ImagingStudy resource.

What about IHE profiles? Higher-level workflows on top of FHIR/HL7. Important in some institutional contexts.


Talk to Techpuvi about healthcare interoperability.

#FHIR#HL7#Healthcare#Interoperability
Niranjana

Niranjana serves as a Senior Architect at Techpuvi. She brings more than 15 years of experience in software development, having built several products from the ground up. Choosing to specialize as a full-stack engineer, she maintains a strong commitment to continuous learning.