EligibilityRequest

List of content:

Description:

The EligibilityRequest can be used via a provider to checks for valid insurance coverage (to fetch information about the Patient (IMIS Insuree) eligibility). More info: http://hl7.org/fhir/STU3/financial-module.html#order

In the current version are mapped fields required by uspServiceItemEnquiry database stored procedure (SP) which is used by python EligibilityService (link).

Only the HTTP POST the method is currently exposed because of EligibilityRequest haven't database model representation and it is impossible to fetch information about specific EligibilityRequest.

The endpoint expects the FHIR EligibilityRequest representation as a body of the POST request and will return the EligibilityResponse as an outcome.

FHIR resource:

EligibilityRequest

Fields mapping:

Table legend:

Color

Description

Color

Description



Mapped - the final choice, the most suitable choice



Need to be found the best place for the field (not mapped currently)



Currently not important - not mapped

EligibilityRequest mapping:

The FHIR EligibilityRequest mapping covers all field required by the OpenIMIS EligibilityRequest (link)

OpenIMIS field

FHIR field

Note

STPH

Mapping status

CHFID

patient

A reference which helps determine the specific insuree (perhaps we can base only on patient chfid).



mapped

ServiceCode

benefitCategory

The concept used t represent the service code



mapped

ItemCode

benefitSubCategory

The concept used t represent the item code

ItemCode should be on the same level as ServiceCode

In FHIR v4, the EligibilityRequest has been change to CoverageEligibilityRequest and has multiple items with same level. 

mapped

EligibilityRequest strategy change is mapped depending on the configuration set in openimis-be-api_fhir_py/api_fhir/apps.py file

:

"stu3_fhir_eligibility_config": { "fhir_serializer": "EligibilityRequestSerializer", "fhir_item_code": "item", "fhir_service_code": "service", "fhir_total_admissions_code": "total_admissions", "fhir_total_visits_code": "total_visits", "fhir_total_consultations_code": "total_consultations", "fhir_total_surgeries_code": "total_surgeries", "fhir_total_deliveries_code": "total_deliveries", "fhir_total_antenatal_code": "total_antenatal", "fhir_consultation_amount_code": "consultation_amount", "fhir_surgery_amount_code": "surgery_amount", "fhir_delivery_amount_code": "delivery_amount", "fhir_hospitalization_amount_code": "hospitalization_amount", "fhir_antenatal_amount_code": "antenatal_amount", "fhir_service_left_code": "service_left", "fhir_item_left_code": "item_left", "fhir_is_item_ok_code": "is_item_ok", "fhir_is_service_ok_code": "is_service_ok", "fhir_balance_code": "balance", "fhir_balance_default_category": "medical", "fhir_active_policy_status": ("A",) },



In "stu3_fhir_eligibility_config" field, fhir_serializer need to be set that determines the ElibilityRequest strategy.

"EligibilityRequestSerializer" is a default fhir_serializer.

EligibilityResponse mapping:

see subpage: EligibilityResponse

Endpoint specification:

Example of endpoint URL:

http://127.0.0.1:8000/api_fhir/EligibilityRequest/

Supported HTTP operation:

  • CREATE - used to request EligibilityService. The FHIR representation is converted to OpenIMIS python EligibilityRequest (link) which is used by the EligibilityService (link). List of supported fields can be found in the table which shows the mapping between OpenIMIS and FHIR. Should be used the POST HTTP method and the body as JSON representation (example can be found below). 

    Note:

    • The EligibilityService is used to process the request (link).

    • The FHIR EligibilityResponse will be returned as the outcome.. Example of the outcome can be found below.

  • READ - the operation currently not supported

  • UPDATE - the operation currently not supported

  • DELETE - the operation currently not supported

Module configuration used by the endpoint: 

Configuration key

Description

Default value

Configuration key

Description

Default value

default_audit_user_id

default value which will be used for 'audit_user_id' field

"default_audit_user_id": 1,

stu3_fhir_eligibility_config

configuration of system and codes used to represent the specific codes used by eligibility endpoint

"stu3_fhir_eligibility_config":{
  "fhir_item_code":"item",
  "fhir_service_code":"service",
  "fhir_total_admissions_code":"total_admissions",
  "fhir_total_visits_code":"total_visits",
  "fhir_total_consultations_code":"total_consultations",
  "fhir_total_surgeries_code":"total_surgeries",
  "fhir_total_deliveries_code":"total_deliveries",
  "fhir_total_antenatal_code":"total_antenatal",
  "fhir_consultation_amount_code":"consultation_amount",
  "fhir_surgery_amount_code":"surgery_amount",
  "fhir_delivery_amount_code":"delivery_amount",
  "fhir_hospitalization_amount_code":"hospitalization_amount",
  "fhir_antenatal_amount_code":"antenatal_amount",
  "fhir_service_left_code":"service_left",
  "fhir_item_left_code":"item_left",
  "fhir_is_item_ok_code":"is_item_ok",
  "fhir_is_service_ok_code":"is_service_ok"
}

Example JSON representation of content:

EligibilityRequest:

{ "resourceType": "EligibilityRequest", "patient": { "reference": "Patient/chfid" }, "benefitCategory": { "coding": [ { "code": "service" } ], "text": "service_code" }, "benefitSubCategory": { "coding": [ { "code": "item" } ], "text": "item_code" } }

EligibilityResponse:

{ "resourceType": "EligibilityResponse", "insurance": [ { "benefitBalance": [ { "category": { "text": "total_admissions" }, "financial": [ { "allowedUnsignedInt": 1 } ] }, { "category": { "text": "total_visits" }, "financial": [ { "allowedUnsignedInt": 3 } ] }, { "category": { "text": "total_consultations" }, "financial": [ { "allowedUnsignedInt": 23 } ] }, { "category": { "text": "total_surgeries" }, "financial": [ { "allowedUnsignedInt": 5 } ] }, { "category": { "text": "total_deliveries" }, "financial": [ { "allowedUnsignedInt": 2 } ] }, { "category": { "text": "total_antenatal" }, "financial": [ { "allowedUnsignedInt": 11 } ] }, { "category": { "text": "consultation_amount" }, "financial": [ { "allowedMoney": { "value": 123.21 } } ] }, { "category": { "text": "surgery_amount" }, "financial": [ { "allowedMoney": { "value": 12.11 } } ] }, { "category": { "text": "delivery_amount" }, "financial": [ { "allowedMoney": { "value": 26.0 } } ] }, { "category": { "text": "hospitalization_amount" }, "financial": [ { "allowedMoney": { "value": 42.0 } } ] }, { "category": { "text": "antenatal_amount" }, "financial": [ { "allowedMoney": { "value": 59.14 } } ] }, { "category": { "text": "service_left" }, "financial": [ { "allowedUnsignedInt": 12 } ] }, { "category": { "text": "item_left" }, "financial": [ { "allowedUnsignedInt": 1 } ] }, { "category": { "text": "is_service_ok" }, "excluded": false }, { "category": { "text": "is_item_ok" }, "excluded": true } ] } ] }



Did you encounter a problem or do you have a suggestion?

Please contact our Service Desk



This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License. https://creativecommons.org/licenses/by-sa/4.0/