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:

ColorDescription

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 fieldFHIR fieldNoteSTPHMapping status
CHFIDpatient
A reference which helps determine the specific insuree (perhaps we can base only on patient chfid).

mapped
ServiceCodebenefitCategoryThe concept used t represent the service code
mapped
ItemCodebenefitSubCategoryThe 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:

Module configuration used by the endpoint: 

Configuration keyDescriptionDefault value
default_audit_user_iddefault value which will be used for 'audit_user_id' field"default_audit_user_id": 1,
stu3_fhir_eligibility_configconfiguration 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
        }
      ]
    }
  ]
}