Blacklist a Patient - hmislk/hmis GitHub Wiki
Overview
Blacklisting prevents a patient from being billed across OPD, Pharmacy, Inpatient, and Channelling modules. When a blacklisted patient is selected at billing or booking time, the system blocks the transaction and shows an error message. The blacklist status is shown as a badge on the patient profile and on all billing pages.
Blacklisting and reverting a blacklist are privilege-gated actions — only users with the Clinical Patient Blacklist privilege can perform them. The blacklist badge and billing warnings are visible to all users regardless of privilege.
All blacklist and revert actions are recorded in the system audit log.
How to Access
Main Menu → OPD → Patient Lookup & Registration → (search for patient) → Profile
Blacklisting a Patient
- Search for the patient and open their Profile page.
- Click the Blacklist Patient button (visible only to users with the Clinical Patient Blacklist privilege).
- In the dialog that appears, enter a reason for blacklisting (required).
- Click Confirm Blacklist.
The patient's status badge immediately changes to Blacklisted (shown in red). Any attempt to bill or book this patient will now be blocked system-wide.
Reverting a Blacklist
- Open the patient's Profile page.
- Click the Revert Blacklist button.
- Enter a reason for the revert (required).
- Click Confirm Revert.
The patient's status returns to Active and billing proceeds normally.
Editing a Blacklisted Patient's Record
Staff can still edit the demographic details of a blacklisted patient (name, NIC, contact details, etc.) on the Edit Patient page. When clicking Save, the system displays a warning dialog:
⚠️ WARNING: This patient is blacklisted. Reason: [blacklist reason] Are you sure you want to save changes to this blacklisted patient's record?
Two options are presented:
| Button | Action |
|---|---|
| Cancel | Closes the dialog — no changes are saved |
| Yes, Save Anyway | Saves the demographic changes and proceeds |
This warning applies to the Save, Patient Profile, and Inpatient Dashboard buttons on the edit page. It is a soft warning only — the edit is not blocked.
Effect at Billing Time
When a blacklisted patient is selected, the following modules will block the transaction with an error message:
| Module | Blocked action |
|---|---|
| OPD Billing | Settle OPD bill |
| OPD Pre-billing | Error check before settle |
| Bill Packages | Package bill settlement |
| Pharmacy (all variants) | Retail sale, fast sale, wholesale |
| Inpatient Admission | Admitting the patient |
| Channelling / Appointments | Booking settlement |
Audit Trail
Every blacklist and revert action is logged. To view the history:
Main Menu → Administration → Audit Events
Look for events named "Blacklist Patient" or "Revert Patient Blacklist". Each entry shows the user who performed the action, the timestamp, and the reason entered.
Privilege Required
| Action | Privilege needed |
|---|---|
| Blacklist a patient | ClinicalPatientBlacklist |
| Revert a blacklist | ClinicalPatientBlacklist |
| Edit a blacklisted patient's record | None — warning shown, can proceed |
| View blacklist badge / status | None — visible to all |
| Blocked at billing | Automatic — no privilege needed |
To grant the privilege, a super user must go to:
Administration → Manage Users → User Roles → (select role) → Clinicals → Blacklist / Unblacklist Patient
Note: The blacklist reason and history are stored on the patient record. When a blacklist is reverted, the original reason, timestamp, and user are appended to the record for traceability.