Skip to main content

Coverage eligibility response

The payer's answer on on_check. It says whether the coverage is in force, what is left in the wallet, and which items need authorisation and which documents.

Sent on /v1/coverageeligibility/on_check.

The bundle

#ResourceProfile
1CoverageEligibilityResponseCoverageEligibilityResponse
2PatientPatient
3CoverageCoverage
4CoverageEligibilityRequestCoverageEligibilityRequest
5Organization (ins)Organization

Elements

1. CoverageEligibilityResponse

NRCeS profile: CoverageEligibilityResponse.

ElementExample
identifier[]system <participant-defined>, value SUB-00001
statusactive
purposeauth-requirements
patientreference urn:uuid:89aac2db-25ae-5b55-90a7-886c6be48ca7, display Ravi Kumar
created2026-09-10
requestreference urn:uuid:4955a87f-deb4-59e6-b795-100a2d705c98, display CoverageEligibilityRequest
outcomecomplete
dispositionPolicy is in force until 2026-12-31. INR 5000 of cover remains. All 1 requested…
insurerreference urn:uuid:39cd4b51-bddd-5cc1-a65a-6fa4a2a83cb5, display Sandbox Payer
insurance[]inforce true
insurance[].coveragereference urn:uuid:966d4b2b-591b-50b6-bbbb-d504d3c6897f, display Sandbox Default Policy
insurance[].benefitPeriodstart 2026-01-01, end 2026-12-31
insurance[].item[]authorizationRequired true
insurance[].item[].productOrServicetext Total Knee Replacement (Unilateral)
insurance[].item[].productOrService.coding[]PROC-KNEE-01 Total Knee Replacement (Unilateral) in <participant-defined>
737481003 Total Knee Replacement (Unilateral) in http://snomed.info/sct
0SRC0JZ Total Knee Replacement (Unilateral) in http://www.cms.gov/Medicare/Coding/ICD10
insurance[].item[].benefit[].type.coding[]benefit Benefit in http://terminology.hl7.org/CodeSystem/benefit-type
insurance[].item[].benefit[].allowedMoneyvalue 150000, currency INR
insurance[].item[].authorizationSupporting[]text `Type: pre
Procedure Code: PROC-KNEE-01`
text `Type: post
Procedure Code: PROC-KNEE-01`
text fullUrl: <participant-defined>
insurance[].item[].authorizationSupporting[].coding[]POI Proof of Identity (Aadhaar / Passport / Voter ID) in <participant-defined>
CER Medical Certificate / Doctor Referral in <participant-defined>
RAD Radiology / X-Ray / CT / MRI Scan Reports in <participant-defined>
and 7 more

2. Patient

NRCeS profile: Patient.

ElementExample
identifier[]system <participant-defined>, value MRAV1985001
system https://healthid.ndhm.gov.in, value 91-1234-1234-1234
identifier[].type.coding[]ABHA Ayushman Bharat Health Account (ABHA) ID in https://nrces.in/ndhm/fhir/r4/CodeSystem/ndhm-identifier-type-code
name[]text Ravi Kumar
telecom[]system phone, value 9876543210, use mobile
gendermale
birthDate1985-06-15

3. Coverage

NRCeS profile: Coverage.

ElementExample
identifier[]system <participant-defined>, value SUB-00001
statusactive
type.coding[]HIP health insurance plan policy in http://terminology.hl7.org/CodeSystem/v3-ActCode
subscriberreference urn:uuid:89aac2db-25ae-5b55-90a7-886c6be48ca7, display Ravi Kumar
subscriberIdMRAV1985001
beneficiaryreference urn:uuid:89aac2db-25ae-5b55-90a7-886c6be48ca7, display Ravi Kumar
relationship.coding[]self Self in http://terminology.hl7.org/CodeSystem/subscriber-relationship
periodstart 2026-01-01, end 2026-12-31
payor[]reference urn:uuid:39cd4b51-bddd-5cc1-a65a-6fa4a2a83cb5, display Sandbox Payer
class[]value POL7UMU002, name Sandbox Default Policy
class[].type.coding[]plan Plan in http://terminology.hl7.org/CodeSystem/coverage-class

4. CoverageEligibilityRequest

NRCeS profile: CoverageEligibilityRequest.

ElementExample
identifier[]system <participant-defined>, value 4955a87f-deb4-59e6-b795-100a2d705c98
statusactive
priority.coding[]normal Normal in http://terminology.hl7.org/CodeSystem/processpriority
purposeauth-requirements
patientreference urn:uuid:89aac2db-25ae-5b55-90a7-886c6be48ca7, display Ravi Kumar
created2026-09-10T23:53:59+05:30
insurerreference urn:uuid:39cd4b51-bddd-5cc1-a65a-6fa4a2a83cb5, display Sandbox Payer
insurance[]focal true
insurance[].coveragereference urn:uuid:966d4b2b-591b-50b6-bbbb-d504d3c6897f, display Sandbox Default Policy

5. Organization (ins)

NRCeS profile: Organization.

ElementExample
type[].coding[]ins Insurance Company in http://terminology.hl7.org/CodeSystem/organization-type
nameSandbox Payer
address[]city Bengaluru, state Karnataka, country India

Rules

1. Read the answer in three places

outcome, insurance[].inforce and insurance[].item[]. disposition is prose for a human.

2. Match to the request by reference

Use CoverageEligibilityResponse.request.reference, never a resource id, to join the answer to what you sent.

3. Index entries by fullUrl

A response can carry more than one Patient or Organization. Index by fullUrl, not by resource type.

