Operations Overview
The following API's for FHIR Operations are in scope. For consistency, a FHIR messaging paradigm will be used. Some implementers may prefer to create a separate endpoint for Claim Reversals.
Functionality | Operation | Definition | Response |
---|---|---|---|
Submit Claims + Reversals | [base]Claim/$submit |
Bundle with Message Header, focus=Claim or ProffClaim or Reversal Request Parameters | Claim Response or Reversal Response |
Get Totals Date Range |
[base]/$daily-totals | Bundle with Message Header, focus= Parameters:In resource. Custom FHIR Operation/Parameters:In resource | Bundle, Message Header, focus= Parameters:Out Totals by Date |
Get Detail Records, Date Range |
[base]/$adjudication-details | Bundle with Message Header, focus = parameters:In resource. Custom FHIR Operation/Parameter resource | Bundle, Message Header, focus= Parameters:Out Detailed Record by Date |
An API definition is included for each, found HERE
For consistency and ease of use a FHIR "messaging" paradigm will be used. This ensures that the message header, which contains key data is present in all transactions.
FHIR Messaging Parameters
As described in the FHIR specification , FHIR allows a message with the use of the Parameters resource to invoke an operation. This allows for the consistent use of messaging for all transactions and is therefore the favourable approach.
Following is an excerpt from the FHIR standard (https://build.fhir.org/messaging.html#operations)
A message can be used to invoke an operation as defined for a RESTful interface using an operation definition. To invoke an operation using a message:
- The requester sends a message (a bundle with type = message, and a message header resource)
- The message header has an event.system of urn:ietf:rfc:3986
- The event.code is the URL from the operation definition OperationDefinition.url
- The MessageHeader.focus refers to a Parameters resource
- The parameters resource is populated appropriately as specified by the nominated operation definition
- The recipient executes the operation as specified, and then:
The receiver sends a message (a bundle with type = message, and a message header resource)
- The message header has the same event as the original message
- The MessageHeader contains a response that refers to the original request message, and a code for the outcome, with details if the operation failed
- The MessageHeader.focus refers to a Parameters resource
- The parameters resource is populated appropriately as specified for the response by the nominated operation definition If the operation definition specifies a single return, then this is returned as the target of the MesssageHeader.focus directly