Payer: send the claim response
Payer returns interim (response.partial) and final (response.complete) ClaimResponseBundles for a claim to the provider via NHCX.
Business purpose
This callback carries the payer's adjudication of the final claim, possibly in several stages. Interim partial responses let the payer signal receipt, processing and queries while the claim stays open; the complete response fixes the financial decision (approved, partially approved or rejected) and triggers payment advice and settlement. For the hospital it is the source of truth for what will be paid and why; for the payer it is the auditable record of the decision.
When to use
The payer calls it after each step of reviewing a claim, on the claim's correlation ID. It may come several times: progress updates, a query, then approval or rejection.
Preconditions
- A claim with this correlation ID exists and is still open.
- A valid access token and the provider's certificate.
- The header echoes the claim's
x-hcx-correlation_ID, with a newx-hcx-API_call_ID.
Postconditions
- NHCX answers
202and forwards the response. The provider must answer202within 30 seconds. - After
response.partialthe claim stays open. Afterresponse.completeit is closed. - An approval leads to payment notices. After a rejection, the provider may ask for a reprocess.
Common mistakes
- Treating outcome
completeas approval. A rejection is alsocomplete. - Stopping after the first callback. More may follow.
- Sending another response after
response.complete, or using a new correlation ID. - Replying
202too slowly, which makes NHCX retry.
Best practices
- Provider: acknowledge first, then decrypt, then update case state; be idempotent on correlation ID and API_call_ID.
- "Provider: treat the PMJAY query audit trail (USER~datetime~type~comment~actor, entries separated by |; actor is PPD-Trust, CPD-Trust or the hospital name) as display text. Show each entry's comment and never parse a timestamp from it."
- Provider: on complete plus approved, trigger settlement tracking and await 30, 31 and 33; the claim is only closed when 33 arrives and the UTR is persisted.
- Payer: emit 25 on receipt and 28 during processing so the desk sees progress, and put reduction reasons in processNote linked by noteNumber.
- Both: keep x-hcx-status and x-hcx-workflow_ID consistent with the NHA status sheet, since the pair identifies the message.
Related scenario
A state health agency receives a final claim for 13700 INR against an approved preauth. Its bridge first posts 25 (received) and 28 (in process) as response.partial to /v1/claim/on_submit. The medical auditor finds the investigation report missing and the bridge posts 27 with the query text in the adjudication reason display; the hospital answers under 151 on /v1/claim/submit. Satisfied, the payer posts 26 with outcome complete, reason approved and benefit 13700 as response.complete. The hospital's callback acknowledges each message within 30 seconds, marks the claim adjudicated and waits for the payment notice under workflow 30.
Specification
Chapter Claim response of the NHCX integration specification. Every NHCX call carries the access token from the session call in a header named Example These fields go in the JWE protected header of Key management algorithm. Always Example Content encryption algorithm. Always Example Your participant code. Mandatory on the envelope. Example The recipient's. For a provider, the processor code from the policy lookup. Mandatory on the envelope. Example Fresh on every message, including responses. Mandatory on the envelope. Example One per originating request. The Open Protocol page marks it Mandatory; the Technical Specifications page marks it Optional. Optional on the envelope. Send it anyway, as a fresh UUID per originating request: it is cheap and satisfies both readings until NHA rules. Example The thread that ties a request to its answers. The correlation ID rule says when to reuse it. Mandatory on the envelope. Example Which step, or which case. The workflow code explains both readings. Optional on the envelope. Example The time the message was made. Timestamp gives the format. Mandatory on the envelope. Example Where this message stands. Status words lists the values. Mandatory on the envelope. Example The beneficiary's ABHA number. Optional: send it when the beneficiary has an ABHA number. Optional on the envelope. Example Example Always One of HTTP 202 Accepted with the StatusSuccessResponse acknowledgement (entity_type claim) from NHCX, then asynchronous delivery to the provider's callback, which must acknowledge with 202 within 30 seconds or NHCX retries up to five times before deleting the request.Authorizations
bearer_authapiKeyRequiredbearer_auth, as the word Bearer, a space and the token. NHCX reads bearer_auth, not Authorization.Bearer <access token>Protected header
payload, not as HTTP headers. Building and sending a JWE shows how to prepare and encrypt the payload, and Receiving a callback how to decrypt one.algstringRequiredRSA-OAEP-256: the content key is wrapped with the recipient's RSA public key.RSA-OAEP-256encstringRequiredA256GCM.A256GCMx-hcx-sender_codestringRequired<payer participant code>x-hcx-recipient_codestringRequired<provider participant code>x-hcx-api_call_idstringRequired<uuid>x-hcx-request_idstring<uuid>x-hcx-correlation_idstringRequired<uuid>x-hcx-workflow_idstring26x-hcx-timestampstringRequired<iso timestamp>x-hcx-statusstringRequiredresponse.completex-hcx-ben-abha-idstring<14-digit ABHA number>x-hcx-debug_flagstringError, Info or Debug. A server may ignore it. Optional on the envelope.INFOBody
typestringRequiredJWEPayload. Every response (on_) call sends it beside payload.JWEPayloadpayloadstringRequiredResponses
202timestampstringapi_call_idstringcorrelation_idstringresultobjectresult.sender_codestringresult.recipient_codestringresult.entity_typestringresult.protocol_statusstringerrorobjecterror.codestringerror.messagestring
Callbacks
- NHCX delivers this call to the provider, on the provider's own
/v1/claim/on_submit, not back to you. Provider receives the claim response.