Messaging Exchange for Social Care and Health (MESH)

TypeInteroperability Standard
Effective Date 


The Message Exchange for Social Care and Health (MESH) is a centralised message transfer service provided by NHS Digital using the Spine Services Core infrastructure. This allows the service to benefit from the large-scale reliability of the Spine Services including its disaster recovery capabilities and established service support.

The service supports the secure transfer of both clinical and business data flows between NHS Organisations and affiliated organisations. Sending organisations generate messages and “post” them to the central service from where they can then be “collected” by the recipient organisation. The principle of message transfer is “store and retrieve”. MESH is generally provided to end sites as part of Supplier provided Solutions although organisations can manage their interactions with the service directly themselves.

Information and technical documentation on use of the service can be found on the NHS Digital website here.

An on-line message tracking service is provided to enable suppliers, end-sites and support organisations to trace messages. This Message On-line Enquiry Service (MOLES) supports the tracking of messages as they are transferred across the service in near real-time. Information on MOLES and its use are provided here.

Messaging Architecture

MESH supports the transfer of data between organisations using the principle of “store and retrieve”. It utilises a  mailbox-based messaging architecture. All registered endpoints have a mailbox. That mailbox can support the transfer and receipt of many different message types. Messages are uploaded and stored on the Central MESH Server from where they are then collected.

The service is agnostic in respect of the types of message payload that it can transfer. This includes the full range of potential data transfers from fully structured, such as FHIR, XML, EDIFACT etc to plain text.  Message transfers must however comply with the published MESH Interface Specification to be accepted by MESH and transferred.

MESH supports the transfer of individual transfers up to 100MB in its standard form. It can support file transfers up to 20GB. To support transfers of this size (up to 20GB) an additional attribute is simply added for the specific transfer which informs the service to adopt a chunking process for that specific transfer.

MESH supports the transfer of data between organisations. It does NOT provide confirmation that end applications within those organisations are able to consume and appropriately process those transfers once they are collected from MESH. The service does record robust recording on transfers as they are transferred across the service, including error logging and non-collected reports. The readiness of end applications to consume message transfers is beyond the scope of MESH and is the responsibility of individual programmes, the standards they adopt and business rules and notifications that they define.

The Interoperability Toolkit (ITK) does address the MESH issues in respect of reliable messaging. It is not the only approach but implementations requiring this can develop in accordance with the ITK.

Connection Methods

Access to MESH can be requested by submission of the appropriate on-line form

There are 3 methods for connection to MESH, these are;

  1. MESH User Interface (UI)

    1. Accessed via Spine Portal (web-enabled)

    2. Central configuration by NHS Digital

    3. Aimed at Low Tech End-Points (entry level)

    4. Smartcards required (2-factor authentication possible as alternative)

    5. Administrators in local organisations manage access

  2. MESH Client

    1. Java-based client provided by NHS Digital (utilises the API)
    2. Supports interfacing with end applications
    3. Can be run as a service
    4. Controlled access to MESH with some level of local config
    5. Local Installation/development
    6. Aimed at Suppliers and Technical Organisations
  3. MESH Application Interface (API)

    1. Allows integration to end applications
    2. High level of control
    3. Assurance Process must be completed
    4. Local Installation/development
    5. Aimed at Suppliers and Technical Organisations

The majority of the connections to MESH are currently supported by the MESH client. The expectation is that suppliers and organisations will develop Solutions using the MESH client or the API. The choice of connection method is not prescribed by NHS Digital. The choice may be made based on the level of control or integration that suppliers or organisations may prefer in their interaction with the service.

The MESH UI provides entry-level access to the service where there is little local support or supplier involvement. It allows end users, individually or in teams, rather than end applications to interact with the MESH. This extends the use of MESH from pure application to application only.

If mandated Suppliers must use MESH in accordance to individual interface specifications.

Compliance and Assurance

Requirements for compliance and assurance on MESH are dependent on the type of connection to the service. The only use of the MESH API requires the completion of a compliance and assurance process. This is managed directly with the NHS Digital Solutions Assurance Team. The process is relatively “light touch” and includes the completion of a Target Operating Model (TOM).

Technical documentation in respect of the MESH API can be obtained by contacting the MESH Service Team ( The documentation is not published on the website to allow engagement, discussion and management of suppliers or organisations considering the use of the MESH API to connect to the service.


Testing services can be accessed via the NHS Digital Solutions Assurance Team. Details of how to access these services are available here


MESH is a centralised message transfer service provided by NHS Digital using the Spine Services Core infrastructure. It therefore is supported on all of the Path to Live (PTL) environments.




MESH Client

Each new release of the MESH Client MUST be installed within 6 months of notification of its release by the MESH Service Team. Any mandatory functional or non-functional changes to any part(s) of the system that are required to be made in order to implement a new release MUST also be Deployed along with the new client.



Technical documentation and file downloads are hosted at the MESH download page.