Standard submission (covers a single reporting period)
A standard submission consists of data which has been extracted from supplier systems, covering weekly reporting periods and sent to NHSD on a weekly basis. NHSD recommends that these submissions are made on a Monday and cover the reporting period for the previous week. Standard submissions are the type of submission that suppliers are expected to make most, if not all, of the time. Submissions will contain records which cover a specific reporting period (i.e week) and include all records which occur between a reporting period start and a reporting period end date. The reporting period start date has to occur on a Monday and the reporting period end date occurs on a Sunday.
Each transfer of data between a system supplier and NHSD, delivered via MESH, must include records which cover a single specific reporting period only and within a single standard submission, it is not possible to include multiple reporting periods or for the duration of a reporting period to be longer than seven days. If a supplier makes a submission which breaks these rules then the file will be rejected. There are also other validation rules which will result in a FileRejection leading to the submission being rejected.
It is possible for a supplier to make a number of standard submissions in one go, however, these need to be sent as separate submissions, with each corresponding to a particular reporting period. For example, if a supplier submits via JSON and fails to submit for two weeks and wants to catch up in week three for the submissions they missed in weeks 1 and 2 they can submit:
week_1_reporting_period.json
week_2_reporting_period.json(.dat if sending via MESH client)
For a standard weekly submission, OCVC data can be extracted from supplier systems and transferred to NHSD in either JSON, CSV or XML format. A standard submission refers to a submission of data from a system supplier to NHSD, transferred via a supplier's MESH client to a MESH mailbox used by NHSD to receive NHSD OCVC submissions.
File formats
The OCVC dataset structure contains eight tables: Header, IncidentData, VCAgg, VCRecord, VCPractice, OCAgg, OCRecord and OCPractice. As can be seen in the example JSON and XML files, all eight of these tables can be submitted together in a single file since each table is represented as a separate element within a nested JSON/XML structure and root element. Since all tables can be submitted together in one file, a standard weekly submission for JSON and XML will therefore consist of a single data file. CSV files should be sent as a separate pipe (|) delimited files for each table, including the Header data on each row.
For all submissions there is no requirement to send all eight tables, only tables for which records have been extracted from suppliers' systems are required to be sent. Column names should be field names rather than field codes. There is no need to include blank tables where no data is extracted.
MESH client
The OCVC dataset structure contains eight tables: Header, IncidentData, VCAgg, VCRecord, VCPractice, OCAgg, OCRecord and OCPractice. As can be seen in the example JSON and XML files, all eight of these tables can be submitted together in a single file since each table is represented as a separate element within a nested JSON/XML structure and root element. Since all tables can be submitted together in one file, a standard weekly submission for JSON and XML will therefore consist of a single data file. CSV files should be sent as a separate pipe (|) delimited files for each table, including the Header data on each row.
For all submissions there is no requirement to send all eight tables, only tables for which records have been extracted from suppliers' systems are required to be sent. Column names should be field names rather than field codes. There is no need to include blank tables where no data is extracted.
CSV specific requirements
As can be seen in the example template files, the first row of a CSV submission must include the header fields for each of the columns in the CSV file. As well as including the fields for each of the relevant tables, the CSV files must also contain Header fields appended as additional columns for every row. Without both table and header fields, the pipeline will reject the submission so it is imperative that these are included.
For CSV submissions since header fields are included in every row there is no requirement to send header.csv.dat/header.csv.ctl files. Column names should be field names rather than field codes.
NHS Digital MESH Mailboxes and Workflow IDs
NHSD have two MESH mailboxes which are used to receive data from system suppliers. Each mailbox has been configured to work within a different environment. Suppliers should also be set up to use a test and a production mailbox. A submission made from a supplier test mailbox should be sent to NHSD's test OCVC mailbox and a submission made from a supplier production (i.e. live) mailbox should only be sent to the equivalent NHSD production mailbox. Submissions must not be made from the production mailbox to the test mailbox (or vice versa).
The MESH mailbox and workflow IDs used by NHSD for ingesting OCVC submissions are:
Environment | Mailbox ID | Workflow IDs |
TEST (i.e INT) | X26OT213 | ONLINE_CONSULTATION_TEST, VIDEO_CONSULTATION_TEST, ONLINE_AND_VIDEO_CONSULTATION_TEST |
PROD (i.e. LIVE) | X26OT047 | ONLINE_CONSULTATION, VIDEO_CONSULTATION, ONLINE_AND_VIDEO_CONSULTATION |
Suppliers should confirm that their submissions are being processed and ingested successfully by the test pipeline before sending them to the production mailbox.
Successful/unsuccessful submissions
The NHSD OCVC validation pipeline runs on the hour, every hour, 7 days a week. Therefore if a submission is made by a supplier at 14:30, it will be picked up and processed at 15:00. Once the pipeline has processed the submission, a submission report is generated and sent back to the supplier containing a summary of the submission.
The submission report is generated regardless of whether all records were successfully processed or whether the submission was rejected entirely. The subject field in the .ctl file (or the subject header for MESH API) will indicate if there is any action to take on your part. If there is anything actionable the subject will be error and warning report. If there is nothing actionable it will be Successful submission no action needed.
The submission report is an .xlsx file and breaks down how many records were processed successfully for each table and contains a list of the warnings and errors generated which can be filtered by table name.
MESH Client
Once a submission has been successfully sent from a supplier mailbox, a .ctl message is delivered back to the mailbox 'in' folder by MESH which indicates that the submission has left the MESH mailbox and MESH has picked it up and sent it.
This is a feature of MESH which confirms that the message has been sent from one mailbox and transferred to another and is not evidence that the submission has been processed successfully by the validation pipeline.
Due to a restriction regarding filenames in the MESH client the validation report will have a filename which is a "{timestamp}_{uniqueid}.dat" which is an Excel (.xlsx) file. Therefore when a supplier receives the submission report back from the validation pipeline, they will have to replace the .dat extension with .xlsx to be able to open the .xlsx file in Excel or similar software.
Dealing with record rejections
If a supplier has made a submission and can see that the pipeline has rejected records due to them failing validation tests then the supplier should correct these records and resubmit the complete submission again. Do not resubmit only the corrected records back to the OCVC pipeline. This scenario should not occur if a supplier is using the test environment to test their submissions before sending them to the live prod environment.
Data from multiple GP practices
Data from multiple GP practices must be submitted as part of a single submission. Do not separate out records from separate GP practices into individual submissions per GP practice, OCVC data covering multiple GP practices must be included within a single submission covering that reporting period.
Resubmissions
Only the last transmitted data for each reporting period will be sent to NHSEI. It is therefore necessary that any resubmission should contain ALL of the data for that reporting period not just the amended records.
Last edited: 17 August 2023 11:43 am