EligibilityRequest real time flow

Hello,

I’d like to ask a question about what the workflow would be for a real time eligibility request functionality.

My understanding of the current flow is

  1. POST /EligibilityRequest - create EligibilityRequest resource and get back identifier
  2. GET /EligibilityResponse?request= - search for the EligibilityResponse that corresponds to the request

This flow works but is more tailored towards an asynchronous flow. In a synchronous, “real time” flow, I would like to submit an EligibilityRequest and directly get back an EligibilityResponse. Would the best practice way of doing this be to define a custom Operation?

Thanks in advance!

Yes. If you want to do an HTTP POST and get back the response directly, you’d need to use either a custom operation or a message (and operations would have lower overhead).

Thanks Lloyd. Perhaps this can be standardized in the future with an “official” operation, since submitting real time eligibility requests is a common workflow.

That’s certainly a possibility. Feel free to submit a “change proposal” (link at the bottom of each page in the spec) to suggest the inclusion of such an operation in FHIR R4.

Same type of operation would be useful for appointment as well…

Or you could simply use a conventional HTTP request-response exchange with the resource in the body. We intentionally haven’t documented within FHIR communication/exchange protocols (MLLP, WSI web services, ebxml, etc.) which are defined or adequately documented elsewhere.

I thought about that as well, but then would it be possible to describe that interaction in the CapabilityStatement?

Here is the snippet from my CapabilityStatement:

  <messaging>
    <endpoint>
      <protocol>
        <system value="http://hl7.org/fhir/message-transport" />
        <code value="http" />
      </protocol>
      <address value="http://www.pknapp.com/con14" />
    </endpoint>
    <reliableCache value="10000000000" />
    <documentation value="REST POST Request-Response." />
    <event>
      <code>
        <system value="http://hl7.org/fhir/message-events" />
        <code value="eligibility-check" />
      </code>
      <category value="consequence" />
      <mode value="receiver" />
      <focus value="EligibilityRequest" />
      <request>
        <reference value="http://hl7.org/fhir/StructureDefinition/EligibilityRequest" />
      </request>
      <response>
        <reference value="http://hl7.org/fhir/StructureDefinition/EligibilityResponse" />
      </response>
      <documentation value="Determine the Eligibility under a provided Coverage." />
    </event>
  </messaging>