diff --git a/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/check-answers-consent-given-for-one.png b/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/check-answers-consent-given-for-one.png new file mode 100644 index 000000000..de1f6fb55 Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/check-answers-consent-given-for-one.png differ diff --git a/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/check-answers-consent-given.png b/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/check-answers-consent-given.png new file mode 100644 index 000000000..2e3621372 Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/check-answers-consent-given.png differ diff --git a/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/check-answers-consent-refused.png b/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/check-answers-consent-refused.png new file mode 100644 index 000000000..5f80ac904 Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/check-answers-consent-refused.png differ diff --git a/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/child-dob.png b/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/child-dob.png new file mode 100644 index 000000000..0ff678499 Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/child-dob.png differ diff --git a/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/child-name.png b/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/child-name.png new file mode 100644 index 000000000..30656af91 Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/child-name.png differ diff --git a/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/child-school-confirm.png b/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/child-school-confirm.png new file mode 100644 index 000000000..18d2b2518 Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/child-school-confirm.png differ diff --git a/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/child-school.png b/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/child-school.png new file mode 100644 index 000000000..b9bf160e4 Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/child-school.png differ diff --git a/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/confirmation-consent-given-and-needs-triage.png b/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/confirmation-consent-given-and-needs-triage.png new file mode 100644 index 000000000..3ae2ab18d Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/confirmation-consent-given-and-needs-triage.png differ diff --git a/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/confirmation-consent-given-for-one-and-needs-triage.png b/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/confirmation-consent-given-for-one-and-needs-triage.png new file mode 100644 index 000000000..c86b0cd6f Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/confirmation-consent-given-for-one-and-needs-triage.png differ diff --git a/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/confirmation-consent-given-for-one.png b/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/confirmation-consent-given-for-one.png new file mode 100644 index 000000000..aafd73129 Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/confirmation-consent-given-for-one.png differ diff --git a/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/confirmation-consent-given.png b/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/confirmation-consent-given.png new file mode 100644 index 000000000..7a9e2b962 Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/confirmation-consent-given.png differ diff --git a/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/confirmation-consent-refused.png b/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/confirmation-consent-refused.png new file mode 100644 index 000000000..e28bcfd88 Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/confirmation-consent-refused.png differ diff --git a/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/consultation.png b/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/consultation.png new file mode 100644 index 000000000..2bc76e64a Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/consultation.png differ diff --git a/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/contact-preference.png b/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/contact-preference.png new file mode 100644 index 000000000..9f1620ed4 Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/contact-preference.png differ diff --git a/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/email-invitation.png b/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/email-invitation.png new file mode 100644 index 000000000..805d7bd35 Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/email-invitation.png differ diff --git a/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/email-reminder.png b/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/email-reminder.png new file mode 100644 index 000000000..0e4e4773f Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/email-reminder.png differ diff --git a/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/give-or-refuse-consent.png b/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/give-or-refuse-consent.png new file mode 100644 index 000000000..76cd671f4 Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/give-or-refuse-consent.png differ diff --git a/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/health-question-allergy.png b/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/health-question-allergy.png new file mode 100644 index 000000000..2bc4243a7 Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/health-question-allergy.png differ diff --git a/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/health-question-bleeding.png b/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/health-question-bleeding.png new file mode 100644 index 000000000..33eefee06 Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/health-question-bleeding.png differ diff --git a/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/health-question-previous-reaction.png b/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/health-question-previous-reaction.png new file mode 100644 index 000000000..733aa2d0b Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/health-question-previous-reaction.png differ diff --git a/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/health-question-recent-menacwy-vaccination.png b/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/health-question-recent-menacwy-vaccination.png new file mode 100644 index 000000000..f0e788c00 Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/health-question-recent-menacwy-vaccination.png differ diff --git a/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/health-question-recent-td-ipv-vaccination.png b/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/health-question-recent-td-ipv-vaccination.png new file mode 100644 index 000000000..83e8a2203 Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/health-question-recent-td-ipv-vaccination.png differ diff --git a/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/health-question-support.png b/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/health-question-support.png new file mode 100644 index 000000000..ed965ffdf Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/health-question-support.png differ diff --git a/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/home-address.png b/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/home-address.png new file mode 100644 index 000000000..ac2b2485f Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/home-address.png differ diff --git a/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/parent.png b/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/parent.png new file mode 100644 index 000000000..89a5457cc Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/parent.png differ diff --git a/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/refusal-reason-details-already-given.png b/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/refusal-reason-details-already-given.png new file mode 100644 index 000000000..5aa0adb8f Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/refusal-reason-details-already-given.png differ diff --git a/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/refusal-reason-details-getting-elsewhere.png b/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/refusal-reason-details-getting-elsewhere.png new file mode 100644 index 000000000..1a4f77855 Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/refusal-reason-details-getting-elsewhere.png differ diff --git a/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/refusal-reason-details-medical.png b/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/refusal-reason-details-medical.png new file mode 100644 index 000000000..438dbd3fb Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/refusal-reason-details-medical.png differ diff --git a/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/refusal-reason.png b/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/refusal-reason.png new file mode 100644 index 000000000..d89760ebd Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/refusal-reason.png differ diff --git a/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/start-page.png b/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/start-page.png new file mode 100644 index 000000000..7b46de002 Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/doubles-consent/start-page.png differ diff --git a/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/patient-card.png b/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/patient-card.png new file mode 100644 index 000000000..2d9b7fa37 Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/patient-card.png differ diff --git a/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/patient-session-all-sections.png b/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/patient-session-all-sections.png new file mode 100644 index 000000000..497fbf946 Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/patient-session-all-sections.png differ diff --git a/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/patient-session-consent-given.png b/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/patient-session-consent-given.png new file mode 100644 index 000000000..a56cc91d9 Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/patient-session-consent-given.png differ diff --git a/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/patient-session-no-response.png b/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/patient-session-no-response.png new file mode 100644 index 000000000..448d30468 Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/patient-session-no-response.png differ diff --git a/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/patient-session-not-vaccinated.png b/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/patient-session-not-vaccinated.png new file mode 100644 index 000000000..8484f6ea9 Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/patient-session-not-vaccinated.png differ diff --git a/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/patient-session-outstanding-vaccination-notice.png b/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/patient-session-outstanding-vaccination-notice.png new file mode 100644 index 000000000..fda4ce4a6 Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/patient-session-outstanding-vaccination-notice.png differ diff --git a/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/patient-session-triage-outcome.png b/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/patient-session-triage-outcome.png new file mode 100644 index 000000000..862c9fdcc Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/patient-session-triage-outcome.png differ diff --git a/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/patient-session-vaccinated-for-all-programmes.png b/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/patient-session-vaccinated-for-all-programmes.png new file mode 100644 index 000000000..2ea1e16a8 Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/patient-session-vaccinated-for-all-programmes.png differ diff --git a/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/patient-session-vaccinated-for-one-programme-with-outstanding-vaccination-notice.png b/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/patient-session-vaccinated-for-one-programme-with-outstanding-vaccination-notice.png new file mode 100644 index 000000000..47b138b6b Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/patient-session-vaccinated-for-one-programme-with-outstanding-vaccination-notice.png differ diff --git a/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/previous-session-list.png b/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/previous-session-list.png new file mode 100644 index 000000000..964f53938 Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/previous-session-list.png differ diff --git a/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/previous-session-overview-completed.png b/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/previous-session-overview-completed.png new file mode 100644 index 000000000..f36030a45 Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/previous-session-overview-completed.png differ diff --git a/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/previous-session-overview-in-progress.png b/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/previous-session-overview-in-progress.png new file mode 100644 index 000000000..85452003b Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/previous-session-overview-in-progress.png differ diff --git a/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/previous-session-overview-not-scheduled.png b/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/previous-session-overview-not-scheduled.png new file mode 100644 index 000000000..24a5e4ba4 Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/previous-session-overview-not-scheduled.png differ diff --git a/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/previous-session-overview-scheduled.png b/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/previous-session-overview-scheduled.png new file mode 100644 index 000000000..ea0e1cfdd Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/previous-session-overview-scheduled.png differ diff --git a/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/previous-session-patient.png b/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/previous-session-patient.png new file mode 100644 index 000000000..fedddcdcd Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/previous-session-patient.png differ diff --git a/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/record-vaccinations-no-session-in-progress.png b/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/record-vaccinations-no-session-in-progress.png new file mode 100644 index 000000000..6686b7af4 Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/record-vaccinations-no-session-in-progress.png differ diff --git a/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/record-vaccinations.png b/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/record-vaccinations.png new file mode 100644 index 000000000..6ef17f8c4 Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/record-vaccinations.png differ diff --git a/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/register-attendance-no-session-in-progress.png b/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/register-attendance-no-session-in-progress.png new file mode 100644 index 000000000..a03e91359 Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/register-attendance-no-session-in-progress.png differ diff --git a/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/register-attendance.png b/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/register-attendance.png new file mode 100644 index 000000000..c04a8daa6 Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/register-attendance.png differ diff --git a/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/review-consent-responses.png b/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/review-consent-responses.png new file mode 100644 index 000000000..e8fdffdaf Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/review-consent-responses.png differ diff --git a/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/review-session-outcomes.png b/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/review-session-outcomes.png new file mode 100644 index 000000000..57e14f19a Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/review-session-outcomes.png differ diff --git a/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/review-triage-statuses.png b/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/review-triage-statuses.png new file mode 100644 index 000000000..9b5e3d767 Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/review-triage-statuses.png differ diff --git a/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/session-overview-completed.png b/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/session-overview-completed.png new file mode 100644 index 000000000..2a09a911c Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/session-overview-completed.png differ diff --git a/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/session-overview-in-progress.png b/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/session-overview-in-progress.png new file mode 100644 index 000000000..09947c39c Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/session-overview-in-progress.png differ diff --git a/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/session-overview-not-scheduled.png b/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/session-overview-not-scheduled.png new file mode 100644 index 000000000..aea060b60 Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/session-overview-not-scheduled.png differ diff --git a/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/session-overview-scheduled.png b/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/session-overview-scheduled.png new file mode 100644 index 000000000..1e1941a66 Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/doubles-recording/session-overview-scheduled.png differ diff --git a/app/images/manage-vaccinations-in-schools/2025/04/importing-records/child-records-import-child-records.png b/app/images/manage-vaccinations-in-schools/2025/04/importing-records/child-records-import-child-records.png new file mode 100644 index 000000000..64a784ce2 Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/importing-records/child-records-import-child-records.png differ diff --git a/app/images/manage-vaccinations-in-schools/2025/04/importing-records/child-records-import-invalid.png b/app/images/manage-vaccinations-in-schools/2025/04/importing-records/child-records-import-invalid.png new file mode 100644 index 000000000..cc4683c33 Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/importing-records/child-records-import-invalid.png differ diff --git a/app/images/manage-vaccinations-in-schools/2025/04/importing-records/child-records-import-no-records-imported.png b/app/images/manage-vaccinations-in-schools/2025/04/importing-records/child-records-import-no-records-imported.png new file mode 100644 index 000000000..f675def35 Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/importing-records/child-records-import-no-records-imported.png differ diff --git a/app/images/manage-vaccinations-in-schools/2025/04/importing-records/child-records-import-processing.png b/app/images/manage-vaccinations-in-schools/2025/04/importing-records/child-records-import-processing.png new file mode 100644 index 000000000..0b8e1f259 Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/importing-records/child-records-import-processing.png differ diff --git a/app/images/manage-vaccinations-in-schools/2025/04/importing-records/child-records-import.png b/app/images/manage-vaccinations-in-schools/2025/04/importing-records/child-records-import.png new file mode 100644 index 000000000..e9ce6198d Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/importing-records/child-records-import.png differ diff --git a/app/images/manage-vaccinations-in-schools/2025/04/importing-records/child-records-review-duplicate-child-record.png b/app/images/manage-vaccinations-in-schools/2025/04/importing-records/child-records-review-duplicate-child-record.png new file mode 100644 index 000000000..68a783cd2 Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/importing-records/child-records-review-duplicate-child-record.png differ diff --git a/app/images/manage-vaccinations-in-schools/2025/04/importing-records/class-list-records-import-class-list-records.png b/app/images/manage-vaccinations-in-schools/2025/04/importing-records/class-list-records-import-class-list-records.png new file mode 100644 index 000000000..ab4183962 Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/importing-records/class-list-records-import-class-list-records.png differ diff --git a/app/images/manage-vaccinations-in-schools/2025/04/importing-records/class-list-records-import.png b/app/images/manage-vaccinations-in-schools/2025/04/importing-records/class-list-records-import.png new file mode 100644 index 000000000..b316f1ffd Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/importing-records/class-list-records-import.png differ diff --git a/app/images/manage-vaccinations-in-schools/2025/04/importing-records/class-list-records-which-school-is-this-class-list-for.png b/app/images/manage-vaccinations-in-schools/2025/04/importing-records/class-list-records-which-school-is-this-class-list-for.png new file mode 100644 index 000000000..880c0fd5c Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/importing-records/class-list-records-which-school-is-this-class-list-for.png differ diff --git a/app/images/manage-vaccinations-in-schools/2025/04/importing-records/class-list-records-which-year-groups-do-you-want-to-import-class-list-records-for.png b/app/images/manage-vaccinations-in-schools/2025/04/importing-records/class-list-records-which-year-groups-do-you-want-to-import-class-list-records-for.png new file mode 100644 index 000000000..63551c1fb Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/importing-records/class-list-records-which-year-groups-do-you-want-to-import-class-list-records-for.png differ diff --git a/app/images/manage-vaccinations-in-schools/2025/04/importing-records/import-issues.png b/app/images/manage-vaccinations-in-schools/2025/04/importing-records/import-issues.png new file mode 100644 index 000000000..db5658bdf Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/importing-records/import-issues.png differ diff --git a/app/images/manage-vaccinations-in-schools/2025/04/importing-records/import-records.png b/app/images/manage-vaccinations-in-schools/2025/04/importing-records/import-records.png new file mode 100644 index 000000000..ace5aba55 Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/importing-records/import-records.png differ diff --git a/app/images/manage-vaccinations-in-schools/2025/04/importing-records/important-notice-archive.png b/app/images/manage-vaccinations-in-schools/2025/04/importing-records/important-notice-archive.png new file mode 100644 index 000000000..4722f8d13 Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/importing-records/important-notice-archive.png differ diff --git a/app/images/manage-vaccinations-in-schools/2025/04/importing-records/important-notices-flagged-on-dashboard.png b/app/images/manage-vaccinations-in-schools/2025/04/importing-records/important-notices-flagged-on-dashboard.png new file mode 100644 index 000000000..332bfd127 Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/importing-records/important-notices-flagged-on-dashboard.png differ diff --git a/app/images/manage-vaccinations-in-schools/2025/04/importing-records/important-notices.png b/app/images/manage-vaccinations-in-schools/2025/04/importing-records/important-notices.png new file mode 100644 index 000000000..2f917c4bf Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/importing-records/important-notices.png differ diff --git a/app/images/manage-vaccinations-in-schools/2025/04/importing-records/school-moves-review-school-move.png b/app/images/manage-vaccinations-in-schools/2025/04/importing-records/school-moves-review-school-move.png new file mode 100644 index 000000000..29351886c Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/importing-records/school-moves-review-school-move.png differ diff --git a/app/images/manage-vaccinations-in-schools/2025/04/importing-records/school-moves.png b/app/images/manage-vaccinations-in-schools/2025/04/importing-records/school-moves.png new file mode 100644 index 000000000..12fd83c2d Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/importing-records/school-moves.png differ diff --git a/app/images/manage-vaccinations-in-schools/2025/04/importing-records/vaccination-records-import-vaccination-records.png b/app/images/manage-vaccinations-in-schools/2025/04/importing-records/vaccination-records-import-vaccination-records.png new file mode 100644 index 000000000..a7966e94d Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/importing-records/vaccination-records-import-vaccination-records.png differ diff --git a/app/images/manage-vaccinations-in-schools/2025/04/importing-records/vaccination-records-import.png b/app/images/manage-vaccinations-in-schools/2025/04/importing-records/vaccination-records-import.png new file mode 100644 index 000000000..69a5d9a45 Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/importing-records/vaccination-records-import.png differ diff --git a/app/images/manage-vaccinations-in-schools/2025/04/importing-records/vaccination-records-review-duplicate-vaccination-record.png b/app/images/manage-vaccinations-in-schools/2025/04/importing-records/vaccination-records-review-duplicate-vaccination-record.png new file mode 100644 index 000000000..08d68fd18 Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/importing-records/vaccination-records-review-duplicate-vaccination-record.png differ diff --git a/app/images/manage-vaccinations-in-schools/2025/04/importing-records/what-type-of-records-are-you-importing.png b/app/images/manage-vaccinations-in-schools/2025/04/importing-records/what-type-of-records-are-you-importing.png new file mode 100644 index 000000000..e434f8043 Binary files /dev/null and b/app/images/manage-vaccinations-in-schools/2025/04/importing-records/what-type-of-records-are-you-importing.png differ diff --git a/app/posts/manage-vaccinations-in-schools/2025/04/doubles-consent.md b/app/posts/manage-vaccinations-in-schools/2025/04/doubles-consent.md new file mode 100644 index 000000000..96819a718 --- /dev/null +++ b/app/posts/manage-vaccinations-in-schools/2025/04/doubles-consent.md @@ -0,0 +1,220 @@ +--- +title: Consent for MenACWY and Td/IPV vaccinations +date: 2025-04-29 +screenshots: + - title: "Screenshots: Initial journey" + items: + - id: email-invitation + text: Email asking for parent to give or refuse consent + - id: email-reminder + text: Email reminding parent to give or refuse consent + - id: start-page + text: Start page + - id: child-name + text: What is your child’s name? + - id: child-dob + text: What is your child’s date of birth? + - id: child-school-confirm + text: Confirm your child’s school + - id: child-school + text: What school does your child go to? + - id: parent + text: About you + - id: contact-preference + text: If we need to contact you + caption: Question shown if parent enters a phone number. + - id: give-or-refuse-consent + text: Do you agree to your child having the MenACWY and Td/IPV (3-in-1 teenage booster) vaccinations? + - title: "Screenshots: Refuse consent" + items: + - id: consultation + text: Your child may be able to have the vaccinations outside of school + caption: This has yet to be incorporated into the consent journey as we still need to determine how this information can be presented to SAIS teams. + - id: refusal-reason + text: Please tell us why you do not agree to your child having the MenACWY and Td/IPV vaccinations + - id: refusal-reason-details-getting-elsewhere + text: Where did the child get their vaccination? + caption: Question shown if selected ‘Vaccine(s) already received’. + - id: refusal-reason-details-already-given + text: Where will the child get their vaccination? + caption: Question shown if selected ‘Vaccine(s) will be given elsewhere’. + - id: refusal-reason-details-medical + text: What medical reasons prevent the child from being vaccinated? + caption: Question shown if selected ‘Medical reasons’. + - id: check-answers-consent-refused + text: Check and confirm + - id: confirmation-consent-refused + text: Confirmation + - title: "Screenshots: Give consent" + items: + - id: home-address + text: Home address + - id: health-question-bleeding + text: Does your child have a bleeding disorder or another medical condition they receive treatment for? + - id: health-question-allergy + text: Does your child have any severe allergies? + - id: health-question-previous-reaction + text: Has your child ever had a severe reaction to any medicines, including vaccines? + - id: health-question-recent-menacwy-vaccination + text: Has your child had a meningitis (MenACWY) vaccination in the last 5 years? + - id: health-question-recent-td-ipv-vaccination + text: Has your child had a tetanus, diphtheria and polio vaccination in the last 5 years? + - id: health-question-support + text: Does your child need extra support during vaccination sessions? + - id: check-answers-consent-given + text: Check and confirm + - id: check-answers-consent-given-for-one + text: Check and confirm (consent given for one vaccination) + caption: We show each decision separately if the consent response for each vaccination is different. + - id: confirmation-consent-given + text: Confirmation + - id: confirmation-consent-given-and-needs-triage + text: Confirmation (health answers need triage) + - id: confirmation-consent-given-for-one + text: Confirmation (consent given for one vaccination) + - id: confirmation-consent-given-for-one-and-needs-triage + text: Confirmation (consent given for one vaccination and health answers need triage) +--- + +The first SAIS team to use our service was Coventry and Warwickshire Partnership NHS Trust (CWPT). They run HPV vaccination sessions for year 8 students at the start of the Spring term, before turning their attention to MenACWY and Td/IPV sessions at the start of the Summer term. + +The private beta launched with support for HPV, so the next 2 programmes we needed to support were MenACWY and Td/IPV: + +- The [MenACWY](https://www.nhs.uk/vaccinations/menacwy-vaccine/) vaccine helps protect against meningitis and sepsis. It is recommended for all teenagers. Most people only need one dose of the vaccine. +- The [Td/IPV vaccine](https://www.nhs.uk/vaccinations/td-ipv-vaccine-3-in-1-teenage-booster/) (also called the 3-in-1 teenage booster) helps protect against tetanus, diphtheria and polio. It boosts the protection provided by the 6-in-1 vaccine and 4-in-1 pre-school booster vaccine. + +Children are given these vaccinations at around 13 or 14 years old (year 9) as part of [the NHS vaccination schedule](https://www.nhs.uk/vaccinations/nhs-vaccinations-and-when-to-have-them/). + +Like many other SAIS teams, CWPT co-administer MenACWY and Td/IPV vaccines at the same time. For this reason, these 2 vaccines are commonly known as the ‘doubles’. + +This post details the changes we made to Give or refuse consent for vaccinations, the parent-facing aspect of our service. + +## Getting consent for the vaccinations a child needs + +Not every child will need both vaccinations. For example some children may have been given: + +- the MenACWY vaccine before travel abroad +- the Td/IPV vaccine after injuring themselves +- one or both vaccines in their country of origin before arriving in the UK + +Some children may also be eligible for vaccinations they have missed, such as HPV or MMR. + +Ideally, the parental consent journey would only ask parents to give consent for the vaccinations their child needs. However, the consent journey is designed to be associated with a session, but not an individual child. This is to prevent PII (personal identifiable information) being leaked from the service; parents enter details about their child, but we never confirm if these details are correct. + +A consent journey that used information from a child’s vaccination history would require service design, architecture and policy changes well beyond the scope of the private beta. This is something we’d like to investigate in the future. + +For our initial release, we chose an approach where the service could support 2 different consent journeys: one for HPV and another for MenACWY and Td/IPV. + +## Updating the consent emails + +In addition to updating email communications to support sessions with co-administered vaccines, we also made a number of other changes to improve requests for consent. + +To reflect NHS England policy around informed consent, we added links to patient information PDF leaflets for each vaccine to the initial consent request email. + +In research, we found that users were already having trouble finding the link to give or refuse consent, and adding more links made this situation worse. + +We changed the heading above the call to action from ‘Please give or refuse consent’ to ‘How to respond’, and updated the link text from ‘Give or refuse consent for the [name] vaccination’ to ‘Respond to the consent request’. + +Above this link we used indented text for the following words: + +> It’s important to let us know whether you do or do not want your child to have these vaccinations. It will take less than 5 minutes to respond using the link below. + +This helped draw attention to the main call to action in the invitation email. + +We later changed the links to patient information PDFs to guidance pages on GOV.UK. These pages not only provide information about the vaccines, but also provide guidance in other languages (and for HPV alternative easy-read, BSL and Braille formats). + +## Updating the consent journey + +The journey for doubles is largely the same as that for HPV (or flu), but in this case the consent question needs to allow parents to: + +- give consent for one vaccination +- give consent for both vaccinations +- refuse consent for both vaccinations + +MenACWY and Td/IPV share the same health questions, although parents are also asked if their child has already had each vaccination. Therefore, we can ask each question once, and only show the vaccine specific questions depending on which vaccinations the parent is giving consent for. + +Consent is shown to the parent as one set of answers, but we save separate responses for each vaccination. This is so that consent responses can be managed separately, for example if a nurse discovers a child has already received the Td/IPV vaccination. + +## Checking if a child has already had a MenACWY or Td/IPV vaccination + +A child’s vaccination record should show if a child has previously had these vaccinations. In reality such data is unreliable, not least because vaccinations may not get recorded in certain scenarios, such as during hospital visits. + +If we can ask parents about their child’s vaccination history, nurses can use this information to help determine if a vaccination should be given or not. + +During research, we found that parents had difficulty understanding the technical-sounding MenACWY and Td/IPV terms, and had difficulty recalling their child’s vaccination history. + +This was especially true for MenACWY, as children get separate MenB and MenC vaccines when they are babies. It’s also possible for this to be given as a vaccination before travelling abroad. + +Some research participants suggested adding ‘Don’t know’ as an option, though the likelihood is that most parents would select this answer, making the questions redundant. + +In the end we decided to: + +- Use more commonly understood disease names (meningitis, tetanus, diphtheria and polio) in the question titles +- Clearly state the relevant timeframe (i.e. the last 5 years) +- Provide examples in hint text of when these vaccinations may have been given previously + +![Question asking ‘Has your child had a meningitis (MenACWY) vaccination in the last 5 years?’](health-question-recent-menacwy-vaccination.png "Question asked for the MenACWY vaccination.") + +![Question asking ‘Has your child had a tetanus, diphtheria and polio vaccination in the last 5 years?’](health-question-recent-td-ipv-vaccination.png "Question asked for the Td/IPV vaccination.") + +## Changes to the consent journey since the pilot + +Since [the last design history post covering the consent journey](https://design-history.prevention-services.nhs.uk/manage-vaccinations-in-schools/2024/03/pilot-parental-consent/) we made a number of other changes. + +### Start page + +Previously the heading on the start page mentioned a specific vaccination (i.e. Give or refuse consent for an HPV vaccination). However, this heading became too long when it included multiple vaccination names. + +We updated the heading to use the service name (Give or refuse consent for vaccinations), and added content about the individual vaccinations to the page, under relevant headings. + +We included a link to more information about each vaccine on the NHS website, and told users about other ways they could give consent. + +### Hint text for a child’s name + +We changed the hint text in the question asking for a child’s name. Previously these mentioned a passport or birth certificate but not all parents will have these to hand. Mention of a passport may also concern recent immigrants. + +We changed: + +> Give the official name that’s on their passport or birth certificate. If their name has changed, tell us their current name. + +to: + +> Give the name held on your child’s official school records. If their name has changed, tell us their current name. + +![Question asking ‘What is your child’s name?’](child-name.png) + +### Confirming a child’s school + +For the pilot, if a child didn’t attend one of the participating schools, a parent couldn’t give consent. + +For the private beta, if a child attends a different school a parent can now select another school from any of those the SAIS team is responsible for. If a child doesn’t attend any of the schools listed, they are encouraged to contact the SAIS team. + +![Question asking ‘What school does your child go to?’](child-school.png) + +### Asking for contact preference + +Previously, if a parent entered a phone number (with the option to get updates by text message), we then asked for their preferred phone contact method. During research, parents were confused about why this question was being asked, and how it related to the question on the previous page. + +We updated this question to be more explicit, and ask parents to provide details of any communication needs they may have with hearing or visual impairment given as examples. + +![Question asking ‘Do you have any communication needs?’](contact-preference.png) + +### Asking if a child needs support + +In earlier designs, we asked parents ‘Is there anything else you think we should know’. We removed this question in the pilot as the participating SAIS teams were concerned that this question was too open-ended, and would require a lot of time to triage answers. + +For the private beta, we have made this question more explicit by asking parents if their child needs extra support during vaccination sessions, with autism or extreme anxiety given as examples. + +![Question asking ‘Does your child need extra support during vaccination sessions?’](health-question-support.png) + +### Use new panel pattern for confirmation screen + +The NHS design system recently added a [panel component](https://service-manual.nhs.uk/design-system/components/panel) to display important information when a transaction has been completed. We were previously using the [panel component from the GOV.UK Design System](https://design-system.service.gov.uk/components/panel/) which has a slightly different design. + +We also reviewed the content shown on this page to support new confirmation scenarios such as a mixed consent response. + +![Confirmation page with consent given for one vaccine and health answers that need triage](confirmation-consent-given-for-one-and-needs-triage.png) + +### Removed GP question + +We previously asked if a child was registered with a GP. Since the service now integrates with PDS (Personal demographic service) we no longer need to ask parents this question. diff --git a/app/posts/manage-vaccinations-in-schools/2025/04/doubles-recording.md b/app/posts/manage-vaccinations-in-schools/2025/04/doubles-recording.md new file mode 100644 index 000000000..bd8e4a220 --- /dev/null +++ b/app/posts/manage-vaccinations-in-schools/2025/04/doubles-recording.md @@ -0,0 +1,133 @@ +--- +title: Recording MenACWY and Td/IPV vaccinations +date: 2025-04-30 +screenshots: + - title: "Screenshots: Previous design" + items: + - id: previous-session-overview-not-scheduled + text: Session overview (not scheduled) + - id: previous-session-overview-scheduled + text: Session overview (scheduled) + - id: previous-session-overview-in-progress + text: Session overview (in progress) + - id: previous-session-overview-completed + text: Session overview (completed) + - id: previous-session-list + text: Check consent responses + caption: Example of a list view in the previous design. + - id: previous-session-patient + text: Patient session + caption: Example of a patient session in the previous design. + - title: "Screenshots: Later design" + items: + - Session overview (not scheduled) + - Session overview (scheduled) + - Session overview (in progress) + - Session overview (completed) + - text: Review consent responses + caption: Unmatched consent responses are clearly highlighted in list views. + - Review triage statuses + - Register attendance + - Register attendance (no session in progress) + - Record vaccinations + - Record vaccinations (no session in progress) + - Review session outcomes + - Patient session (no response) + - Patient session (consent given) + - Patient session (triage outcome) + - Patient session (vaccinated for one programme, with outstanding vaccination notice) + - Patient session (vaccinated for all programmes) + - text: Patient session (not vaccinated) + caption: We updated the design to ensure that it’s still possible to vaccinate a child if a previous attempt was unsuccessful. +--- + +The first SAIS team to use our service was Coventry and Warwickshire Partnership NHS Trust (CWPT). They run HPV vaccination sessions for year 8 students at the start of the Spring term, before turning their attention to MenACWY and Td/IPV sessions at the start of the Summer term. + +The private beta launched with support for HPV, and the next 2 programmes we needed to support were [MenACWY](https://www.nhs.uk/vaccinations/menacwy-vaccine/) and [Td/IPV](https://www.nhs.uk/vaccinations/td-ipv-vaccine-3-in-1-teenage-booster/). Like many other SAIS teams, CWPT co-administer MenACWY and Td/IPV vaccines at the same time. For this reason, these 2 vaccines are commonly known as the ‘doubles’. + +We previously wrote about [the changes we made to Give or refuse consent for vaccinations](/manage-vaccinations-in-schools/2025/04/doubles-consent/), the parent-facing aspect of our service. In this post, we cover the changes we made to the service to support SAIS teams co-administering vaccinations. + +## Moving from one vaccination to many + +Prior to adding support for doubles, the service only needed to support one vaccination programme, HPV. Adding support for doubles forced us to revisit a number of our earlier design decisions, in particular those around: + +- triaging health questions (most of which are shared for MenACWY and Td/IPV) +- identifying which children need which vaccinations +- recording multiple vaccinations and showing intermediate progress- + +An additional complexity is that HPV catch-up vaccinations can be administered alongside the doubles, meaning some children may need 3 vaccinations within a single session. + +## Navigating sessions + +We had also received feedback from users about the design of session pages, in particular that the session overview page was confusing and unpredictable. It might get even more confusing were it to be used for sessions that support multiple vaccination programmes. + +Previously, this page displayed different cards depending on the status of the session. Each card linked to a list of children that could be navigated between via secondary navigation: + +| Session status | Overview card title | List navigation labels | +|----------------|-------------------------|-----------------------------------------------------------------| +| Unscheduled | Schedule sessions | — | +| Scheduled | Check consent responses | No response
Consent given
Consent refused
Conflicts | +| | Triage health questions | Triage needed
Triage completed
No triage needed | +| In progress | Record session outcomes | Register
Get consent
Check refusal
Triage
Vaccinate | +| | Review session outcomes | Vaccinated
Not vaccinated
No outcome yet | +| Completed | Review session outcomes | Vaccinated
Not vaccinated
No outcome yet | + +We changed the design so that secondary navigation appeared across all session pages, including the session overview page. The navigation items would now reflect the different stages of a vaccination journey, and remain consistent regardless of a session’s status. + +Each session page showing a list of children would provide a set of contextual filters (alongside common and advanced filter options such as child’s year group, date of birth): + +| Navigation label | Filter label | Filter options | +|---------------------|---------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| Consent | Consent status | Any
Request failed
No response
Conflicting consent
Consent given
Consent refused
Refusal confirmed | +| Triage | Triage status | Any
Needs triage
Delay vaccination
Do not vaccinate
Safe to vaccinate | +| Register | Registration status | Any
Not registered yet
Attending session
Absent from session
Completed session | +| Record vaccinations | — | — | +| Session outcomes | Session outcome | Any
Vaccinated
Partially vaccinated
Already had the vaccine
Had contraindications
Refused vaccine
Absent from the session
Unwell
Unable to contact parent
Consent received too late | + +In sessions with multiple programmes, teams could also choose to filter by selected programmes. + +### Replacing tables with cards + +So that more information could be shown about each child, we replaced the table with a list of cards. As well as displaying the child’s full name, date of birth and year group, these could show the corresponding status for a given view. + +For the ‘Register’ and ‘Record vaccinations’, an additional ‘Action required’ row could be shown. + +For sessions with multiple programmes, the status (and any action required) could be shown for each programme. + +![Patient card showing registration status and action required for multiple programmes.](patient-card.png "Patient card in a session registration context.") + +### Session overview page + +These changes freed up space on the session overview page, which could now show more general information about a session (status, location, links to relevant consent forms) as well as more data about a session, such as its session dates, cohort size and number of children vaccinated per programme. + +The new design also includes a summary of actions required across all children in a session, each linking to a filtered view in a corresponding list view. These actions can change as required, but unlike the previous design, hopefully in a more predictable and understandable way. + +## Updating the patient record in a session + +Previously, the patient session page provided a summary of the child’s status at the top of the page. However, this could become infinitely more complex in sessions with multiple programmes involved. + +Instead we split the page up into sections under the headings (‘Consent’, ‘Triage’, ‘Record vaccination’ and ‘Programme outcome’). These sections would only appear when there is relevant information to display. + +Each section followed a similar design by showing an overall status, detailed description, links to any actions that could be performed and data table (consent responses, triage notes, and vaccination outcomes). + +To counter the length of the page, we moved demographic information about a child to a fixed sidebar. + +![Patient session page for a child who has been triaged and vaccinated.](patient-session-all-sections.png "Patient session record showing consent, triage and multiple vaccination outcomes. All programmes for this session have also been completed.") + +## Recording multiple vaccinations + +When recording a vaccination, a nurse needs to identify the child, review their record and ask them a set of [pre-screening questions](/manage-vaccinations-in-schools/2025/04/pre-screening-questions/) prior to performing the vaccination and recording the outcome. + +In a session with multiple vaccinations, a nurse may perform these checks before administering all the vaccinations in one go. This is because alternating between asking questions and administering a vaccination can make a child nervous. It is also more time-consuming. + +Our initial design maintained the single page for a patient session. For the recording area (which included pre-screening questions and whether the vaccination was given), tabs allowed a nurse to record each vaccination. + +However, as we dug into the details, many parts of the patient session page could differ based on the vaccination. For example, there could be different consent or triage outcomes. We updated the design to have a separate patient session page for each programme, and link to these from a navigation bar at the top of the page. + +The downside of this approach is a degree of repetition, and needing to visit separate pages to record each vaccination. + +We heard from nurses that in the busy and chaotic school environment, it might be possible to record one vaccination, get distracted and then forget to record the second. We added a persistent notification banner on patient session pages where one vaccination had been recorded, but another was outstanding. We also added a tick icon alongside each programme where a vaccination had been successfully recorded in the navigation. + +![Notice of outstanding vaccination needed, above navigation tabs, one for a completed vaccination.](patient-session-outstanding-vaccination-notice.png) + +We believe there is still some work to do in this area to make it easier to record multiple vaccinations in succession. The first step in this direction, and shown in the screenshots below, is updating the previous design for pre-screening checks. Now we only ask users to confirm if the child has completed these checks, rather than ask users to confirm each check individually. diff --git a/app/posts/manage-vaccinations-in-schools/2025/04/importing-records.md b/app/posts/manage-vaccinations-in-schools/2025/04/importing-records.md new file mode 100644 index 000000000..0bbbc6345 --- /dev/null +++ b/app/posts/manage-vaccinations-in-schools/2025/04/importing-records.md @@ -0,0 +1,166 @@ +--- +title: Importing records +date: 2025-04-28 +screenshots: + items: + - Import records + - What type of records are you importing? + - Child records – Import child records + - Child records – Import (processing) + - Child records – Import (invalid) + - Child records – Import (no records imported) + - Child records – Import + - Child records – Review duplicate child record + - Class list records – Which school is this class list for? + - Class list records – Which year groups do you want to import class list records for? + - Class list records – Import class list records + - Class list records – Import + - Vaccination records – Import vaccination records + - Vaccination records – Import + - Vaccination records – Review duplicate vaccination record + - Import issues + - Important notices + - Important notices flagged on dashboard + - Important notice – Archive + - School moves + - School moves – Review school move +--- + +We previously wrote about [the information SAIS teams need to maintain accurate cohorts](/manage-vaccinations-in-schools/2025/02/what-sais-teams-need-to-maintain-accurate-cohorts/). Short of building integrations with different health and GP IT systems, we began operating the private beta by allowing teams to import this data into Mavis using CSV files. + +## Types of record + +Mavis supports importing 3 different types of record. + +### Child records + +These are records obtained from a CHIS, local authority or school. They are used to create an initial cohort. + +We specify the CSV format for these imports and provide a template in the user guide. + +### Class lists + +These are records of children obtained from a school. They are used to ensure each child has up-to-date contact details for their parents. They can also be used to determine if a child has changed school (see ‘[Tracking school moves](#tracking-school-moves)’). + +We specify the CSV format for these imports and provide a template in the user guide. + +### Vaccination records + +These are records of previous vaccinations from a CHIS or GP IT system. They are used to determine a child’s eligibility for different vaccinations. + +We specify the CSV format for these imports. and provide a template in the user guide. We also support CSVs that use a SystmOne format. + +## Values used across different record types + +| Value | Child records | Class lists | Vaccination records | +|-----------------------|---------------|--------------|-----------------------------------------------| +| First name | **Required** | **Required** | **Required** | +| Last name | **Required** | **Required** | **Required** | +| Date of birth | **Required** | **Required** | **Required** | +| Gender | Optional | Optional | **Required** | +| Preferred first name | Optional | Optional | — | +| Preferred last name | Optional | Optional | — | +| Year group | Optional | Optional | — | +| Registration group | Optional | Optional | — | +| NHS number | Optional | Optional | Optional | +| Address line 1 | Optional | Optional | — | +| Address line 2 | Optional | Optional | — | +| Town | Optional | Optional | — | +| Postcode | **Required** | Optional | — | +| School URN | **Required** | — | **Required**
if care setting is school | +| Parent 1 name | Optional | Optional | — | +| Parent 1 relationship | Optional | Optional | — | +| Parent 1 email | Optional | Optional | — | +| Parent 1 phone | Optional | Optional | — | +| Parent 2 name | Optional | Optional | — | +| Parent 2 relationship | Optional | Optional | — | +| Parent 2 email | Optional | Optional | — | +| Parent 2 phone | Optional | Optional | — | +| Programme | — | — | **Required** | +| Vaccinated | — | — | **Required**
‘Yes’ or ‘No’ | +| Reason not vaccinated | — | — | **Required**
if not vaccinated | +| Date of vaccination | — | — | **Required** | +| Time of vaccination | — | — | Optional | +| Anatomical site | — | — | Optional | +| Vaccine name | — | — | Optional | +| Batch ID | — | — | **Required**
if batch expiry date provided | +| Batch expiry | — | — | **Required**
if batch number provided | +| Care setting | — | — | Optional | +| School name | — | — | **Required**
if school URN is 888888 | +| Clinic name | — | — | **Required**
if care setting is clinic | +| Dose sequence | — | — | Optional | +| Organisation code | — | — | Optional | +| Clinician first name | — | — | Optional | +| Clinician last name | — | — | Optional | +| Clinician email | — | — | **Required**
if recording offline | +| Notes | — | — | Optional | + +## Importing records + +### Uploading a file + +Each type of import has slightly different requirements, and these differences will likely increase over time. For example, class list records need to be associated with a school and year group(s), whereas vaccination records can be uploaded in different formats. + +For this reason, we ask the user to select which type of records they want to import, and explain how each type is used by the service. + +The next question asks the user to select a file for upload. We use show/hide guidance to outline the specific columns and values to use in a CSV file. + +If no file is selected, or the wrong type of file is uploaded, the user will be shown a validation error. Once a file is uploaded, the data it contains is then validated: + +- If values were not saved in a certain format, or don’t contain valid answers, we cancel the upload and show a confirmation screen which summarises the issues found and on which row of the CSV they were found. The import is shown with a status of ‘Invalid’. + +- If the data is valid, and if it requires a certain amount of time to process in the background, we show a confirmation screen that shows the date and time of the import, and the type of records being imported. The import is shown with a status of ‘Processing’. + +A user can view an import once it has been processed. The import then has a status of ‘Completed’. + +### Resolving issues with imported records + +Once a file has been imported, each record can be compared with existing records in Mavis. Where there are duplicates or conflicts, a user can review the differences and choose to use the new record or keep the existing record. + +For child and class list records, users can also choose to keep both records. This is useful in the case of twins where Mavis thinks a record is for the same person because the date of birth, postcode and last name match. + +![Comparing two records side-by-side.](child-records-review-duplicate-child-record.png) + +### Tracking school moves + +When class list records are imported, these can show that some children have either: + +- moved between schools in the area served by the SAIS team +- moved out to a school in the area not served by the SAIS team +- moved in to a school in the area not served by the SAIS team + +These moves need to be confirmed before they are applied. Each school move detected can be reviewed in the ‘School moves’ section of the service, where a user can choose to either update a child’s school, or ignore this change. + +![School moves page showing a list of children moving between different schools.](school-moves.png) + +### Moving imports to their own section + +The ability to import records was previously found within the programmes section. This made sense while there was only one vaccination programme, but didn’t make sense once we added support for MenACWY and Td/IPV as it’s possible to import cohort and class list records that affect multiple programmes. + +We therefore built a separate ‘Import records’ area in Mavis, which users can access from the dashboard or the top navigation. + +![Import records section.](import-records.png) + +### Important notices + +Every record that’s imported into Mavis is checked against PDS (Personal demographic service). This can return the following updates about a child’s record: + +Superceded +: This can happen when a child has been assigned a new NHS number after adoption. Mavis will automatically update the record with this new number and no notice is shown to the user. + +Invalid +: The NHS number has been flagged as invalid. We display the existing NHS number with a line struck through it. + +Sensitive +: A record can be flagged as sensitive to protect the location of a patient who might be at risk. Mavis restricts access to location and contact data shown in their record, and ceases automated communication with a child’s parents or guardians. + +Deceased +: A record can be returned that includes a date of death. In this instance, we remove the child from any cohorts and vaccination sessions, and stop any outgoing communication to parents. + +While Mavis can perform some actions automatically, it is likely that further actions will need to be taken offline, and so highlighting important notices to users allows them to perform these tasks. Only users with super admin rights can see these notices. + +Currently we only have a design for archiving records where the child’s death has been recorded. In the future we will look to designing a method for archiving all types of important notice. + +Finally, as important notices are somewhat hidden within the ‘Import records’ section, we show a warning banner on the dashboard when any important notices have been created. + +![Highlighting important notices on the dashboard.](important-notices-flagged-on-dashboard.png)