Patient Lookup - SMART on FHIR

Epic Implementation (App Orchard Store)


Patient Lookup launch URL:




Tokens in oauth 2.0 context: user=%SYSLOGIN%

Team status meetings scheduled for Monday of every week at 3:30 pm EDT.

Email from Denise Witt



12:11 pm

The FA ambulatory resource to add the option on the More from Patient Encounters is Cindy Boothby. Please include her in all meetings and discussions.

Email from Bryon Baumstarck

Wednesday 4/29/2020 

9:59 am



Quick clarification here – there are two data flow diagrams: 1) the Epic data flow (which does not include anything third-party), and 2) the combined third-party plus Epic data flow (which has to come from the third-party vendor).


For the purpose of standard Interconnect data flow, the first one does not actually change with third-party integrations…

  • DMZ

    • Externally accessible IP address (with DNS) pointing to a load balanced VIP on the DMZ load balancing appliance

    • That external load balancing appliance then talks to a pair of reverse proxy Windows servers

    • Those reverse proxy Windows servers in turn talk to an internal IP address (with DNS) pointing to a load balanced VIP on the internal load balancing appliance

  • Internal

    • Internal IP address (with DNS) pointing to a load balanced VIP on the internal load balancing appliance

    • That internal load balancing appliance then talks to a pair of Interconnect Windows servers

    • Those Interconnect Windows servers in turn talk to the Epic operation database (aka Epic environment)

This is consistent with all Interconnect integrations. The only difference between integrations would be the IIS applications in play on each of the Windows servers (what we at Epic call “Use Case Configurations”).


What is being asked by Franciscan here is not the Epic data flow diagram (as that is well understood – minus the ‘use case configuration’ details specific to this integration), it is the combined third-party plus Epic diagram that is being asked for. We need to know how the third-party systems talk with each component of the Epic system as well as how the Epic system will in turn talk to the third-party systems.


For example;

  • How does the “SMART App launch work? What systems are in play for getting the access token?

  • When the “Patient Match results” occur, what systems are in play on that step? Is something queried in the Epic environment, and if so how is the response communicated back?


The provided diagram is a very high level diagram providing only the basic pieces. However, what is needed from a technical perspective is much lower level than that. We need to see individual servers (both on the third-party side as well as the Epic side), and the communication paths between all those servers on both sides for an end-to-end message being process. This is not something the Client Systems team has knowledge of (in general). Thus, since the application team and vendor developing the integration are the ones that know the pieces involved at a programmatic level, they are the ones that need to complete the picture. This typically involves the vendors development team (as they are the ones that know their systems and what the message flow generally looks like), and the Epic application team (as they typically understand how the specific calls and response are handled on the Epic side).

Email from Hannah Ray



5:22 pm

Hi everyone,


Just wanted to give you all an update – I just met with Cindy and Jonathan, and Cindy was able to get the integration record set up and the button placed. However, it doesn’t look like the app is actually launching when the button is clicked at the moment. I’m going to look into what might be causing that and I’ll make sure to have another update by our meeting this week.




Email from Hannah Ray



1:04 pm

Hi Jovana,


I did meet with Jonathan and Cindy on Monday and we made some progress on the launch issue. Previously, we weren’t seeing anything happen when the button was clicked. Now, we are getting a 404 error that we are still working to resolve.


Email from Hannah Ray



10:32 am

Hi everyone,


I just wanted to give an update – it looks like the 404 error that we have been getting when trying to launch Patient Lookup is likely happening because Franciscan’s current provider-facing FHIR URL is not externally accessible. A request has been put in to get that fixed but we won’t be able to confirm that that solves the issue until the URL is updated.




Email from Anne Smith



2:13 pm

Thank you Hannah for that update!  I apologize for having to miss today’s meeting.


My status update:

  • Spreadsheet of ACO staff for Patient Lookup access has been sent to Medical Directors 

    • Once final selection has been completed the list will be provided to Hannah Ray @ Epic

    • Target for initial user list to be sent = by 5/22

  • A meeting with the IS Security team will need to be convened to discuss security processing module after initial access setup by Epic

    • ACO security process will add Patient Lookup to its new user access steps

    • Protocols for end-user support will need to be included in education tip sheet

Email from Hannah Ray



2:57 pm

Hi Cindy,

The URL in the integration record should be the Patient Lookup launch URL, not https://ematest.franciscanalliance.org/FHIR_PROXY. The FHIR_PROXY URL needs to be set as the provider facing FHIR URL in the Care Everywhere Phone Book. I think that’s where we’re getting stuck right now.


Email from Anne Smith



10:34 am

Hello Jovana –


Our status on security user-named access to the Patient Lookup tool has been modified. In order to access the menu item a user will need to be within an Epic patient record, and the patient will need to be an MSSP patient in order to get results using the tool.  Based on that, cyberspace security will not need to be applied on a user-named basis.  Patient records access rights will fall within our security policies of “right to know, need to know”.


We can consider the security piece of the Health Endeavors project plan complete.


Best regards, Anne