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

Enrollment

Applicable for Use Case(s):

  • Prescriber Service with Patient Consent
  • Prescriber Service Only
  • Patient Consent Only
  • Copay card enrolllment

Enrollment Resources:


Below is the list of Resources used for Access Solutions, Patient Foundation and Copay Patient enrollments. The payload is a FHIR R4 Bundle resource, which contains:

Applicable to Access Solutions
& Patient Foundation Enrollment?
Applicable to Copay Enrollment? FHIR Resource Name Profile Link Description
Yes Yes Bundle UAPI Bundle - Access Solutions Enrollment A container for a collection of resources and contains the Transaction ID.
Yes Yes MessageHeader UAPI MessageHeader The resource that identifies the type of request and high-level information for the request, such as sender information and endpoints.
Yes Yes List List The resource containing reference to all the resources in an incoming bundle request (except bundle and MessageHeader).
Yes Yes Patient UAPI Patient The resource containing patient information.
Yes Yes Practitioner UAPI Practitioner The resource containing prescriber details.
Yes Yes Organization UAPI Organization The resource used to capture details like practice information, payer address and site of treatment information.
Yes No MedicationRequest UAPI MedicationRequest The resource containing the order for both supply of the medication and the instructions for administration of the medicine to a patient.
Yes Yes QuestionnaireResponse QuestionnaireResponse The resource that captures the questions related to medication, patient or services being applied during an enrollment.
Yes No Condition UAPI Condition The resource containing clinical condition, problem, diagnosis.
Yes Yes Coverage UAPI Coverage The resource containing insurance information of the patient.
Yes No Consent UAPI Consent The resource containing different patient consents.
Yes No Provenance UAPI Provenance The resource that captures the patient's or practitioner signature.
Yes No ServiceRequest UAPI ServiceRequest The resource that contains the services requested during enrollment such.
Yes Yes RelatedPerson UAPI RelatedPerson The resource that contains the person(s) related to the patient.
No Yes Task   The resource used to define copay identifiers required by CRX.
No Yes ExplanationOfBenefit UAPI ExplanationOfBenefit The resource that provides copay enrollment results on patient eligibility.




Enrollment

The details of submitting enrollment bundle into UAPI endpoints.

Note: In examples in this IG there is always auto-generated field "text" which should be ignored by the implementers in the actual JSON payloads which are send to Genentech. In Technical Hints section there is example regex that can be used to remove those elements.

Access Solutions & Patient Foundation Enrollment

1) GET Questionnaire - client system is responsible for selecting specific questionnaire which needs to be included in the Enrollment Bundle - questionnaires can be retrieved by Product Name, SR Type and Version Number - details. The Questionnaire endpoint should be queried with specific Product and Version.

GET {UAPI_AS_URL}/questionnaire?name=Lucentis&version=1.0

Example Response.

2) Submit AS Enrollment bundle

For each Access Solutions & Patient Foundation Enrollment bundle the included ServiceRequest resource defines which specific services are being requested - see details

POST {UAPI_AS_URL}/enrollment

Each enrollment must include following identifiers:

  • organization identifier
  • patient identifier

Additional identifier (bundle-enrollment-id) on the Bundle level is used to identify enrollment transaction. Bundle-enrollment-id is an important identifier (transaction identifier) which can be used in status update queries. Bundle identifier is auto generated by Genentech, and the value submitted in the Enrollment transaction by the sender is ignored.

Note: Other identifiers in enrollment bundle, like on the Practitioner resource level are currently not used for matching by Genentech. The resource identifiers in the fields "fullUrl" and "id" are GUIDs which should be generated by the implementer and should be matching to each other for validation purposes, but the values of those identifiers are also not used by Genentech.


Vendor System is identified based on the API key which is issued to the vendor/client integrating with UAPI.


Example Organization Identifier:

Identifier in the Organization resource submitted by the sender - MUST submit with "use": "usual":

"identifier": [{
           "assigner": {
             "display": "Vendor One Name"
           },
           "system": "http://nema.org/examples/organizations",
           "use": "usual",
           "value": "HOSP-12345"
         }


Example Patient Identifier:

Identifier in the Patient resource submitted by the sender - MUST submit with "use": "official":

"identifier" : [
          {
            "use" : "official",
            "type" : {
              "coding" : [
                {
                  "system" : "http://terminology.hl7.org/CodeSystem/v2-0203",
                  "code" : "PI",
                  "display" : "Patient internal identifier"
                }
              ]
            },
            "system" : "http://vendor.com/ab",
            "value" : "6bcd8467-0473-4836-9128-2e7972f23177",
            "assigner" : {
              "display" : "AB Vendor"
            }
          }
        ],


Example Bundle Identifier:

Identifier in the Bundle resource - auto generated UUID by Genentech:

  "identifier" : {
    "type" : {
      "coding" : [
        {
          "system" : "http://terminology.hl7.org/CodeSystem/v2-0203",
          "code" : "RI",
          "display" : "Resource identifier"
        }
      ]
    },
    "system" : "http://dev.gene.com/fhir/uapi/enrollment/bundle-enrollment-id",
    "value" : "30eec1b3-d067-40ee-8af5-9e7c37130b14",
    "assigner" : {
      "display" : "Genentech Mulesoft"
    }
  },



3) Receive OperationOutcome resource as confirmation of successful enrollment.

Auto generated Bundle Identifier (transaction ID) is shared with the sender via the ID field in OperationOutcome resource returned as part of 200 response after successful enrollment (example)


Copay Enrollment

1) GET Questionnaire:
Client system is responsible for selecting specific questionnaire which needs to be included in the Enrollment Bundle - questionnaires can be retrieved by Product Name and Version Number - details. The Questionnaire endpoint should be queried with specific Product and Version.

GET {UAPI_Copay_URL}/questionnaire?name=Lucentis&version=1.0

Example Response TBD

2) Submit Copay Enrollment bundle

POST {UAPI_Copay_URL}/enroll

Task resource in the Copay enrollment bundle MUST include copay specific parameters:

  • who is applying - enroll-by-id field example: TBD
  • BrandID - identifies the product and the type(s) of assistance the patient is applying for example: TBD

3) Receive Copay enrollment results with response details.

Receive BundleQueryResponse for copay request resource with copay enrollment results. If enrollment was not successful then search-result will include OperationOutcome indicating specific error details.

Additional Operations Allowed for Copay Enrollment

To check if a patient has already been enrolled in a program, and if so, receive current enrollment dates and enrolled programs list

POST {UAPI_Copay_URL}/search

Example request: TBD

Example response: TBD

​​To add an existing Oncology patient to the Financial Assistance Platform Vendor network, so that patient's membership and claim info will be available for the given organization.

PATCH {UAPI_Copay_URL}/enroll/update

Example request: BundleCopayUpdate to initiate copay update

Example response: bundleQueryResponse to return all details of update - example with status "rejected" for original copay enrollment request.