Skip to main content

Integrations and Interoperability Engine

Medplum offers a powerful integration and interoperability engine that speaks common healthcare "languages" (FHIR, HL7, SFTP, CCD-A and more). This is the most commonly used feature of Medplum. It can be used to receive data from and send data to other systems - medical or cloud based.

Medplum integrations and interoperability is an event-driven service. It listens to notifications from medical systems like a laboratory information system or EHRs. The service logs data and supports persistence to a FHIR datastore as needed. It is open source.

Overview

Medplum enables many medical and non-medical services to be effectively composed, and so allows a powerful user-facing application to be built on top. Medplum provides the following event-driven functionality:

  • Listens to notifications from systems like LIS, EHR, and webhook enabled webapps
  • Sends notifications and data to external systems, triggered off events
  • Transforms data via a custom scripting engine, enabling bespoke workflows
  • Stores data, allowing applications like dashboards to be built
  • Logs activity and version history, enabling debugging and traceability

Below is an example of a medical practice "Foo Medical" with connections to various systems. This is an example deployment, but can give a sense of what connections might be needed in practice.

Sample Integrations for Foo Medical

Creating Medical Integrations

Creating effective integrations often requires writing some code. We provide pre-built integrations, high level SDKs, testing framework, deployment and provisioning features that greatly reduce the engineering burden to build, and to maintain integrations.

Our integration framework is called bots and there are detailed bots tutorials in our technical documentation.

Before starting an integration, we recommend filling out the following checklist

  • What system are you trying to connect to?
  • What type of interfaces are available? (Check multiple if appropriate)
    • FHIR or Smart-On-FHIR
    • REST API
    • HL7
    • SFTP
    • XML based, like CCD-A or CDISC
    • File based - text or binary (e.g. X12, images, video)
    • Delimited Text
    • Something else?
  • How can you request credentials/access to a test environment?
  • What process is required to gain access to production?

Examples: Integrations by Interface Type

To get started integrating services into Medplum, it can be useful to think about which type of medical applications have which type of interfaces. Medplum provides the infrastructure that helps connect systems like these together.

This is by no means a comprehensive list, but we provide this list of interfaces as examples of tools and systems indexed by type of integration is commonly seen.

Interface TypeSystems with interfaceExamples
HL7Lab (LIS), Imaging, Legacy EHRData Innovations, eRad PACS, Athena HL7
SFTPLab, Government programs like vaccine registryLabcorp, Texas Immunization Registry
FHIREHRs and payorsEpic, CMS Blue Button
XML BasedBilling systems, EDC, Care ContinuityCCD-A workflow
RESTMany modern digital health servicesMobile phlebotomy, Eligibility Check
Text DelimitedBilling systemsEDI 837
Binary filesBilling systems, video and photoCMS 1500, X12, Twilio

If you are interested in a specific integration type, please contact us at hello@medplum.com or in our Discord.

Examples: Integrations by Product Category

To get a medical application to work as intended often requires many systems to talk to each other, each with a different function. Medplum enables connectivity to various systems, through the Bot framework.

Below are some of the classes of applications indexed by common integration methods. Medplum supports building interfaces of this type to enable connectivity.

Product CategoryCommon Integration MethodComments
LabHL7, SFTPHL7 ORU, OBX message types common
Legacy EHRHL7, SFTP, FHIRHL7 ADT, SIU message types and more, may also have Mirth
PACSHL7HL7 ORU, OBX message types common
Vaccine RegistrySFTPOften operated by public health departments, government
PayorFHIRRegulatory changes have increased payor FHIR adoption
PharmacyRESTPharmacy API such as DoseSpot, Surescripts
Logging and AnalyticsRESTSplunk, Freshpaint, Amplitude, Segment and related
CRMREST, CSVCRM often have API or file based import
FormsRESTQualtrics, Jotforms, Formstack have REST API with webhooks
EDCREST, binary fileRedcap, Medidata etc. support REST API or file import
Records requestFHIRRecords services like Particle or HealthGorilla support FHIR
MessagingRESTTwilio, Sendbird and more have REST API
Records requestFHIRRecords services like Particle or HealthGorilla support FHIR
LogisticsREST3PL like ShipBob or Fulfilled by Amazon have REST API
Direct ProjectRESTSpecial medical grade email from companies like Paubox

We have a lot of experience with medical integrations, and welcome questions at hello@medplum.com or on our Discord.

System Diagram

Below is a system diagram that shows, at a high level all of the systems working in concert.

System diagram

Reference Material