Integrating FHIR R4 with Clinical Trial Systems: A Technical Guide for CROs
FHIR R4 is now the primary data exchange standard for US healthcare interoperability, mandated for electronic health record systems under the 21st Century Cures Act. For CROs and clinical trial technology vendors, this means a documented API layer for accessing patient data from Epic, Cerner, MEDITECH, and other major EHR systems—in theory. In practice, FHIR R4 access for clinical research requires understanding what the standard actually exposes, where the gaps are, and what configuration work happens before a screening query returns useful data.
Core FHIR Resources for Eligibility Screening
Clinical trial eligibility screening draws on a specific subset of FHIR R4 resources. The most relevant are:
- Patient: Demographics (date of birth, sex at birth, administrative gender). Required for age-based inclusion criteria and certain sex-specific eligibility rules.
- Condition: Diagnosis records coded in ICD-10-CM or SNOMED CT. The primary resource for diagnosis-based inclusion and exclusion criteria.
- MedicationRequest and MedicationStatement: Medication history coded in RxNorm. Required for prior treatment exclusions and current medication restrictions.
- Observation: Lab results coded in LOINC. Required for organ function thresholds (renal, hepatic, hematologic), performance status assessments, and biomarker measurements.
- Procedure: Procedure history coded in CPT or SNOMED. Required for prior surgery or procedure exclusions.
- DiagnosticReport and DocumentReference: Clinical notes and pathology reports. Required for NLP-based extraction of note-dependent eligibility criteria.
What the Standard Guarantees vs. What You Actually Get
FHIR R4 certification requires EHR systems to expose Patient, AllergyIntolerance, Condition, Immunization, MedicationRequest, MedicationStatement, Observation, Procedure, DiagnosticReport, DocumentReference, and several other resources—but the certification standard specifies which resources must be available, not how completely or consistently they will be populated. A Condition resource may exist for a diagnosis that a site documented only as a problem list entry in a non-coded field.
This distinction between API availability and data completeness is the most common source of disappointment in clinical trial FHIR integrations. Before building eligibility rule sets that depend on specific FHIR resources, it’s worth running a data completeness assessment at each participating site: query the resources your screening logic will use and check fill rates for the coded fields you need.
Authorization and Access
FHIR R4 access uses SMART on FHIR for authorization, which handles both system-level access (a backend server querying on behalf of a clinical application) and user-level access (a coordinator authenticating through the EHR interface). For patient screening applications accessing population-level data across a site’s patient population, system-level SMART credentials are the appropriate authorization pattern.
Each health system issues SMART credentials separately through their IT governance process. Epic health systems process app registrations through their App Orchard marketplace; Cerner systems handle credentialing through their Code program. The approval process at large health systems can take 4–12 weeks and requires a data use agreement, a description of the application’s intended data access, and often a technical review by the health system’s CISO or privacy officer.
HL7 v2 as a Fallback
Not all participating sites will have FHIR R4 access fully enabled or production-ready at site activation. HL7 v2 message interfaces—ADT feeds, lab result feeds, medication history feeds—remain widely available and cover most of the data needed for structured eligibility screening. FHIR R4 is the preferred integration path for new connections, but HL7 v2 fallback capability matters for sites running older EHR configurations or those with FHIR enablement still in progress.
A clinical trial screening tool that requires FHIR R4 and has no HL7 v2 fallback will face site activation friction at a meaningful fraction of participating sites. Building both paths into the integration architecture increases site coverage and reduces activation delays at the cost of additional engineering work upfront.