Universal API Implementation Guide
1.1.20 - ci-build

Universal API Implementation Guide - Local Development build (v1.1.20) built by the FHIR (HL7® FHIR® Standard) Build Tools. See the Directory of published versions

Status Update Mapping

Status Query Mapping

Status Query

The purpose of a status query is for the client to obtain on behalf of an HCP the:

  • outcome of a Benefits Investigation
  • patient's eligibility for the Patient Foundation program

A Status Query FHIR bundle consists of:

  • data previously provided in an Enrollment bundle AND
  • data elements required by FHIR

To create a Status Query Request bundle, use the mapping tables below AND your enrollment bundle for reference. Please refer to the Systematic Queries page for additional information.

Status Query Request Mapping - BIPA and PATIENT FOUNDATION

Row Resource - Element Required or Optional Accepted Values Description
1 MessageHeader.sender.identifier.use Required "usual"  
2 MessageHeader.sender.identifier.system Required   url or IP address for HCP office. This should be the name of the practice.<br
Example: http://practicename.com/
3 MessageHeader.sender.identifier.value Required   HCP identifier; has to be exact identifier used in enrollment bundle or else, Genentech will not be able to locate the correct patient aligned to HCP practice.

Refer to enrollment bundle:
Organization.identifier.value
[where code= 'prov']
4 MessageHeader.source.name Required   name of the client that is submitting on behalf of the HCP. This is the same 'source' name provided in the enrollment bundle.
5 MessageHeader.source.endpoint Required   url or IP address for client.

Example: "http://vendorname.com"
6 MessageHeader.focus.reference Required   the same uuid found in Parameters resource
7 Parameters.parameter.valuereference.identifier.use
[where name= 'requestor-patient']
Required "official"  
8 Parameters.parameter.valuereference.identifier.system
[where name= 'requestor-patient']
Required   same url or IP address for HCP office found in MessageHeader.sender.identifier.system
(where type= 'Organization')
9 Parameters.parameter.value
[where name= 'requestor-patient']
Required   This is the same patient identifier provided by HCP or client in the enrollment bundle:
Patient.identifer.value
(where code= 'PI')
10 Parameters.parameter.assigner.display
[where name= 'requestor-patient']
Required   for assigner.display enter the name of the client
11 Parameters.parameter.valuereference.reference
[where name= 'requestor-servicerequest']
Optional   Optional; provide to help narrow down search
12 Parameters.parameter.valuereference.identifier.value
[where name= '"requester-bundle-enrollment-id']
Optional   Optional; provide enrollment-Id to help narrow patient search.

The same transaction ID provided in the enrollment bundle or received after enrollment bundle is submitted.
13 Parameters.parameter.valuestring
[where name= '"query-string']
Required "CoverageEligibilityResponse?status=active"  
14 ServiceRequest.status Optional "active" Service Request is Optional; provide to help narrow down search Required only if ServiceRequest resource is included in bundle
15 ServiceRequest.intent Optional "order" Service Request is Optional; provide to help narrow down search Required only if ServiceRequest resource is included in bundle
16 ServiceRequest.code.coding.code Optional -"bipa"
-"patient foundation"
-"gpf"
Service Request is Optional; provide to help narrow down search Required only if ServiceRequest resource is included in bundle
17 ServiceRequest.subject.reference
[where subject= 'patient']
Optional   Service Request is Optional; provide to help narrow down search Required only if ServiceRequest resource is included in bundle

Sample Status Query Request Bundle


Status Query Response - PATIENT FOUNDATION

