Prior Auth Support Module Overview
EAP

 
Please contact us if you would like to try out this early access feature.

Introduction

 

Prior Authorization Support (PAS) is a Smile CDR module that enables the direct submission of prior authorization requests from EHR systems. It streamlines and automates the prior authorization process between healthcare providers and payers, ensuring efficient, interoperable, and secure management of authorization requests.

Built on Fast Healthcare Interoperability Resources (FHIR) standards and aligned with HL7 Da Vinci Prior Authorization Support (PAS) implementation guidelines (IG), the PAS module enhances the prior authorization workflow with several key features.

Operations

 

Smile CDR supports the PAS IG with the following operations:

Claim/$submit



UseParameterTypeCardinalityDescription
INPAS Request BundleResource1..1A Bundle containing a single Claim and referenced resources. If the request is an Update request multiple Claims are allowed as part of the Bundle.
OUTPAS Response Bundle or OperationOutcome (in case of error)Resource1..1A Bundle containing a single ClaimResponse and referenced resources, or an OperationOutcome in case of errors.

Claim/$inquire



UseParameterTypeCardinalityDescription
INPAS Inquiry Request BundleResource1..1A Bundle containing a single ClaimInquiry and referenced resources.
OUTPAS Inquiry Response Bundle or OperationOutcome (in case of error)Resource1..1A Bundle containing a single ClaimInquiryResponse and referenced resources, or an OperationOutcome in case of errors.

ClaimResponse/$sdh.pa.submit



  • ClaimResponse/$sdh.pa.submit is a custom Smile CDR operation, intended for internal use inside the Payer environment. It allows the various payer back-end systems to send their responses to the PAS module, including authorization decisions such as approvals, denials, or requests for additional information. It accepts a single Bundle resource as input, which includes the PAS ClaimResponse along with any referenced resources. The output is also a single Bundle resource containing the PAS ClaimResponse and any referenced resources, or it may return an OperationOutcome resource in case of errors. The PAS module will in turn make the response available to the Provider, either via polling or subscription push if configured for the specific Provider.
  • Request flow — at a high level, the module performs the following steps for every ClaimResponse/$sdh.pa.submit call:
    1. Validate the request — the incoming Bundle is validated (see default validations below).
    2. Persist the response Bundle — the response Bundle is upserted under the profile-pas-response-bundle profile, keyed on the contained ClaimResponse.identifier. If a Bundle for the same ClaimResponse identifier already exists in the repository it is updated in place; otherwise a new one is created. This is what makes the response discoverable by Claim/$inquire and by any configured Subscriptions.
    3. Evaluate for CDex follow-up Task — if the response indicates that additional information is required from the provider (driven by the review-action / reason-code combination), a CDex Task is created to drive the follow-up workflow.
  • The module performs the following default validations on every request:
    • Bundle structure: The first entry of the Bundle must be the ClaimResponse resource.
    • Reference resolution: Every reference present on the ClaimResponse must resolve to exactly one entry within the same Bundle.
    • Insurer: ClaimResponse.insurer must be present, must reference an Organization, and that Organization must have an identifier with a value.
    • Payer item Trace Number (TRN): Exactly one extension-itemTraceNumber must be present on ClaimResponse.item whose system matches one of the configured payer_system_item_trn values.
    • Reason code (conditional): If the review action is A3 or A4, a Reason Code extension must be present.
    • CommunicationRequest (conditional): If the review action is A4 and the reason code is 0U, a CommunicationRequest must be included in the Bundle.
  • URL: [base-fhir-endpoint]/ClaimResponse/$sdh.pa.submit
UseParameterTypeCardinalityDescription
INPAS Response BundleResource1..1A Bundle containing a single ClaimResponse and referenced resources.
OUTPAS Response Bundle or OperationOutcome (in case of error)Resource1..1A Bundle containing a single ClaimResponse and referenced resources, or an OperationOutcome in case of errors.

PAS Request Routing

 

To route the PAS Requests from healthcare providers to the payer, the following components are used:

FHIR Subscription are used to track PAS Request Bundles from Claim/$submit as they are created and updated in the FHIR repository, then pushing them to the payer-preferred message broker (i.e., Kafka or ActiveMQ).

{
    "resourceType": "Subscription",
    "id": "profile-pas-request-bundle",
    "status": "active",
    "criteria": "Bundle?_profile=http://hl7.org/fhir/us/davinci-pas/StructureDefinition/profile-pas-request-bundle",
    "channel": {
        "type": "message",
        "endpoint": "channel:<indicate channel name>",
        "payload": "application/json"
    }
}

The Message Broker is a messaging system used as the communication channel to transmit prior authorization requests and updates to the payer. PAS Request Bundles, including new requests and updates, are pushed to this broker and then consumed by the payer to initiate the adjudication process.