23.07. HL7 and Tamanu integration
mSupply supports HL7 integration with HL7 compliant APIs. Currently, this is limited to retrieving information from HL7 Servers, mSupply does not send patient data.
When using mSupply Synchronisation systems, this must be configured on the central server. Data retrieved from the integration is stored on the mSupply Central Server and distributed via sync to remote sites. Data is also available via remote patient search.
Tamanu is the primary use case for this integration at the moment, and the only product we actively test the integration with. If you require integrating with other HL7 servers, please contact us!
Configuration
Navigate to Preferences > HL7 Integration
To turn on HL7 configuration start by ticking the option “Use HL7 integration”. Then select either “Use HL7 patient feed” or “Use HL7 patient search”; these are explained below.
Then enter:
- URL: The URL of the HL7 compliant server you wish to connect to.
- Host name: The name of the service that you are integrating with. e.g. “Demoland Tamanu Server”
- Email: The username being used for the integration authentication. May be an email or any other text value.
- Password: A strong password provided for integration authentication.
All these should be provided by the organisation hosting the HL7 server that you wish to integrate with.
Press “Test connection” to validate the details you've entered and save them.
Patient Feed
This is the default and recommended option to use if available. The patient feed will regularly request all recent changes to patients and their related documents available on the HL7 Server. Supported records will seamlessly be integrated into the mSupply Central Server database.
Patient Search
The patient search option allows remote searches done from mSupply remote sites to additionally search the integrated HL7 server seamlessly, and return both mSupply and HL7 results in the mSupply user interface.
Which one?
Patient feed is the recommended option as it solves multiple drawbacks of Patient search:
- Patient search is only available when using “remote patient search” on remote mSupply sites. This means it does not work on non-sync systems, and on sync systems the option does not serve any dispensaries that are active on the central server. As Patient feed gets all updates of all patients from the HL7 server and saves them in the mSupply database, they are available in all contexts.
- Patient search does not retrieve updates of patients from the HL7 server, only the state of the patient when first searched and added via the integration. Patient feed gets all future updates for all patients from the HL7 integration.