Row Eligibility Details Accepted Values FHIR Field/Element Description
1 Patient Foundation Shipment Method -Upfront
-Replacement
CoverageEligibilityResponse.extension.valuestring
[where url: http://dev.gene.com/fhir/uapi/StructureDefinition/gpf-shipment-method]
Refer to "Products Specific" page (section 11.2) to find which shipment method is available for each product
2 Patient Foundation Eligibility Status -Approved
-Denied
-Approved (Exception)
-Inconclusive
CoverageEligibilityResponse.extension.valuestring
[where url: http://dev.gene.com/fhir/uapi/StructureDefinition/Outcome]
 
3 Approval Date   CoverageEligibilityResponse.servicedDate When Eligibility Status = Approved or Approved (exception), then the Approval Date is displayed
4 Denial Date   CoverageEligibilityResponse.servicedDate When Eligibility Status = Denied, then the Denial Date is displayed
5 Eligibility Reason -No Insurance
-Insured: No Coverage for Medication
-Insured: Can't afford Medication
CoverageEligibilityResponse.disposition  
6 MPAT   Patient.identifier.value
[where "system": "http://gene.com/patientmaster"]
Master Patient # assigned by Access Solutions/Patient Foundation
7 Patient ID   Patient.identifier.value
[where "system": "http://gene.com/patient"]
Practice Patient# assigned by Access Solutions/Patient Foundation
8 Patient ID (HCP assigned patient# provided in the query)   Patient.identifier.value
[where "system" is the same HCP system url provided in the query]
the value should be the same HCP patient id value provided in the query
9 Patient Name   Patient.name.family Patient.name.given Patient name should match the patient that was being queried
10 Patient Birthdate   Patient.birthDate Patient DOB should match HCP records

Sample Status Query Response bundle for GPF


Status Query Response - BIPA

Benefits Investigation Outcome FHIR Resource Element Expected Values Comments
Service Request CoverageEligibilityResponse.identifier where"system": "https://genentech-pps.my.salesforce.com/Case"    
PatientID Patient.identifier.value where "code": "PI"    
Patient FirstName Patient.name.given    
Patient LastName Patient.name.family    
Patient DOB Patient.birthDate    
Drug CoverageEligibilityRequest.extension.valueCodeableCode.coding where "system": "https://fhir.developer.gene.com/CodeSystem/uapi-product-name"   displayed on New BI version
ICD10 / Diagnosis Code CoverageEligibilityRequest.item.diagnosis.diagnosisCodeableConce    
ICD10 / Diagnosis Code CoverageEligibilityRequest.item.diagnosis.diagnosisCodeableConcept    
ICD10 / Diagnosis Code CoverageEligibilityRequest.item.diagnosis.diagnosisCodeableConcept    
Notes CoverageEligibilityResponse.extension.valueCodeableConcept.coding.code where "url": "http://gene.com/fhir/uapi/StructureDefinition/billingInstructions"    
Notes CoverageEligibilityResponse.extension.valueCodeableConcept.coding.code where "url": "http://gene.com/fhir/uapi/StructureDefinition/benefitsSummary"    
Name (Payer Name) Organization.name where type.coding.code= 'ins' contained under CoverageEligibilityResponse    
Plan Product Coverage.class.type.coding.code (where display= SubPlan) contained under CoverageEligibilityResponse CHAMPVA
EPO
FEP
HMO
Indemnity
Managed Medicaid
MA-PD
Medicare Advantage (Part C)
Medicare Part A
Medicare Part B
Medicare Part D
Medicare Supplemental
Not Health Insurance
POS
PPO
Prescription
State Medicaid
TRICARE
VA
 
Plan Type Coverage.class.type.coding.code (where display= Plan)
contained under CoverageEligibilityResponse
Commercial
State Medicaid
Medicare
Healthcare Marketplace
 
Subscriber ID Coverage.subscriberId
contained under CoverageEligibilityResponse
   
Group Number Coverage.class.type.coding.code(group)
contained under CoverageEligibilityResponse
   
Effective Date Coverage.period.start contained under CoverageEligibilityResponse    
Eligibility Period Coverage.extension.valuestring where "url" : "https://fhir.developer.gene.com/StructureDefinition/PlanYear"
contained under CoverageEligibilityResponse
Calendar Year
Calendar Monthly
Calendar Quarterly
Benefit Year
Benefit Monthly
Benefit Quarterly
 
Payer Phone Organization.contact.telecom contained under CoverageEligibilityResponse    
Payer contact Organization.contact contained under CoverageEligibilityResponse    
Reference Number Coverage.extension.valueString where "url": "http://gene.com/fhir/uapi/StructureDefinition/ReferenceNumber" contained under CoverageEligibilityResponse    
BI Obtained Date PENDING    
Benefit Type CoverageEligibilityResponse.insurance.item.benefit.type (?) Major Medical
In Office
ASC
HOPD
Home Infusion
Home Injection
Self Injection
Mail Order
Retail/RX
 
Product Coverage CoverageEligibilityResponse.disposition Yes, if medically necessary
No
 
Product Coverage CoverageEligibilityResponse.insurance.item.network.coding where "system": "http://terminology.hl7.org/CodeSystem/benefit-network" In Network
Out of Network
 
Billing Code CoverageEligibilityResponse.insurance.item.productOrService.coding.code = "billing"
where "system": "http://terminology.gene.com/fhir/usix/uapi/CodeSystem/uapi-product-jcode"
   
Billing Code: Prior Auth CoverageEligibilityResponse.Insurance.item.authorizationRequired Yes
No
 
Billing Code: PreD Required CoverageEligibilityResponse (?) Required
Highly Recommended
Voluntary
 
Admin Code CoverageEligibilityResponse.insurance.productOrService.text
where coding.code = admin
   
Admin Code CoverageEligibilityResponse.insurance.item.productOrService.text
where coding.code = admin
   
Admin Code: Prior Auth/PreD Required CoverageEligibilityResponse (?) Yes
No
 
Prior Authorization Phone Organization.contact.telecom contained under CoverageEligibilityResponse    
Prior Authorization Fax Organization.contact.telecom contained under CoverageEligibilityResponse    
Prior Authorization Online Organization.extension.valuestring(url: "PA Payer Link") contained under CoverageEligibilityResponse    
Individual Deductible CoverageEligibilityResponse.insurance
item.unit.coding.code = "individual"
item.benefit.type.coding.code = "deductible"
item.benefit.type.allowedMoney
   
Individual Deductible Met CoverageEligibilityResponse.insurance
item.unit.coding.code = "individual"
item.benefit.type.coding.code = "deductible"
item.benefit.type.usedMoney
   
Individual Out of Pocket Max CoverageEligibilityResponse.insurance
item.unit.coding.code = "individual"
item.benefit.type.coding.code = "OOP Max"
item.benefit.type.allowedMoney
   
Individual Out of Pocket Max Met CoverageEligibilityResponse.insurance
item.unit.coding.code = "individual"
item.benefit.type.coding.code = "OOP Max"
item.benefit.type.usedMoney
   
Family Deductible CoverageEligibilityResponse.insurance
item.unit.coding.code = "family"
item.benefit.type.coding.code = "deductible"
item.benefit.type.allowedMoney
   
Family Deductible Met CoverageEligibilityResponse.insurance
item.unit.coding.code = "family"
item.benefit.type.coding.code = "deductible"
item.benefit.type.usedMoney
   
Family Out of Pocket Max CoverageEligibilityResponse.insurance
item.unit.coding.code = "family"
item.benefit.type.coding.code = "OOP Max"
item.benefit.type.allowedMoney
   
Family Out of Pocket Max Met CoverageEligibilityResponse.insurance
item.unit.coding.code = "family"
item.benefit.type.coding.code = "OOP Max"
item.benefit.type.usedMoney
   
Insurer Cost Share CoverageEligibilityResponse.insurance
item.benefit.type.coding.code = "InsurerCostShare"
item.benefit.allowedString
   
Patient Cost Share CoverageEligibilityResponse.insurance
item.benefit.type.coding.code = "PatientCostShare"
item.benefit.allowedString
   
Drug Co-Pay CoverageEligibilityResponse.insurance
item.benefit.type.coding.code = "DrugCo-Pay"
item.benefit.allowedMoney
   
Specialist Co-pay CoverageEligibilityResponse.insurance
item.benefit.type.coding.code = "SpecialistCo-Pay"
item.benefit.allowedMoney
   
Place of Service Co-pay CoverageEligibilityResponse.insurance
item.benefit.type.coding.code = "PlaceOfService_Co-Pay"
item.benefit.allowedMoney
   
Deductible(s) Applies to Out of Pocket Max CoverageEligibilityResponse.insurance
item.benefit.type.coding.code = "Does Deductible Apply to OOP"
item.benefit.allowedString
No
Yes
 
Annual Benefit Max CoverageEligibilityResponse.insurance
item.unit.coding.code = "individual"
item.benefit.type.coding.code = "MaxBenefit/Year"
item.benefit.allowedMoney
   
Buy and Bill CoverageEligibilityResponse.insurance
item.benefit.type.coding.code = "BuyBill"
item.benefit.allowedString
Available
Required
Not Available
 
Specialty Pharmacy CoverageEligibilityResponse.extension.valueCodeableConcept.coding.code
where "system": "http://terminology.gene.com/fhir/usix/uapi/CodeSystem/uapi-specialty-pharmacy"
Available
Required
Not Available
 
Specialty Pharmacy 1 / Specialty Pharmacy 2: Organization.name where type.coding.code= 'other'
contained under CoverageEligibilityResponse
   
Specialty Phone 1 / Specialty Phone 2: Organization.contact.telecom
contained under CoverageEligibilityResponse
   
Specialty Fax 1 / Specialty Fax 2: Organization.contact.telecom
contained under CoverageEligibilityResponse
   

Sample Status Query RESPONSE Bundle for BIPA