4. Money

allowedMoney is the balance remaining and usedMoney the amount used, not the sum insured. There is one benefit per wallet; read them all.

5. Build for the fuller form

benefit[] with Procedure, Investigation and Stratification types for benefits, and authorizationSupporting[] with the mandatory document codes for auth-requirements. Tolerate a leaner answer.

6. Documents by stage

authorizationSupporting[] lists the documents the next request must carry. Its text names the stage: pre for the preauthorisation, post for the claim.

7. The identifier is not a correlation key

CoverageEligibilityResponse.identifier identifies the beneficiary at the hospital. Correlate on the protocol headers.

PMJAY

The generic bundle above is what every payer takes, IRDAI-regulated insurers and TPAs included. PMJAY takes it with the changes and requirements below.

What changes in the bundle

PMJAY uses a different bundle for this step, headed by CoverageEligibilityRequest rather than CoverageEligibilityResponse.

#ResourceProfile
1CoverageEligibilityRequestCoverageEligibilityRequest
2PatientPatient
3Organization (prov)Organization
4Organization (pay)Organization
5Locationnone declared; NRCeS Location
6CoverageCoverage
7PractitionerRolePractitionerRole
8CoverageEligibilityResponseCoverageEligibilityResponse
9Patientnone declared; NRCeS Patient
10Coveragenone declared; NRCeS Coverage
11Organization (pay)none declared; NRCeS Organization
12Organization (prov)none declared; NRCeS Organization
8. CoverageEligibilityResponse

NRCeS profile: CoverageEligibilityResponse.

ElementExample
identifier[]system https://hcx.pmjay.gov.in/v1/coverageeligibility/check, value PMJAY0000X-IN1910000151
statusactive
purposeauth-requirements
patientreference https://payer.nha.gov.in/coverageeligibility/v1/coverageeligibility/on_check/co…
created2026-09-11T00:32:42+05:30
requestorreference https://payer.nha.gov.in/coverageeligibility/v1/coverageeligibility/on_check/co…
requestreference https://nhcx.abdm.gov.in/coverage-eligibility/request
outcomecomplete
dispositionPolicy is currently in-force
insurerreference https://payer.nha.gov.in/coverageeligibility/v1/coverageeligibility/on_check/co…
insurance[]inforce true
insurance[].coveragereference https://payer.nha.gov.in/coverageeligibility/v1/coverageeligibility/on_check/co…
insurance[].item[]excluded false, authorizationRequired true
insurance[].item[].category.coding[]MG General Medicine
insurance[].item[].productOrService.coding[]MG0111A Pleural Effusion (Pleural Effusion)
MG072C Acute Haemodialysis (Acute Haemodialysis)
insurance[].item[].benefit[].type.coding[]Procedure Procedure in https://hl7.org/fhir/R4/codesystem-benefit-type.html
insurance[].item[].benefit[].allowedMoneyvalue 2070, currency INR
value 1725, currency INR
insurance[].item[].authorizationSupporting[]text `Type: pre
Procedure Code:MG0111A`
text fullUrl: https://payer.gov.in/policy/questionnaire/100003
text fullUrl: https://payer.gov.in/policy/questionnaire/100008
and 7 more
insurance[].item[].authorizationSupporting[].coding[]MAND0409 any investigations done
MAND0408 Clinical notes detailing history and Admission notes showing vitals and examina…
MAND0455 CXR PA view or CECT chest abdomen and pelvis
and 9 more

The CoverageEligibilityRequest, Patient, Organization, Location, Coverage, PractitionerRole entries are shaped as in the chapters that introduce them.

What PMJAY specifies

  • The bundle echoes the whole request first and then gives the answer, with the payer's own Patient, Coverage and both Organization entries.
  • A PMJAY answer can carry only item.excluded and item.authorizationRequired, without benefitPeriod, benefit[] or authorizationSupporting[]. The documents then come from the plan.
  • The payer's Patient can differ from yours in name, gender and birth date. Do not overwrite your record from it.

Use cases, APIs and data elements

C3 Respond to coverage eligibility (payer)

The eligibility and plan details for the beneficiary asked about. A payer may instead answer with a forward instruction, asking the exchange to pass the request to another payer.

API/v1/coverageeligibility/on_check apis/02-eligibility/v1-coverageeligibility-on-check.bru
Callback/v1/coverageeligibility/check apis/02-eligibility/v1-coverageeligibility-check.bru
Workflownone (or 5 under PMJAY)
Carries JWEyes
Focal resourceCoverageEligibilityResponse

Request headers

HeaderExample value
x-hcx-sender_code1518@hcx
x-hcx-recipient_code1000004446@hcx
x-hcx-api_call_id{{$guid}}
x-hcx-request_id{{$guid}}
x-hcx-correlation_id{{$guid}}
x-hcx-workflow_id11
x-hcx-timestamp{{$isoTimestamp}}
x-hcx-statusresponse.complete
x-hcx-ben-abha-id91711234567890
x-hcx-debug_flagINFO

Data elements

ElementLabelGroupTypeCard.FHIR pathExampleNotes
outcomeVerdict OutcomeVerdictcode1..1CoverageEligibilityResponse.outcomecomplete
inforcePolicy In ForceCoverageboolean1..1CoverageEligibilityResponse.insurance[0].inforcetrue
allowedMoneyRemaining Balance AmountBenefitdecimal0..1CoverageEligibilityResponse.insurance[0].item[].benefit[type=benefit].allowedMoney.value485000.00

NRCeS profiles: CoverageEligibilityResponse.