HL7 IN1 → FHIR Coverage
The IN1 (insurance) segment becomes a FHIR R4 Coverage. The payor, policy/subscriber number, group and plan period map directly; the several IN1 fields that don’t yet have a clean Coverage home are surfaced for review rather than dropped — see the panel below.
An HL7 IN1 segment maps to a FHIR Coverage: IN1-3→payor.identifier, IN1-4→payor.display, IN1-36→subscriberId, IN1-8→class (group), IN1-12/13→period, IN1-17→relationship, with beneficiary referencing the patient.
Field-by-field
| HL7 field | FHIR path | Notes |
|---|---|---|
| IN1-3 | Coverage.payor.identifier | Insurance company ID. |
| IN1-4 | Coverage.payor.display | Insurance company name (XON). |
| IN1-8 | Coverage.class (group) | Group number → class[type=group]. |
| IN1-12 / IN1-13 | Coverage.period | Plan effective / expiration date. |
| IN1-17 | Coverage.relationship | Relationship of the patient to the subscriber. |
| IN1-36 | Coverage.subscriberId | Policy / member number. |
| (derived) | Coverage.beneficiary + status | Beneficiary references the PID patient; status set to active. |
| IN1-2, 16, 18, 19 | — surfaced | Health plan ID, and the name / DOB / address of the insured are surfaced for review (not yet mapped). |
Live example
This is produced by the actual converter — paste your own message and it runs the same way, entirely in your browser.
MSH|^~\&|ADT|HOSP|ZK|MERIDIAN|20240101103000||ADT^A01|MSG1|P|2.5.1 PID|1||MRN123^^^HOSP^MR||DOE^JANE||19850312|F IN1|1|PLAN123^PPO|AETNA001|AETNA INSURANCE||||GRP500||||20240101|20241231|||DOE^JANE|SEL^Self^HL70063|19850312|456 OAK ST^^BOSTON^MA^02101|||||||||||||||||MEMBER789
{
"resourceType": "Coverage",
"id": "coverage-1",
"status": "active",
"beneficiary": {
"reference": "urn:uuid:00000000-0000-4000-8000-000000000001"
},
"payor": [
{
"display": "AETNA INSURANCE",
"identifier": {
"value": "AETNA001"
}
}
],
"subscriberId": "MEMBER789",
"relationship": {
"text": "Self"
},
"class": [
{
"type": {
"coding": [
{
"system": "http://terminology.hl7.org/CodeSystem/coverage-class",
"code": "group"
}
]
},
"value": "GRP500"
}
],
"period": {
"start": "2024-01-01",
"end": "2024-12-31"
}
}What didn’t map (surfaced, never dropped)
The engine flags every field it can’t place in FHIR so a human can decide — nothing is silently lost.
- IN1-2 (Health plan ID) present but not yet mapped to FHIR; value preserved for review: PLAN123^PPO
- IN1-16 (Name of insured) present but not yet mapped to FHIR; value preserved for review: DOE^JANE
- IN1-18 (Insured’s date of birth) present but not yet mapped to FHIR; value preserved for review: 19850312
- IN1-19 (Insured’s address) present but not yet mapped to FHIR; value preserved for review: 456 OAK ST^^BOSTON^MA^02101
Related mappings
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.