
How to Plan EMR Data Migration in 2026: Strategies for Integrity, Continuity, and Compliance
Plan secure EMR data migration in 2026 with HIPAA, FHIR R4, and USCDI v3 compliance, data integrity, zero downtime, and clinical continuity.
Read MoreGetting a healthcare app to work with an EHR can be complicated because different systems handle data and access differently. SMART on FHIR provides a common way for apps to connect, access patient information, and fit into the clinician’s workflow. This guide explains how it works, what can go wrong, and what teams should know about SMART v2, Epic, Oracle Health, security, and AI.
Doctors are spending more time on screens, even when they see fewer patients. A study published in Health Affairs in February 2026, covered by Healthcare Dive, found that primary care physicians saw 32.6% fewer patients, but their EHR time dropped by only 21.2%. As a result, EHR time per visit increased by more than 21%.
That points to a problem beyond the patient visit itself. Doctors also have to deal with logins, separate applications, patient searches, and switching between systems to get the information they need.
These tasks may seem small, but they add friction to the clinical workflow. When an app can open with the right patient and user context already available, doctors have fewer steps to repeat.
This is one of the problems it is designed to address. It gives healthcare apps a standard way to connect with EHRs, authenticate users, get the right permissions, and open within the clinician’s workflow.
In this guide, you’ll learn what SMART on FHIR actually is, how an EHR launch works step by step, what changed with SMART v2 in 2026, and why some apps still slow doctors down even when they technically follow the rules.
SMART on FHIR is an open standard that helps third-party apps securely connect with EHR systems. It uses OAuth 2.0 and OpenID Connect to authenticate the user, authorize access, and launch the app with the right context. In an EHR launch, the user can often use the existing EHR session instead of signing in again.
FHIR handles the health data itself. It gives apps a standard way to read and write information using resources such as Patient, Observation, and Condition.
The name explains what it does. SMART stands for Substitutable Medical Applications and Reusable Technologies. The goal is to make it easier to build an app that can work with different EHRs without creating a new integration for each one.
It was created at Boston Children’s Hospital and Harvard Medical School, and is now maintained by HL7 International as part of FHIR. The idea was first explained in a 2016 paper in JAMIA, which described a shared, standard way for EHR apps to work together. That same idea still applies today.
At this point, FHIR and SMART on FHIR can sound like the same thing. They aren’t. FHIR handles the data, while SMART on FHIR handles how an app securely connects to it.
FHIR and SMART on FHIR work together, but they have different jobs.

