OpenSpecimen EPIC integration

Overview

EPIC contains demographics and clinical data about patients. Integrating EPIC with OpenSpecimen will ensure high-quality data, avoid manual data entry errors and save data entry time of end users.

This document explains the different ways in which EPIC and OpenSpecimen can be integrated.

HL7 based integration

EPIC will send HL7 messages (ADT) to OpenSpecimen for every patient add, edit, merge and delete. Since most of these patients will not have specimens collected, it will be stored in a temporary staging table. When a new patient is added in OpenSpecimen, it will look up the staging table based on MRN. If a match is found this patient is moved to the OpenSpecimen main database.

EPIC web service

EPIC can expose a patient lookup API. OpenSpecimen will call the EPIC patient lookup API each time someone enters a new patient in OpenSpecimen to get the patient information.

Nightly data export from EPIC

EPIC will export patient demographics into a database table or CSV file every night. This data is imported into the OpenSpecimen staging tables and used when a new patient is added in OpenSpecimen.

Staging table purge

The staging table is purged once in 180 days. This will avoid staging table continuously growing.

Locking information in OpenSpecimen

Any information imported from EPIC is locked for edit in OpenSpecimen. This is to maintain the single source of information.