23.08. HL7 and Tamanu/Patis Plus 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 and Patis Plus are the primary use cases for this integration at the moment, and the only products we actively test the integration with. If you require integrating with other HL7 servers, please contact us!

Choose File > Preferences from the menus and click on the HL7 Integration tab on the left hand side. This window opens:

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.
  • Limit: The maximum number of patient records to fetch for each API request.
  • Suffix path: The extra part to add to the URL above to reach the endpoint for pulling patient information into mSupply.
  • Medication dispense: Check this checkbox if you want to send dispensed data (i.e. prescriptions) to Patis Plus.
  • URL: Enter the URL of the Patis Plus or other prescription consuming software here.
  • Send emails to this email address: Enter the email address you want errors encountered when sending prescriptions sent to.
  • Manual push data button: Click this to send the prescription informaiton immediately rather than waiting for the automatic scheduler to do it.

All these should be provided by the organisation hosting the HL7 server that you wish to integrate with.

Press the Test connection button to validate the details you've entered and save them.

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.

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.

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.

If this is turned on then all finalised prescriptions are sent to the prescription consuming software every hour.



  • Last modified: 2024/10/25 08:15
  • by Gary Willetts