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.