Read more in detail: HL7 vs FHIR
Now that you know what it is, let’s look at why it matters for healthcare teams in 2026.
Doctors often need more than the information shown in the EHR. They may need to open another app, log in again, or search for the same patient.
SMART on FHIR can reduce these extra steps. An app can open from the EHR with the right patient and user context already available, so the doctor doesn’t have to start over.
This makes it easier to use third-party apps without taking the doctor away from the workflow.
There is also an important change for healthcare organizations in 2026. Since January 1, 2026, SMART App Launch v1.0.0 is no longer an option for ONC certification. SMART App Launch v2.0.0 is the required baseline, with v2.2.0 also available as an approved version.
Version 2.2.0 is the current published release. It also adds stronger access controls. Certified systems must be able to revoke an authorized app’s access at a patient’s request within one hour.
What this means for buyers: When evaluating a SMART on FHIR app, check which SMART App Launch version it supports. An app still built around version 1 may need updates to meet current requirements.
So, what does that connection actually look like when a clinician launches a SMART on FHIR app? Let’s find out:
Most clinicians never think about what happens after they click an app. That’s because the process should happen in the background. But for developers and buyers, those few seconds matter. They determine whether the app opens with the right patient and context.
The process starts inside the patient’s chart. A button or tab lets the clinician open the app without leaving the EHR or searching for it somewhere else.
When the clinician clicks the app, the EHR sends its launch URL with two important values: iss, which points to the FHIR server, and launch, a one-time token linked to the current patient and session.
The app checks the FHIR server’s /well-known/smart-configuration file. This tells it where to send authorization and token requests. This is better than hardcoding these addresses because the EHR may change its server setup.
The app requests the scopes it needs. Depending on the EHR and existing session, the user may be able to continue without another login, although an authorization or consent step may still appear.
After authorization, the app receives an access token and the context it needs. This can include the patient, the current encounter, and fhirUser, which identifies the logged-in user.
The app uses the access token to request data from the FHIR API. It then opens with the correct patient already selected. The clinician doesn’t need to search for the patient or enter the same information again.
That’s how the app gets launched and connected to the right patient. But there’s more happening in the background: the app also needs the right context and permissions to work safely.
A SMART on FHIR launch gives the app more than an access token. It also gives the app useful information about the patient, visit, and person using it. This helps the app open in the right place without asking the clinician to enter the same details again.
Together, this context helps the app open where the clinician needs it, without adding more steps to the workflow.
Need help connecting your healthcare app to an EHR?
Our EHR Integration Services help you connect your app with EHR systems, manage authentication and patient context, and test the integration before launch.
Once the app knows who and what it is working with, it also needs permission to access health data. That’s where SMART scopes come in.
Scopes tell the app what data it can access. In SMART v1, some scopes were broad. For example, patient/*.read could give the app read access to many types of data for a patient, even if it only needed a small part of that data.
SMART App Launch v2 supports more specific scopes. Instead of asking for broad access, an app can request only the data it needs, such as patient/Observation.rs for observations or patient/Condition.rs for conditions. The letters at the end show which operations the app can perform, such as r for read and s for search.
HTI-1 takes this further for Condition and Observation data. Certified systems must support finer-grained scopes that can restrict access using the category search parameter, allowing access to specific types of Condition and Observation data.
For security teams, this makes access requests easier to review. An app that asks only for the data it needs is easier to understand and approve than one asking for broad access without a clear reason.
SMART on FHIR covers more than the launch-from-the-chart pattern described earlier. There are four distinct ways an app can connect, and each one fits a different job.

EHR launch: This is the pattern most clinical tools use. The clinician is already inside the EHR, so the app opens with the current patient already available. This is useful for tools doctors need while working on a patient’s chart.
Standalone launch: Here, the app opens first, outside the EHR. The user then signs in and selects a patient. This works well for patient-facing apps or other tools that don’t start inside an EHR.
Backend services: These services work without a person using the app. A server connects to the FHIR system on its own, often to move or sync data or support analytics. Nothing needs to be opened on a clinician’s screen.
CDS Hooks: This starts with an event in the EHR, such as opening a patient’s chart or signing an order. The EHR can then show a suggestion or card, which may give the clinician the option to open a SMART app.
Tip: These approaches can also work together. For example, a SMART app can be launched from the EHR while backend services run in the background to sync data or support analytics.
The connection method is only one part of the picture. Next, let’s look at the types of apps that use SMART on FHIR and what they actually do.
There are different types of SMART on FHIR apps, depending on what they are built to do. Some help doctors make decisions, while others help with patient care, documentation, or communication between care teams.
1. Clinical decision support apps
These help doctors make decisions using information already in the patient’s chart. For example, a risk calculator can open from the EHR, use the patient’s data, and show the result without the doctor entering the information again.
2. Specialty apps
These are built for a specific clinical task or medical area. For example, SMART Growth Chart and SMART BP Centiles are open-source examples from SMART Health IT. They help clinicians check a child’s growth or compare blood pressure readings with expected ranges, right from the EHR.
3. Patient-facing Apps
These are built for patients instead of doctors. A patient can open the app, sign in, and access their own health information. These apps can be used to view medical records, track a condition, or manage appointments.
4. AI Documentation Apps
These apps help clinicians create notes and other documentation. An AI scribe can use SMART on FHIR to get the patient and encounter details it needs, so the clinician does not have to enter the same information again.
5. Care Coordination Apps
These help different healthcare teams work together. For example, a referral app can pull patient information from the EHR and use it to create or manage a referral without making the clinician copy the details into another system.
These are some of the main types of SMART on FHIR apps. But having the right connection and a useful purpose does not automatically mean an app will be easy to use. An app can follow the SMART standard and still create problems for clinicians.
A SMART on FHIR app can meet the technical requirements and still make a clinician’s work harder. The problems are usually simple things such as the wrong patient opening, an extra login, slow loading, or too much data access.
| Problem | What the clinician experiences | Fix | |
|---|---|---|---|
| 1 | Lost or wrong patient context | The wrong chart opens, or no patient appears | Check the launch context each time and don't reuse it from an earlier session |
| 2 | Extra login prompt | The clinician sees another sign-in screen | Use the EHR's supported SSO flow and request only the identity scopes the app needs, such as openid and fhirUser |
| 3 | Slow first load | The clinician waits for the app to open | Set a clear load-time target and load only what is needed first |
| 4 | Cookie and iframe blocking in embedded browsers | The app shows a blank screen or the session breaks | Test embedded use carefully and avoid depending on third-party cookies |
| 5 | Token expiry mid-shift | The clinician is suddenly signed out during work | Use the appropriate online_access or offline_access flow where supported, and handle token renewal without forcing the clinician through an unnecessary login. |
| 6 | Duplicate banners, clashing styles | The app looks out of place or shows the patient twice | Use need_patient_banner and smart_style_url correctly |
| 7 | Overbroad scopes | Security review takes longer | Ask only for the data and permissions the app actually needs |
Fixing these issues can make the app easier and less frustrating for clinicians to use.
Epic, Oracle Health, and athenahealth each have their own process for registering and testing SMART on FHIR apps. Knowing where to start can save time, especially when moving from a sandbox to a live hospital environment.
Epic’s old App Orchard program is no longer used. It closed in December 2022 and was replaced by Epic Vendor Services and Showroom. Epic Vendor Services is the paid program for vendors that need technical support and design review. Showroom is Epic’s directory where customers can discover and evaluate available apps.
Vendors start through Epic’s developer portal, where they can register the app, get a client ID, and test it in the sandbox.
Getting listed on Showroom does not automatically make the app available at every hospital. Each Epic customer still needs to review and activate the app based on its own security and technical requirements.
Timeline: Epic integration timelines vary based on the app, FHIR resources, write access requirements, testing, and the hospital’s review process. Complex integrations can take several months.
Planning an Epic SMART on FHIR integration?
Hire Epic Software Developers and get the expertise you need to build, integrate, and test your Epic app.
Oracle Health uses Code Console for app registration and testing. Developers can use code Console and the sandbox to test authentication, scopes, and API access before working with a customer on production provisioning.
For endpoint, scope, and SMART on FHIR requirements, Oracle’s Millennium SMART on FHIR documentation is the main reference.
athenahealth has its own developer portal and Marketplace for registering and publishing apps. Developers can use these resources to build and test integrations before making an app available to customers.
The review process can vary based on what the app does, which data it needs, and whether it only reads data or also writes data back to the EHR.
For organizations deciding whether to build these integrations in-house or get help from an experienced team, see our guide on how to customize Epic hospital software.
SMART on FHIR is also becoming useful for AI tools that need access to EHR data. Ambient AI scribes are one example. They can use SMART on FHIR to pull the patient and visit information they need while working inside the clinical workflow.
Ambient AI scribes are already using this approach. AI documentation tools can use SMART on FHIR and other EHR integration methods to access the patient and encounter information they need within the clinical workflow.
Common integration methods for third-party AI tools include FHIR APIs, SMART on FHIR apps, and direct EHR vendor APIs.
Scopes as guardrails are especially important for AI apps. An AI feature can only access the healthcare data allowed by its scopes. If the scopes are too broad, the AI tool may get access to patient data it does not actually need.
AI during development can help teams map FHIR data, create test cases, and find integration issues earlier. But it does not replace human review, real-world testing, or audit logs. These are still needed before an AI app is used with patient data.
With the connection and AI use cases covered, the next question is how to keep these apps secure and compliant when they handle sensitive health data.
At Bacancy, we help healthcare teams build SMART on FHIR apps that work with their EHR systems. Our healthcare IT services and solutions cover integration, data access, security, and testing, while keeping the clinician’s workflow in mind.
SMART on FHIR gives healthcare apps a simple and secure way to connect with an EHR. The app can open with the right patient and user information already available, so clinicians don’t have to log in again or enter the same details.
As SMART v2 becomes the new certification baseline and more AI apps work with healthcare data, getting the basics right becomes even more important. The app needs the right launch flow, the right data access, and strong security from the start.
If you need help building or connecting a SMART on FHIR app, our healthcare interoperability services can help you handle the integration from EHR connection to testing and deployment.
Yes. One SMART on FHIR app can work with both Epic and Oracle Health if it follows the required standards and each EHR supports the needed FHIR APIs and permissions.
SMART on FHIR is widely used with certified EHRs, but certification does not simply mean every EHR must support every SMART feature. Requirements depend on the certification criteria.
An EHR launch starts the app from inside an EHR and passes patient information. A standalone launch starts outside the EHR, so the user usually selects or enters context separately.
Not always. With an EHR launch, the app can use the EHR’s existing login and authorization. A standalone app may need its own login, depending on its design.
It depends on the app, APIs, security checks, testing, and Epic setup. Simple integrations may move faster, while complex apps with write access or additional review can take several months.
SMART on FHIR itself does not make an app HIPAA-compliant. HIPAA compliance also requires proper security, access controls, data handling, encryption, and organizational processes.

Plan secure EMR data migration in 2026 with HIPAA, FHIR R4, and USCDI v3 compliance, data integrity, zero downtime, and clinical continuity.
Read More
Compare top LLM in healthcare for 2026 using HealthBench benchmarks, HIPAA/BAA deployment options, FDA guidance, and real-world implementation insights.
Read More
A complete guide on a payer-ready behavioral health telehealth platform with reimbursement-focused workflows, secure architecture, and payer integrations
Read More