National Health Authority

Command Palette

Search for a command to run...

FHIR Implementation Guide

Adopt FHIR R4 for ABDM and NHCX with profiles, bundles, validation, and implementation tools.

FHIR gives ABDM and NHCX a common data structure for health records and claim data. Use this guide before you build or validate an NHCX FHIR bundle. Then use Requests and Responses for use case payload rules.

Scope

This guide summarizes the NRCES guidance for FHIR adoption in ABDM and NHCX. It covers FHIR concepts, bundle structure, profile use, validation, and tools. The source applies to FHIR R4 version 4.0.1.

Key FHIR concepts

ConceptUse
ResourceModel one health or claim data unit.
BundleSend multiple resources as 1 package.
ProfileConstrain a base FHIR resource for a context.
ExtensionAdd a data element when the base resource lacks it.
TerminologyUse standard code systems and value sets.
ValidationCheck structure, cardinality, codes, invariants, and profile rules.
InteroperabilityExchange data with a common format and protocol.

Resource categories

CategoryExamples
ClinicalAllergy, Condition, Procedure
AdministrativePractitioner, CareTeam, Device, Organization
FinancialClaim, Coverage, PaymentNotice

Data types

TypeUse
Simple typeStore one value, such as Boolean, integer, string, or date.
Complex typeStore a structured value, such as Address, HumanName, or Identifier.
Metadata typeDescribe metadata for a resource.
Special typeModel healthcare details, such as Dosage, Reference, or Meta.

Exchange paradigms

FHIR supports REST APIs, documents, messages, and services. Choose the paradigm that matches the workflow. NHCX uses FHIR bundles inside encrypted protocol payloads.

Bundle structure

Use a bundle to package related resources for exchange. Set the bundle type from the use case.

Bundle typePrimary useStructure
documentABDM clinical artefactFirst entry is Composition; other entries support the document.
collectionNHCX claim workflowEntries contain claim, patient, coverage, diagnosis, and related resources.

A bundle must include these key elements.

ElementRule
Bundle.typeSet the processing purpose, such as document or collection.
Bundle.timestampSet the creation date and time.
Bundle.identifierSet a unique identifier for traceability.
Bundle.entry.fullUrlSet the resource reference URL.
Bundle.entry.resourceAdd the actual FHIR resource.

Implementation guides

A FHIR Implementation Guide tells you how to apply FHIR for a defined context. It can define profiles, extensions, value sets, examples, and narrative guidance. Use the applicable NRCES guide for ABDM or NHCX.

Guide areaCount or scope
ABDM clinical artefacts7 clinical artefacts
ABDM billing artefacts1 billing artefact
ABDM core profiles38 profiles
ABDM terminology42 value sets
ABDM examples92 examples
NHCX health claim artefacts6 artefacts
NHCX core profiles11 profiles
NHCX terminology10 code systems and 17 value sets
NHCX examples51 examples

Read a profile

Profile areaHow to use it
Statistics and referencesReview the human-readable summary of profile changes.
Differential viewReview only the elements changed from the base resource.
Mandatory elementInclude each element with cardinality 1..1 or 1..*.
Must SupportProcess the element when it appears.

Validation checks

Validate each resource before encryption. Check each item in this table.

CheckWhat the validator checks
StructureThe resource has no extra or unknown elements.
CardinalityEach element meets its minimum and maximum count.
Value domainEach value matches its data type and allowed code.
BindingEach Coding or CodeableConcept uses the required system and code.
InvariantEach constraint and co-occurrence rule passes.
ProfileThe resource conforms to the selected profile.
Business ruleThe system applies reference, duplicate, and authorization checks.

Java tooling

The source recommends HAPI FHIR for Java implementations. Use these HAPI FHIR modules for FHIR R4 work.

ModuleUse
hapi-fhir-structures-r4Create and manipulate FHIR R4 resources.
hapi-fhir-validationValidate resources against rules and profiles.
hapi-fhir-validation-resources-r4Load predefined R4 validation resources and profiles.

Validation process

Load the package

Download the package.tgz file from the ABDM FHIR Implementation Guide. Add it to the application class path, such as src/main/resources. Use it for ABDM and NHCX profile and terminology validation.

Set the validation support chain

Add core FHIR structure definitions. Add FHIR vocabulary resources, such as ValueSet and CodeSystem. Add terminology support, cache support, and package support.

Register the validator

Register the HAPI FHIR validator module. Validate each resource before encryption. Review each error and warning.

Use the CLI when needed

Run the HL7 FHIR Validator CLI with the selected implementation guide.

Validate with the FHIR Validator CLI
java -jar path/to/validator_cli.jar file-name.json -ig ndhm.in#ig-version

Use the GUI validator when needed

Open https://validator.fhir.org. Select the Options tab. Add the ndhm.in implementation guide. Choose the latest version. Paste the resource and select Validate.

NHCX bundle reference

Use current /v1 endpoint paths from Requests and Responses.

Use caseFlowBundle
Coverage Eligibility requestProvider to NHCX to payerCoverageEligibilityRequestBundle
Coverage Eligibility responsePayer to NHCX to providerCoverageEligibilityResponseBundle
Preauthorization requestProvider to NHCX to payerClaimBundle
Preauthorization responsePayer to NHCX to providerClaimResponseBundle
Predetermination requestProvider to NHCX to payerClaimBundle
Predetermination responsePayer to NHCX to providerClaimResponseBundle
Claim requestProvider to NHCX to payerClaimBundle
Claim responsePayer to NHCX to providerClaimResponseBundle
Request additional attachmentsPayer to NHCX to providerTaskBundle
Send attachmentsProvider to NHCX to payerTaskBundle
Payment requestPayer to NHCX to providerTaskBundle
Payment responseProvider to NHCX to payerTaskBundle
Status checkProvider or payer to NHCXNone
Reprocess requestProvider to NHCX to payerTaskBundle
Reprocess responsePayer to NHCX to providerTaskBundle
Search requestNHA to NHCX to payerTaskBundle
Search responsePayer to NHCX to NHATaskBundle

Reference tools

AreaTool or library
FHIR standardHL7 FHIR R4 index
ABDM guideABDM FHIR Implementation Guide
NHCX guideNHCX profiles in the ABDM FHIR Implementation Guide
JavaHAPI FHIR
.NETFirely .NET SDK
JavaScriptFHIR Kit Models
ValidatorHL7 FHIR Validator CLI
SchemaJSON Schema

Sources

  • fhir-implementation-guide-abdm-nhcx.md (NHCX sandbox portal)