Contact Us

Contact Us

SMART on FHIR F.A.Q

SMART on FHIR app development and integration with EHRs

Well, there are two modes that a SMART on FHIR app can be launched. EHR Launch and Stand Alone Launch. In EHR Launch, the user of the EHR would launch your SMART on FHIR app from within the EHR. So for example, users of Cerner will launch a Technosoft EHR Launch SMART on FHIR app from within Melimium software and users of Epic will launch the SMART on FHIR app from within the Epic Hyperspace software. The SMART on FHIR app will be shown within the Hyperspace/Melinium+ in the Bottom right mainframe. (Top frame and left navigation bar continue to show Melinium or Hyperspace content).

For the stand alone launch, the SMART on FHIR app is launch from the vendor’s app. When the SMART on FHIR app is launched, the EMR’s login screen is shown to the user. User would enter their login credentials for the EMR (ie Epic, Cerner, Allscripts, Athena, etc) and after user is authenticated an authenticated token to the FHIR server is passed to the calling application. From there the calling app can call the FHIR server and fetch patient data.

Technosoft deals with this issue with what we call a chain of trust solution. With EHR launch if some one is calling a URL of your SMART on FHIR app, this call will include an authenticated token to a FHIR server. Your client Hospital, at the time of setting up the SMART on FHIR app, will provide you with the URL to that FHIR server already and that FHIR server will already be white listed in your system. So if you get an authenticated token for that white listed FHIR server then you would know that the caller with those credentials is a legitimate user of Epic/Cerner/Allscripts etc. EHR and you can trust this user since Epic trusts this user. Further authorization levels can be implemented based on the user access and credentials passed by/to your smart on FHIR.

You don’t need to involve Hospital unless you are creating a specific application for them or you want to use their App Orchard account, (if they allow you a minimum fee for EPIC App orchard account is $5K and $15K if you want to use their Non-SMART based APIs). If you are creating a SMART on FHIR application like Technosoft’s meds compare which can be used by any Hospital you just need to test your application with Epic sandboxes and make it compatible using their compatibility tools and upload it to App Orchard Gallery. An interested client will then contact Epic to integrate your application with them.

Smart App Store is a free app store where developers can upload their smart on FHIR applications free of cost. It was designed so that people who are interested in your application can see a demo of the application with Smart on FHIR sandbox. In order to sell your application you would need to upload your application on App Orchard  Gallery (in case of EPIC) then anyone (client) who is interested in your application will contact Epic and then Epic will set up your application for them and will involve you as well. There is a concept of enabling application keys for a client and we do that when Epic setups the application on the client’s environment. You don’t have to implement anything regarding keys, it is a feature from EPIC.

Epic, In their Hyperspace desktop application, Allows launching of SMART on FHIR app from the top menu bar, sidebar or at any specific workflow feature.

SMART on FHIR is basically patient-centric solution and SMART on FHIR allows one to work with a single patient patient. There are ways to get a collection of patients via encounters and other FHIR collections but usually, those are not easily exposed by the major EMR vendors in their FHIR implementations. Please see our article(https://techno-soft.com/integrating-smart-app-with-epic.html) to see more info on this.

Yes, we can consume FHIR API’s on backend server using “fhir-net-api” for .net. But according to my understanding authentication (OAUTH 2.0) will be done on the client side and then we can consume FHIR API’s at the backend using the obtained token.

Yes, for one time someone will need to authenticate from client side and after that, we can use the token returned from EHR FHIR authorization server. There is an option to define “offline_access” scope while sending a request to authorization server which means that it will give us the ability to refresh token (in case of expiry) on our own and user would not need to authenticate again and again.

FHIR is a standard that is used by major EMRs. So if your use case requires general data access that is available through FHIR and is commonly exposed by major EHRs through FHIR then SMART on FHIR will be the way to go. So that you can re utilize your SMART App code in multiple EHRs. But if you have a specific need and would want to get data from an EMR that is not available or exposed through FHIR by the vendor then you would want to use the Vendor’s proprietary APIs for each vendor.

Technosoft provides multiple level of support for companies considering SMART on FHIR implementation. Following are few options:
  1. Technosoft can provide consultancy to your technical resources and help them create their first SMART on FHIR app themselves.
  2. Technosoft can reuse your application code and have our team create an end to end solution for you.
  3. Technosoft can become your outsourced Integration Department equipped with an Integration Manager. We talk to your client hospital’s IT folks on your behalf and help you finalize the workflow that will best suit them and you for the integration and SMART on FHIR app development. Most of our customers do not have years of healthcare integration knowledge. We usually fill that missing piece of knowledge and help them add major EMR users to their customer base.
We are collecting FAQs for the SMART on FHIR app development and integration with EHRs. If you have any particular question, feel free to send to us, we will be happy to answer and add here if it is been asked frequently.