diff --git a/deployments/hmis/playbooks/billing-and-payment.mdx b/deployments/hmis/playbooks/billing-and-payment.mdx new file mode 100644 index 0000000..74437d2 --- /dev/null +++ b/deployments/hmis/playbooks/billing-and-payment.mdx @@ -0,0 +1,76 @@ +--- +sidebar_position: 3 +--- + +# Billing and payment + +Turn the services a patient received into a priced invoice and a collected payment. This playbook combines the **service request**, **charge item**, and **discount** flows with the **billing → invoice → payment** flow run by front-desk and billing staff. + +## Flows involved + +| Order | Flow | Purpose | +| --- | --- | --- | +| 1 | Add a service request *(coming soon)* | Capture the billable service rendered | +| 2 | Link a charge item to a schedule *(coming soon)* | Attach the priced item to the appointment/service | +| 3 | Create a discount code & component *(coming soon)* | Apply staff or scheme concessions | +| 4 | Build billing, create invoice, collect payment *(coming soon)* | Generate and settle the invoice | + +## Happy path + +1. As services are delivered, **service requests** are raised against the patient's encounter or appointment. +2. Each chargeable service has a **charge item** linked so a price is attached. +3. Billing **assembles the open charges** for the encounter into a draft invoice. +4. Any applicable **discount component** (staff, scheme, camp) is applied. +5. The **invoice is generated**, payment is collected, and a receipt is issued. + +## Edge cases + +### Discount or concession applies + +**Symptom:** Patient is staff, or covered by a scheme/camp rate. + +**Action:** + +1. Apply the relevant **discount code / component** before finalising. +2. Record the authorisation/reason where the facility requires it; the applied discount is retained on the invoice. + +### Partial payment / instalment + +**Symptom:** Patient cannot settle the full amount at once. + +**Action:** + +1. Collect the partial amount against the invoice; the balance remains outstanding. +2. Subsequent collections are recorded against the same invoice until settled. + +### Charge added after invoicing + +**Symptom:** A late service (e.g. an add-on test) lands after the invoice was raised. + +**Action:** + +1. Raise a supplementary charge / invoice rather than reopening a settled one. +2. Reconcile both invoices on the patient's account. + +### Refund or cancellation + +**Symptom:** A billed service is cancelled or overcharged. + +**Action:** + +1. Process the reversal against the original invoice with a reason. +2. Keep the original and reversal entries for audit. + +## Roles + +| Role | Can | +| --- | --- | +| Service desk / nurse | Raise service requests | +| Billing clerk | Build invoices, apply charge items, collect payment | +| Billing supervisor | Approve discounts, process refunds | + +## Related + +- Flow: Add a service request *(coming soon)* +- Flow: Building staff billing, invoice creation, and payment collection *(coming soon)* +- Playbook: [Pharmacy dispensing](./pharmacy-dispensing) and [Lab diagnostics](./lab-diagnostics) — common sources of billable charges diff --git a/deployments/hmis/playbooks/facility-setup.mdx b/deployments/hmis/playbooks/facility-setup.mdx new file mode 100644 index 0000000..65ff41c --- /dev/null +++ b/deployments/hmis/playbooks/facility-setup.mdx @@ -0,0 +1,79 @@ +--- +sidebar_position: 5 +--- + +# Facility setup + +Stand up a new health facility in Care from an empty shell to ready-to-admit. This playbook sequences the facility, location, department, bed, user, and ABDM linking flows that an administrator runs once per site. + +## Flows involved + +| Order | Flow | Purpose | +| --- | --- | --- | +| 1 | Create & configure a new health facility *(coming soon)* | Register the facility and its core settings | +| 2 | Add and organize facility locations *(coming soon)* | Build the location hierarchy (wards, rooms) | +| 3 | Link multiple departments to a location *(coming soon)* | Map departments onto locations | +| 4 | Create multiple beds in a location *(coming soon)* | Add bed capacity to wards/rooms | +| 5 | Create a department & link users *(coming soon)* | Set up departments and staff access | +| 6 | Link HFID for ABDM & generate QR *(coming soon)* | Register the facility with ABDM | + +## Happy path + +1. Administrator **creates and configures the facility** (name, type, address, core settings). +2. The **location hierarchy** is built out — buildings, wards, rooms. +3. **Departments are created** and **linked to locations**. +4. **Beds are added** to the relevant locations to establish capacity. +5. **Users are created and linked** to their departments with appropriate roles. +6. The facility's **HFID is linked for ABDM** and its **QR code generated** for national-network interoperability. + +## Edge cases + +### Phased go-live + +**Symptom:** Only some wards open initially. + +**Action:** + +1. Configure live locations/beds first; leave the rest inactive. +2. Activate additional capacity as it comes online — no need to re-create the facility. + +### Department spans multiple locations + +**Symptom:** One department operates across several wards/floors. + +**Action:** + +1. Link the department to **each** location it serves. +2. Assign users once at the department level rather than per location. + +### Bed re-numbering / re-org + +**Symptom:** Wards are renumbered after go-live. + +**Action:** + +1. Update the location/bed labels in place. +2. Avoid deleting occupied beds; move patients first to preserve encounter history. + +### ABDM not yet provisioned + +**Symptom:** HFID/QR step blocked pending ABDM registration. + +**Action:** + +1. Complete clinical setup (steps 1–5) so the facility is operational. +2. Return to **HFID linking and QR generation** once ABDM credentials are available. + +## Roles + +| Role | Can | +| --- | --- | +| Facility administrator | Create facility, locations, departments, beds | +| User administrator | Create and link users, assign roles | +| Integrations admin | Link HFID, generate ABDM QR | + +## Related + +- Flow: Create and configure a new health facility *(coming soon)* +- Flow: Add and organize facility locations *(coming soon)* +- Flow: Link HFID in Care for ABDM and generate QR *(coming soon)* diff --git a/deployments/hmis/playbooks/ip-rounds.mdx b/deployments/hmis/playbooks/ip-rounds.mdx new file mode 100644 index 0000000..a44da5c --- /dev/null +++ b/deployments/hmis/playbooks/ip-rounds.mdx @@ -0,0 +1,75 @@ +--- +sidebar_position: 6 +--- + +# IP rounds + +Run a ward round on an admitted patient: open the active encounter, explore the patient's record, and document findings through clinical forms. This playbook covers **accessing**, **exploring**, and **form filling** on an existing inpatient encounter — it does not create or close the encounter. + +## Flows involved + +| Order | Flow | Purpose | +| --- | --- | --- | +| 1 | Access a patient encounter *(coming soon)* | Open the patient's active admission | +| 2 | View symptoms, diagnosis, prescriptions & previous encounters *(coming soon)* | Explore the clinical picture before deciding | +| 3 | Submit clinical forms *(coming soon)* | Record round findings and assessments | + +## Happy path + +1. On the round, the clinician **accesses the patient's active encounter** from the ward/bed list. +2. They **explore the record** — current symptoms, diagnoses, active prescriptions, allergies, recent results, and previous encounters — to build the picture. +3. They **submit the relevant clinical form(s)** to document the day's assessment, observations, and plan. +4. New orders (medication, lab) flow out to the [pharmacy](./pharmacy-dispensing) and [lab](./lab-diagnostics) playbooks; the encounter stays open for the next round. + +## Edge cases + +### Patient transferred between beds/wards + +**Symptom:** Bed or location changed since the last round. + +**Action:** + +1. The encounter follows the patient; confirm the **current bed/location** before documenting. +2. If the assignment looks stale, update it before charting. + +### Information from a prior admission needed + +**Symptom:** History lives in an earlier encounter. + +**Action:** + +1. Open **previous encounters** read-only to review. +2. Document fresh findings on the **current** encounter — do not edit the closed one. + +### Form started but round interrupted + +**Symptom:** The clinician is pulled away mid-form. + +**Action:** + +1. Save progress; submit when complete so the record reflects a finished assessment. +2. Avoid leaving partially-entered clinical data unsubmitted across shifts. + +### Multiple clinicians on the same patient + +**Symptom:** Consultant and resident both document. + +**Action:** + +1. Each submits their own form entry; authorship is retained per submission. +2. Reconcile conflicting plans verbally, then record the agreed plan. + +## Roles + +| Role | Can | +| --- | --- | +| Clinician / consultant | Access encounter, explore record, submit clinical forms, place orders | +| Nurse | View encounter, record observations and administration | +| Read-only / allied staff | View the record without editing clinical data | + +## Related + +- Flow: Submit clinical forms *(coming soon)* +- Flow: View previous patient encounters *(coming soon)* +- Playbook: [OP consultation](./op-consultation) — the outpatient counterpart +- Playbook: [Pharmacy dispensing](./pharmacy-dispensing), [Lab diagnostics](./lab-diagnostics) — where round orders go diff --git a/deployments/hmis/playbooks/lab-diagnostics.mdx b/deployments/hmis/playbooks/lab-diagnostics.mdx new file mode 100644 index 0000000..c090478 --- /dev/null +++ b/deployments/hmis/playbooks/lab-diagnostics.mdx @@ -0,0 +1,79 @@ +--- +sidebar_position: 2 +--- + +# Lab diagnostics + +Take a lab investigation from the clinician's order all the way to a published, patient-visible report. This playbook chains the **lab test request** flow with the laboratory's **review → collect → result → publish** flow, and is owned jointly by clinicians and lab staff. + +## Flows involved + +| Order | Flow | Purpose | +| --- | --- | --- | +| 1 | Raise a lab test request *(coming soon)* | Clinician orders the investigation from the encounter | +| 2 | Review service request *(coming soon)* | Lab triages and accepts the order | +| 3 | Specimen collection *(coming soon)* | Sample is drawn, labelled, and logged | +| 4 | Result entry *(coming soon)* | Technician records values against the test | +| 5 | Report publication *(coming soon)* | Verified report is released to the record | + +## Happy path + +1. During an [encounter](/docs/flows/clinical/create-patient), the clinician raises a **lab test request** for the required panel. +2. The order appears in the lab's service-request queue; lab staff **review and accept** it. +3. **Specimen is collected**, labelled with the request identifier, and marked collected in Care. +4. The technician performs the test and **enters results** against each parameter. +5. A reviewer **verifies and publishes** the report; it becomes visible on the patient record and to the ordering clinician. + +## Edge cases + +### Sample rejected or insufficient + +**Symptom:** Specimen is haemolysed, clotted, or below required volume. + +**Action:** + +1. Mark the specimen rejected with a reason. +2. Notify the ordering team to **re-collect**; the original request stays open or is re-issued per lab policy. +3. Do not enter results against a rejected specimen. + +### STAT / urgent order + +**Symptom:** Clinician flags the order as urgent. + +**Action:** + +1. Order is prioritised in the review queue. +2. Provisional results may be communicated verbally; the **published report remains the system of record**. + +### Result amendment after publication + +**Symptom:** An error is found in an already-published value. + +**Action:** + +1. Issue a corrected report rather than editing silently. +2. The amendment is retained in history so the original and corrected values are both auditable. + +### Add-on test on an existing sample + +**Symptom:** Clinician wants another test on a sample already collected. + +**Action:** + +1. Raise a new lab test request and link it to the existing specimen where the analyte allows. +2. If the sample type or stability does not permit it, a fresh collection is required. + +## Roles + +| Role | Can | +| --- | --- | +| Clinician | Raise requests, view published reports | +| Lab reception / phlebotomist | Review requests, collect and log specimens | +| Lab technician | Enter results | +| Lab reviewer / pathologist | Verify and publish reports, issue amendments | + +## Related + +- Flow: Raise a lab test request *(coming soon)* +- Flow: Laboratory review, collection, result entry, and publication *(coming soon)* +- Playbook: [OP consultation](./op-consultation) — where most orders originate diff --git a/deployments/hmis/playbooks/op-consultation.mdx b/deployments/hmis/playbooks/op-consultation.mdx new file mode 100644 index 0000000..77f6123 --- /dev/null +++ b/deployments/hmis/playbooks/op-consultation.mdx @@ -0,0 +1,77 @@ +--- +sidebar_position: 7 +--- + +# OP consultation + +Run an outpatient consultation end to end: open a fresh encounter for the visit, document the consultation through clinical forms, and complete the encounter. This playbook covers **creating**, **form filling**, and **completing** an OP encounter. + +## Flows involved + +| Order | Flow | Purpose | +| --- | --- | --- | +| 1 | Create an encounter *(coming soon)* | Open today's OP visit for the patient | +| 2 | Submit clinical forms *(coming soon)* | Document history, examination, and plan | +| 3 | Update symptoms, diagnosis & prescribe *(coming soon)* | Record the clinical decision | +| 4 | Mark the encounter complete *(coming soon)* | Close the visit and generate the summary | + +## Happy path + +1. The clinician **creates an OP encounter** for the patient at check-in (registering the patient first via [create patient](/docs/flows/clinical/create-patient) if they are new). +2. They **submit the consultation form(s)** — presenting complaint, history, examination. +3. They record the decision: **update symptoms and diagnosis**, and **prescribe** any medication or **order** labs. +4. They **mark the encounter complete**; a treatment/visit summary can then be generated and printed for the patient. + +## Edge cases + +### Walk-in vs scheduled + +**Symptom:** Patient arrives without an appointment. + +**Action:** + +1. Create the encounter directly for a walk-in; link to the appointment if one exists. +2. Scheduled patients are checked in first, then the encounter is opened. + +### Follow-up referencing a prior visit + +**Symptom:** This visit continues a previous problem. + +**Action:** + +1. Open **previous encounters** read-only for context. +2. Document on the **new** encounter; carry forward the diagnosis rather than editing the old visit. + +### Referral / needs admission + +**Symptom:** The OP visit escalates to inpatient or specialist care. + +**Action:** + +1. Complete the OP encounter with the decision documented. +2. Hand over to admission or referral; the IP stay is tracked under [IP rounds](./ip-rounds). + +### Completed in error + +**Symptom:** Encounter marked complete prematurely. + +**Action:** + +1. Reopen per facility policy to add the missing documentation, then re-complete. +2. Avoid creating a duplicate encounter for the same visit. + +## Roles + +| Role | Can | +| --- | --- | +| Clinician | Create encounter, submit forms, diagnose, prescribe, complete | +| Nurse | Record vitals/observations, assist documentation | +| Front desk | Check-in, link appointment to encounter | + +## Related + +- Flow: Create an encounter *(coming soon)* +- Flow: Submit clinical forms *(coming soon)* +- Flow: Generate treatment summary *(coming soon)* +- Playbook: [IP rounds](./ip-rounds) — the inpatient counterpart +- Playbook: [Pharmacy dispensing](./pharmacy-dispensing), [Lab diagnostics](./lab-diagnostics) — where consultation orders go diff --git a/deployments/hmis/playbooks/pharmacy-dispensing.mdx b/deployments/hmis/playbooks/pharmacy-dispensing.mdx new file mode 100644 index 0000000..adcf804 --- /dev/null +++ b/deployments/hmis/playbooks/pharmacy-dispensing.mdx @@ -0,0 +1,74 @@ +--- +sidebar_position: 4 +--- + +# Pharmacy dispensing + +Move a medication order from the prescriber to the patient's hand. This playbook joins the clinician's **prescribe** flow with the pharmacist's **review and dispense** flow and the ward's **view and administer** flow. + +## Flows involved + +| Order | Flow | Purpose | +| --- | --- | --- | +| 1 | Prescribe medication *(coming soon)* | Clinician orders the drug during the encounter | +| 2 | Review prescriptions & dispense *(coming soon)* | Pharmacist verifies and issues the medicine | +| 3 | View prescription & administer *(coming soon)* | Nurse administers and records (inpatient) | + +## Happy path + +1. The clinician **prescribes** the medication during the [encounter](/docs/flows/clinical/create-patient), with dose, route, and frequency. +2. The order reaches the pharmacy queue; the pharmacist **reviews** it for interactions, allergies, and stock. +3. The pharmacist **dispenses** the medicine and records the issue. +4. For inpatients, the nurse **views the prescription and records administration** at each due time. + +## Edge cases + +### Allergy or interaction flagged + +**Symptom:** The patient has a recorded allergy or the order interacts with an existing medication. + +**Action:** + +1. Pharmacist holds the order and **queries the prescriber** rather than dispensing. +2. Prescriber amends or confirms with an override reason; the decision is retained. + +### Out of stock / substitution + +**Symptom:** The exact drug or strength is unavailable. + +**Action:** + +1. Pharmacist proposes a **therapeutic equivalent / alternate strength**. +2. Substitution is confirmed with the prescriber where policy requires, then dispensed and recorded. + +### Partial dispense + +**Symptom:** Only part of the prescribed quantity is in stock. + +**Action:** + +1. Dispense the available quantity and mark the balance pending. +2. Complete the dispense when stock arrives; the order stays open until fulfilled. + +### Missed or refused dose (inpatient) + +**Symptom:** A scheduled administration is not given. + +**Action:** + +1. Nurse records the dose as missed/refused with a reason instead of leaving it blank. +2. The gap is visible to the next shift and the prescriber. + +## Roles + +| Role | Can | +| --- | --- | +| Clinician | Prescribe, amend, respond to pharmacy queries | +| Pharmacist | Review, dispense, substitute, query | +| Nurse | View prescription, record administration | + +## Related + +- Flow: Prescribe medication *(coming soon)* +- Flow: Review prescriptions and dispense medicines *(coming soon)* +- Playbook: [OP consultation](./op-consultation) and [IP rounds](./ip-rounds) — where prescriptions originate diff --git a/docs/flows/access-governance/_category_.json b/docs/flows/access-governance/_category_.json new file mode 100644 index 0000000..4c7812e --- /dev/null +++ b/docs/flows/access-governance/_category_.json @@ -0,0 +1,5 @@ +{ + "label": "Access governance", + "position": 6, + "key": "access-governance-flows" +} diff --git a/docs/flows/access-governance/assign-user-to-patient.mdx b/docs/flows/access-governance/assign-user-to-patient.mdx new file mode 100644 index 0000000..5dc05df --- /dev/null +++ b/docs/flows/access-governance/assign-user-to-patient.mdx @@ -0,0 +1,46 @@ +--- +sidebar_position: 3 +--- + +# Assign a user to a patient record + +This flow assigns a user — such as a volunteer or ASHA worker — to a specific **patient record**, so they can manage that patient in the system. + +## Before you start + +- Confirm the **correct patient** before assigning. +- Assign only users **authorized** to manage the patient record. + +## Steps + +### 1. Locate the patient + +![Locate the patient](/img/flows/access-governance/assign-user-to-patient/01-loom.jpg) + +Open the patient assignment feature, search for the patient, and confirm you've selected the correct one. + +### 2. Select the user role + +![Select the user role](/img/flows/access-governance/assign-user-to-patient/02-loom.jpg) + +Identify the role to assign (e.g. volunteer, ASHA worker) from the role list or search, ensuring it matches the intended user type. + +### 3. Choose and assign the user + +![Choose and assign the user](/img/flows/access-governance/assign-user-to-patient/03-loom.jpg) + +Select the user from the list and assign them to the patient record. Verify the action completes successfully. + +### 4. Confirm + +Check that the user now appears as assigned and has permission to manage the record before exiting. + +:::caution +Verify the user role carefully to avoid assigning the wrong type of user, and confirm the assignment to prevent access issues. +::: + +## Related + +- Flow: [Add or link users to a department](./manage-department-users) +- Flow: [Manage the care team](./manage-care-team) +- Flow: [Create and track a resource request](../supply/resource-request) diff --git a/docs/flows/access-governance/manage-care-team.mdx b/docs/flows/access-governance/manage-care-team.mdx new file mode 100644 index 0000000..c284ad6 --- /dev/null +++ b/docs/flows/access-governance/manage-care-team.mdx @@ -0,0 +1,52 @@ +--- +sidebar_position: 2 +--- + +# Manage the care team + +This flow adds one or more doctors to a patient's **Managed Care Team** from the encounter page, and designates or changes the **primary** doctor. + +## Before you start + +- Confirm the **correct patient encounter** is open. +- Prepare the list of doctors and their departments. + +## Steps + +### 1. Open Managed Care Team + +![Open Managed Care Team](/img/flows/access-governance/manage-care-team/01-loom.jpg) + +On the patient encounter page, locate **Managed Care Team** on the right-hand side. + +### 2. Edit and select a department + +![Edit and select a department](/img/flows/access-governance/manage-care-team/02-loom.jpg) + +Click **Edit**, then select the relevant **department** (e.g. *Surgery Department*). + +### 3. Add a doctor + +![Add a doctor](/img/flows/access-governance/manage-care-team/03-loom.jpg) + +Add the doctor's name, verifying they belong to the selected department and match the patient's care needs. + +### 4. Add more doctors if needed + +![Add more doctors if needed](/img/flows/access-governance/manage-care-team/04-loom.jpg) + +Repeat the department + doctor selection for each additional provider (e.g. add a doctor from *Anesthesia* alongside the surgery doctor). + +### 5. Set the primary doctor + +Designate the main point of contact as **Primary**. To change it later, select the primary button for the new doctor. + +:::caution +Confirm the department before adding a doctor, assign the primary doctor intentionally (it affects communication and responsibility), and review the final list before exiting. +::: + +## Related + +- Flow: [Add or link users to a department](./manage-department-users) +- Flow: [Assign a user to a patient record](./assign-user-to-patient) +- Playbook: [IP rounds](/deployments/hmis/playbooks/ip-rounds) diff --git a/docs/flows/access-governance/manage-department-users.mdx b/docs/flows/access-governance/manage-department-users.mdx new file mode 100644 index 0000000..6a0a64d --- /dev/null +++ b/docs/flows/access-governance/manage-department-users.mdx @@ -0,0 +1,67 @@ +--- +sidebar_position: 1 +--- + +# Add or link users to a department + +This flow adds a **new user** to a department, or **links an existing user** to it, with the appropriate role and access. + +## Before you start + +- You need user-administration access to **Settings → Departments**. +- Confirm the **correct department**, and prepare user details (name, email, role) in advance. + +## Steps + +### 1. Open the department + +![Open the department (1)](/img/flows/access-governance/manage-department-users/01-loom.jpg) + +![Open the department (2)](/img/flows/access-governance/manage-department-users/02-loom.jpg) + +![Open the department (3)](/img/flows/access-governance/manage-department-users/03-loom.jpg) + +Go to **Settings** → **Departments** and choose the relevant department. + +### 2. Open Users + +![Open Users (1)](/img/flows/access-governance/manage-department-users/04-loom.jpg) + +![Open Users (2)](/img/flows/access-governance/manage-department-users/05-loom.jpg) + +Click **Users** within the department. Two actions are available: **Add User** (create new) and **Link User** (connect an existing user). + +### 3. Add a new user + +![Add a new user (1)](/img/flows/access-governance/manage-department-users/06-loom.jpg) + +![Add a new user (2)](/img/flows/access-governance/manage-department-users/07-loom.jpg) + +Click **Add User** and enter the **user type**, **user name** (include a prefix if required), and **email**. Choose how the password is set — set it now yourself, or send an email invitation so the user creates their own. + +### 4. Set password, role, and confirm + +![Set password, role, and confirm (1)](/img/flows/access-governance/manage-department-users/08-loom.jpg) + +![Set password, role, and confirm (2)](/img/flows/access-governance/manage-department-users/09-loom.jpg) + +If setting manually, enter and confirm the password, then save. Assign the appropriate **role** (e.g. *Doctor*) and confirm the user appears in the department. + +### 5. Link an existing user + +![Link an existing user (1)](/img/flows/access-governance/manage-department-users/10-loom.jpg) + +![Link an existing user (2)](/img/flows/access-governance/manage-department-users/11-loom.jpg) + +Alternatively, click **Link User**, search for the user, select the **role**, and click **Add to Organization**. Confirm the user is linked. + +:::caution +Select the correct department and role to avoid access/permission issues. Prefer **Link User** for existing users to avoid duplicate accounts. +::: + +## Related + +- Flow: [Create a department](../facility/create-department) +- Flow: [Manage the care team](./manage-care-team) +- Flow: [Assign a user to a patient record](./assign-user-to-patient) +- Playbook: [Facility setup](/deployments/hmis/playbooks/facility-setup) diff --git a/docs/flows/billing/_category_.json b/docs/flows/billing/_category_.json new file mode 100644 index 0000000..5a5ebd7 --- /dev/null +++ b/docs/flows/billing/_category_.json @@ -0,0 +1,5 @@ +{ + "label": "Billing", + "position": 4, + "key": "billing-flows" +} diff --git a/docs/flows/billing/add-service-request.mdx b/docs/flows/billing/add-service-request.mdx new file mode 100644 index 0000000..b55acc6 --- /dev/null +++ b/docs/flows/billing/add-service-request.mdx @@ -0,0 +1,47 @@ +--- +sidebar_position: 1 +--- + +# Add a service request + +This flow creates a **service request** from the encounter page to order lab investigations, procedures, or radiology — recorded under Service Request for the encounter. + +:::info +Service requests are typically created by a **practitioner**. A lab-specific walkthrough is in [Raise a lab test request](../clinical/raise-lab-request). +::: + +## Before you start + +- Confirm you are on the **correct patient encounter**. + +## Steps + +### 1. Open Service Request + +![Open Service Request](/img/flows/billing/add-service-request/01-screenshot-2026-06-17-at-5.18.58-pm.png) + +On the **Patient Encounter** page, click **Service Request** to start a new request. + +### 2. Choose the request type + +![Choose the request type](/img/flows/billing/add-service-request/02-screenshot-2026-06-17-at-5.15.16-pm.png) + +Select the type matching the clinical need: + +- **Lab investigations** (e.g. Complete Blood Count) +- **Procedures** (e.g. dental extraction) +- **Radiology investigations** (e.g. chest X-ray) + +Confirm the selection matches the intended service. + +### 3. Submit and review + +![Submit and review](/img/flows/billing/add-service-request/03-loom.jpg) + +After entering the request, confirm it appears under **Service Request** and is recorded correctly before ending the encounter. + +## Related + +- Flow: [Raise a lab test request](../clinical/raise-lab-request) +- Flow: [Link a charge item to a schedule](../scheduling/link-charge-item) +- Playbook: [Billing and payment](/deployments/hmis/playbooks/billing-and-payment), [Lab diagnostics](/deployments/hmis/playbooks/lab-diagnostics) diff --git a/docs/flows/billing/collect-payment.mdx b/docs/flows/billing/collect-payment.mdx new file mode 100644 index 0000000..433ab61 --- /dev/null +++ b/docs/flows/billing/collect-payment.mdx @@ -0,0 +1,41 @@ +--- +sidebar_position: 4 +--- + +# Collect a payment + +This flow records a patient **payment** against an invoice, prints the receipt, and marks the account balanced. + +## Before you start + +- An invoice must already exist — see [Create an invoice](./create-invoice). +- Know the actual payment method used by the patient. + +## Steps + +### 1. Record the payment + +Choose the **payment method** the patient used (e.g. cash or other supported methods), enter the payment details, and click the record-payment confirmation to complete the transaction. + +![Record the payment](/img/flows/billing/collect-payment/01-loom.jpg) + +### 2. Print the receipt + +After payment is recorded, the system generates a receipt. Print it and give it to the patient for their records. + +![Print the receipt](/img/flows/billing/collect-payment/02-loom.jpg) + +### 3. Mark the account as balanced + +Click **Mark as Balanced**, then return to the patient account to confirm the balance is cleared and the payment shows as completed. + +![Mark the account as balanced](/img/flows/billing/collect-payment/03-loom.jpg) + +:::caution +Do not mark the account as balanced until payment has been successfully recorded and verified. +::: + +## Related + +- Flow: [Create an invoice](./create-invoice) +- Playbook: [Billing and payment](/deployments/hmis/playbooks/billing-and-payment) diff --git a/docs/flows/billing/create-discount.mdx b/docs/flows/billing/create-discount.mdx new file mode 100644 index 0000000..bf1058b --- /dev/null +++ b/docs/flows/billing/create-discount.mdx @@ -0,0 +1,53 @@ +--- +sidebar_position: 2 +--- + +# Create a discount code and component + +This flow creates a **discount code** and a **discount component** in billing settings, with a condition so eligible patients (e.g. those with a given tag) receive the discount automatically. + +## Before you start + +- You need access to **Settings → Billing**. +- Decide the eligibility condition (patient tag, age, or gender) and the discount value. + +## Steps + +### 1. Open Billing discount settings + +![Open Billing discount settings (1)](/img/flows/billing/create-discount/01-screenshot-2026-06-17-at-6.51.23-pm.png) + +![Open Billing discount settings (2)](/img/flows/billing/create-discount/02-da6af6433f7b4b3ca7e554f0618d35ec-workflows_screenshot-true.jpg) + +Go to **Settings** → **Billing**. You'll see two sections: **Discount Code** and **Discount Components**. Create the code first. + +### 2. Create the discount code + +![Create the discount code](/img/flows/billing/create-discount/03-ac957d2284f74cc8a57432596083e361-workflows_screenshot-true.jpg) + +Under **Discount Code** → **Create Discount Code**, enter a clear name (e.g. *Hospital Staff*) and a short code (e.g. *HSF*). Confirm it was created. + +### 3. Create the discount component + +![Create the discount component](/img/flows/billing/create-discount/04-loom.jpg) + +Under **Discount Components** → **Create Discount Component**, enter a name and choose the type: + +- **Amount** — a fixed value +- **Factor** — a percentage (e.g. select Factor and enter 70% for a 70% discount) + +### 4. Add the condition + +![Add the condition](/img/flows/billing/create-discount/05-loom.jpg) + +Set the condition by **Patient Tag**, **Patient Age**, or **Patient Gender** (e.g. tag = *Hospital Staff*), add it, and **Save**. Verify that matching patients receive the discount automatically. + +:::caution +Create the discount code before the component. Use **Factor** for percentage discounts and **Amount** for fixed values. Test with a sample patient after saving. +::: + +## Related + +- Flow: [Add a service request](./add-service-request) +- Flow: [Add patient tags](../clinical/patient-tags) +- Playbook: [Billing and payment](/deployments/hmis/playbooks/billing-and-payment) diff --git a/docs/flows/billing/create-invoice.mdx b/docs/flows/billing/create-invoice.mdx new file mode 100644 index 0000000..cf3f76e --- /dev/null +++ b/docs/flows/billing/create-invoice.mdx @@ -0,0 +1,44 @@ +--- +sidebar_position: 3 +--- + +# Create an invoice + +This flow has billing staff open a patient account, review billable charge items, and **create an invoice** for the selected charges. + +## Before you start + +- You need billing access to **My Facility → Billing/Accounts**. +- Confirm the correct facility and patient before invoicing. + +## Steps + +### 1. Open Billing and view billable accounts + +Log in, go to **My Facility**, and open **Billing → Accounts** to view patients with outstanding charges. Confirm you are in the correct facility. + +![Open Billing and view billable accounts](/img/flows/billing/create-invoice/01-loom.jpg) + +### 2. Select the patient account + +Select the patient from the list and open their account to review all pending charges. Verify the patient and service details. + +![Select the patient account](/img/flows/billing/create-invoice/02-loom.jpg) + +### 3. Review charge items + +Go to **Charge Items** within the account. Review the billable services (e.g. lab work, X-rays) and select the specific items to include — if only some should be billed, select just those. + +![Review charge items](/img/flows/billing/create-invoice/03-loom.jpg) + +### 4. Create the invoice + +Click **Create Invoice**. Confirm the invoice includes the correct services and amounts, and that it generated successfully. + +![Create the invoice](/img/flows/billing/create-invoice/04-loom.jpg) + +## Related + +- Flow: [Collect a payment](./collect-payment) +- Flow: [Create a discount code and component](./create-discount) +- Playbook: [Billing and payment](/deployments/hmis/playbooks/billing-and-payment) diff --git a/docs/flows/clinical/ai-scribe.mdx b/docs/flows/clinical/ai-scribe.mdx new file mode 100644 index 0000000..56edeb6 --- /dev/null +++ b/docs/flows/clinical/ai-scribe.mdx @@ -0,0 +1,52 @@ +--- +sidebar_position: 11 +--- + +# Use AI-Scribe (voice autofill) + +**AI-Scribe** is a multilingual voice-to-text tool that detects clinical parameters from speech and fills the matching fields in a clinical form automatically — vitals, history, symptoms, assessment, and short-term plan. + +## Before you start + +- Open the relevant [clinical form](./submit-clinical-forms) on the encounter. +- Be ready to dictate clearly; AI-Scribe maps spoken values to specific fields. + +## Steps + +### 1. Enable Voice Autofill + +![Enable Voice Autofill (1)](/img/flows/clinical/ai-scribe/01-dd21a20caf3f4f4eba211fa9026485a6-workflows_screenshot-true.jpg) + +![Enable Voice Autofill (2)](/img/flows/clinical/ai-scribe/02-screenshot-2026-06-17-at-7.22.33-pm.png) + +In the bottom-right corner of the clinical form, enable the green **Voice Autofill** (AI-Scribe) button. + +### 2. Dictate the clinical fields + +![Dictate the clinical fields](/img/flows/clinical/ai-scribe/03-screenshot-2026-06-17-at-7.21.37-pm.png) + +Speak the values to capture, for example: + +- Vitals — pulse 60, BP 120/80, SpO₂ 98%, temperature 100°F +- History — hypertension for 6 years, no diabetes +- Symptom — tired on exertion + +### 3. Dictate diagnosis and plan + +![Dictate diagnosis and plan](/img/flows/clinical/ai-scribe/04-loom.jpg) + +State the working diagnosis, medication (drug, dose, frequency, duration), supportive care, recommended investigations, follow-up/review date, and disposition (e.g. no admission). + +### 4. Review and finalize + +![Review and finalize](/img/flows/clinical/ai-scribe/05-loom.jpg) + +Confirm every field was captured correctly. Either accept all entries or review each one, then submit the form. + +:::caution +Voice transcription can mis-hear drug names and doses. Verify medication dose, diagnosis wording, and investigation names against the clinical record before submitting. +::: + +## Related + +- Flow: [Submit a clinical form](./submit-clinical-forms) diff --git a/docs/flows/clinical/complete-encounter.mdx b/docs/flows/clinical/complete-encounter.mdx new file mode 100644 index 0000000..0022c51 --- /dev/null +++ b/docs/flows/clinical/complete-encounter.mdx @@ -0,0 +1,45 @@ +--- +sidebar_position: 3 +--- + +# Mark an encounter complete + +This flow marks a patient **encounter as completed** once the doctor–patient interaction has ended. + +## Before you start + +- Confirm all documentation for the visit is finished — completing an encounter signals the visit is closed. +- Make sure you are in the **correct** encounter. + +## Steps + +### 1. Open Encounter Actions + +![Open Encounter Actions](/img/flows/clinical/complete-encounter/01-loom.jpg) + +On the encounter record, click **Encounter Actions** to open the menu and locate **Mark as Completed**. + +### 2. Mark as completed + +![Mark as completed](/img/flows/clinical/complete-encounter/02-loom.jpg) + +Select **Mark as Completed**, or use the keyboard shortcut **M + C**. The encounter status updates to **Completed**. + +### 3. Confirm + +![Confirm](/img/flows/clinical/complete-encounter/03-loom.jpg) + +Verify the status now shows **Completed**. If it does not update, repeat the action or confirm you selected the correct encounter. + +## After completion + +| Next step | When | +| --- | --- | +| [Generate a treatment summary](./treatment-summary) | Patient needs a visit summary | +| [Generate a discharge summary](./discharge-summary) | Inpatient discharge | + +## Related + +- Flow: [Create an encounter](./create-encounter) +- Flow: [Discharge an encounter](./discharge-encounter) +- Playbook: [OP consultation](/deployments/hmis/playbooks/op-consultation) diff --git a/docs/flows/clinical/create-encounter-tag.mdx b/docs/flows/clinical/create-encounter-tag.mdx new file mode 100644 index 0000000..52b1ada --- /dev/null +++ b/docs/flows/clinical/create-encounter-tag.mdx @@ -0,0 +1,36 @@ +--- +sidebar_position: 6 +--- + +# Create an encounter tag + +This flow creates a reusable **tag** (via Tag Config) that can be applied to encounters — and to other resources such as patients or accounts — to categorize and filter records. + +## Before you start + +- You need access to **Tag Config** (an administrative permission). +- Decide the tag's **category**, the **resource type** it applies to, and which **organizations** should use it. + +## Steps + +### 1. Open Tag Config + +From the left navigation bar, click **Tag Config**, then click **Add Tag Config** on the right-hand side. + +### 2. Define the tag + +| Field | Notes | +| --- | --- | +| Name | The tag label | +| Category | The tag's grouping | +| Resource | Where it applies — Patient, Encounter, Account, etc. | +| Priority | `1` = maximum, `100` = minimum | +| Organizations | The organizations allowed to use this tag | + +### 3. Create + +Click **Create Tag**. The tag becomes available for the selected resource type. + +## Related + +- Flow: [Create an encounter](./create-encounter) diff --git a/docs/flows/clinical/create-encounter.mdx b/docs/flows/clinical/create-encounter.mdx new file mode 100644 index 0000000..f267e3d --- /dev/null +++ b/docs/flows/clinical/create-encounter.mdx @@ -0,0 +1,65 @@ +--- +sidebar_position: 2 +--- + +# Create an encounter + +This flow covers opening a new **encounter** for an existing patient — the record of a single visit or admission that all clinical documentation hangs off. + +:::info Prerequisite +The patient must already exist. If not, run [Create a patient](./create-patient) first. +::: + +## Before you start + +- You need a role with **encounter create** permission for the facility. +- Know the **encounter type** (e.g. outpatient, inpatient, emergency) and the **department** the visit belongs to. + +## Steps + +### 1. Search for the patient + +![Search for the patient](/img/flows/clinical/create-encounter/01-loom.jpg) + +From the left navigation bar, click **Search Patients** and search using any patient identifier (name, phone, MRN). Wait for the patient details to load. + +### 2. Open the create form + +![Open the create form](/img/flows/clinical/create-encounter/02-loom.jpg) + +On the patient record, under **Actions**, click **Create Encounter**. A new encounter form opens. + +### 3. Fill encounter details + +![Fill encounter details](/img/flows/clinical/create-encounter/03-loom.jpg) + +| Field | Notes | +| --- | --- | +| Encounter type | Select from the dropdown (outpatient, inpatient, etc.) | +| Status | Adjust if the default does not match the visit | +| Department | Add the department associated with the encounter | + +### 4. Create + +![Create](/img/flows/clinical/create-encounter/04-loom.jpg) + +Click **Create Encounter** to save. The encounter opens, ready for documentation. + +## After creation + +| Next step | When | +| --- | --- | +| [Submit a clinical form](./submit-clinical-forms) | Documenting the consultation | +| [Update diagnosis](./update-diagnosis) / [symptoms](./update-symptoms) | Recording clinical findings | +| [Mark encounter complete](./complete-encounter) | Visit is finished | + +## Edge cases + +End-to-end visit handling is documented in playbooks. + +→ See [OP consultation](/deployments/hmis/playbooks/op-consultation) and [IP rounds](/deployments/hmis/playbooks/ip-rounds). + +## Related + +- Flow: [Create a patient](./create-patient) +- Concept: [Patient](../../concepts/clinical/patient) diff --git a/docs/flows/clinical/discharge-encounter.mdx b/docs/flows/clinical/discharge-encounter.mdx new file mode 100644 index 0000000..a562491 --- /dev/null +++ b/docs/flows/clinical/discharge-encounter.mdx @@ -0,0 +1,50 @@ +--- +sidebar_position: 4 +--- + +# Discharge an encounter + +This flow discharges a patient encounter from the **Patient Encounter** page using **Update Encounter**, recording the discharge details before the encounter is closed. + +## Before you start + +- Gather the discharge details first (disposition/reason, discharge date/time, admit source) to avoid back-and-forth. +- Confirm you are in the correct encounter. + +## Steps + +### 1. Open Update Encounter + +![Open Update Encounter](/img/flows/clinical/discharge-encounter/01-loom.jpg) + +On the **Patient Encounter** page, on the right-hand side, click **Update Encounter**. + +### 2. Mark as discharged + +![Mark as discharged](/img/flows/clinical/discharge-encounter/02-loom.jpg) + +In the Update Encounter window, select **Mark as Discharge**. The encounter status changes to **Discharged**. + +### 3. Enter discharge details + +![Enter discharge details](/img/flows/clinical/discharge-encounter/03-loom.jpg) + +Set the **discharge disposition/reason** clearly (e.g. discharged home). Review it to confirm it reflects the correct outcome. + +### 4. Update encounter information + +![Update encounter information](/img/flows/clinical/discharge-encounter/04-loom.jpg) + +Review and update **Admit Source** and the **discharge date/time** as needed. Confirm any other encounter details are accurate. + +### 5. Add diet preference and submit + +![Add diet preference and submit](/img/flows/clinical/discharge-encounter/05-loom.jpg) + +If applicable, set the patient's **diet preference**, then click **Submit**. Verify the encounter is marked complete and can be closed. + +## Related + +- Flow: [Mark an encounter complete](./complete-encounter) +- Flow: [Generate a discharge summary](./discharge-summary) +- Playbook: [IP rounds](/deployments/hmis/playbooks/ip-rounds) diff --git a/docs/flows/clinical/discharge-summary.mdx b/docs/flows/clinical/discharge-summary.mdx new file mode 100644 index 0000000..664170b --- /dev/null +++ b/docs/flows/clinical/discharge-summary.mdx @@ -0,0 +1,40 @@ +--- +sidebar_position: 14 +--- + +# Generate a discharge summary + +This flow generates and prints a **discharge summary** from a patient encounter. + +## Before you start + +- Confirm the **correct patient encounter** is open. +- Follow your organization's privacy and documentation policies when handling records. + +## Steps + +### 1. Open the encounter + +![Open the encounter](/img/flows/clinical/discharge-summary/01-loom.jpg) + +From the patient dashboard, open the relevant encounter and locate the **Reports** section on the right-hand side. + +### 2. Generate the discharge summary + +![Generate the discharge summary](/img/flows/clinical/discharge-summary/02-loom.jpg) + +Select the option to **generate the discharge summary**. Review it once it opens to confirm it is the correct document for the encounter. + +### 3. Print + +Click **Print**, confirm printer settings if prompted, and verify the document was sent successfully. + +:::caution +Verify the discharge summary content before printing to avoid distributing incorrect information. +::: + +## Related + +- Flow: [Discharge an encounter](./discharge-encounter) +- Flow: [Generate a treatment summary](./treatment-summary) +- Playbook: [IP rounds](/deployments/hmis/playbooks/ip-rounds) diff --git a/docs/flows/clinical/edit-demographics.mdx b/docs/flows/clinical/edit-demographics.mdx new file mode 100644 index 0000000..823df25 --- /dev/null +++ b/docs/flows/clinical/edit-demographics.mdx @@ -0,0 +1,43 @@ +--- +sidebar_position: 19 +--- + +# Edit patient demographics + +This flow updates a registered patient's **demographic details** from their profile. + +## Before you start + +- Confirm you are viewing the **correct patient** profile. +- Follow your organization's privacy and data-handling policies. + +## Steps + +### 1. Open the patient profile + +![Open the patient profile](/img/flows/clinical/edit-demographics/01-loom.jpg) + +Locate the registered patient and open their profile. + +### 2. Click Edit + +![Click Edit](/img/flows/clinical/edit-demographics/02-loom.jpg) + +Review the existing details, then click **Edit** to enable changes. + +### 3. Update the details + +![Update the details](/img/flows/clinical/edit-demographics/03-loom.jpg) + +Modify the required fields (e.g. address or other demographics). Review carefully, then click **Update**. + +### 4. Confirm + +![Confirm](/img/flows/clinical/edit-demographics/04-loom.jpg) + +Verify the updated information appears correctly on the profile. Repeat if further corrections are needed. + +## Related + +- Flow: [Register a patient manually](./register-patient-manually) +- Flow: [Add patient tags](./patient-tags) diff --git a/docs/flows/clinical/fetch-records-abdm.mdx b/docs/flows/clinical/fetch-records-abdm.mdx new file mode 100644 index 0000000..839047a --- /dev/null +++ b/docs/flows/clinical/fetch-records-abdm.mdx @@ -0,0 +1,64 @@ +--- +sidebar_position: 21 +--- + +# Fetch patient records via ABDM + +This flow requests and retrieves a patient's external health records through **ABDM**, including submitting the consent request and monitoring its status. + +:::info Availability +ABDM record fetch applies to **ABDM-enabled deployments** and requires patient consent. Access records only per patient consent and applicable privacy policies. +::: + +## Before you start + +- Have the required **date range** and **consent expiry date** ready. +- Confirm the **purpose of request** for the access. + +## Steps + +### 1. Open Encounter Actions + +![Open Encounter Actions (1)](/img/flows/clinical/fetch-records-abdm/01-loom.jpg) + +![Open Encounter Actions (2)](/img/flows/clinical/fetch-records-abdm/02-loom.jpg) + +On the patient dashboard, click **Encounter Actions** (top-right). + +### 2. Choose Fetch Records over ABDM + +![Choose Fetch Records over ABDM (1)](/img/flows/clinical/fetch-records-abdm/03-loom.jpg) + +![Choose Fetch Records over ABDM (2)](/img/flows/clinical/fetch-records-abdm/04-loom.jpg) + +Select **Fetch Records over ABDM** to open the request form. + +### 3. Set the purpose + +![Set the purpose](/img/flows/clinical/fetch-records-abdm/05-loom.jpg) + +In **Purpose of Request**, select the reason that matches the use case (e.g. **Care Management**). + +### 4. Set the date range and consent expiry + +![Set the date range and consent expiry](/img/flows/clinical/fetch-records-abdm/06-loom.jpg) + +Enter the **Health Record Date Range** for the records you need, then set the **Consent Expiry Date**, allowing enough time for processing. + +### 5. Submit the consent request + +![Submit the consent request](/img/flows/clinical/fetch-records-abdm/07-loom.jpg) + +Review the details and click **Request Consent**. Confirm the request shows as successfully submitted. + +### 6. Check status and view records + +![Check status and view records](/img/flows/clinical/fetch-records-abdm/08-loom.jpg) + +Open **ABDM Records**, click **Check Status** (processing may take time), then open the fetched records once available and review them for completeness. + +## Related + +- Flow: [Register a patient through ABHA](./register-patient-abha) +- Flow: [View previous encounters](./view-previous-encounters) +- Playbook: [OP consultation](/deployments/hmis/playbooks/op-consultation) diff --git a/docs/flows/clinical/manage-allergy.mdx b/docs/flows/clinical/manage-allergy.mdx new file mode 100644 index 0000000..73f386b --- /dev/null +++ b/docs/flows/clinical/manage-allergy.mdx @@ -0,0 +1,53 @@ +--- +sidebar_position: 9 +--- + +# Add or update an allergy + +This flow records an **allergy** on a patient's record and lets you edit or remove it afterward — with criticality, status, and date. + +:::caution Patient safety +Allergy data drives downstream safety checks (e.g. prescribing). Select the correct allergy and verify every field before submitting. +::: + +## Before you start + +- Confirm the correct patient chart and encounter are open. +- Only authorized users should edit or remove allergy information. + +## Steps + +### 1. Start an allergy entry + +![Start an allergy entry](/img/flows/clinical/manage-allergy/01-loom.jpg) + +From the encounter, click **Encounter Actions** → **Add Allergy**. + +### 2. Enter allergy details + +![Enter allergy details](/img/flows/clinical/manage-allergy/02-loom.jpg) + +Select the allergy, then set: + +| Field | Notes | +| --- | --- | +| Criticality | How critical the allergy is | +| Status | e.g. active, inactive | +| Date | Onset / recorded date | + +### 3. Review date information + +![Review date information](/img/flows/clinical/manage-allergy/03-loom.jpg) + +Confirm the duration/date displayed for the allergy is accurate before finalizing. + +### 4. Submit + +![Submit](/img/flows/clinical/manage-allergy/04-loom.jpg) + +Submit to save the allergy. To correct it, use **Edit** to update or remove the entry (where permitted). If removal is blocked, follow your organization's correction process. + +## Related + +- Flow: [Add or update symptoms](./update-symptoms) +- Flow: [Prescribe medication](../medications/prescribe-medication) diff --git a/docs/flows/clinical/patient-consent.mdx b/docs/flows/clinical/patient-consent.mdx new file mode 100644 index 0000000..ab1c2ac --- /dev/null +++ b/docs/flows/clinical/patient-consent.mdx @@ -0,0 +1,57 @@ +--- +sidebar_position: 16 +--- + +# Add patient consent + +This flow records a patient's **consent** on the patient dashboard — including date, category, decision, status, notes, and supporting files. + +## Before you start + +- Confirm you are in the **correct patient record**. +- Gather the consent details (date, category, decision, any supporting document) before opening the form. + +## Steps + +### 1. Open Consent + +![Open Consent](/img/flows/clinical/patient-consent/01-loom.jpg) + +From the patient dashboard, click **Consent** to open the consent area. + +### 2. Add a consent entry + +![Add a consent entry](/img/flows/clinical/patient-consent/02-loom.jpg) + +Click **Add Consent** to open the form. + +### 3. Enter date and validity + +![Enter date and validity](/img/flows/clinical/patient-consent/03-loom.jpg) + +Enter the **date consent was given**. Optionally set **valid from / valid till** — the validity period is not required. + +### 4. Record decision and category + +![Record decision and category](/img/flows/clinical/patient-consent/04-loom.jpg) + +Select the **decision** (**Permitting** or **Denying**) and the **category**: + +- Research +- Privacy +- Treatment + +### 5. Add status, notes, and files + +![Add status, notes, and files](/img/flows/clinical/patient-consent/05-loom.jpg) + +Set the **status**, add **notes** for context, and attach **files** if supporting documentation is needed. + +### 6. Save + +Review for accuracy and click **Save**. Confirm the consent record appears in Care. + +## Related + +- Flow: [Register a patient manually](./register-patient-manually) +- Flow: [Upload a clinical file](./upload-clinical-files) diff --git a/docs/flows/clinical/patient-notes.mdx b/docs/flows/clinical/patient-notes.mdx new file mode 100644 index 0000000..6e43ee4 --- /dev/null +++ b/docs/flows/clinical/patient-notes.mdx @@ -0,0 +1,41 @@ +--- +sidebar_position: 15 +--- + +# Add patient notes (non-clinical) + +This flow documents **non-clinical** patient information — social, religious, or other context — as organized **conversation threads** in the patient profile. + +## Before you start + +- Confirm you are in the **correct patient profile**. +- Use professional language and follow your organization's privacy and documentation policies. + +## Steps + +### 1. Open the patient profile + +![Open the patient profile](/img/flows/clinical/patient-notes/01-loom.jpg) + +From the left navigation bar, click **Search Patients**, find the patient, and open their profile. Navigate to the **Notes** section on the right of the profile. + +### 2. Start a conversation thread + +![Start a conversation thread](/img/flows/clinical/patient-notes/02-loom.jpg) + +In Patient Notes, start a **new conversation thread** to keep a note topic separate. + +### 3. Use a preset or custom thread + +![Use a preset or custom thread](/img/flows/clinical/patient-notes/03-loom.jpg) + +Pick a preset category if it matches, or create a custom thread (e.g. **Patient Social History**). Use separate threads per topic for easier review. + +### 4. Document the information + +Enter the relevant non-clinical context (e.g. patient arrived with a relative, social or religious considerations relevant to care). Keep notes relevant and professional. + +## Related + +- Flow: [Edit patient demographics](./edit-demographics) +- Flow: [Create an encounter](./create-encounter) diff --git a/docs/flows/clinical/patient-tags.mdx b/docs/flows/clinical/patient-tags.mdx new file mode 100644 index 0000000..e19e48b --- /dev/null +++ b/docs/flows/clinical/patient-tags.mdx @@ -0,0 +1,48 @@ +--- +sidebar_position: 20 +--- + +# Add patient tags + +This flow assigns **patient tags** (categories) during registration, or updates them afterward — including for patients registered via ABHA scan-and-share. + +:::info +Use only the tag categories configured by your facility — incorrect assignment can affect billing or eligibility. Tags themselves are created via [Create an encounter tag](./create-encounter-tag) (Tag Config) with the *Patient* resource type. +::: + +## Before you start + +- Confirm the patient's details so you select the correct tag without backtracking. + +## Steps + +### 1. Open registration + +![Open registration (1)](/img/flows/clinical/patient-tags/01-loom.jpg) + +![Open registration (2)](/img/flows/clinical/patient-tags/02-loom.jpg) + +Go to **Patients** → **Search Patient**, then start a **New Patient** registration and enter the patient's details. + +### 2. Select a tag during registration + +![Select a tag during registration](/img/flows/clinical/patient-tags/03-loom.jpg) + +Locate the **Patient tags** option (below the Date of Birth field). Open the drop-down and select the category that applies, verifying it matches the patient's eligibility. + +### 3. Update tags after registration + +![Update tags after registration](/img/flows/clinical/patient-tags/04-loom.jpg) + +For a patient registered via **Scan and Share** (ABHA), open their registration window, find the tags section, click **Add Tags**, and select the appropriate tag from the list. + +### 4. Save + +![Save](/img/flows/clinical/patient-tags/05-loom.jpg) + +Save or proceed per the registration workflow so the tag is applied. If an expected tag is missing, follow your internal escalation/support process. + +## Related + +- Flow: [Create an encounter tag](./create-encounter-tag) +- Flow: [Register a patient through ABHA](./register-patient-abha) diff --git a/docs/flows/clinical/raise-lab-request.mdx b/docs/flows/clinical/raise-lab-request.mdx new file mode 100644 index 0000000..40dbad3 --- /dev/null +++ b/docs/flows/clinical/raise-lab-request.mdx @@ -0,0 +1,44 @@ +--- +sidebar_position: 22 +--- + +# Raise a lab test request + +This flow raises a **laboratory service request** for a patient so the lab team can process it — from the patient dashboard or directly from the consultation form. + +## Before you start + +- Confirm the **correct patient** before raising any request. +- Know which lab tests are available at your facility. + +## Steps + +### 1. Select the patient + +![Select the patient (1)](/img/flows/clinical/raise-lab-request/01-loom.jpg) + +![Select the patient (2)](/img/flows/clinical/raise-lab-request/02-loom.jpg) + +From the **Patient List**, locate and select the correct patient record. + +### 2. Raise from the patient dashboard + +![Raise from the patient dashboard](/img/flows/clinical/raise-lab-request/03-loom.jpg) + +On the dashboard, click the **Service Request** button and choose the category **Laboratory**. Select the relevant lab test, add any patient instructions, recheck, and **Submit**. Confirm the request is sent to the lab. + +### 3. Or raise from the consultation form + +![Or raise from the consultation form](/img/flows/clinical/raise-lab-request/04-loom.jpg) + +Alternatively, during consultation open the [clinical form](./submit-clinical-forms) and, in the **Investigation Suggestion** section, enter the lab test. Confirm the details and submit so the request is recorded. + +:::caution +Don't assume the request was sent unless the service request or form update was submitted successfully. Follow your organization's lab request approval/routing workflow if applicable. +::: + +## Related + +- Flow: [Submit a clinical form](./submit-clinical-forms) +- Flow: [Add a service request](../billing/add-service-request) +- Playbook: [Lab diagnostics](/deployments/hmis/playbooks/lab-diagnostics) diff --git a/docs/flows/clinical/register-patient-abha.mdx b/docs/flows/clinical/register-patient-abha.mdx new file mode 100644 index 0000000..3e24906 --- /dev/null +++ b/docs/flows/clinical/register-patient-abha.mdx @@ -0,0 +1,72 @@ +--- +sidebar_position: 18 +--- + +# Register a patient through ABHA + +This flow registers a patient via **ABHA** (Ayushman Bharat Health Account) — generating a new ABHA number or linking an existing one, verifying identity, and completing registration. + +:::info Availability +ABHA registration applies to **ABDM-enabled deployments**. The patient's Aadhaar-linked mobile must be available for OTP verification. +::: + +## Before you start + +- Select the correct **facility** first. +- Obtain the patient's consent and confirm their **Aadhaar number** is accurate. + +## Steps + +### 1. Open patient registration + +![Open patient registration (1)](/img/flows/clinical/register-patient-abha/01-image-20260508-092514.png) + +![Open patient registration (2)](/img/flows/clinical/register-patient-abha/02-image-20260508-092523.png) + +Go to **Patients** → **Search Patients**, then click **Add New Patient** and select **Generate or Link ABHA**. + +### 2. Choose the ABHA path + +![Choose the ABHA path (1)](/img/flows/clinical/register-patient-abha/03-loom.jpg) + +![Choose the ABHA path (2)](/img/flows/clinical/register-patient-abha/04-loom.jpg) + +Decide whether to **generate a new ABHA number** or **link an existing** one. To generate via Aadhaar, enter the patient's **Aadhaar number**. + +### 3. Complete consent and details + +![Complete consent and details (1)](/img/flows/clinical/register-patient-abha/05-loom.jpg) + +![Complete consent and details (2)](/img/flows/clinical/register-patient-abha/06-loom.jpg) + +Review and accept the required **consents**, then confirm the patient's name and displayed details. + +### 4. Verify identity + +![Verify identity (1)](/img/flows/clinical/register-patient-abha/07-loom.jpg) + +![Verify identity (2)](/img/flows/clinical/register-patient-abha/08-loom.jpg) + +Choose a verification method — **OTP**, **Demographics**, **Biometrics**, or **Face**. For OTP, wait for the code sent to the Aadhaar-linked mobile, enter it (and the mobile number if required), and click **Verify**. + +### 5. Create the ABHA address + +![Create the ABHA address](/img/flows/clinical/register-patient-abha/09-loom.jpg) + +If prompted, create a new **ABHA address** in the required format (or pick a suggested one) and click **Create ABHA Address**. + +### 6. Review and submit + +![Review and submit](/img/flows/clinical/register-patient-abha/10-loom.jpg) + +Confirm the **ABHA ID** was created, review patient details (download for records if needed), click **Proceed**, then **Submit** on the final review screen. + +:::caution +Enter the OTP within its valid window and verify all details before submitting. If an existing ABHA number/address is found, decide whether to link it or create a new one based on the patient's situation. +::: + +## Related + +- Flow: [Register a patient manually](./register-patient-manually) +- Flow: [Fetch patient records via ABDM](./fetch-records-abdm) +- Flow: [Add patient tags](./patient-tags) diff --git a/docs/flows/clinical/register-patient-manually.mdx b/docs/flows/clinical/register-patient-manually.mdx new file mode 100644 index 0000000..ba1a2a8 --- /dev/null +++ b/docs/flows/clinical/register-patient-manually.mdx @@ -0,0 +1,60 @@ +--- +sidebar_position: 17 +--- + +# Register a patient manually + +This flow registers a **new patient** by entering their details manually — the detailed counterpart to the baseline [Create a patient](./create-patient) flow. + +:::info Prerequisite +Search first to confirm the patient is not already registered. See [Create a patient](./create-patient) for the search-first principle. +::: + +## Before you start + +- You need **patient create** permission. +- Keep the patient's documents (ID, contact details) ready to complete the form in one pass. + +## Steps + +### 1. Open patient registration + +![Open patient registration](/img/flows/clinical/register-patient-manually/01-loom.jpg) + +Go to the **Patients** section and select the registration option. + +### 2. Start a new registration + +![Start a new registration](/img/flows/clinical/register-patient-manually/02-loom.jpg) + +Click **Add New Patient** and wait for the registration form to load. + +### 3. Enter basic details + +![Enter basic details](/img/flows/clinical/register-patient-manually/03-loom.jpg) + +Name, phone number, gender, age, blood group, and religion or other demographic fields the form requests. + +### 4. Enter address and location + +![Enter address and location](/img/flows/clinical/register-patient-manually/04-loom.jpg) + +Address plus location fields — **state**, **district**, and **local body**. Review for accuracy. + +### 5. Add identification + +Enter the patient's **unique identification number** if available, and confirm it matches their official record. + +### 6. Save + +Click **Save / Register**, then confirm the patient was added successfully. + +:::caution +Enter details accurately to avoid duplicate or incorrect records — double-check spelling, phone, age, and ID numbers before saving. +::: + +## Related + +- Flow: [Create a patient](./create-patient) +- Flow: [Register a patient through ABHA](./register-patient-abha) +- Flow: [Edit patient demographics](./edit-demographics) diff --git a/docs/flows/clinical/submit-clinical-forms.mdx b/docs/flows/clinical/submit-clinical-forms.mdx new file mode 100644 index 0000000..53b54ae --- /dev/null +++ b/docs/flows/clinical/submit-clinical-forms.mdx @@ -0,0 +1,54 @@ +--- +sidebar_position: 10 +--- + +# Submit a clinical form + +This flow completes and submits a **clinical form** from the encounter page — capturing history, vitals, diagnosis, investigations, and treatment in one structured document. + +## Before you start + +- Open the correct patient encounter. +- The clinical form you need must be configured and available for the encounter. + +## Steps + +### 1. Open Forms + +![Open Forms](/img/flows/clinical/submit-clinical-forms/01-loom.jpg) + +From the encounter page, click **Forms** (or press the shortcut **F**). Confirm the form you need is available. + +### 2. Enter patient details + +![Enter patient details](/img/flows/clinical/submit-clinical-forms/02-loom.jpg) + +Fill the required fields — type manually, or use **AI-Scribe** (voice-to-text) if available. See [Use AI-Scribe](./ai-scribe). + +### 3. Document history and findings + +![Document history and findings](/img/flows/clinical/submit-clinical-forms/03-loom.jpg) + +Record past history, comorbidities, and vitals. Enter the diagnosis if available and set its verification status: **Provisional**, **Differential**, or **Confirmed**. + +### 4. Add investigations + +![Add investigations](/img/flows/clinical/submit-clinical-forms/04-loom.jpg) + +Enter recommended investigations matching the clinical assessment (e.g. CBC, chest X-ray). + +### 5. Add treatment, referral, and submit + +![Add treatment, referral, and submit](/img/flows/clinical/submit-clinical-forms/05-loom.jpg) + +Add prescribed medication with **dosage**, **frequency**, and **duration**. Record whether **admission is needed**, any internal/external references, advice, and the **review date**. Review once, then **Submit**. + +:::caution +Double-check medication dosage, frequency, and duration, and confirm whether the diagnosis is provisional, differential, or confirmed before submitting. +::: + +## Related + +- Flow: [Use AI-Scribe](./ai-scribe) +- Flow: [Prescribe medication](../medications/prescribe-medication) +- Playbook: [OP consultation](/deployments/hmis/playbooks/op-consultation), [IP rounds](/deployments/hmis/playbooks/ip-rounds) diff --git a/docs/flows/clinical/treatment-summary.mdx b/docs/flows/clinical/treatment-summary.mdx new file mode 100644 index 0000000..b689bde --- /dev/null +++ b/docs/flows/clinical/treatment-summary.mdx @@ -0,0 +1,34 @@ +--- +sidebar_position: 13 +--- + +# Generate a treatment summary + +This flow generates and prints a patient's **treatment summary** from the Reports section of the patient dashboard, for sharing with the patient or recordkeeping. + +## Before you start + +- Confirm you are viewing the **correct patient** dashboard. + +## Steps + +### 1. Open Reports + +![Open Reports](/img/flows/clinical/treatment-summary/01-loom.jpg) + +On the patient dashboard, on the right-hand side, click **Reports**. + +### 2. Select Treatment Summary + +![Select Treatment Summary](/img/flows/clinical/treatment-summary/02-loom.jpg) + +In Reports, click **Treatment Summary** to generate and display it. Review it on screen to confirm the information is correct and fully loaded. + +### 3. Print or share + +Use **Print** (or the **P** shortcut if available) to produce a hard copy. Verify the printout is legible and complete before handing it to the patient. + +## Related + +- Flow: [Generate a discharge summary](./discharge-summary) +- Flow: [Mark an encounter complete](./complete-encounter) diff --git a/docs/flows/clinical/update-diagnosis.mdx b/docs/flows/clinical/update-diagnosis.mdx new file mode 100644 index 0000000..19a0043 --- /dev/null +++ b/docs/flows/clinical/update-diagnosis.mdx @@ -0,0 +1,51 @@ +--- +sidebar_position: 7 +--- + +# Update a diagnosis + +This flow adds or updates a **diagnosis** on a patient's encounter, including editing details, adding notes, or removing an entry made in error. + +## Before you start + +- Confirm the correct patient chart and encounter are open. +- Have the diagnosis details ready (status, severity, date). + +## Steps + +### 1. Start a diagnosis update + +![Start a diagnosis update](/img/flows/clinical/update-diagnosis/01-loom.jpg) + +On the encounter record, click **Encounter Actions** → **Add Diagnosis**. + +### 2. Enter diagnosis details + +![Enter diagnosis details](/img/flows/clinical/update-diagnosis/02-loom.jpg) + +Choose the diagnosis from the drop-down, then set the available fields as needed: + +| Field | Notes | +| --- | --- | +| Answer date | When the diagnosis applies | +| Status | e.g. active, resolved | +| Severity | Clinical severity | +| Notification | Notification setting | + +Review for accuracy and **Submit**. + +### 3. Verify and edit + +![Verify and edit](/img/flows/clinical/update-diagnosis/03-loom.jpg) + +Confirm the diagnosis appears on the patient dashboard. To change it, click **Edit** next to the diagnosis — from there you can add notes or remove it if entered in error. + +:::caution +Only remove a diagnosis if clinically appropriate and permitted by your organization's workflow. Keep notes clear and compliant with documentation standards. +::: + +## Related + +- Flow: [Update symptoms](./update-symptoms) +- Flow: [Submit clinical forms](./submit-clinical-forms) +- Playbook: [OP consultation](/deployments/hmis/playbooks/op-consultation) diff --git a/docs/flows/clinical/update-symptoms.mdx b/docs/flows/clinical/update-symptoms.mdx new file mode 100644 index 0000000..79c54fc --- /dev/null +++ b/docs/flows/clinical/update-symptoms.mdx @@ -0,0 +1,46 @@ +--- +sidebar_position: 8 +--- + +# Add or update symptoms + +This flow documents a patient **symptom** on an encounter and lets you review, edit, or remove it afterward — with the correct onset date, severity, and verification. + +## Before you start + +- Confirm the correct patient chart and encounter are open. +- Only authorized clinical staff should add, edit, or remove symptoms. + +## Steps + +### 1. Start a symptom entry + +![Start a symptom entry](/img/flows/clinical/update-symptoms/01-loom.jpg) + +On the encounter, click **Encounter Actions** → **Add Symptom**. + +### 2. Enter symptom details + +![Enter symptom details](/img/flows/clinical/update-symptoms/02-loom.jpg) + +Choose the symptom from the list and complete: + +| Field | Notes | +| --- | --- | +| Onset date | When the symptom started | +| Severity | Clinical severity | +| Verification | Verification status | + +Click **Submit**. + +### 3. Review and edit + +![Review and edit](/img/flows/clinical/update-symptoms/03-loom.jpg) + +Confirm the symptom appears in the record. Use **Edit** to update details, add notes, or remove the symptom if needed. + +## Related + +- Flow: [Update a diagnosis](./update-diagnosis) +- Flow: [Add or update an allergy](./manage-allergy) +- Playbook: [OP consultation](/deployments/hmis/playbooks/op-consultation) diff --git a/docs/flows/clinical/upload-clinical-files.mdx b/docs/flows/clinical/upload-clinical-files.mdx new file mode 100644 index 0000000..3936e04 --- /dev/null +++ b/docs/flows/clinical/upload-clinical-files.mdx @@ -0,0 +1,47 @@ +--- +sidebar_position: 12 +--- + +# Upload a clinical file + +This flow attaches a **clinical file** (document, image, or audio) to a patient record from the patient dashboard. + +## Before you start + +- Confirm you are in the **correct patient record**. +- Have the document ready and a clear, descriptive file name in mind. + +## Steps + +### 1. Open Files + +![Open Files](/img/flows/clinical/upload-clinical-files/01-loom.jpg) + +From the patient dashboard, click **Files** at the top to open the file management area. + +### 2. Add files + +![Add files](/img/flows/clinical/upload-clinical-files/02-loom.jpg) + +Click **Add Files** to see the upload methods. + +### 3. Choose an upload method + +![Choose an upload method](/img/flows/clinical/upload-clinical-files/03-loom.jpg) + +Select one of: + +- **Record with audio** +- **Open camera and upload** +- **Upload from device** — for a document already saved on your computer/device + +Pick the file when prompted. + +### 4. Name and upload + +Enter a clear, descriptive **document name**, complete the upload, and confirm the file appears in Care. + +## Related + +- Flow: [Submit a clinical form](./submit-clinical-forms) +- Flow: [Create an encounter](./create-encounter) diff --git a/docs/flows/clinical/view-previous-encounters.mdx b/docs/flows/clinical/view-previous-encounters.mdx new file mode 100644 index 0000000..ebc6e22 --- /dev/null +++ b/docs/flows/clinical/view-previous-encounters.mdx @@ -0,0 +1,45 @@ +--- +sidebar_position: 5 +--- + +# View previous encounters + +This flow locates and reviews a patient's **previous encounters** from the patient dashboard, so you can understand their history before documenting a new visit. + +## Before you start + +- Confirm you are viewing the **correct patient**. +- Previous encounters may contain sensitive clinical information — access them per your organization's privacy policy. + +## Steps + +### 1. Open the patient dashboard + +![Open the patient dashboard](/img/flows/clinical/view-previous-encounters/01-loom.jpg) + +Navigate to the patient dashboard. Encounter information is shown in the left-hand panel. + +### 2. Identify the current encounter + +![Identify the current encounter](/img/flows/clinical/view-previous-encounters/02-loom.jpg) + +The selected encounter at the top represents the **current** encounter — use it as your reference point. + +### 3. Review the list of previous encounters + +![Review the list of previous encounters](/img/flows/clinical/view-previous-encounters/03-loom.jpg) + +Below/alongside the current encounter, the patient's **previous encounters** are listed. Scan to find the one you want. + +### 4. Open a previous encounter + +Click the encounter; wait for its details to load and review the record, including what was updated during that visit. + +### 5. Compare as needed + +Open encounters in chronological order to compare changes across visits. Repeat for additional encounters. + +## Related + +- Flow: [Create an encounter](./create-encounter) +- Playbook: [IP rounds](/deployments/hmis/playbooks/ip-rounds), [OP consultation](/deployments/hmis/playbooks/op-consultation) diff --git a/docs/flows/facility/_category_.json b/docs/flows/facility/_category_.json new file mode 100644 index 0000000..252b60a --- /dev/null +++ b/docs/flows/facility/_category_.json @@ -0,0 +1,5 @@ +{ + "label": "Facility", + "position": 5, + "key": "facility-flows" +} diff --git a/docs/flows/facility/add-locations.mdx b/docs/flows/facility/add-locations.mdx new file mode 100644 index 0000000..f7feb1a --- /dev/null +++ b/docs/flows/facility/add-locations.mdx @@ -0,0 +1,79 @@ +--- +sidebar_position: 1 +--- + +# Add facility locations + +This flow builds the **facility location hierarchy** — buildings, floors/levels, wards, rooms, and beds — and assigns organizations to locations, so beds, departments, and services can be managed correctly. + +## Before you start + +- Log in as the **facility admin** with the correct permissions. +- Plan the full hierarchy first (on paper or a spreadsheet) and use consistent naming. Test in a non-production environment before live changes. + +## Steps + +### 1. Open facility configuration + +![Open facility configuration (1)](/img/flows/facility/add-locations/01-loom.jpg) + +![Open facility configuration (2)](/img/flows/facility/add-locations/02-loom.jpg) + +Go to **Facility Details** → **Settings** → **Manage Facility Configurations**, then open **Locations**. + +### 2. Add a building + +![Add a building (1)](/img/flows/facility/add-locations/03-loom.jpg) + +![Add a building (2)](/img/flows/facility/add-locations/04-loom.jpg) + +Click **Add Location**, select the **Building** category, name it (e.g. *Main Building*), and confirm. + +### 3. Add floors / levels + +![Add floors / levels (1)](/img/flows/facility/add-locations/05-loom.jpg) + +![Add floors / levels (2)](/img/flows/facility/add-locations/06-loom.jpg) + +Open the building, add a location, select the **Level** category, and name each floor (e.g. *Ground Floor*, *First Floor*). Repeat for all floors. + +### 4. Add rooms and wards + +![Add rooms and wards (1)](/img/flows/facility/add-locations/07-loom.jpg) + +![Add rooms and wards (2)](/img/flows/facility/add-locations/08-loom.jpg) + +Open a floor and add locations for rooms, functional areas, and wards (e.g. *Outpatient Pharmacy*, *Outpatient Department*, *Cardiology* ward), choosing the appropriate category for each. + +### 5. Add beds within a ward + +![Add beds within a ward (1)](/img/flows/facility/add-locations/09-loom.jpg) + +![Add beds within a ward (2)](/img/flows/facility/add-locations/10-loom.jpg) + +Open the ward, add a location with the **Bed** category, choose **multiple beds** to add several at once, and give them a consistent base name. See [Create multiple beds](./create-beds). + +### 6. Assign an organization + +![Assign an organization (1)](/img/flows/facility/add-locations/11-loom.jpg) + +![Assign an organization (2)](/img/flows/facility/add-locations/12-loom.jpg) + +In the ward, open **Manage Organization**, choose the department assignment option, select the department (e.g. *Cardiology*), and save. See [Link departments to a location](./link-departments-location). + +### 7. Verify the hierarchy + +![Verify the hierarchy](/img/flows/facility/add-locations/13-loom.jpg) + +Review that buildings, floors, wards, rooms, and beds are correctly placed before exiting. + +:::caution +Always confirm the correct **parent level** before creating a location, and verify each creation before moving on to prevent hierarchy errors. +::: + +## Related + +- Flow: [Create multiple beds](./create-beds) +- Flow: [Link departments to a location](./link-departments-location) +- Flow: [Create a department](./create-department) +- Playbook: [Facility setup](/deployments/hmis/playbooks/facility-setup) diff --git a/docs/flows/facility/assign-bed.mdx b/docs/flows/facility/assign-bed.mdx new file mode 100644 index 0000000..bfd3090 --- /dev/null +++ b/docs/flows/facility/assign-bed.mdx @@ -0,0 +1,42 @@ +--- +sidebar_position: 4 +--- + +# Assign a bed to a patient + +This flow assigns a room, ward, or **bed** to a patient from the encounter page, so the patient's location is recorded. + +## Before you start + +- Confirm the **correct patient encounter** is open. +- Have the intended room/bed ready; the bed must be available. + +## Steps + +### 1. Open the location area + +![Open the location area](/img/flows/facility/assign-bed/01-loom.jpg) + +On the **Patient Encounter** page, go to the right-hand side and click the **Location** button. + +### 2. Choose the area + +![Choose the area](/img/flows/facility/assign-bed/02-loom.jpg) + +Review the available facility locations (rooms, wards, etc.) and select where the patient should go (e.g. *Ground Level*). + +### 3. Select the bed and confirm + +![Select the bed and confirm](/img/flows/facility/assign-bed/03-loom.jpg) + +Pick the specific bed (e.g. *Bed 2*), click **Assign Bed**, then **Save**. Verify the assignment appears in the **Location** section of the encounter. + +:::caution +Double-check the room, ward, and bed before saving. If the bed is occupied or unavailable, choose another valid bed. +::: + +## Related + +- Flow: [Create multiple beds](./create-beds) +- Flow: [Discharge an encounter](../clinical/discharge-encounter) +- Playbook: [IP rounds](/deployments/hmis/playbooks/ip-rounds) diff --git a/docs/flows/facility/create-beds.mdx b/docs/flows/facility/create-beds.mdx new file mode 100644 index 0000000..daca9c2 --- /dev/null +++ b/docs/flows/facility/create-beds.mdx @@ -0,0 +1,48 @@ +--- +sidebar_position: 3 +--- + +# Create multiple beds + +This flow adds multiple **beds** to a ward in one operation, with optional custom naming. + +## Before you start + +- Decide the **bed count** and naming convention in advance. +- Confirm you are in the **correct ward** before creating beds. + +## Steps + +### 1. Navigate to the location + +![Navigate to the location](/img/flows/facility/create-beds/01-loom.jpg) + +Go to **Settings** → **Locations**, then drill into the target ward (e.g. *Main Building* → *Ground Floor* → *General Ward*). + +### 2. Start bed creation + +![Start bed creation](/img/flows/facility/create-beds/02-loom.jpg) + +Click **Add Location**. In the **Location Form**, choose **Bed** as the type, select **Create Multiple Beds**, and enter the number to create (e.g. 10). + +### 3. Customize names if needed + +![Customize names if needed](/img/flows/facility/create-beds/03-loom.jpg) + +Review the default naming (e.g. *Bed 1*–*Bed 10*) and customize individual bed names or the format if required. + +### 4. Confirm and create + +![Confirm and create](/img/flows/facility/create-beds/04-loom.jpg) + +Click **Create**, then verify the beds appear in the ward with the expected range. + +:::caution +Double-check the bed count and the location before clicking Create — beds added to the wrong ward have to be redone. +::: + +## Related + +- Flow: [Add facility locations](./add-locations) +- Flow: [Assign a bed to a patient](./assign-bed) +- Playbook: [Facility setup](/deployments/hmis/playbooks/facility-setup) diff --git a/docs/flows/facility/create-department.mdx b/docs/flows/facility/create-department.mdx new file mode 100644 index 0000000..126ebfe --- /dev/null +++ b/docs/flows/facility/create-department.mdx @@ -0,0 +1,44 @@ +--- +sidebar_position: 5 +--- + +# Create a department + +This flow creates a new **department** (organization/team) within a facility so it can be used for locations, services, and user assignments. + +## Before you start + +- Select the **correct facility** first. +- Prepare the department name and description, using your organization's naming conventions. + +## Steps + +### 1. Select the facility + +![Select the facility](/img/flows/facility/create-department/01-loom.jpg) + +Log in to Care and select your facility. Confirm you are in the correct location. + +### 2. Open Department settings + +![Open Department settings](/img/flows/facility/create-department/02-loom.jpg) + +Go to **Settings** → **Departments**, where department and team records are managed. + +### 3. Add a department + +Click **Add Department / Team**, enter the **name**, and add a **description** if needed. + +### 4. Create + +Click **Create Organization** to save. Wait for the success confirmation before navigating away. + +:::caution +Verify the facility before creating the department so it isn't added to the wrong location, and keep the name accurate and consistent. +::: + +## Related + +- Flow: [Manage department users](../access-governance/manage-department-users) +- Flow: [Link departments to a location](./link-departments-location) +- Playbook: [Facility setup](/deployments/hmis/playbooks/facility-setup) diff --git a/docs/flows/facility/link-departments-location.mdx b/docs/flows/facility/link-departments-location.mdx new file mode 100644 index 0000000..0443cc7 --- /dev/null +++ b/docs/flows/facility/link-departments-location.mdx @@ -0,0 +1,46 @@ +--- +sidebar_position: 2 +--- + +# Link departments to a location + +This flow assigns one or more **departments** to a specific **location** (e.g. a ward), so the location is associated with the right organizations. + +## Before you start + +- Prepare the list of departments to link. +- Confirm you are editing the **correct location**. + +## Steps + +### 1. Open Locations + +![Open Locations](/img/flows/facility/link-departments-location/01-loom.jpg) + +Go to **Settings** → **Locations** and select the location to update (e.g. a ward). + +### 2. Open Manage Organizations + +![Open Manage Organizations](/img/flows/facility/link-departments-location/02-loom.jpg) + +With the location selected, click **Manage Organizations** and review the assignment options. + +### 3. Select departments + +![Select departments](/img/flows/facility/link-departments-location/03-loom.jpg) + +Choose **All Organizations** (or the relevant list) and select the departments to link — e.g. add both *General Surgery* and *Cardiology* to the same ward. + +### 4. Confirm + +Verify all selected departments now appear under the location, and save/confirm if required. + +:::caution +Double-check department selections to avoid linking the wrong organization to a ward, and complete any save/confirm before leaving. +::: + +## Related + +- Flow: [Add facility locations](./add-locations) +- Flow: [Create a department](./create-department) +- Playbook: [Facility setup](/deployments/hmis/playbooks/facility-setup) diff --git a/docs/flows/facility/link-hfid-abdm.mdx b/docs/flows/facility/link-hfid-abdm.mdx new file mode 100644 index 0000000..57f8615 --- /dev/null +++ b/docs/flows/facility/link-hfid-abdm.mdx @@ -0,0 +1,43 @@ +--- +sidebar_position: 6 +--- + +# Link HFID for ABDM and generate QR + +This flow links the facility's **Health Facility ID (HFID)** to Care for ABDM, then generates and downloads the facility **QR code**. + +:::info Availability +Applies to **ABDM-enabled deployments**. Have the correct HFID ready before starting. +::: + +## Before you start + +- You need access to **Settings → General**. +- Confirm the HFID value is correct. + +## Steps + +### 1. Open health facility configuration + +![Open health facility configuration](/img/flows/facility/link-hfid-abdm/01-loom.jpg) + +Go to **Settings** → **General** → **Configure Health Facility**. + +### 2. Add the HFID and link + +![Add the HFID and link](/img/flows/facility/link-hfid-abdm/02-loom.jpg) + +Enter the **Health Facility ID (HFID)**, click **Health Facility**, then **Link Health Facility**. On success, the system generates a facility **QR code**. + +### 3. Download the QR code + +Use the **Download** option to save the generated QR code, and store it for future use or display. + +:::caution +Confirm the HFID is correct before linking, and don't download the QR until linking succeeds. If a QR already exists, confirm it matches the correct facility. +::: + +## Related + +- Flow: [Create a department](./create-department) +- Playbook: [Facility setup](/deployments/hmis/playbooks/facility-setup) diff --git a/docs/flows/laboratory/_category_.json b/docs/flows/laboratory/_category_.json new file mode 100644 index 0000000..53bcdbc --- /dev/null +++ b/docs/flows/laboratory/_category_.json @@ -0,0 +1,5 @@ +{ + "label": "Laboratory", + "position": 8, + "key": "laboratory-flows" +} diff --git a/docs/flows/laboratory/collect-specimen.mdx b/docs/flows/laboratory/collect-specimen.mdx new file mode 100644 index 0000000..a23870d --- /dev/null +++ b/docs/flows/laboratory/collect-specimen.mdx @@ -0,0 +1,36 @@ +--- +sidebar_position: 2 +--- + +# Collect a specimen + +This flow records **specimen collection** against a reviewed lab request, so result entry can begin. + +## Before you start + +- The request must already be [reviewed](./review-lab-request). +- Have the specimen details ready (type, quantity, source, fasting status). + +## Steps + +### 1. Record specimen collection + +Select the request record and click **Collect Specimen**. Enter the specimen details: type/quantity, collection location/source, fasting status (if applicable), and any notes. Complete all required fields before saving. + +![Record specimen collection](/img/flows/laboratory/collect-specimen/01-loom.jpg) + +### 2. Confirm collection + +Click **Collect** to confirm. Verify the collection status updates correctly in the system before continuing to result entry. + +![Confirm collection](/img/flows/laboratory/collect-specimen/02-loom.jpg) + +:::caution +Ensure fasting status, specimen source, and notes are accurate — these can affect interpretation of the results. +::: + +## Related + +- Flow: [Review a lab request](./review-lab-request) +- Flow: [Enter lab results](./enter-lab-results) +- Playbook: [Lab diagnostics](/deployments/hmis/playbooks/lab-diagnostics) diff --git a/docs/flows/laboratory/enter-lab-results.mdx b/docs/flows/laboratory/enter-lab-results.mdx new file mode 100644 index 0000000..ef86193 --- /dev/null +++ b/docs/flows/laboratory/enter-lab-results.mdx @@ -0,0 +1,36 @@ +--- +sidebar_position: 3 +--- + +# Enter lab results + +This flow records **test results** against a collected specimen and generates a preliminary report for review. + +## Before you start + +- The specimen must be [collected](./collect-specimen) and confirmed. +- Have the completed test values ready. + +## Steps + +### 1. Enter results and create the report + +Once the test is completed, enter the laboratory results and click **Create Report**. Input the test values, add conclusions or interpretations if applicable, and save to generate a preliminary report. + +![Enter results and create the report](/img/flows/laboratory/enter-lab-results/01-loom.jpg) + +### 2. Submit for review and approval + +Confirm a **preliminary report** has been generated. It goes to the senior lab technician or pathologist for review. + +![Submit for review and approval](/img/flows/laboratory/enter-lab-results/02-loom.jpg) + +:::caution +Do not release the report to doctors until the pathologist's approval is completed — see [Publish a lab report](./publish-lab-report). +::: + +## Related + +- Flow: [Collect a specimen](./collect-specimen) +- Flow: [Publish a lab report](./publish-lab-report) +- Playbook: [Lab diagnostics](/deployments/hmis/playbooks/lab-diagnostics) diff --git a/docs/flows/laboratory/publish-lab-report.mdx b/docs/flows/laboratory/publish-lab-report.mdx new file mode 100644 index 0000000..78724b8 --- /dev/null +++ b/docs/flows/laboratory/publish-lab-report.mdx @@ -0,0 +1,35 @@ +--- +sidebar_position: 4 +--- + +# Publish a lab report + +This flow covers the senior reviewer/pathologist **approving and publishing** a lab report so it becomes visible to doctors. + +## Before you start + +- A preliminary report must exist — see [Enter lab results](./enter-lab-results). +- You need reviewer/pathologist approval rights. + +## Steps + +### 1. Approve and publish + +Once the senior reviewer/pathologist approves the result, click **Approve**. The report becomes publishable — publish it so it appears in the patient record for doctors. + +![Approve and publish](/img/flows/laboratory/publish-lab-report/01-loom.jpg) + +### 2. Mark complete and verify availability + +Click **Mark as Done** (or the equivalent). Confirm the report is now available to doctors in the patient's file, and check the patient timeline to verify the lab activity and report status are recorded. + +![Mark complete and verify availability](/img/flows/laboratory/publish-lab-report/02-loom.jpg) + +:::caution +Avoid overwriting or editing approved results unless your organization's policy allows it. +::: + +## Related + +- Flow: [Enter lab results](./enter-lab-results) +- Playbook: [Lab diagnostics](/deployments/hmis/playbooks/lab-diagnostics) diff --git a/docs/flows/laboratory/review-lab-request.mdx b/docs/flows/laboratory/review-lab-request.mdx new file mode 100644 index 0000000..e0a52b4 --- /dev/null +++ b/docs/flows/laboratory/review-lab-request.mdx @@ -0,0 +1,32 @@ +--- +sidebar_position: 1 +--- + +# Review a lab request + +This flow covers the lab team **reviewing and verifying** a laboratory service request raised by a clinician, before specimen collection begins. + +## Before you start + +- You need access to **Laboratory Services**. +- A clinician must have already raised the request — see [Raise a lab test request](../clinical/raise-lab-request). + +## Steps + +### 1. Open Laboratory Services and view requests + +Navigate to **Services** → **Laboratory Services** and click **View Request** to display all lab requests raised by doctors. Identify the patient and test request you need to process. + +![Open Laboratory Services and view requests](/img/flows/laboratory/review-lab-request/01-loom.jpg) + +### 2. Verify the request details + +Click **See Details** for the selected request. Confirm the requested test name and any associated charge items, and double-check you have the correct patient and test before proceeding. + +![Verify the request details](/img/flows/laboratory/review-lab-request/02-loom.jpg) + +## Related + +- Flow: [Collect a specimen](./collect-specimen) +- Flow: [Raise a lab test request](../clinical/raise-lab-request) +- Playbook: [Lab diagnostics](/deployments/hmis/playbooks/lab-diagnostics) diff --git a/docs/flows/medications/_category_.json b/docs/flows/medications/_category_.json new file mode 100644 index 0000000..5a29393 --- /dev/null +++ b/docs/flows/medications/_category_.json @@ -0,0 +1,5 @@ +{ + "label": "Medications", + "position": 2, + "key": "medications-flows" +} diff --git a/docs/flows/medications/administer-medication.mdx b/docs/flows/medications/administer-medication.mdx new file mode 100644 index 0000000..431e4b5 --- /dev/null +++ b/docs/flows/medications/administer-medication.mdx @@ -0,0 +1,51 @@ +--- +sidebar_position: 2 +--- + +# View and administer medication + +This flow views a patient's prescription and records **medication administration** — typically for an inpatient encounter — so administration status and times are documented accurately. + +## Before you start + +- Confirm the correct patient. +- Have the actual administration time(s) ready, especially when recording a past event. + +## Steps + +### 1. Open Medicines + +![Open Medicines](/img/flows/medications/administer-medication/01-loom.jpg) + +On the patient dashboard, go to the **Medicines** section at the top to access prescription details and administration options. + +### 2. Open Medicine Administration + +![Open Medicine Administration](/img/flows/medications/administer-medication/02-loom.jpg) + +Review the prescription, click **Medicine Administration**, then **Administer** to begin recording the event. + +### 3. Review details and set status + +![Review details and set status](/img/flows/medications/administer-medication/03-loom.jpg) + +Confirm the prescribed **dosage** and current **status**. Update the status to reflect the actual administration outcome. + +### 4. Record a past time if needed + +![Record a past time if needed](/img/flows/medications/administer-medication/04-loom.jpg) + +If the medication was given earlier, select **Yes** for past administration and enter the exact time (and end time if applicable). Verify the entries. + +### 5. Submit + +Click **Administer Medicine** to save the record with the administration time. + +:::caution +Verify the prescription, confirm the status matches the actual action taken, and complete all required fields before submitting. +::: + +## Related + +- Flow: [Prescribe medication](./prescribe-medication) +- Playbook: [Pharmacy dispensing](/deployments/hmis/playbooks/pharmacy-dispensing), [IP rounds](/deployments/hmis/playbooks/ip-rounds) diff --git a/docs/flows/medications/dispense-medication.mdx b/docs/flows/medications/dispense-medication.mdx new file mode 100644 index 0000000..0fe8dfd --- /dev/null +++ b/docs/flows/medications/dispense-medication.mdx @@ -0,0 +1,72 @@ +--- +sidebar_position: 3 +--- + +# Review and dispense medication + +This flow has a **pharmacist** review a doctor's prescription, handle stock shortages via approved substitution, and dispense the medicine to the patient. + +## Before you start + +- You need access to the pharmacy queue under **Services → Pharmacy**. +- A clinician must have [prescribed](./prescribe-medication) the medication. + +## Steps + +### 1. Open the prescription list + +Go to **Services** in the left navigation, select the **Pharmacy** healthcare service, and click **View Prescriptions**. Confirm you are viewing the correct pharmacy queue. + +![Open the prescription list](/img/flows/medications/dispense-medication/01-loom.jpg) + +### 2. Review the prescription + +Choose the patient and open the doctor's order. Review the prescribed medicine(s), dosage, and special instructions, and verify it belongs to the correct patient. + +![Review the prescription](/img/flows/medications/dispense-medication/02-loom.jpg) + +### 3. Print the prescription if needed + +If required, click **Print** for a hard copy to reference during dispensing or to share with the patient. + +![Print the prescription if needed](/img/flows/medications/dispense-medication/03-loom.jpg) + +### 4. Handle stock shortages + +Check stock. If the prescribed item is **out of stock**, select an appropriate substitute with a suitable dosage form/strength, ensuring it aligns with pharmacy policy. + +![Handle stock shortages](/img/flows/medications/dispense-medication/04-loom.jpg) + +### 5. Select the medicines to dispense + +Choose the medicine(s) to dispense, including any approved substitute, and review the dosage and quantity. + +![Select the medicines to dispense](/img/flows/medications/dispense-medication/05-loom.jpg) + +### 6. Review quantity and bill + +Check the auto-calculated quantity, verify it's correct, and click **Bill Selected** to proceed. + +![Review quantity and bill](/img/flows/medications/dispense-medication/06-loom.jpg) + +### 7. Complete the dispense + +Click **Confirm Dispense** to finalize. The system marks the medicines as dispensed; verify the status updates and the record is saved. + +![Complete the dispense](/img/flows/medications/dispense-medication/07-loom.jpg) + +### 8. Verify completion + +Open the **Completed** section to confirm the prescription is listed as completed. Use this to audit recent dispensing activity. + +![Verify completion](/img/flows/medications/dispense-medication/08-loom.jpg) + +:::caution +Verify the patient name before dispensing, and don't substitute a medicine unless permitted by pharmacy policy. If medicines can't be dispensed, the prescription can be printed and shared with the patient. +::: + +## Related + +- Flow: [Prescribe medication](./prescribe-medication) +- Flow: [View and administer medication](./administer-medication) +- Playbook: [Pharmacy dispensing](/deployments/hmis/playbooks/pharmacy-dispensing) diff --git a/docs/flows/medications/prescribe-medication.mdx b/docs/flows/medications/prescribe-medication.mdx new file mode 100644 index 0000000..2bb3556 --- /dev/null +++ b/docs/flows/medications/prescribe-medication.mdx @@ -0,0 +1,50 @@ +--- +sidebar_position: 1 +--- + +# Prescribe medication + +This flow creates a **medication request** from the encounter page. On submission the prescription is routed automatically to pharmacy. + +:::caution Patient safety +Verify patient identity and check the existing [allergy](../clinical/manage-allergy) list before prescribing. Double-check medicine name, dosage, frequency, and duration — once submitted, the request goes to pharmacy and corrections need a follow-up. +::: + +## Before you start + +- Open the correct patient encounter. +- Have the prescription details ready (drug, dose, frequency, duration). + +## Steps + +### 1. Start a medication request + +![Start a medication request](/img/flows/medications/prescribe-medication/01-loom.jpg) + +On the **Patient Encounter** page, click **Medication**, then begin a new **Medication Request**. + +### 2. Enter prescription details + +![Enter prescription details](/img/flows/medications/prescribe-medication/02-loom.jpg) + +| Field | Notes | +| --- | --- | +| Medicine name | The drug to prescribe | +| Dosage | Amount per administration | +| Frequency | How often it is given | +| Number of days | Duration of the course | +| Notes | Special instructions, if any | + +### 3. Submit + +Review for accuracy and click **Submit**. The request is sent and routed directly to pharmacy. + +### 4. Verify + +Go to **Medicines** to confirm the prescription appears and the order was recorded correctly. + +## Related + +- Flow: [View and administer medication](./administer-medication) +- Flow: [Submit a clinical form](../clinical/submit-clinical-forms) +- Playbook: [Pharmacy dispensing](/deployments/hmis/playbooks/pharmacy-dispensing) diff --git a/docs/flows/scheduling/_category_.json b/docs/flows/scheduling/_category_.json new file mode 100644 index 0000000..914ce8b --- /dev/null +++ b/docs/flows/scheduling/_category_.json @@ -0,0 +1,5 @@ +{ + "label": "Scheduling", + "position": 3, + "key": "scheduling-flows" +} diff --git a/docs/flows/scheduling/create-healthcare-service.mdx b/docs/flows/scheduling/create-healthcare-service.mdx new file mode 100644 index 0000000..d6e4c91 --- /dev/null +++ b/docs/flows/scheduling/create-healthcare-service.mdx @@ -0,0 +1,49 @@ +--- +sidebar_position: 3 +--- + +# Create a healthcare service + +This flow creates a new **healthcare service** in Care — naming it, assigning its type, linking a location and department, and choosing an icon — so it can be scheduled and accessed by the right users. + +## Before you start + +- You need access to **Settings → Healthcare Services**. +- The target **location** and **department** must already exist (see [Add facility locations](../facility/add-locations) and [Create a department](../facility/create-department)). + +## Steps + +### 1. Open Healthcare Services + +![Open Healthcare Services](/img/flows/scheduling/create-healthcare-service/01-loom.jpg) + +Go to **Settings** → **Healthcare Services** → **Add Healthcare Service**. + +### 2. Enter service details + +![Enter service details](/img/flows/scheduling/create-healthcare-service/02-loom.jpg) + +Type the **service name** (e.g. Laboratory) and choose the **internal type** — for example **Lab** or **Pharmacy**. + +### 3. Link the location + +![Link the location](/img/flows/scheduling/create-healthcare-service/03-loom.jpg) + +Select the **location** where the service is available (e.g. Main Building – Ground Floor) and confirm it links successfully. + +### 4. Link the department + +Select the **department** that should have access (e.g. Lab) and verify the association. + +### 5. Choose an icon and create + +Pick an **icon**, review all details, and click **Create**. Confirm the service was created. + +:::caution +Double-check the type, location, and department before creating — these determine who can access the service. Avoid duplicate services with similar names. +::: + +## Related + +- Flow: [Schedule an appointment](./schedule-appointment) +- Playbook: [Facility setup](/deployments/hmis/playbooks/facility-setup) diff --git a/docs/flows/scheduling/link-charge-item.mdx b/docs/flows/scheduling/link-charge-item.mdx new file mode 100644 index 0000000..af90eaa --- /dev/null +++ b/docs/flows/scheduling/link-charge-item.mdx @@ -0,0 +1,51 @@ +--- +sidebar_position: 4 +--- + +# Link a charge item to a schedule + +This flow links a **charge item definition** to a service's appointment **schedule**, so charges are applied correctly to appointments. You can also create a new charge item definition if needed. + +## Before you start + +- Identify the **charge item definition** you want to link before starting. +- Confirm you are editing the **correct service**. + +## Steps + +### 1. Open the service schedule + +![Open the service schedule](/img/flows/scheduling/link-charge-item/01-loom.jpg) + +Select the relevant service and open its **Schedule** section. + +### 2. Open Manage Charges + +![Open Manage Charges](/img/flows/scheduling/link-charge-item/02-loom.jpg) + +In the Schedule area, click **Manage Charges**. The options are: + +- **Create a charge item definition** +- **Link an existing charge item definition** + +### 3. Link an existing charge item + +![Link an existing charge item](/img/flows/scheduling/link-charge-item/03-loom.jpg) + +Choose **link an existing charge item definition** and select the appropriate item from the list. Confirm any eligibility or hospital-list/duration settings, then click **Save**. + +### 4. Confirm + +![Confirm](/img/flows/scheduling/link-charge-item/04-loom.jpg) + +Verify the success message and that the charge item definition was updated. If it didn't save, repeat the steps and confirm the correct item and settings. + +:::caution +Double-check the selected charge item and any time-based or hospital-list restrictions before saving. +::: + +## Related + +- Flow: [Schedule an appointment](./schedule-appointment) +- Flow: [Add a service request](../billing/add-service-request) +- Playbook: [Billing and payment](/deployments/hmis/playbooks/billing-and-payment) diff --git a/docs/flows/scheduling/manage-appointment.mdx b/docs/flows/scheduling/manage-appointment.mdx new file mode 100644 index 0000000..d669cbc --- /dev/null +++ b/docs/flows/scheduling/manage-appointment.mdx @@ -0,0 +1,53 @@ +--- +sidebar_position: 2 +--- + +# Cancel, reschedule, or check in an appointment + +This flow manages an existing patient appointment from the patient homepage — **rescheduling**, **cancelling**, or **checking in** the patient on arrival. + +## Before you start + +- Confirm the **correct appointment** before changing it. +- For check-in, the patient must be **physically present**. + +## Steps + +### 1. Open Appointments + +![Open Appointments](/img/flows/scheduling/manage-appointment/01-loom.jpg) + +From the patient homepage, click **Appointments** to view scheduled visits. + +### 2. Locate the appointment + +![Locate the appointment](/img/flows/scheduling/manage-appointment/02-loom.jpg) + +Find the appointment to modify in the active list; use the options on the right-hand side (the **three-dot menu**). + +### 3. Reschedule + +![Reschedule](/img/flows/scheduling/manage-appointment/03-loom.jpg) + +Open the three-dot menu → **Reschedule**. Pick a new date or the **next available slot** and confirm. + +### 4. Cancel + +![Cancel](/img/flows/scheduling/manage-appointment/04-loom.jpg) + +From the same menu → **Cancel Appointment**. Enter the **reason for cancellation** and confirm. Verify the appointment is marked cancelled. + +### 5. Check in + +![Check in](/img/flows/scheduling/manage-appointment/05-loom.jpg) + +When the patient arrives, open their **appointment details** and click **Check In**. Confirm the patient is checked in and ready for consultation. + +:::caution +Cancellation reasons may be used for reporting/audit — enter them accurately. Double-check date/time when rescheduling to avoid conflicts. +::: + +## Related + +- Flow: [Schedule an appointment](./schedule-appointment) +- Flow: [Create an encounter](../clinical/create-encounter) diff --git a/docs/flows/scheduling/schedule-appointment.mdx b/docs/flows/scheduling/schedule-appointment.mdx new file mode 100644 index 0000000..7a7d89a --- /dev/null +++ b/docs/flows/scheduling/schedule-appointment.mdx @@ -0,0 +1,44 @@ +--- +sidebar_position: 1 +--- + +# Schedule an appointment + +This flow books a patient **appointment** for a healthcare service, then confirms it, bills the charges, and prints the details. + +## Before you start + +- Confirm the correct patient profile is open. +- Know which **healthcare service** and **department** the appointment is for. The service must already exist — see [Create a healthcare service](./create-healthcare-service). + +## Steps + +### 1. Start scheduling + +![Start scheduling](/img/flows/scheduling/schedule-appointment/01-loom.jpg) + +From the **Patient Homepage**, select **Schedule Appointment**. + +### 2. Select the service and department + +![Select the service and department](/img/flows/scheduling/schedule-appointment/02-loom.jpg) + +Choose the **Healthcare Service** from the drop-down (e.g. the OPD department). The system auto-selects the available slot once the service is chosen. + +### 3. Confirm and follow up + +Review the service and assigned slot, then click **Confirm Appointment**. After booking: + +- **Bill the charges** associated with the appointment. +- **Print the appointment details** for records or the patient. + +:::caution +Review the auto-selected slot before confirming, and complete billing after scheduling so charges aren't missed. +::: + +## Related + +- Flow: [Cancel, reschedule, or check in an appointment](./manage-appointment) +- Flow: [Create a healthcare service](./create-healthcare-service) +- Flow: [Link a charge item to a schedule](./link-charge-item) +- Playbook: [Billing and payment](/deployments/hmis/playbooks/billing-and-payment) diff --git a/docs/flows/supply/_category_.json b/docs/flows/supply/_category_.json new file mode 100644 index 0000000..93d864c --- /dev/null +++ b/docs/flows/supply/_category_.json @@ -0,0 +1,5 @@ +{ + "label": "Supply", + "position": 7, + "key": "supply-flows" +} diff --git a/docs/flows/supply/product-knowledge.mdx b/docs/flows/supply/product-knowledge.mdx new file mode 100644 index 0000000..6f4b602 --- /dev/null +++ b/docs/flows/supply/product-knowledge.mdx @@ -0,0 +1,64 @@ +--- +sidebar_position: 2 +--- + +# Add product knowledge + +This flow creates a **product knowledge** entry in Care — selecting or creating a category, then entering the product details and attributes — so products (medicines, consumables, etc.) are set up consistently. + +## Before you start + +- You need access to **Settings → Product Knowledge**. +- Prepare the product details (name, code, strength, dosage form, route, storage) in advance. + +## Steps + +### 1. Open Product Knowledge + +![Open Product Knowledge (1)](/img/flows/supply/product-knowledge/01-screenshot-2026-06-17-at-3.05.38-pm.png) + +![Open Product Knowledge (2)](/img/flows/supply/product-knowledge/02-screenshot-2026-06-17-at-3.03.21-pm.png) + +![Open Product Knowledge (3)](/img/flows/supply/product-knowledge/03-screenshot-2026-06-17-at-2.56.29-pm.png) + +Go to **Settings** in the left navigation bar and select **Product Knowledge**. + +### 2. Select or create a category + +![Select or create a category (1)](/img/flows/supply/product-knowledge/04-screenshot-2026-06-17-at-2.38.40-pm.png) + +![Select or create a category (2)](/img/flows/supply/product-knowledge/05-screenshot-2026-06-17-at-2.34.16-pm.png) + +![Select or create a category (3)](/img/flows/supply/product-knowledge/06-screenshot-2026-06-17-at-2.27.03-pm.png) + +Check whether the required category exists and select it; otherwise create it first (e.g. *Medicines*, *Consumables*). In the example, **Medicine** is selected. + +### 3. Enter product details + +![Enter product details (1)](/img/flows/supply/product-knowledge/07-screenshot-2026-06-17-at-2.23.52-pm.png) + +![Enter product details (2)](/img/flows/supply/product-knowledge/08-screenshot-2026-06-17-at-2.12.21-pm.png) + +![Enter product details (3)](/img/flows/supply/product-knowledge/09-loom.jpg) + +| Field | Notes | +| --- | --- | +| Product name | The product's name | +| Strength / specification | Strength or spec | +| Code | Product code | +| Base unit | Unit of measure | +| Alternative names | Other names for the product | +| Storage guidelines | Especially important for medicines | +| Dosage form | e.g. tablet, syrup | +| Route(s) | Intended route(s) of administration | + +Verify all required fields, then save. + +:::caution +Ensure the category is correct before entering details, and double-check spelling, dosage form, and route to avoid incorrect product setup. +::: + +## Related + +- Flow: [Prescribe medication](../medications/prescribe-medication) +- Playbook: [Pharmacy dispensing](/deployments/hmis/playbooks/pharmacy-dispensing) diff --git a/docs/flows/supply/resource-request.mdx b/docs/flows/supply/resource-request.mdx new file mode 100644 index 0000000..327c94c --- /dev/null +++ b/docs/flows/supply/resource-request.mdx @@ -0,0 +1,73 @@ +--- +sidebar_position: 1 +--- + +# Create and track a resource request + +This flow creates a **resource request** for a patient, submits it to another facility, and tracks its status through approval or other outcomes. + +## Before you start + +- Confirm the **correct patient** before creating a request. +- Know the **receiving facility** and the reason for the request. + +## Steps + +### 1. Open the patient profile + +![Open the patient profile (1)](/img/flows/supply/resource-request/01-screenshot-2026-06-17-at-4.33.18-pm.png) + +![Open the patient profile (2)](/img/flows/supply/resource-request/02-ad2ebde86c4a423eaedd14ffedc33f03-workflows_screenshot-true.jpg) + +Search for the patient by any identifier (name, UHID, phone) and open the record. + +### 2. Start a new request + +![Start a new request](/img/flows/supply/resource-request/03-ca519c9804a746dcb692b23fd1ceb54d-workflows_screenshot-true.jpg) + +In the patient profile, find the **Request** section in the middle navigation bar and click **Create Request**. + +### 3. Select facility and type + +![Select facility and type](/img/flows/supply/resource-request/04-fa4f2eff4fbe4ba7940a9ce4128e4c3a-workflows_screenshot-true.jpg) + +Choose the destination **facility**, mark it **Emergency** if applicable, and review the status (defaults to **Pending**). + +### 4. Enter request details + +![Enter request details](/img/flows/supply/resource-request/05-13c662a3601c46bea075aa4d11819784-workflows_screenshot-true.jpg) + +Set the request **title** to the patient's requirement and enter the **reason**. + +### 5. Add contact information + +![Add contact information](/img/flows/supply/resource-request/06-ac14b889e2cc43acaa578dbde4e8d8ae-workflows_screenshot-true.jpg) + +Enter the contact details for the requesting hospital/staff (phone, etc.). If you're the requester, use **Fill My Details** to auto-populate. + +### 6. Submit + +![Submit](/img/flows/supply/resource-request/07-loom.jpg) + +Review for accuracy and click **Submit** to send the request to the selected facility. + +### 7. Track and update status + +![Track and update status](/img/flows/supply/resource-request/08-loom.jpg) + +Monitor the request. If it's approved offline (e.g. by phone), update the status manually via **Update Request**. + +### 8. Review incoming and outgoing requests + +![Review incoming and outgoing requests](/img/flows/supply/resource-request/09-loom.jpg) + +From the left navigation bar, open **Resource** to track both outgoing and incoming requests, and follow up on anything pending too long. + +:::caution +If a request is approved offline, update the system status so records stay current. +::: + +## Related + +- Flow: [Assign a user to a patient record](../access-governance/assign-user-to-patient) +- Flow: [Create an encounter](../clinical/create-encounter) diff --git a/package-lock.json b/package-lock.json index 484f6cb..06b39c8 100644 --- a/package-lock.json +++ b/package-lock.json @@ -5090,9 +5090,6 @@ "cpu": [ "arm64" ], - "libc": [ - "glibc" - ], "license": "MIT", "optional": true, "os": [ @@ -5106,9 +5103,6 @@ "cpu": [ "arm64" ], - "libc": [ - "musl" - ], "license": "MIT", "optional": true, "os": [ @@ -5122,9 +5116,6 @@ "cpu": [ "x64" ], - "libc": [ - "glibc" - ], "license": "MIT", "optional": true, "os": [ @@ -5138,9 +5129,6 @@ "cpu": [ "x64" ], - "libc": [ - "musl" - ], "license": "MIT", "optional": true, "os": [ @@ -5629,9 +5617,6 @@ "cpu": [ "arm64" ], - "libc": [ - "glibc" - ], "license": "Apache-2.0 AND MIT", "optional": true, "os": [ @@ -5648,9 +5633,6 @@ "cpu": [ "arm64" ], - "libc": [ - "musl" - ], "license": "Apache-2.0 AND MIT", "optional": true, "os": [ @@ -5667,9 +5649,6 @@ "cpu": [ "ppc64" ], - "libc": [ - "glibc" - ], "license": "Apache-2.0 AND MIT", "optional": true, "os": [ @@ -5686,9 +5665,6 @@ "cpu": [ "s390x" ], - "libc": [ - "glibc" - ], "license": "Apache-2.0 AND MIT", "optional": true, "os": [ @@ -5705,9 +5681,6 @@ "cpu": [ "x64" ], - "libc": [ - "glibc" - ], "license": "Apache-2.0 AND MIT", "optional": true, "os": [ @@ -5724,9 +5697,6 @@ "cpu": [ "x64" ], - "libc": [ - "musl" - ], "license": "Apache-2.0 AND MIT", "optional": true, "os": [ @@ -5871,9 +5841,6 @@ "cpu": [ "arm64" ], - "libc": [ - "glibc" - ], "license": "Apache-2.0 AND MIT", "optional": true, "os": [ @@ -5890,9 +5857,6 @@ "cpu": [ "arm64" ], - "libc": [ - "musl" - ], "license": "Apache-2.0 AND MIT", "optional": true, "os": [ @@ -5909,9 +5873,6 @@ "cpu": [ "ppc64" ], - "libc": [ - "glibc" - ], "license": "Apache-2.0 AND MIT", "optional": true, "os": [ @@ -5928,9 +5889,6 @@ "cpu": [ "s390x" ], - "libc": [ - "glibc" - ], "license": "Apache-2.0 AND MIT", "optional": true, "os": [ @@ -5947,9 +5905,6 @@ "cpu": [ "x64" ], - "libc": [ - "glibc" - ], "license": "Apache-2.0 AND MIT", "optional": true, "os": [ @@ -5966,9 +5921,6 @@ "cpu": [ "x64" ], - "libc": [ - "musl" - ], "license": "Apache-2.0 AND MIT", "optional": true, "os": [ @@ -11373,9 +11325,6 @@ "cpu": [ "arm64" ], - "libc": [ - "glibc" - ], "license": "MPL-2.0", "optional": true, "os": [ @@ -11396,9 +11345,6 @@ "cpu": [ "arm64" ], - "libc": [ - "musl" - ], "license": "MPL-2.0", "optional": true, "os": [ @@ -11419,9 +11365,6 @@ "cpu": [ "x64" ], - "libc": [ - "glibc" - ], "license": "MPL-2.0", "optional": true, "os": [ @@ -11442,9 +11385,6 @@ "cpu": [ "x64" ], - "libc": [ - "musl" - ], "license": "MPL-2.0", "optional": true, "os": [ diff --git a/scripts/sop-images/README.md b/scripts/sop-images/README.md new file mode 100644 index 0000000..0449685 --- /dev/null +++ b/scripts/sop-images/README.md @@ -0,0 +1,92 @@ +# SOP image fetcher + +Downloads the screenshots embedded in the Care SOP Confluence pages and saves +them into the docs repo, so they can be wired into the flow docs under +`docs/flows/`. + +It pulls **two** kinds of image from each source page: + +| Kind | Where it comes from | Notes | +| --- | --- | --- | +| Native attachment (`type=file`) | Confluence REST attachments API | Image uploaded directly into the page. Needs authentication. | +| External image (`type=external`) | Parsed from the page's storage body | Loom screenshot URL that 302-redirects to a public CDN. No auth needed. | + +`manifest.json` maps each flow (`docs/flows//.mdx`) to its source +Confluence page id(s). The `create-patient` flow has no source SOP and is +omitted. + +## Prerequisites + +- Python 3.8+ (standard library only — nothing to `pip install`). +- **No credentials required** while the SOP space is publicly viewable (the + pages and their images load in a private/incognito window). The script runs + anonymously by default. + +### Optional credentials + +Only needed if anonymous discovery is ever blocked (e.g. the space is made +private). In that case create an Atlassian API token at + and export: + +```bash +export ATLASSIAN_EMAIL="you@example.com" # your Atlassian account email +export ATLASSIAN_API_TOKEN="" +``` + +The token, if set, is sent **only** to the Atlassian site host. + +## Usage + +```bash +# from the repo root + +# see exactly what it will do, no network, no files written: +python3 scripts/sop-images/fetch_sop_images.py --dry-run + +# real run (no login needed): +python3 scripts/sop-images/fetch_sop_images.py + +# just one (or a few) flows: +python3 scripts/sop-images/fetch_sop_images.py --only submit-clinical-forms --only prescribe-medication +``` + +Options: + +- `--dry-run` — list the flows/pages and target folders without touching the network. +- `--only SLUG` — process a single flow slug; repeat the flag for several. +- `--manifest PATH` — use an alternate manifest. + +## Output + +Images are written to: + +``` +static/img/flows///NN-. +``` + +numbered in page order (`01-…`, `02-…`). A report of every image and its source +URL is written to `scripts/sop-images/downloaded.csv`. + +Docusaurus serves `static/` at the site root, so an image saved at +`static/img/flows/clinical/create-encounter/01-foo.png` is referenced in the +`.mdx` as: + +```md +![Create encounter form](/img/flows/clinical/create-encounter/01-foo.png) +``` + +## Credentials & safety + +- The Atlassian email/token are sent **only** to the Atlassian site host. + External (Loom/CDN) requests are made with no auth header. +- Don't commit your token. Use env vars as shown above. +- Consider adding `scripts/sop-images/downloaded.csv` and `static/img/flows/` + to review before committing — the source screenshots are from a **staging** + Care instance. + +## After running + +Once the images are in `static/img/flows/...`, ask Claude (or do it by hand) to +wire the relevant images into each flow `.mdx` at the appropriate steps. The +`downloaded.csv` report shows which images belong to which flow and the order +they appeared in the source SOP. diff --git a/scripts/sop-images/downloaded.csv b/scripts/sop-images/downloaded.csv new file mode 100644 index 0000000..c2bda87 --- /dev/null +++ b/scripts/sop-images/downloaded.csv @@ -0,0 +1,40 @@ +domain,slug,page_id,kind,source_url,local_path +care,lab-diagnostics,48595619,external,https://loom.com/i/e92ad530463c4cd79dfbd533f5515957?workflows_screenshot=true,static/img/playbooks/care/lab-diagnostics/01-loom.jpg +care,lab-diagnostics,48595619,external,https://loom.com/i/3af38d6d043c45fa8c46b653820fc95e?workflows_screenshot=true,static/img/playbooks/care/lab-diagnostics/02-loom.jpg +care,lab-diagnostics,48595619,external,https://loom.com/i/7c2f83869e4341958098f5ff6f0ea111?workflows_screenshot=true,static/img/playbooks/care/lab-diagnostics/03-loom.jpg +care,lab-diagnostics,48595619,external,https://loom.com/i/74f561ab37444b05b2604f4b09c9656e?workflows_screenshot=true,static/img/playbooks/care/lab-diagnostics/04-loom.jpg +care,lab-diagnostics,48595619,external,https://loom.com/i/05432f9325d34271bc426b634eb26046?workflows_screenshot=true,static/img/playbooks/care/lab-diagnostics/05-loom.jpg +care,lab-diagnostics,48595619,external,https://loom.com/i/a4e22291a08146ed9596c8190a69ae92?workflows_screenshot=true,static/img/playbooks/care/lab-diagnostics/06-loom.jpg +care,lab-diagnostics,48595619,external,https://loom.com/i/7ff1ad0089554c52ba0b6c899163a51d?workflows_screenshot=true,static/img/playbooks/care/lab-diagnostics/07-loom.jpg +care,lab-diagnostics,48595582,external,https://loom.com/i/4c7e84cdde754e27b8b0d3a6df08c309?workflows_screenshot=true,static/img/playbooks/care/lab-diagnostics/08-loom.jpg +care,lab-diagnostics,48595582,external,https://loom.com/i/3a997b0fb6ef4f9cb9638478d6604693?workflows_screenshot=true,static/img/playbooks/care/lab-diagnostics/09-loom.jpg +care,lab-diagnostics,48595582,external,https://loom.com/i/5dcac6455771440d8767aa4a949536f2?workflows_screenshot=true,static/img/playbooks/care/lab-diagnostics/10-loom.jpg +care,lab-diagnostics,48595582,external,https://loom.com/i/8ef273d6acf94d8783d0402a051991e3?workflows_screenshot=true,static/img/playbooks/care/lab-diagnostics/11-loom.jpg +care,billing-and-payment,48595137,external,https://loom.com/i/1e931d9a99524f579322c4f0680060cf?workflows_screenshot=true,static/img/playbooks/care/billing-and-payment/01-loom.jpg +care,billing-and-payment,48595137,external,https://loom.com/i/b6c235a05d10402b8f1b6fb444e13ee4?workflows_screenshot=true,static/img/playbooks/care/billing-and-payment/02-loom.jpg +care,billing-and-payment,48595137,external,https://loom.com/i/b5066e7565e74e82aff78bafece72216?workflows_screenshot=true,static/img/playbooks/care/billing-and-payment/03-loom.jpg +care,billing-and-payment,48595137,external,https://loom.com/i/41bc8ded2515481595f828c81e3d5083?workflows_screenshot=true,static/img/playbooks/care/billing-and-payment/04-loom.jpg +care,billing-and-payment,48595137,external,https://loom.com/i/94b4811a5bf142bd9b060e546625610c?workflows_screenshot=true,static/img/playbooks/care/billing-and-payment/05-loom.jpg +care,billing-and-payment,48595137,external,https://loom.com/i/76dc34ace05344168fdb60a166c1c82a?workflows_screenshot=true,static/img/playbooks/care/billing-and-payment/06-loom.jpg +care,billing-and-payment,48595137,external,https://loom.com/i/dff076785d874c058c811a47679548fa?workflows_screenshot=true,static/img/playbooks/care/billing-and-payment/07-loom.jpg +care,pharmacy-dispensing,48595732,external,https://loom.com/i/e97dd88698794ede97e8c743b65a1db4?workflows_screenshot=true,static/img/playbooks/care/pharmacy-dispensing/01-loom.jpg +care,pharmacy-dispensing,48595732,external,https://loom.com/i/5e5aa1f924f044118e3a5449263c5bf7?workflows_screenshot=true,static/img/playbooks/care/pharmacy-dispensing/02-loom.jpg +care,pharmacy-dispensing,48595732,external,https://loom.com/i/39a97e82089c491c870244fbc466f6ae?workflows_screenshot=true,static/img/playbooks/care/pharmacy-dispensing/03-loom.jpg +care,pharmacy-dispensing,48595732,external,https://loom.com/i/9aa062ea6d294aafb65741db3f64dc85?workflows_screenshot=true,static/img/playbooks/care/pharmacy-dispensing/04-loom.jpg +care,pharmacy-dispensing,48595732,external,https://loom.com/i/ac809c8957084b3c90db2214277af71a?workflows_screenshot=true,static/img/playbooks/care/pharmacy-dispensing/05-loom.jpg +care,pharmacy-dispensing,48595732,external,https://loom.com/i/6f7495009baa4dc6bc348a6f69b7464a?workflows_screenshot=true,static/img/playbooks/care/pharmacy-dispensing/06-loom.jpg +care,pharmacy-dispensing,48595732,external,https://loom.com/i/54ef5a44cf0a42de85ee5c43fe049b57?workflows_screenshot=true,static/img/playbooks/care/pharmacy-dispensing/07-loom.jpg +care,pharmacy-dispensing,48595732,external,https://loom.com/i/c46fbbd1250042418afcf82b0ee59f7e?workflows_screenshot=true,static/img/playbooks/care/pharmacy-dispensing/08-loom.jpg +care,facility-setup,48627870,external,https://loom.com/i/b2d5435d3c224fa3b393c18952db9376?workflows_screenshot=true,static/img/playbooks/care/facility-setup/01-loom.jpg +care,facility-setup,48627870,external,https://loom.com/i/d7da8b6853334c24af4137f864791bc5?workflows_screenshot=true,static/img/playbooks/care/facility-setup/02-loom.jpg +care,facility-setup,48627870,external,https://loom.com/i/3e5f61933980406788e445fc4675957b?workflows_screenshot=true,static/img/playbooks/care/facility-setup/03-loom.jpg +care,facility-setup,48627870,external,https://loom.com/i/3ca0d677d19345959570852639515eb9?workflows_screenshot=true,static/img/playbooks/care/facility-setup/04-loom.jpg +care,facility-setup,48627870,external,https://loom.com/i/7ef1e74438ba4183aa6211bd8d6353e2?workflows_screenshot=true,static/img/playbooks/care/facility-setup/05-loom.jpg +care,op-consultation,48496862,external,https://loom.com/i/ecf9ae89215e454b84fd93ab48a5b301?workflows_screenshot=true,static/img/playbooks/care/op-consultation/01-loom.jpg +care,op-consultation,48496862,external,https://loom.com/i/0db59c0cae7a4892a36e50eb98c931f7?workflows_screenshot=true,static/img/playbooks/care/op-consultation/02-loom.jpg +care,op-consultation,48496862,external,https://loom.com/i/6b89493fdf18484fba137ff088f1a1f8?workflows_screenshot=true,static/img/playbooks/care/op-consultation/03-loom.jpg +care,op-consultation,48496862,external,https://loom.com/i/e478bff872fe48acaf546499ad1e8558?workflows_screenshot=true,static/img/playbooks/care/op-consultation/04-loom.jpg +care,ip-rounds,48496862,external,https://loom.com/i/ecf9ae89215e454b84fd93ab48a5b301?workflows_screenshot=true,static/img/playbooks/care/ip-rounds/01-loom.jpg +care,ip-rounds,48496862,external,https://loom.com/i/0db59c0cae7a4892a36e50eb98c931f7?workflows_screenshot=true,static/img/playbooks/care/ip-rounds/02-loom.jpg +care,ip-rounds,48496862,external,https://loom.com/i/6b89493fdf18484fba137ff088f1a1f8?workflows_screenshot=true,static/img/playbooks/care/ip-rounds/03-loom.jpg +care,ip-rounds,48496862,external,https://loom.com/i/e478bff872fe48acaf546499ad1e8558?workflows_screenshot=true,static/img/playbooks/care/ip-rounds/04-loom.jpg diff --git a/scripts/sop-images/fetch_sop_images.py b/scripts/sop-images/fetch_sop_images.py new file mode 100644 index 0000000..f067ec6 --- /dev/null +++ b/scripts/sop-images/fetch_sop_images.py @@ -0,0 +1,283 @@ +#!/usr/bin/env python3 +""" +Download images from the Care SOP Confluence pages into the docs repo. + +For every flow listed in manifest.json this script pulls, from each source +Confluence page: + + 1. Native attachments -> via the Confluence REST attachments API + (these are the `type=file` images embedded directly + in the page; they need authentication). + 2. External images -> parsed out of the page's storage-format body + (these are the `type=external` Loom screenshots; + they 302-redirect to a public CDN, no auth needed). + +Images are written to: + static/img/flows///NN-. + +and a report is written to: + scripts/sop-images/downloaded.csv + +Only the standard library is used (urllib) so there is nothing to install. + +------------------------------------------------------------------------------ +USAGE +------------------------------------------------------------------------------ + 1. Create an Atlassian API token: https://id.atlassian.com/manage-profile/security/api-tokens + 2. Export credentials (the email is your Atlassian account email): + + export ATLASSIAN_EMAIL="you@example.com" + export ATLASSIAN_API_TOKEN="" + + 3. From the repo root (or anywhere), run: + + python3 scripts/sop-images/fetch_sop_images.py + + Options: + --dry-run List what would be downloaded without writing files. + --only SLUG Process a single flow slug (repeatable). + --manifest P Use an alternate manifest path. + +The Atlassian credentials are sent ONLY to the configured Atlassian site host. +External (Loom/CDN) requests are made without any auth header. +""" + +import argparse +import base64 +import csv +import json +import os +import re +import sys +import urllib.error +import urllib.parse +import urllib.request + +HERE = os.path.dirname(os.path.abspath(__file__)) +REPO_ROOT = os.path.abspath(os.path.join(HERE, "..", "..")) + +EXT_BY_MIME = { + "image/png": "png", + "image/jpeg": "jpg", + "image/jpg": "jpg", + "image/gif": "gif", + "image/webp": "webp", + "image/svg+xml": "svg", +} + + +def log(msg): + print(msg, flush=True) + + +def auth_header(email, token): + raw = f"{email}:{token}".encode("utf-8") + return "Basic " + base64.b64encode(raw).decode("ascii") + + +def http_get(url, headers=None, timeout=60): + req = urllib.request.Request(url, headers=headers or {}) + return urllib.request.urlopen(req, timeout=timeout) + + +def get_json(url, email, token): + headers = {"Accept": "application/json"} + if email and token: + headers["Authorization"] = auth_header(email, token) + with http_get(url, headers) as resp: + return json.loads(resp.read().decode("utf-8")) + + +def list_attachments(site, page_id, email, token): + """Return [{title, download_url, mime}] for native page attachments.""" + out = [] + start = 0 + while True: + url = ( + f"{site}/wiki/rest/api/content/{page_id}/child/attachment" + f"?limit=50&start={start}&expand=extensions" + ) + try: + data = get_json(url, email, token) + except urllib.error.HTTPError as e: + log(f" ! attachments API error for page {page_id}: {e.code} {e.reason}") + break + except (urllib.error.URLError, OSError) as e: + log(f" ! network error reaching attachments API for page {page_id}: {e}") + break + results = data.get("results", []) + base = data.get("_links", {}).get("base", f"{site}/wiki") + for r in results: + dl = r.get("_links", {}).get("download") + if not dl: + continue + full = dl if dl.startswith("http") else base + dl + out.append({ + "title": r.get("title", "attachment"), + "download_url": full, + "mime": r.get("extensions", {}).get("mediaType", ""), + }) + if len(results) < 50: + break + start += 50 + return out + + +def get_storage_body(site, page_id, email, token): + url = f"{site}/wiki/rest/api/content/{page_id}?expand=body.storage" + try: + data = get_json(url, email, token) + except urllib.error.HTTPError as e: + log(f" ! body API error for page {page_id}: {e.code} {e.reason}") + return "" + except (urllib.error.URLError, OSError) as e: + log(f" ! network error reaching body API for page {page_id}: {e}") + return "" + return data.get("body", {}).get("storage", {}).get("value", "") or "" + + +def external_image_urls(storage_xml): + """Extract external image URLs from storage-format body. + + External images appear as . Some are Atlassian + media wrappers that embed the real target in a `url=` query param; if so, + we decode and use the inner URL (typically a Loom screenshot). + """ + urls = [] + for m in re.finditer(r'ri:url\s+ri:value="([^"]+)"', storage_xml): + raw = m.group(1).replace("&", "&") + parsed = urllib.parse.urlparse(raw) + inner = urllib.parse.parse_qs(parsed.query).get("url", [None])[0] + urls.append(inner if inner else raw) + # de-dupe, preserve order + seen, deduped = set(), [] + for u in urls: + if u and u not in seen: + seen.add(u) + deduped.append(u) + return deduped + + +def ext_from_response(resp, fallback="png"): + ctype = (resp.headers.get("Content-Type") or "").split(";")[0].strip().lower() + return EXT_BY_MIME.get(ctype, fallback) + + +def ext_from_name_or_mime(name, mime): + base, dot, ext = name.rpartition(".") + if dot and 1 <= len(ext) <= 5: + return ext.lower() + return EXT_BY_MIME.get((mime or "").lower(), "png") + + +def safe_name(title): + stem = title.rsplit(".", 1)[0] + stem = re.sub(r"[^A-Za-z0-9._-]+", "-", stem).strip("-").lower() + return stem or "image" + + +def download(url, dest_no_ext, email, token, site_host, dry_run): + """Download url to dest_no_ext + detected extension. Returns saved path or None.""" + is_atlassian = urllib.parse.urlparse(url).netloc.endswith(site_host) + headers = {"User-Agent": "care-docs-sop-image-fetch/1.0"} + if is_atlassian and email and token: + headers["Authorization"] = auth_header(email, token) + if dry_run: + log(f" [dry-run] {url}") + return dest_no_ext + ".(pending)" + try: + with http_get(url, headers) as resp: + data = resp.read() + ext = ext_from_response(resp) + path = dest_no_ext + "." + ext + os.makedirs(os.path.dirname(path), exist_ok=True) + with open(path, "wb") as f: + f.write(data) + log(f" saved {os.path.relpath(path, REPO_ROOT)} ({len(data)} bytes)") + return path + except urllib.error.HTTPError as e: + log(f" ! download failed ({e.code} {e.reason}): {url}") + except Exception as e: # noqa: BLE001 + log(f" ! download error ({e}): {url}") + return None + + +def main(): + ap = argparse.ArgumentParser(description="Fetch Care SOP images from Confluence.") + ap.add_argument("--manifest", default=os.path.join(HERE, "manifest.json")) + ap.add_argument("--dry-run", action="store_true") + ap.add_argument("--only", action="append", default=[], help="Process only this slug (repeatable).") + args = ap.parse_args() + + email = os.environ.get("ATLASSIAN_EMAIL") + token = os.environ.get("ATLASSIAN_API_TOKEN") + if not args.dry_run and not (email and token): + log("NOTE: no ATLASSIAN_EMAIL / ATLASSIAN_API_TOKEN set — using anonymous access.") + log(" This works while the SOP space is publicly viewable. If discovery") + log(" returns 401/403, set the env vars (see README) and re-run.\n") + + with open(args.manifest, encoding="utf-8") as f: + manifest = json.load(f) + + site = os.environ.get("CONFLUENCE_BASE", manifest.get("site")).rstrip("/") + site_host = urllib.parse.urlparse(site).netloc + + img_root = manifest.get("img_root", "flows") + flows = manifest["flows"] + if args.only: + flows = [fl for fl in flows if fl["slug"] in set(args.only)] + + report_rows = [] + total = 0 + for fl in flows: + domain, slug, pages = fl["domain"], fl["slug"], fl["pages"] + log(f"\n== {domain}/{slug} ({fl.get('title','')}) ==") + out_dir = os.path.join(REPO_ROOT, "static", "img", img_root, domain, slug) + idx = 0 + if args.dry_run: + rel = os.path.relpath(out_dir, REPO_ROOT) + log(f" [dry-run] would fetch attachments + external images from page(s) " + f"{', '.join(pages)} into {rel}/") + for page_id in pages: + report_rows.append([domain, slug, page_id, "(dry-run)", "", rel]) + continue + for page_id in pages: + log(f" page {page_id}") + # 1) native attachments + for att in list_attachments(site, page_id, email, token): + if att["mime"] and not att["mime"].lower().startswith("image/"): + continue + idx += 1 + name = safe_name(att["title"]) + dest = os.path.join(out_dir, f"{idx:02d}-{name}") + saved = download(att["download_url"], dest, email, token, site_host, args.dry_run) + report_rows.append([domain, slug, page_id, "attachment", att["download_url"], + os.path.relpath(saved, REPO_ROOT) if saved else ""]) + if saved: + total += 1 + # 2) external images from body + body = get_storage_body(site, page_id, email, token) if not args.dry_run else "" + if args.dry_run: + log(" [dry-run] (body fetch skipped; run without --dry-run to parse Loom URLs)") + for url in external_image_urls(body): + idx += 1 + dest = os.path.join(out_dir, f"{idx:02d}-loom") + saved = download(url, dest, email, token, site_host, args.dry_run) + report_rows.append([domain, slug, page_id, "external", url, + os.path.relpath(saved, REPO_ROOT) if saved else ""]) + if saved: + total += 1 + + report_path = os.path.join(HERE, "downloaded.csv") + with open(report_path, "w", newline="", encoding="utf-8") as f: + w = csv.writer(f) + w.writerow(["domain", "slug", "page_id", "kind", "source_url", "local_path"]) + w.writerows(report_rows) + + log(f"\nDone. {total} image(s) saved. Report: {os.path.relpath(report_path, REPO_ROOT)}") + if not args.dry_run: + log("Next: review static/img/flows/... then wire images into the .mdx flows.") + + +if __name__ == "__main__": + main() diff --git a/scripts/sop-images/manifest.json b/scripts/sop-images/manifest.json new file mode 100644 index 0000000..e996ec1 --- /dev/null +++ b/scripts/sop-images/manifest.json @@ -0,0 +1,52 @@ +{ + "_comment": "Maps each Care flow doc to the source Confluence SOP page(s) whose images should be pulled. Images download into static/img/flows///. The create-patient flow has no source SOP and is intentionally omitted.", + "site": "https://openhealthcarenetwork.atlassian.net", + "flows": [ + { "domain": "clinical", "slug": "create-encounter", "pages": ["52101413"], "title": "To Create an Encounter in CARE" }, + { "domain": "clinical", "slug": "complete-encounter", "pages": ["48595368"], "title": "Mark a Patient Encounter as Complete" }, + { "domain": "clinical", "slug": "discharge-encounter", "pages": ["48562475"], "title": "Discharge a Patient Encounter in Care" }, + { "domain": "clinical", "slug": "view-previous-encounters", "pages": ["48595436"], "title": "To View Previous Patient Encounters in Care" }, + { "domain": "clinical", "slug": "create-encounter-tag", "pages": ["48562549"], "title": "How to Create an Encounter Tag in Care" }, + { "domain": "clinical", "slug": "update-diagnosis", "pages": ["48496932"], "title": "To Update Patient Diagnosis in Care" }, + { "domain": "clinical", "slug": "update-symptoms", "pages": ["48562514"], "title": "To Add and Update Patient Symptoms in Care" }, + { "domain": "clinical", "slug": "manage-allergy", "pages": ["48562701"], "title": "Add or Update an Allergy in Care for a Patient" }, + { "domain": "clinical", "slug": "submit-clinical-forms", "pages": ["48562740"], "title": "Submitting Clinical Forms in Care" }, + { "domain": "clinical", "slug": "ai-scribe", "pages": ["48595471"], "title": "How to use AI-Scribe: Voice autofill tool" }, + { "domain": "clinical", "slug": "upload-clinical-files", "pages": ["48628074"], "title": "To Upload Clinical Files in Care" }, + { "domain": "clinical", "slug": "treatment-summary", "pages": ["48562779"], "title": "To generate Treatment Summary in Care" }, + { "domain": "clinical", "slug": "discharge-summary", "pages": ["48595403"], "title": "Generate and Print a Discharge Summary in Care" }, + { "domain": "clinical", "slug": "patient-notes", "pages": ["48497006"], "title": "How to add Patient Notes (non clinical) as conversation threads" }, + { "domain": "clinical", "slug": "patient-consent", "pages": ["48595308"], "title": "Add Patient Consent in Care" }, + { "domain": "clinical", "slug": "register-patient-manually", "pages": ["48595662"], "title": "To register a new patient manually in Care" }, + { "domain": "clinical", "slug": "register-patient-abha", "pages": ["48562813"], "title": "Register a Patient Through ABHA in Care" }, + { "domain": "clinical", "slug": "edit-demographics", "pages": ["48595506"], "title": "Edit Patient Demography Details" }, + { "domain": "clinical", "slug": "patient-tags", "pages": ["48496967"], "title": "To add patient tags during registration and update tag for ABHA patients" }, + { "domain": "clinical", "slug": "fetch-records-abdm", "pages": ["48562586"], "title": "Fetch Patient Records via ABDM in Care" }, + { "domain": "clinical", "slug": "raise-lab-request", "pages": ["48595582"], "title": "Raising a Lab Test Request for a Patient" }, + + { "domain": "medications", "slug": "prescribe-medication", "pages": ["48496899"], "title": "Prescribing Medication in Care" }, + { "domain": "medications", "slug": "administer-medication", "pages": ["48562663"], "title": "To View Prescription and Administer Medication in Care" }, + + { "domain": "scheduling", "slug": "schedule-appointment", "pages": ["48562295"], "title": "Schedule a Patient Appointment for a Health Care Service" }, + { "domain": "scheduling", "slug": "manage-appointment", "pages": ["48595543"], "title": "To Cancel, Reschedule, and Check-in for a Patient Appointment" }, + { "domain": "scheduling", "slug": "create-healthcare-service", "pages": ["48595101"], "title": "To create a Healthcare Service in Care" }, + { "domain": "scheduling", "slug": "link-charge-item", "pages": ["48562329"], "title": "To link a Charge Item to a Service Appointment Schedule" }, + + { "domain": "billing", "slug": "add-service-request", "pages": ["48496811"], "title": "Adding a Service Request in Care" }, + { "domain": "billing", "slug": "create-discount", "pages": ["48627910"], "title": "Create a Discount Code and Discount Component for Hospital Staff" }, + + { "domain": "facility", "slug": "add-locations", "pages": ["48595219"], "title": "To Add and Organize Facility Locations in Care" }, + { "domain": "facility", "slug": "link-departments-location", "pages": ["48562370"], "title": "Link Multiple Departments to a Location" }, + { "domain": "facility", "slug": "create-beds", "pages": ["48562438"], "title": "Create Multiple Beds in a Location" }, + { "domain": "facility", "slug": "assign-bed", "pages": ["48628017"], "title": "Assigning a Location/Bed to a Patient" }, + { "domain": "facility", "slug": "create-department", "pages": ["48627947"], "title": "To Create a Department in Care" }, + { "domain": "facility", "slug": "link-hfid-abdm", "pages": ["48562405"], "title": "Link HFID in Care for ABDM and Generate Health Facility QR Code" }, + + { "domain": "access-governance", "slug": "manage-department-users", "pages": ["48595180", "55672834"], "title": "Create or Link Users to a Department in Care (+ Add or Link a User to a Department)" }, + { "domain": "access-governance", "slug": "manage-care-team", "pages": ["48627980"], "title": "To add and edit Manage Care Team in Care" }, + { "domain": "access-governance", "slug": "assign-user-to-patient", "pages": ["48628111"], "title": "Assign a User to a Patient Record" }, + + { "domain": "supply", "slug": "resource-request", "pages": ["48628146"], "title": "Create and Track a Patient Resource Request" }, + { "domain": "supply", "slug": "product-knowledge", "pages": ["48595699"], "title": "Add Product Knowledge in Care" } + ] +} diff --git a/scripts/sop-images/playbooks-manifest.json b/scripts/sop-images/playbooks-manifest.json new file mode 100644 index 0000000..b68245b --- /dev/null +++ b/scripts/sop-images/playbooks-manifest.json @@ -0,0 +1,13 @@ +{ + "_comment": "Maps each Care playbook to the source SOP page(s) whose screenshots illustrate it. Images download into static/img/playbooks/hmis//. Run: python3 scripts/sop-images/fetch_sop_images.py --manifest scripts/sop-images/playbooks-manifest.json", + "site": "https://openhealthcarenetwork.atlassian.net", + "img_root": "playbooks", + "flows": [ + { "domain": "hmis", "slug": "lab-diagnostics", "pages": ["48595619", "48595582"], "title": "Laboratory Service Request Review, Specimen Collection, Result Entry, and Report Publication (+ Raising a Lab Test Request)" }, + { "domain": "hmis", "slug": "billing-and-payment", "pages": ["48595137"], "title": "Building Staff Billing, Invoice Creation, and Payment Collection" }, + { "domain": "hmis", "slug": "pharmacy-dispensing", "pages": ["48595732"], "title": "Review Prescriptions and Dispense Medicines as a Pharmacist" }, + { "domain": "hmis", "slug": "facility-setup", "pages": ["48627870"], "title": "To Create and Configure a New Health Facility in Care" }, + { "domain": "hmis", "slug": "op-consultation", "pages": ["48496862"], "title": "Accessing, Completing, and Restarting a Patient Encounter in Care" }, + { "domain": "hmis", "slug": "ip-rounds", "pages": ["48496862"], "title": "Accessing, Completing, and Restarting a Patient Encounter in Care" } + ] +} diff --git a/sidebars.js b/sidebars.js index 92bb8a5..a494b18 100644 --- a/sidebars.js +++ b/sidebars.js @@ -21,14 +21,7 @@ const sidebars = { type: 'category', label: 'Flows', collapsed: false, - items: [ - { - type: 'category', - label: 'Clinical', - key: 'clinical-flows', - items: ['flows/clinical/create-patient'], - }, - ], + items: [{type: 'autogenerated', dirName: 'flows'}], }, { type: 'category', diff --git a/src/clientModules/devLocaleWarning.js b/src/clientModules/devLocaleWarning.js index 944904d..cc2c51e 100644 --- a/src/clientModules/devLocaleWarning.js +++ b/src/clientModules/devLocaleWarning.js @@ -1,7 +1,8 @@ import ExecutionEnvironment from '@docusaurus/ExecutionEnvironment'; import siteConfig from '@generated/docusaurus.config'; +import i18n from '@generated/i18n'; -function getPathLocale(pathname, i18n) { +function getPathLocale(pathname) { const baseUrl = siteConfig.baseUrl.replace(/\/$/, ''); for (const locale of i18n.locales) { @@ -20,8 +21,7 @@ function getPathLocale(pathname, i18n) { if (ExecutionEnvironment.canUseDOM && process.env.NODE_ENV === 'development') { const {pathname} = window.location; - const {i18n} = siteConfig; - const pathLocale = getPathLocale(pathname, i18n); + const pathLocale = getPathLocale(pathname); if (pathLocale !== i18n.currentLocale) { const banner = document.createElement('div'); diff --git a/static/img/flows/access-governance/assign-user-to-patient/01-loom.jpg b/static/img/flows/access-governance/assign-user-to-patient/01-loom.jpg new file mode 100644 index 0000000..9687898 Binary files /dev/null and b/static/img/flows/access-governance/assign-user-to-patient/01-loom.jpg differ diff --git a/static/img/flows/access-governance/assign-user-to-patient/02-loom.jpg b/static/img/flows/access-governance/assign-user-to-patient/02-loom.jpg new file mode 100644 index 0000000..4bcb684 Binary files /dev/null and b/static/img/flows/access-governance/assign-user-to-patient/02-loom.jpg differ diff --git a/static/img/flows/access-governance/assign-user-to-patient/03-loom.jpg b/static/img/flows/access-governance/assign-user-to-patient/03-loom.jpg new file mode 100644 index 0000000..5d2e15b Binary files /dev/null and b/static/img/flows/access-governance/assign-user-to-patient/03-loom.jpg differ diff --git a/static/img/flows/access-governance/manage-care-team/01-loom.jpg b/static/img/flows/access-governance/manage-care-team/01-loom.jpg new file mode 100644 index 0000000..86f22bb Binary files /dev/null and b/static/img/flows/access-governance/manage-care-team/01-loom.jpg differ diff --git a/static/img/flows/access-governance/manage-care-team/02-loom.jpg b/static/img/flows/access-governance/manage-care-team/02-loom.jpg new file mode 100644 index 0000000..929af46 Binary files /dev/null and b/static/img/flows/access-governance/manage-care-team/02-loom.jpg differ diff --git a/static/img/flows/access-governance/manage-care-team/03-loom.jpg b/static/img/flows/access-governance/manage-care-team/03-loom.jpg new file mode 100644 index 0000000..b2b5c68 Binary files /dev/null and b/static/img/flows/access-governance/manage-care-team/03-loom.jpg differ diff --git a/static/img/flows/access-governance/manage-care-team/04-loom.jpg b/static/img/flows/access-governance/manage-care-team/04-loom.jpg new file mode 100644 index 0000000..7a00fa0 Binary files /dev/null and b/static/img/flows/access-governance/manage-care-team/04-loom.jpg differ diff --git a/static/img/flows/access-governance/manage-department-users/01-loom.jpg b/static/img/flows/access-governance/manage-department-users/01-loom.jpg new file mode 100644 index 0000000..0b99da9 Binary files /dev/null and b/static/img/flows/access-governance/manage-department-users/01-loom.jpg differ diff --git a/static/img/flows/access-governance/manage-department-users/02-loom.jpg b/static/img/flows/access-governance/manage-department-users/02-loom.jpg new file mode 100644 index 0000000..f5d17e2 Binary files /dev/null and b/static/img/flows/access-governance/manage-department-users/02-loom.jpg differ diff --git a/static/img/flows/access-governance/manage-department-users/03-loom.jpg b/static/img/flows/access-governance/manage-department-users/03-loom.jpg new file mode 100644 index 0000000..239532b Binary files /dev/null and b/static/img/flows/access-governance/manage-department-users/03-loom.jpg differ diff --git a/static/img/flows/access-governance/manage-department-users/04-loom.jpg b/static/img/flows/access-governance/manage-department-users/04-loom.jpg new file mode 100644 index 0000000..1641451 Binary files /dev/null and b/static/img/flows/access-governance/manage-department-users/04-loom.jpg differ diff --git a/static/img/flows/access-governance/manage-department-users/05-loom.jpg b/static/img/flows/access-governance/manage-department-users/05-loom.jpg new file mode 100644 index 0000000..7cc37f0 Binary files /dev/null and b/static/img/flows/access-governance/manage-department-users/05-loom.jpg differ diff --git a/static/img/flows/access-governance/manage-department-users/06-loom.jpg b/static/img/flows/access-governance/manage-department-users/06-loom.jpg new file mode 100644 index 0000000..ae69eb7 Binary files /dev/null and b/static/img/flows/access-governance/manage-department-users/06-loom.jpg differ diff --git a/static/img/flows/access-governance/manage-department-users/07-loom.jpg b/static/img/flows/access-governance/manage-department-users/07-loom.jpg new file mode 100644 index 0000000..94d3adf Binary files /dev/null and b/static/img/flows/access-governance/manage-department-users/07-loom.jpg differ diff --git a/static/img/flows/access-governance/manage-department-users/08-loom.jpg b/static/img/flows/access-governance/manage-department-users/08-loom.jpg new file mode 100644 index 0000000..5e8a219 Binary files /dev/null and b/static/img/flows/access-governance/manage-department-users/08-loom.jpg differ diff --git a/static/img/flows/access-governance/manage-department-users/09-loom.jpg b/static/img/flows/access-governance/manage-department-users/09-loom.jpg new file mode 100644 index 0000000..9fb748f Binary files /dev/null and b/static/img/flows/access-governance/manage-department-users/09-loom.jpg differ diff --git a/static/img/flows/access-governance/manage-department-users/10-loom.jpg b/static/img/flows/access-governance/manage-department-users/10-loom.jpg new file mode 100644 index 0000000..6d98186 Binary files /dev/null and b/static/img/flows/access-governance/manage-department-users/10-loom.jpg differ diff --git a/static/img/flows/access-governance/manage-department-users/11-loom.jpg b/static/img/flows/access-governance/manage-department-users/11-loom.jpg new file mode 100644 index 0000000..b9e1fb4 Binary files /dev/null and b/static/img/flows/access-governance/manage-department-users/11-loom.jpg differ diff --git a/static/img/flows/billing/add-service-request/01-screenshot-2026-06-17-at-5.18.58-pm.png b/static/img/flows/billing/add-service-request/01-screenshot-2026-06-17-at-5.18.58-pm.png new file mode 100644 index 0000000..d38e1ae Binary files /dev/null and b/static/img/flows/billing/add-service-request/01-screenshot-2026-06-17-at-5.18.58-pm.png differ diff --git a/static/img/flows/billing/add-service-request/02-screenshot-2026-06-17-at-5.15.16-pm.png b/static/img/flows/billing/add-service-request/02-screenshot-2026-06-17-at-5.15.16-pm.png new file mode 100644 index 0000000..37af7e4 Binary files /dev/null and b/static/img/flows/billing/add-service-request/02-screenshot-2026-06-17-at-5.15.16-pm.png differ diff --git a/static/img/flows/billing/add-service-request/03-loom.jpg b/static/img/flows/billing/add-service-request/03-loom.jpg new file mode 100644 index 0000000..7e9ea24 Binary files /dev/null and b/static/img/flows/billing/add-service-request/03-loom.jpg differ diff --git a/static/img/flows/billing/collect-payment/01-loom.jpg b/static/img/flows/billing/collect-payment/01-loom.jpg new file mode 100644 index 0000000..1cb90ce Binary files /dev/null and b/static/img/flows/billing/collect-payment/01-loom.jpg differ diff --git a/static/img/flows/billing/collect-payment/02-loom.jpg b/static/img/flows/billing/collect-payment/02-loom.jpg new file mode 100644 index 0000000..dd06881 Binary files /dev/null and b/static/img/flows/billing/collect-payment/02-loom.jpg differ diff --git a/static/img/flows/billing/collect-payment/03-loom.jpg b/static/img/flows/billing/collect-payment/03-loom.jpg new file mode 100644 index 0000000..308d6f0 Binary files /dev/null and b/static/img/flows/billing/collect-payment/03-loom.jpg differ diff --git a/static/img/flows/billing/create-discount/01-screenshot-2026-06-17-at-6.51.23-pm.png b/static/img/flows/billing/create-discount/01-screenshot-2026-06-17-at-6.51.23-pm.png new file mode 100644 index 0000000..b68ca89 Binary files /dev/null and b/static/img/flows/billing/create-discount/01-screenshot-2026-06-17-at-6.51.23-pm.png differ diff --git a/static/img/flows/billing/create-discount/02-da6af6433f7b4b3ca7e554f0618d35ec-workflows_screenshot-true.jpg b/static/img/flows/billing/create-discount/02-da6af6433f7b4b3ca7e554f0618d35ec-workflows_screenshot-true.jpg new file mode 100644 index 0000000..501c15a Binary files /dev/null and b/static/img/flows/billing/create-discount/02-da6af6433f7b4b3ca7e554f0618d35ec-workflows_screenshot-true.jpg differ diff --git a/static/img/flows/billing/create-discount/03-ac957d2284f74cc8a57432596083e361-workflows_screenshot-true.jpg b/static/img/flows/billing/create-discount/03-ac957d2284f74cc8a57432596083e361-workflows_screenshot-true.jpg new file mode 100644 index 0000000..edb2daf Binary files /dev/null and b/static/img/flows/billing/create-discount/03-ac957d2284f74cc8a57432596083e361-workflows_screenshot-true.jpg differ diff --git a/static/img/flows/billing/create-discount/04-loom.jpg b/static/img/flows/billing/create-discount/04-loom.jpg new file mode 100644 index 0000000..cc87d9f Binary files /dev/null and b/static/img/flows/billing/create-discount/04-loom.jpg differ diff --git a/static/img/flows/billing/create-discount/05-loom.jpg b/static/img/flows/billing/create-discount/05-loom.jpg new file mode 100644 index 0000000..cebf0e8 Binary files /dev/null and b/static/img/flows/billing/create-discount/05-loom.jpg differ diff --git a/static/img/flows/billing/create-invoice/01-loom.jpg b/static/img/flows/billing/create-invoice/01-loom.jpg new file mode 100644 index 0000000..a0d9615 Binary files /dev/null and b/static/img/flows/billing/create-invoice/01-loom.jpg differ diff --git a/static/img/flows/billing/create-invoice/02-loom.jpg b/static/img/flows/billing/create-invoice/02-loom.jpg new file mode 100644 index 0000000..7ef1ac5 Binary files /dev/null and b/static/img/flows/billing/create-invoice/02-loom.jpg differ diff --git a/static/img/flows/billing/create-invoice/03-loom.jpg b/static/img/flows/billing/create-invoice/03-loom.jpg new file mode 100644 index 0000000..9d47818 Binary files /dev/null and b/static/img/flows/billing/create-invoice/03-loom.jpg differ diff --git a/static/img/flows/billing/create-invoice/04-loom.jpg b/static/img/flows/billing/create-invoice/04-loom.jpg new file mode 100644 index 0000000..d696f67 Binary files /dev/null and b/static/img/flows/billing/create-invoice/04-loom.jpg differ diff --git a/static/img/flows/clinical/ai-scribe/01-dd21a20caf3f4f4eba211fa9026485a6-workflows_screenshot-true.jpg b/static/img/flows/clinical/ai-scribe/01-dd21a20caf3f4f4eba211fa9026485a6-workflows_screenshot-true.jpg new file mode 100644 index 0000000..b299c23 Binary files /dev/null and b/static/img/flows/clinical/ai-scribe/01-dd21a20caf3f4f4eba211fa9026485a6-workflows_screenshot-true.jpg differ diff --git a/static/img/flows/clinical/ai-scribe/02-screenshot-2026-06-17-at-7.22.33-pm.png b/static/img/flows/clinical/ai-scribe/02-screenshot-2026-06-17-at-7.22.33-pm.png new file mode 100644 index 0000000..205da91 Binary files /dev/null and b/static/img/flows/clinical/ai-scribe/02-screenshot-2026-06-17-at-7.22.33-pm.png differ diff --git a/static/img/flows/clinical/ai-scribe/03-screenshot-2026-06-17-at-7.21.37-pm.png b/static/img/flows/clinical/ai-scribe/03-screenshot-2026-06-17-at-7.21.37-pm.png new file mode 100644 index 0000000..0c56378 Binary files /dev/null and b/static/img/flows/clinical/ai-scribe/03-screenshot-2026-06-17-at-7.21.37-pm.png differ diff --git a/static/img/flows/clinical/ai-scribe/04-loom.jpg b/static/img/flows/clinical/ai-scribe/04-loom.jpg new file mode 100644 index 0000000..403a2de Binary files /dev/null and b/static/img/flows/clinical/ai-scribe/04-loom.jpg differ diff --git a/static/img/flows/clinical/ai-scribe/05-loom.jpg b/static/img/flows/clinical/ai-scribe/05-loom.jpg new file mode 100644 index 0000000..53ece65 Binary files /dev/null and b/static/img/flows/clinical/ai-scribe/05-loom.jpg differ diff --git a/static/img/flows/clinical/complete-encounter/01-loom.jpg b/static/img/flows/clinical/complete-encounter/01-loom.jpg new file mode 100644 index 0000000..9959971 Binary files /dev/null and b/static/img/flows/clinical/complete-encounter/01-loom.jpg differ diff --git a/static/img/flows/clinical/complete-encounter/02-loom.jpg b/static/img/flows/clinical/complete-encounter/02-loom.jpg new file mode 100644 index 0000000..b987f19 Binary files /dev/null and b/static/img/flows/clinical/complete-encounter/02-loom.jpg differ diff --git a/static/img/flows/clinical/complete-encounter/03-loom.jpg b/static/img/flows/clinical/complete-encounter/03-loom.jpg new file mode 100644 index 0000000..e0cacea Binary files /dev/null and b/static/img/flows/clinical/complete-encounter/03-loom.jpg differ diff --git a/static/img/flows/clinical/create-encounter/01-loom.jpg b/static/img/flows/clinical/create-encounter/01-loom.jpg new file mode 100644 index 0000000..2287741 Binary files /dev/null and b/static/img/flows/clinical/create-encounter/01-loom.jpg differ diff --git a/static/img/flows/clinical/create-encounter/02-loom.jpg b/static/img/flows/clinical/create-encounter/02-loom.jpg new file mode 100644 index 0000000..a276bae Binary files /dev/null and b/static/img/flows/clinical/create-encounter/02-loom.jpg differ diff --git a/static/img/flows/clinical/create-encounter/03-loom.jpg b/static/img/flows/clinical/create-encounter/03-loom.jpg new file mode 100644 index 0000000..92450a5 Binary files /dev/null and b/static/img/flows/clinical/create-encounter/03-loom.jpg differ diff --git a/static/img/flows/clinical/create-encounter/04-loom.jpg b/static/img/flows/clinical/create-encounter/04-loom.jpg new file mode 100644 index 0000000..90221ae Binary files /dev/null and b/static/img/flows/clinical/create-encounter/04-loom.jpg differ diff --git a/static/img/flows/clinical/discharge-encounter/01-loom.jpg b/static/img/flows/clinical/discharge-encounter/01-loom.jpg new file mode 100644 index 0000000..bc7ddb4 Binary files /dev/null and b/static/img/flows/clinical/discharge-encounter/01-loom.jpg differ diff --git a/static/img/flows/clinical/discharge-encounter/02-loom.jpg b/static/img/flows/clinical/discharge-encounter/02-loom.jpg new file mode 100644 index 0000000..ef35f09 Binary files /dev/null and b/static/img/flows/clinical/discharge-encounter/02-loom.jpg differ diff --git a/static/img/flows/clinical/discharge-encounter/03-loom.jpg b/static/img/flows/clinical/discharge-encounter/03-loom.jpg new file mode 100644 index 0000000..dd50fd1 Binary files /dev/null and b/static/img/flows/clinical/discharge-encounter/03-loom.jpg differ diff --git a/static/img/flows/clinical/discharge-encounter/04-loom.jpg b/static/img/flows/clinical/discharge-encounter/04-loom.jpg new file mode 100644 index 0000000..948a626 Binary files /dev/null and b/static/img/flows/clinical/discharge-encounter/04-loom.jpg differ diff --git a/static/img/flows/clinical/discharge-encounter/05-loom.jpg b/static/img/flows/clinical/discharge-encounter/05-loom.jpg new file mode 100644 index 0000000..e010199 Binary files /dev/null and b/static/img/flows/clinical/discharge-encounter/05-loom.jpg differ diff --git a/static/img/flows/clinical/discharge-summary/01-loom.jpg b/static/img/flows/clinical/discharge-summary/01-loom.jpg new file mode 100644 index 0000000..62f5ea2 Binary files /dev/null and b/static/img/flows/clinical/discharge-summary/01-loom.jpg differ diff --git a/static/img/flows/clinical/discharge-summary/02-loom.jpg b/static/img/flows/clinical/discharge-summary/02-loom.jpg new file mode 100644 index 0000000..26786a8 Binary files /dev/null and b/static/img/flows/clinical/discharge-summary/02-loom.jpg differ diff --git a/static/img/flows/clinical/edit-demographics/01-loom.jpg b/static/img/flows/clinical/edit-demographics/01-loom.jpg new file mode 100644 index 0000000..7843b1b Binary files /dev/null and b/static/img/flows/clinical/edit-demographics/01-loom.jpg differ diff --git a/static/img/flows/clinical/edit-demographics/02-loom.jpg b/static/img/flows/clinical/edit-demographics/02-loom.jpg new file mode 100644 index 0000000..89011eb Binary files /dev/null and b/static/img/flows/clinical/edit-demographics/02-loom.jpg differ diff --git a/static/img/flows/clinical/edit-demographics/03-loom.jpg b/static/img/flows/clinical/edit-demographics/03-loom.jpg new file mode 100644 index 0000000..b41bee8 Binary files /dev/null and b/static/img/flows/clinical/edit-demographics/03-loom.jpg differ diff --git a/static/img/flows/clinical/edit-demographics/04-loom.jpg b/static/img/flows/clinical/edit-demographics/04-loom.jpg new file mode 100644 index 0000000..97f95a3 Binary files /dev/null and b/static/img/flows/clinical/edit-demographics/04-loom.jpg differ diff --git a/static/img/flows/clinical/fetch-records-abdm/01-loom.jpg b/static/img/flows/clinical/fetch-records-abdm/01-loom.jpg new file mode 100644 index 0000000..036ca56 Binary files /dev/null and b/static/img/flows/clinical/fetch-records-abdm/01-loom.jpg differ diff --git a/static/img/flows/clinical/fetch-records-abdm/02-loom.jpg b/static/img/flows/clinical/fetch-records-abdm/02-loom.jpg new file mode 100644 index 0000000..a6643ca Binary files /dev/null and b/static/img/flows/clinical/fetch-records-abdm/02-loom.jpg differ diff --git a/static/img/flows/clinical/fetch-records-abdm/03-loom.jpg b/static/img/flows/clinical/fetch-records-abdm/03-loom.jpg new file mode 100644 index 0000000..6631fc4 Binary files /dev/null and b/static/img/flows/clinical/fetch-records-abdm/03-loom.jpg differ diff --git a/static/img/flows/clinical/fetch-records-abdm/04-loom.jpg b/static/img/flows/clinical/fetch-records-abdm/04-loom.jpg new file mode 100644 index 0000000..3aa3b7b Binary files /dev/null and b/static/img/flows/clinical/fetch-records-abdm/04-loom.jpg differ diff --git a/static/img/flows/clinical/fetch-records-abdm/05-loom.jpg b/static/img/flows/clinical/fetch-records-abdm/05-loom.jpg new file mode 100644 index 0000000..1ce5902 Binary files /dev/null and b/static/img/flows/clinical/fetch-records-abdm/05-loom.jpg differ diff --git a/static/img/flows/clinical/fetch-records-abdm/06-loom.jpg b/static/img/flows/clinical/fetch-records-abdm/06-loom.jpg new file mode 100644 index 0000000..c6ccfc9 Binary files /dev/null and b/static/img/flows/clinical/fetch-records-abdm/06-loom.jpg differ diff --git a/static/img/flows/clinical/fetch-records-abdm/07-loom.jpg b/static/img/flows/clinical/fetch-records-abdm/07-loom.jpg new file mode 100644 index 0000000..70bd396 Binary files /dev/null and b/static/img/flows/clinical/fetch-records-abdm/07-loom.jpg differ diff --git a/static/img/flows/clinical/fetch-records-abdm/08-loom.jpg b/static/img/flows/clinical/fetch-records-abdm/08-loom.jpg new file mode 100644 index 0000000..9ece5fa Binary files /dev/null and b/static/img/flows/clinical/fetch-records-abdm/08-loom.jpg differ diff --git a/static/img/flows/clinical/manage-allergy/01-loom.jpg b/static/img/flows/clinical/manage-allergy/01-loom.jpg new file mode 100644 index 0000000..db90639 Binary files /dev/null and b/static/img/flows/clinical/manage-allergy/01-loom.jpg differ diff --git a/static/img/flows/clinical/manage-allergy/02-loom.jpg b/static/img/flows/clinical/manage-allergy/02-loom.jpg new file mode 100644 index 0000000..eb08be2 Binary files /dev/null and b/static/img/flows/clinical/manage-allergy/02-loom.jpg differ diff --git a/static/img/flows/clinical/manage-allergy/03-loom.jpg b/static/img/flows/clinical/manage-allergy/03-loom.jpg new file mode 100644 index 0000000..c89a02e Binary files /dev/null and b/static/img/flows/clinical/manage-allergy/03-loom.jpg differ diff --git a/static/img/flows/clinical/manage-allergy/04-loom.jpg b/static/img/flows/clinical/manage-allergy/04-loom.jpg new file mode 100644 index 0000000..3d539f4 Binary files /dev/null and b/static/img/flows/clinical/manage-allergy/04-loom.jpg differ diff --git a/static/img/flows/clinical/patient-consent/01-loom.jpg b/static/img/flows/clinical/patient-consent/01-loom.jpg new file mode 100644 index 0000000..70e4961 Binary files /dev/null and b/static/img/flows/clinical/patient-consent/01-loom.jpg differ diff --git a/static/img/flows/clinical/patient-consent/02-loom.jpg b/static/img/flows/clinical/patient-consent/02-loom.jpg new file mode 100644 index 0000000..75326a2 Binary files /dev/null and b/static/img/flows/clinical/patient-consent/02-loom.jpg differ diff --git a/static/img/flows/clinical/patient-consent/03-loom.jpg b/static/img/flows/clinical/patient-consent/03-loom.jpg new file mode 100644 index 0000000..5367639 Binary files /dev/null and b/static/img/flows/clinical/patient-consent/03-loom.jpg differ diff --git a/static/img/flows/clinical/patient-consent/04-loom.jpg b/static/img/flows/clinical/patient-consent/04-loom.jpg new file mode 100644 index 0000000..b892f70 Binary files /dev/null and b/static/img/flows/clinical/patient-consent/04-loom.jpg differ diff --git a/static/img/flows/clinical/patient-consent/05-loom.jpg b/static/img/flows/clinical/patient-consent/05-loom.jpg new file mode 100644 index 0000000..ff692e5 Binary files /dev/null and b/static/img/flows/clinical/patient-consent/05-loom.jpg differ diff --git a/static/img/flows/clinical/patient-notes/01-loom.jpg b/static/img/flows/clinical/patient-notes/01-loom.jpg new file mode 100644 index 0000000..477b51b Binary files /dev/null and b/static/img/flows/clinical/patient-notes/01-loom.jpg differ diff --git a/static/img/flows/clinical/patient-notes/02-loom.jpg b/static/img/flows/clinical/patient-notes/02-loom.jpg new file mode 100644 index 0000000..318cdce Binary files /dev/null and b/static/img/flows/clinical/patient-notes/02-loom.jpg differ diff --git a/static/img/flows/clinical/patient-notes/03-loom.jpg b/static/img/flows/clinical/patient-notes/03-loom.jpg new file mode 100644 index 0000000..f667d9c Binary files /dev/null and b/static/img/flows/clinical/patient-notes/03-loom.jpg differ diff --git a/static/img/flows/clinical/patient-tags/01-loom.jpg b/static/img/flows/clinical/patient-tags/01-loom.jpg new file mode 100644 index 0000000..1653ac9 Binary files /dev/null and b/static/img/flows/clinical/patient-tags/01-loom.jpg differ diff --git a/static/img/flows/clinical/patient-tags/02-loom.jpg b/static/img/flows/clinical/patient-tags/02-loom.jpg new file mode 100644 index 0000000..678d788 Binary files /dev/null and b/static/img/flows/clinical/patient-tags/02-loom.jpg differ diff --git a/static/img/flows/clinical/patient-tags/03-loom.jpg b/static/img/flows/clinical/patient-tags/03-loom.jpg new file mode 100644 index 0000000..70763c4 Binary files /dev/null and b/static/img/flows/clinical/patient-tags/03-loom.jpg differ diff --git a/static/img/flows/clinical/patient-tags/04-loom.jpg b/static/img/flows/clinical/patient-tags/04-loom.jpg new file mode 100644 index 0000000..86dd43e Binary files /dev/null and b/static/img/flows/clinical/patient-tags/04-loom.jpg differ diff --git a/static/img/flows/clinical/patient-tags/05-loom.jpg b/static/img/flows/clinical/patient-tags/05-loom.jpg new file mode 100644 index 0000000..e15e150 Binary files /dev/null and b/static/img/flows/clinical/patient-tags/05-loom.jpg differ diff --git a/static/img/flows/clinical/raise-lab-request/01-loom.jpg b/static/img/flows/clinical/raise-lab-request/01-loom.jpg new file mode 100644 index 0000000..cc24b30 Binary files /dev/null and b/static/img/flows/clinical/raise-lab-request/01-loom.jpg differ diff --git a/static/img/flows/clinical/raise-lab-request/02-loom.jpg b/static/img/flows/clinical/raise-lab-request/02-loom.jpg new file mode 100644 index 0000000..e437397 Binary files /dev/null and b/static/img/flows/clinical/raise-lab-request/02-loom.jpg differ diff --git a/static/img/flows/clinical/raise-lab-request/03-loom.jpg b/static/img/flows/clinical/raise-lab-request/03-loom.jpg new file mode 100644 index 0000000..166bda9 Binary files /dev/null and b/static/img/flows/clinical/raise-lab-request/03-loom.jpg differ diff --git a/static/img/flows/clinical/raise-lab-request/04-loom.jpg b/static/img/flows/clinical/raise-lab-request/04-loom.jpg new file mode 100644 index 0000000..bfc7a0b Binary files /dev/null and b/static/img/flows/clinical/raise-lab-request/04-loom.jpg differ diff --git a/static/img/flows/clinical/register-patient-abha/01-image-20260508-092514.png b/static/img/flows/clinical/register-patient-abha/01-image-20260508-092514.png new file mode 100644 index 0000000..cb94a7d Binary files /dev/null and b/static/img/flows/clinical/register-patient-abha/01-image-20260508-092514.png differ diff --git a/static/img/flows/clinical/register-patient-abha/02-image-20260508-092523.png b/static/img/flows/clinical/register-patient-abha/02-image-20260508-092523.png new file mode 100644 index 0000000..b03dccf Binary files /dev/null and b/static/img/flows/clinical/register-patient-abha/02-image-20260508-092523.png differ diff --git a/static/img/flows/clinical/register-patient-abha/03-loom.jpg b/static/img/flows/clinical/register-patient-abha/03-loom.jpg new file mode 100644 index 0000000..66b9a03 Binary files /dev/null and b/static/img/flows/clinical/register-patient-abha/03-loom.jpg differ diff --git a/static/img/flows/clinical/register-patient-abha/04-loom.jpg b/static/img/flows/clinical/register-patient-abha/04-loom.jpg new file mode 100644 index 0000000..76b7e4f Binary files /dev/null and b/static/img/flows/clinical/register-patient-abha/04-loom.jpg differ diff --git a/static/img/flows/clinical/register-patient-abha/05-loom.jpg b/static/img/flows/clinical/register-patient-abha/05-loom.jpg new file mode 100644 index 0000000..b5efdef Binary files /dev/null and b/static/img/flows/clinical/register-patient-abha/05-loom.jpg differ diff --git a/static/img/flows/clinical/register-patient-abha/06-loom.jpg b/static/img/flows/clinical/register-patient-abha/06-loom.jpg new file mode 100644 index 0000000..aa6794d Binary files /dev/null and b/static/img/flows/clinical/register-patient-abha/06-loom.jpg differ diff --git a/static/img/flows/clinical/register-patient-abha/07-loom.jpg b/static/img/flows/clinical/register-patient-abha/07-loom.jpg new file mode 100644 index 0000000..b8cd353 Binary files /dev/null and b/static/img/flows/clinical/register-patient-abha/07-loom.jpg differ diff --git a/static/img/flows/clinical/register-patient-abha/08-loom.jpg b/static/img/flows/clinical/register-patient-abha/08-loom.jpg new file mode 100644 index 0000000..bc205e8 Binary files /dev/null and b/static/img/flows/clinical/register-patient-abha/08-loom.jpg differ diff --git a/static/img/flows/clinical/register-patient-abha/09-loom.jpg b/static/img/flows/clinical/register-patient-abha/09-loom.jpg new file mode 100644 index 0000000..b606427 Binary files /dev/null and b/static/img/flows/clinical/register-patient-abha/09-loom.jpg differ diff --git a/static/img/flows/clinical/register-patient-abha/10-loom.jpg b/static/img/flows/clinical/register-patient-abha/10-loom.jpg new file mode 100644 index 0000000..c0d9c04 Binary files /dev/null and b/static/img/flows/clinical/register-patient-abha/10-loom.jpg differ diff --git a/static/img/flows/clinical/register-patient-manually/01-loom.jpg b/static/img/flows/clinical/register-patient-manually/01-loom.jpg new file mode 100644 index 0000000..7143fcd Binary files /dev/null and b/static/img/flows/clinical/register-patient-manually/01-loom.jpg differ diff --git a/static/img/flows/clinical/register-patient-manually/02-loom.jpg b/static/img/flows/clinical/register-patient-manually/02-loom.jpg new file mode 100644 index 0000000..88fee43 Binary files /dev/null and b/static/img/flows/clinical/register-patient-manually/02-loom.jpg differ diff --git a/static/img/flows/clinical/register-patient-manually/03-loom.jpg b/static/img/flows/clinical/register-patient-manually/03-loom.jpg new file mode 100644 index 0000000..43856e1 Binary files /dev/null and b/static/img/flows/clinical/register-patient-manually/03-loom.jpg differ diff --git a/static/img/flows/clinical/register-patient-manually/04-loom.jpg b/static/img/flows/clinical/register-patient-manually/04-loom.jpg new file mode 100644 index 0000000..301801d Binary files /dev/null and b/static/img/flows/clinical/register-patient-manually/04-loom.jpg differ diff --git a/static/img/flows/clinical/submit-clinical-forms/01-loom.jpg b/static/img/flows/clinical/submit-clinical-forms/01-loom.jpg new file mode 100644 index 0000000..7f7fae2 Binary files /dev/null and b/static/img/flows/clinical/submit-clinical-forms/01-loom.jpg differ diff --git a/static/img/flows/clinical/submit-clinical-forms/02-loom.jpg b/static/img/flows/clinical/submit-clinical-forms/02-loom.jpg new file mode 100644 index 0000000..c824440 Binary files /dev/null and b/static/img/flows/clinical/submit-clinical-forms/02-loom.jpg differ diff --git a/static/img/flows/clinical/submit-clinical-forms/03-loom.jpg b/static/img/flows/clinical/submit-clinical-forms/03-loom.jpg new file mode 100644 index 0000000..b2b886f Binary files /dev/null and b/static/img/flows/clinical/submit-clinical-forms/03-loom.jpg differ diff --git a/static/img/flows/clinical/submit-clinical-forms/04-loom.jpg b/static/img/flows/clinical/submit-clinical-forms/04-loom.jpg new file mode 100644 index 0000000..60c168b Binary files /dev/null and b/static/img/flows/clinical/submit-clinical-forms/04-loom.jpg differ diff --git a/static/img/flows/clinical/submit-clinical-forms/05-loom.jpg b/static/img/flows/clinical/submit-clinical-forms/05-loom.jpg new file mode 100644 index 0000000..8a5c1c2 Binary files /dev/null and b/static/img/flows/clinical/submit-clinical-forms/05-loom.jpg differ diff --git a/static/img/flows/clinical/treatment-summary/01-loom.jpg b/static/img/flows/clinical/treatment-summary/01-loom.jpg new file mode 100644 index 0000000..b8d866a Binary files /dev/null and b/static/img/flows/clinical/treatment-summary/01-loom.jpg differ diff --git a/static/img/flows/clinical/treatment-summary/02-loom.jpg b/static/img/flows/clinical/treatment-summary/02-loom.jpg new file mode 100644 index 0000000..d522a94 Binary files /dev/null and b/static/img/flows/clinical/treatment-summary/02-loom.jpg differ diff --git a/static/img/flows/clinical/update-diagnosis/01-loom.jpg b/static/img/flows/clinical/update-diagnosis/01-loom.jpg new file mode 100644 index 0000000..e4f36ab Binary files /dev/null and b/static/img/flows/clinical/update-diagnosis/01-loom.jpg differ diff --git a/static/img/flows/clinical/update-diagnosis/02-loom.jpg b/static/img/flows/clinical/update-diagnosis/02-loom.jpg new file mode 100644 index 0000000..abf4a3e Binary files /dev/null and b/static/img/flows/clinical/update-diagnosis/02-loom.jpg differ diff --git a/static/img/flows/clinical/update-diagnosis/03-loom.jpg b/static/img/flows/clinical/update-diagnosis/03-loom.jpg new file mode 100644 index 0000000..a53b934 Binary files /dev/null and b/static/img/flows/clinical/update-diagnosis/03-loom.jpg differ diff --git a/static/img/flows/clinical/update-symptoms/01-loom.jpg b/static/img/flows/clinical/update-symptoms/01-loom.jpg new file mode 100644 index 0000000..f16208b Binary files /dev/null and b/static/img/flows/clinical/update-symptoms/01-loom.jpg differ diff --git a/static/img/flows/clinical/update-symptoms/02-loom.jpg b/static/img/flows/clinical/update-symptoms/02-loom.jpg new file mode 100644 index 0000000..519977c Binary files /dev/null and b/static/img/flows/clinical/update-symptoms/02-loom.jpg differ diff --git a/static/img/flows/clinical/update-symptoms/03-loom.jpg b/static/img/flows/clinical/update-symptoms/03-loom.jpg new file mode 100644 index 0000000..83ce223 Binary files /dev/null and b/static/img/flows/clinical/update-symptoms/03-loom.jpg differ diff --git a/static/img/flows/clinical/upload-clinical-files/01-loom.jpg b/static/img/flows/clinical/upload-clinical-files/01-loom.jpg new file mode 100644 index 0000000..76cd53a Binary files /dev/null and b/static/img/flows/clinical/upload-clinical-files/01-loom.jpg differ diff --git a/static/img/flows/clinical/upload-clinical-files/02-loom.jpg b/static/img/flows/clinical/upload-clinical-files/02-loom.jpg new file mode 100644 index 0000000..541fc76 Binary files /dev/null and b/static/img/flows/clinical/upload-clinical-files/02-loom.jpg differ diff --git a/static/img/flows/clinical/upload-clinical-files/03-loom.jpg b/static/img/flows/clinical/upload-clinical-files/03-loom.jpg new file mode 100644 index 0000000..f451f53 Binary files /dev/null and b/static/img/flows/clinical/upload-clinical-files/03-loom.jpg differ diff --git a/static/img/flows/clinical/view-previous-encounters/01-loom.jpg b/static/img/flows/clinical/view-previous-encounters/01-loom.jpg new file mode 100644 index 0000000..cbea4e3 Binary files /dev/null and b/static/img/flows/clinical/view-previous-encounters/01-loom.jpg differ diff --git a/static/img/flows/clinical/view-previous-encounters/02-loom.jpg b/static/img/flows/clinical/view-previous-encounters/02-loom.jpg new file mode 100644 index 0000000..257b15f Binary files /dev/null and b/static/img/flows/clinical/view-previous-encounters/02-loom.jpg differ diff --git a/static/img/flows/clinical/view-previous-encounters/03-loom.jpg b/static/img/flows/clinical/view-previous-encounters/03-loom.jpg new file mode 100644 index 0000000..47582f8 Binary files /dev/null and b/static/img/flows/clinical/view-previous-encounters/03-loom.jpg differ diff --git a/static/img/flows/facility/add-locations/01-loom.jpg b/static/img/flows/facility/add-locations/01-loom.jpg new file mode 100644 index 0000000..bdf401a Binary files /dev/null and b/static/img/flows/facility/add-locations/01-loom.jpg differ diff --git a/static/img/flows/facility/add-locations/02-loom.jpg b/static/img/flows/facility/add-locations/02-loom.jpg new file mode 100644 index 0000000..c209ec2 Binary files /dev/null and b/static/img/flows/facility/add-locations/02-loom.jpg differ diff --git a/static/img/flows/facility/add-locations/03-loom.jpg b/static/img/flows/facility/add-locations/03-loom.jpg new file mode 100644 index 0000000..97f4c3b Binary files /dev/null and b/static/img/flows/facility/add-locations/03-loom.jpg differ diff --git a/static/img/flows/facility/add-locations/04-loom.jpg b/static/img/flows/facility/add-locations/04-loom.jpg new file mode 100644 index 0000000..ffb9ffa Binary files /dev/null and b/static/img/flows/facility/add-locations/04-loom.jpg differ diff --git a/static/img/flows/facility/add-locations/05-loom.jpg b/static/img/flows/facility/add-locations/05-loom.jpg new file mode 100644 index 0000000..b0d9fbc Binary files /dev/null and b/static/img/flows/facility/add-locations/05-loom.jpg differ diff --git a/static/img/flows/facility/add-locations/06-loom.jpg b/static/img/flows/facility/add-locations/06-loom.jpg new file mode 100644 index 0000000..6bfd7d5 Binary files /dev/null and b/static/img/flows/facility/add-locations/06-loom.jpg differ diff --git a/static/img/flows/facility/add-locations/07-loom.jpg b/static/img/flows/facility/add-locations/07-loom.jpg new file mode 100644 index 0000000..6229515 Binary files /dev/null and b/static/img/flows/facility/add-locations/07-loom.jpg differ diff --git a/static/img/flows/facility/add-locations/08-loom.jpg b/static/img/flows/facility/add-locations/08-loom.jpg new file mode 100644 index 0000000..a59b35a Binary files /dev/null and b/static/img/flows/facility/add-locations/08-loom.jpg differ diff --git a/static/img/flows/facility/add-locations/09-loom.jpg b/static/img/flows/facility/add-locations/09-loom.jpg new file mode 100644 index 0000000..2bb2a97 Binary files /dev/null and b/static/img/flows/facility/add-locations/09-loom.jpg differ diff --git a/static/img/flows/facility/add-locations/10-loom.jpg b/static/img/flows/facility/add-locations/10-loom.jpg new file mode 100644 index 0000000..f2acc28 Binary files /dev/null and b/static/img/flows/facility/add-locations/10-loom.jpg differ diff --git a/static/img/flows/facility/add-locations/11-loom.jpg b/static/img/flows/facility/add-locations/11-loom.jpg new file mode 100644 index 0000000..064790d Binary files /dev/null and b/static/img/flows/facility/add-locations/11-loom.jpg differ diff --git a/static/img/flows/facility/add-locations/12-loom.jpg b/static/img/flows/facility/add-locations/12-loom.jpg new file mode 100644 index 0000000..c7b8b2f Binary files /dev/null and b/static/img/flows/facility/add-locations/12-loom.jpg differ diff --git a/static/img/flows/facility/add-locations/13-loom.jpg b/static/img/flows/facility/add-locations/13-loom.jpg new file mode 100644 index 0000000..b408eef Binary files /dev/null and b/static/img/flows/facility/add-locations/13-loom.jpg differ diff --git a/static/img/flows/facility/assign-bed/01-loom.jpg b/static/img/flows/facility/assign-bed/01-loom.jpg new file mode 100644 index 0000000..bc380bc Binary files /dev/null and b/static/img/flows/facility/assign-bed/01-loom.jpg differ diff --git a/static/img/flows/facility/assign-bed/02-loom.jpg b/static/img/flows/facility/assign-bed/02-loom.jpg new file mode 100644 index 0000000..2b300f5 Binary files /dev/null and b/static/img/flows/facility/assign-bed/02-loom.jpg differ diff --git a/static/img/flows/facility/assign-bed/03-loom.jpg b/static/img/flows/facility/assign-bed/03-loom.jpg new file mode 100644 index 0000000..9d7fbe3 Binary files /dev/null and b/static/img/flows/facility/assign-bed/03-loom.jpg differ diff --git a/static/img/flows/facility/create-beds/01-loom.jpg b/static/img/flows/facility/create-beds/01-loom.jpg new file mode 100644 index 0000000..71b306b Binary files /dev/null and b/static/img/flows/facility/create-beds/01-loom.jpg differ diff --git a/static/img/flows/facility/create-beds/02-loom.jpg b/static/img/flows/facility/create-beds/02-loom.jpg new file mode 100644 index 0000000..f67a355 Binary files /dev/null and b/static/img/flows/facility/create-beds/02-loom.jpg differ diff --git a/static/img/flows/facility/create-beds/03-loom.jpg b/static/img/flows/facility/create-beds/03-loom.jpg new file mode 100644 index 0000000..7b07fe4 Binary files /dev/null and b/static/img/flows/facility/create-beds/03-loom.jpg differ diff --git a/static/img/flows/facility/create-beds/04-loom.jpg b/static/img/flows/facility/create-beds/04-loom.jpg new file mode 100644 index 0000000..9ded730 Binary files /dev/null and b/static/img/flows/facility/create-beds/04-loom.jpg differ diff --git a/static/img/flows/facility/create-department/01-loom.jpg b/static/img/flows/facility/create-department/01-loom.jpg new file mode 100644 index 0000000..f1b9bc1 Binary files /dev/null and b/static/img/flows/facility/create-department/01-loom.jpg differ diff --git a/static/img/flows/facility/create-department/02-loom.jpg b/static/img/flows/facility/create-department/02-loom.jpg new file mode 100644 index 0000000..79796f1 Binary files /dev/null and b/static/img/flows/facility/create-department/02-loom.jpg differ diff --git a/static/img/flows/facility/link-departments-location/01-loom.jpg b/static/img/flows/facility/link-departments-location/01-loom.jpg new file mode 100644 index 0000000..d3c1ec5 Binary files /dev/null and b/static/img/flows/facility/link-departments-location/01-loom.jpg differ diff --git a/static/img/flows/facility/link-departments-location/02-loom.jpg b/static/img/flows/facility/link-departments-location/02-loom.jpg new file mode 100644 index 0000000..a091f1f Binary files /dev/null and b/static/img/flows/facility/link-departments-location/02-loom.jpg differ diff --git a/static/img/flows/facility/link-departments-location/03-loom.jpg b/static/img/flows/facility/link-departments-location/03-loom.jpg new file mode 100644 index 0000000..feb5acd Binary files /dev/null and b/static/img/flows/facility/link-departments-location/03-loom.jpg differ diff --git a/static/img/flows/facility/link-hfid-abdm/01-loom.jpg b/static/img/flows/facility/link-hfid-abdm/01-loom.jpg new file mode 100644 index 0000000..abe9f74 Binary files /dev/null and b/static/img/flows/facility/link-hfid-abdm/01-loom.jpg differ diff --git a/static/img/flows/facility/link-hfid-abdm/02-loom.jpg b/static/img/flows/facility/link-hfid-abdm/02-loom.jpg new file mode 100644 index 0000000..36b5d24 Binary files /dev/null and b/static/img/flows/facility/link-hfid-abdm/02-loom.jpg differ diff --git a/static/img/flows/laboratory/collect-specimen/01-loom.jpg b/static/img/flows/laboratory/collect-specimen/01-loom.jpg new file mode 100644 index 0000000..1b1cbb7 Binary files /dev/null and b/static/img/flows/laboratory/collect-specimen/01-loom.jpg differ diff --git a/static/img/flows/laboratory/collect-specimen/02-loom.jpg b/static/img/flows/laboratory/collect-specimen/02-loom.jpg new file mode 100644 index 0000000..f698e04 Binary files /dev/null and b/static/img/flows/laboratory/collect-specimen/02-loom.jpg differ diff --git a/static/img/flows/laboratory/enter-lab-results/01-loom.jpg b/static/img/flows/laboratory/enter-lab-results/01-loom.jpg new file mode 100644 index 0000000..4f28606 Binary files /dev/null and b/static/img/flows/laboratory/enter-lab-results/01-loom.jpg differ diff --git a/static/img/flows/laboratory/enter-lab-results/02-loom.jpg b/static/img/flows/laboratory/enter-lab-results/02-loom.jpg new file mode 100644 index 0000000..438c2e8 Binary files /dev/null and b/static/img/flows/laboratory/enter-lab-results/02-loom.jpg differ diff --git a/static/img/flows/laboratory/publish-lab-report/01-loom.jpg b/static/img/flows/laboratory/publish-lab-report/01-loom.jpg new file mode 100644 index 0000000..7c887e2 Binary files /dev/null and b/static/img/flows/laboratory/publish-lab-report/01-loom.jpg differ diff --git a/static/img/flows/laboratory/publish-lab-report/02-loom.jpg b/static/img/flows/laboratory/publish-lab-report/02-loom.jpg new file mode 100644 index 0000000..cc24b30 Binary files /dev/null and b/static/img/flows/laboratory/publish-lab-report/02-loom.jpg differ diff --git a/static/img/flows/laboratory/review-lab-request/01-loom.jpg b/static/img/flows/laboratory/review-lab-request/01-loom.jpg new file mode 100644 index 0000000..44bc514 Binary files /dev/null and b/static/img/flows/laboratory/review-lab-request/01-loom.jpg differ diff --git a/static/img/flows/laboratory/review-lab-request/02-loom.jpg b/static/img/flows/laboratory/review-lab-request/02-loom.jpg new file mode 100644 index 0000000..d188c3a Binary files /dev/null and b/static/img/flows/laboratory/review-lab-request/02-loom.jpg differ diff --git a/static/img/flows/medications/administer-medication/01-loom.jpg b/static/img/flows/medications/administer-medication/01-loom.jpg new file mode 100644 index 0000000..7e734d2 Binary files /dev/null and b/static/img/flows/medications/administer-medication/01-loom.jpg differ diff --git a/static/img/flows/medications/administer-medication/02-loom.jpg b/static/img/flows/medications/administer-medication/02-loom.jpg new file mode 100644 index 0000000..95bc241 Binary files /dev/null and b/static/img/flows/medications/administer-medication/02-loom.jpg differ diff --git a/static/img/flows/medications/administer-medication/03-loom.jpg b/static/img/flows/medications/administer-medication/03-loom.jpg new file mode 100644 index 0000000..9e8db41 Binary files /dev/null and b/static/img/flows/medications/administer-medication/03-loom.jpg differ diff --git a/static/img/flows/medications/administer-medication/04-loom.jpg b/static/img/flows/medications/administer-medication/04-loom.jpg new file mode 100644 index 0000000..2f5ad49 Binary files /dev/null and b/static/img/flows/medications/administer-medication/04-loom.jpg differ diff --git a/static/img/flows/medications/dispense-medication/01-loom.jpg b/static/img/flows/medications/dispense-medication/01-loom.jpg new file mode 100644 index 0000000..58eefff Binary files /dev/null and b/static/img/flows/medications/dispense-medication/01-loom.jpg differ diff --git a/static/img/flows/medications/dispense-medication/02-loom.jpg b/static/img/flows/medications/dispense-medication/02-loom.jpg new file mode 100644 index 0000000..7ef00e8 Binary files /dev/null and b/static/img/flows/medications/dispense-medication/02-loom.jpg differ diff --git a/static/img/flows/medications/dispense-medication/03-loom.jpg b/static/img/flows/medications/dispense-medication/03-loom.jpg new file mode 100644 index 0000000..69ae5ae Binary files /dev/null and b/static/img/flows/medications/dispense-medication/03-loom.jpg differ diff --git a/static/img/flows/medications/dispense-medication/04-loom.jpg b/static/img/flows/medications/dispense-medication/04-loom.jpg new file mode 100644 index 0000000..edfce22 Binary files /dev/null and b/static/img/flows/medications/dispense-medication/04-loom.jpg differ diff --git a/static/img/flows/medications/dispense-medication/05-loom.jpg b/static/img/flows/medications/dispense-medication/05-loom.jpg new file mode 100644 index 0000000..932fb58 Binary files /dev/null and b/static/img/flows/medications/dispense-medication/05-loom.jpg differ diff --git a/static/img/flows/medications/dispense-medication/06-loom.jpg b/static/img/flows/medications/dispense-medication/06-loom.jpg new file mode 100644 index 0000000..45a71c9 Binary files /dev/null and b/static/img/flows/medications/dispense-medication/06-loom.jpg differ diff --git a/static/img/flows/medications/dispense-medication/07-loom.jpg b/static/img/flows/medications/dispense-medication/07-loom.jpg new file mode 100644 index 0000000..2f03e3d Binary files /dev/null and b/static/img/flows/medications/dispense-medication/07-loom.jpg differ diff --git a/static/img/flows/medications/dispense-medication/08-loom.jpg b/static/img/flows/medications/dispense-medication/08-loom.jpg new file mode 100644 index 0000000..fa45095 Binary files /dev/null and b/static/img/flows/medications/dispense-medication/08-loom.jpg differ diff --git a/static/img/flows/medications/prescribe-medication/01-loom.jpg b/static/img/flows/medications/prescribe-medication/01-loom.jpg new file mode 100644 index 0000000..2abab43 Binary files /dev/null and b/static/img/flows/medications/prescribe-medication/01-loom.jpg differ diff --git a/static/img/flows/medications/prescribe-medication/02-loom.jpg b/static/img/flows/medications/prescribe-medication/02-loom.jpg new file mode 100644 index 0000000..2fb1f16 Binary files /dev/null and b/static/img/flows/medications/prescribe-medication/02-loom.jpg differ diff --git a/static/img/flows/scheduling/create-healthcare-service/01-loom.jpg b/static/img/flows/scheduling/create-healthcare-service/01-loom.jpg new file mode 100644 index 0000000..1e361e7 Binary files /dev/null and b/static/img/flows/scheduling/create-healthcare-service/01-loom.jpg differ diff --git a/static/img/flows/scheduling/create-healthcare-service/02-loom.jpg b/static/img/flows/scheduling/create-healthcare-service/02-loom.jpg new file mode 100644 index 0000000..fc1f172 Binary files /dev/null and b/static/img/flows/scheduling/create-healthcare-service/02-loom.jpg differ diff --git a/static/img/flows/scheduling/create-healthcare-service/03-loom.jpg b/static/img/flows/scheduling/create-healthcare-service/03-loom.jpg new file mode 100644 index 0000000..3596945 Binary files /dev/null and b/static/img/flows/scheduling/create-healthcare-service/03-loom.jpg differ diff --git a/static/img/flows/scheduling/link-charge-item/01-loom.jpg b/static/img/flows/scheduling/link-charge-item/01-loom.jpg new file mode 100644 index 0000000..bdf51c6 Binary files /dev/null and b/static/img/flows/scheduling/link-charge-item/01-loom.jpg differ diff --git a/static/img/flows/scheduling/link-charge-item/02-loom.jpg b/static/img/flows/scheduling/link-charge-item/02-loom.jpg new file mode 100644 index 0000000..18d94c9 Binary files /dev/null and b/static/img/flows/scheduling/link-charge-item/02-loom.jpg differ diff --git a/static/img/flows/scheduling/link-charge-item/03-loom.jpg b/static/img/flows/scheduling/link-charge-item/03-loom.jpg new file mode 100644 index 0000000..5a0fa9c Binary files /dev/null and b/static/img/flows/scheduling/link-charge-item/03-loom.jpg differ diff --git a/static/img/flows/scheduling/link-charge-item/04-loom.jpg b/static/img/flows/scheduling/link-charge-item/04-loom.jpg new file mode 100644 index 0000000..b0bf1cc Binary files /dev/null and b/static/img/flows/scheduling/link-charge-item/04-loom.jpg differ diff --git a/static/img/flows/scheduling/manage-appointment/01-loom.jpg b/static/img/flows/scheduling/manage-appointment/01-loom.jpg new file mode 100644 index 0000000..75c7aca Binary files /dev/null and b/static/img/flows/scheduling/manage-appointment/01-loom.jpg differ diff --git a/static/img/flows/scheduling/manage-appointment/02-loom.jpg b/static/img/flows/scheduling/manage-appointment/02-loom.jpg new file mode 100644 index 0000000..3541662 Binary files /dev/null and b/static/img/flows/scheduling/manage-appointment/02-loom.jpg differ diff --git a/static/img/flows/scheduling/manage-appointment/03-loom.jpg b/static/img/flows/scheduling/manage-appointment/03-loom.jpg new file mode 100644 index 0000000..677c7c8 Binary files /dev/null and b/static/img/flows/scheduling/manage-appointment/03-loom.jpg differ diff --git a/static/img/flows/scheduling/manage-appointment/04-loom.jpg b/static/img/flows/scheduling/manage-appointment/04-loom.jpg new file mode 100644 index 0000000..b78038f Binary files /dev/null and b/static/img/flows/scheduling/manage-appointment/04-loom.jpg differ diff --git a/static/img/flows/scheduling/manage-appointment/05-loom.jpg b/static/img/flows/scheduling/manage-appointment/05-loom.jpg new file mode 100644 index 0000000..5fe43f1 Binary files /dev/null and b/static/img/flows/scheduling/manage-appointment/05-loom.jpg differ diff --git a/static/img/flows/scheduling/schedule-appointment/01-loom.jpg b/static/img/flows/scheduling/schedule-appointment/01-loom.jpg new file mode 100644 index 0000000..9d1fdc5 Binary files /dev/null and b/static/img/flows/scheduling/schedule-appointment/01-loom.jpg differ diff --git a/static/img/flows/scheduling/schedule-appointment/02-loom.jpg b/static/img/flows/scheduling/schedule-appointment/02-loom.jpg new file mode 100644 index 0000000..cdbc29c Binary files /dev/null and b/static/img/flows/scheduling/schedule-appointment/02-loom.jpg differ diff --git a/static/img/flows/supply/product-knowledge/01-screenshot-2026-06-17-at-3.05.38-pm.png b/static/img/flows/supply/product-knowledge/01-screenshot-2026-06-17-at-3.05.38-pm.png new file mode 100644 index 0000000..187212f Binary files /dev/null and b/static/img/flows/supply/product-knowledge/01-screenshot-2026-06-17-at-3.05.38-pm.png differ diff --git a/static/img/flows/supply/product-knowledge/02-screenshot-2026-06-17-at-3.03.21-pm.png b/static/img/flows/supply/product-knowledge/02-screenshot-2026-06-17-at-3.03.21-pm.png new file mode 100644 index 0000000..4aa316c Binary files /dev/null and b/static/img/flows/supply/product-knowledge/02-screenshot-2026-06-17-at-3.03.21-pm.png differ diff --git a/static/img/flows/supply/product-knowledge/03-screenshot-2026-06-17-at-2.56.29-pm.png b/static/img/flows/supply/product-knowledge/03-screenshot-2026-06-17-at-2.56.29-pm.png new file mode 100644 index 0000000..6d424c0 Binary files /dev/null and b/static/img/flows/supply/product-knowledge/03-screenshot-2026-06-17-at-2.56.29-pm.png differ diff --git a/static/img/flows/supply/product-knowledge/04-screenshot-2026-06-17-at-2.38.40-pm.png b/static/img/flows/supply/product-knowledge/04-screenshot-2026-06-17-at-2.38.40-pm.png new file mode 100644 index 0000000..06faa9b Binary files /dev/null and b/static/img/flows/supply/product-knowledge/04-screenshot-2026-06-17-at-2.38.40-pm.png differ diff --git a/static/img/flows/supply/product-knowledge/05-screenshot-2026-06-17-at-2.34.16-pm.png b/static/img/flows/supply/product-knowledge/05-screenshot-2026-06-17-at-2.34.16-pm.png new file mode 100644 index 0000000..e3e6599 Binary files /dev/null and b/static/img/flows/supply/product-knowledge/05-screenshot-2026-06-17-at-2.34.16-pm.png differ diff --git a/static/img/flows/supply/product-knowledge/06-screenshot-2026-06-17-at-2.27.03-pm.png b/static/img/flows/supply/product-knowledge/06-screenshot-2026-06-17-at-2.27.03-pm.png new file mode 100644 index 0000000..15c2ef3 Binary files /dev/null and b/static/img/flows/supply/product-knowledge/06-screenshot-2026-06-17-at-2.27.03-pm.png differ diff --git a/static/img/flows/supply/product-knowledge/07-screenshot-2026-06-17-at-2.23.52-pm.png b/static/img/flows/supply/product-knowledge/07-screenshot-2026-06-17-at-2.23.52-pm.png new file mode 100644 index 0000000..dd12d6b Binary files /dev/null and b/static/img/flows/supply/product-knowledge/07-screenshot-2026-06-17-at-2.23.52-pm.png differ diff --git a/static/img/flows/supply/product-knowledge/08-screenshot-2026-06-17-at-2.12.21-pm.png b/static/img/flows/supply/product-knowledge/08-screenshot-2026-06-17-at-2.12.21-pm.png new file mode 100644 index 0000000..776edfb Binary files /dev/null and b/static/img/flows/supply/product-knowledge/08-screenshot-2026-06-17-at-2.12.21-pm.png differ diff --git a/static/img/flows/supply/product-knowledge/09-loom.jpg b/static/img/flows/supply/product-knowledge/09-loom.jpg new file mode 100644 index 0000000..2362013 Binary files /dev/null and b/static/img/flows/supply/product-knowledge/09-loom.jpg differ diff --git a/static/img/flows/supply/resource-request/01-screenshot-2026-06-17-at-4.33.18-pm.png b/static/img/flows/supply/resource-request/01-screenshot-2026-06-17-at-4.33.18-pm.png new file mode 100644 index 0000000..f7fb17d Binary files /dev/null and b/static/img/flows/supply/resource-request/01-screenshot-2026-06-17-at-4.33.18-pm.png differ diff --git a/static/img/flows/supply/resource-request/02-ad2ebde86c4a423eaedd14ffedc33f03-workflows_screenshot-true.jpg b/static/img/flows/supply/resource-request/02-ad2ebde86c4a423eaedd14ffedc33f03-workflows_screenshot-true.jpg new file mode 100644 index 0000000..84743e8 Binary files /dev/null and b/static/img/flows/supply/resource-request/02-ad2ebde86c4a423eaedd14ffedc33f03-workflows_screenshot-true.jpg differ diff --git a/static/img/flows/supply/resource-request/03-ca519c9804a746dcb692b23fd1ceb54d-workflows_screenshot-true.jpg b/static/img/flows/supply/resource-request/03-ca519c9804a746dcb692b23fd1ceb54d-workflows_screenshot-true.jpg new file mode 100644 index 0000000..c18492a Binary files /dev/null and b/static/img/flows/supply/resource-request/03-ca519c9804a746dcb692b23fd1ceb54d-workflows_screenshot-true.jpg differ diff --git a/static/img/flows/supply/resource-request/04-fa4f2eff4fbe4ba7940a9ce4128e4c3a-workflows_screenshot-true.jpg b/static/img/flows/supply/resource-request/04-fa4f2eff4fbe4ba7940a9ce4128e4c3a-workflows_screenshot-true.jpg new file mode 100644 index 0000000..05c4bdf Binary files /dev/null and b/static/img/flows/supply/resource-request/04-fa4f2eff4fbe4ba7940a9ce4128e4c3a-workflows_screenshot-true.jpg differ diff --git a/static/img/flows/supply/resource-request/05-13c662a3601c46bea075aa4d11819784-workflows_screenshot-true.jpg b/static/img/flows/supply/resource-request/05-13c662a3601c46bea075aa4d11819784-workflows_screenshot-true.jpg new file mode 100644 index 0000000..af7c46e Binary files /dev/null and b/static/img/flows/supply/resource-request/05-13c662a3601c46bea075aa4d11819784-workflows_screenshot-true.jpg differ diff --git a/static/img/flows/supply/resource-request/06-ac14b889e2cc43acaa578dbde4e8d8ae-workflows_screenshot-true.jpg b/static/img/flows/supply/resource-request/06-ac14b889e2cc43acaa578dbde4e8d8ae-workflows_screenshot-true.jpg new file mode 100644 index 0000000..0b6f736 Binary files /dev/null and b/static/img/flows/supply/resource-request/06-ac14b889e2cc43acaa578dbde4e8d8ae-workflows_screenshot-true.jpg differ diff --git a/static/img/flows/supply/resource-request/07-loom.jpg b/static/img/flows/supply/resource-request/07-loom.jpg new file mode 100644 index 0000000..9b412a9 Binary files /dev/null and b/static/img/flows/supply/resource-request/07-loom.jpg differ diff --git a/static/img/flows/supply/resource-request/08-loom.jpg b/static/img/flows/supply/resource-request/08-loom.jpg new file mode 100644 index 0000000..da0e62b Binary files /dev/null and b/static/img/flows/supply/resource-request/08-loom.jpg differ diff --git a/static/img/flows/supply/resource-request/09-loom.jpg b/static/img/flows/supply/resource-request/09-loom.jpg new file mode 100644 index 0000000..9b3979e Binary files /dev/null and b/static/img/flows/supply/resource-request/09-loom.jpg differ diff --git a/static/img/playbooks/hmis/billing-and-payment/01-loom.jpg b/static/img/playbooks/hmis/billing-and-payment/01-loom.jpg new file mode 100644 index 0000000..a0d9615 Binary files /dev/null and b/static/img/playbooks/hmis/billing-and-payment/01-loom.jpg differ diff --git a/static/img/playbooks/hmis/billing-and-payment/02-loom.jpg b/static/img/playbooks/hmis/billing-and-payment/02-loom.jpg new file mode 100644 index 0000000..7ef1ac5 Binary files /dev/null and b/static/img/playbooks/hmis/billing-and-payment/02-loom.jpg differ diff --git a/static/img/playbooks/hmis/billing-and-payment/03-loom.jpg b/static/img/playbooks/hmis/billing-and-payment/03-loom.jpg new file mode 100644 index 0000000..9d47818 Binary files /dev/null and b/static/img/playbooks/hmis/billing-and-payment/03-loom.jpg differ diff --git a/static/img/playbooks/hmis/billing-and-payment/04-loom.jpg b/static/img/playbooks/hmis/billing-and-payment/04-loom.jpg new file mode 100644 index 0000000..d696f67 Binary files /dev/null and b/static/img/playbooks/hmis/billing-and-payment/04-loom.jpg differ diff --git a/static/img/playbooks/hmis/billing-and-payment/05-loom.jpg b/static/img/playbooks/hmis/billing-and-payment/05-loom.jpg new file mode 100644 index 0000000..1cb90ce Binary files /dev/null and b/static/img/playbooks/hmis/billing-and-payment/05-loom.jpg differ diff --git a/static/img/playbooks/hmis/billing-and-payment/06-loom.jpg b/static/img/playbooks/hmis/billing-and-payment/06-loom.jpg new file mode 100644 index 0000000..dd06881 Binary files /dev/null and b/static/img/playbooks/hmis/billing-and-payment/06-loom.jpg differ diff --git a/static/img/playbooks/hmis/billing-and-payment/07-loom.jpg b/static/img/playbooks/hmis/billing-and-payment/07-loom.jpg new file mode 100644 index 0000000..308d6f0 Binary files /dev/null and b/static/img/playbooks/hmis/billing-and-payment/07-loom.jpg differ diff --git a/static/img/playbooks/hmis/facility-setup/01-loom.jpg b/static/img/playbooks/hmis/facility-setup/01-loom.jpg new file mode 100644 index 0000000..e33570b Binary files /dev/null and b/static/img/playbooks/hmis/facility-setup/01-loom.jpg differ diff --git a/static/img/playbooks/hmis/facility-setup/02-loom.jpg b/static/img/playbooks/hmis/facility-setup/02-loom.jpg new file mode 100644 index 0000000..22e2149 Binary files /dev/null and b/static/img/playbooks/hmis/facility-setup/02-loom.jpg differ diff --git a/static/img/playbooks/hmis/facility-setup/03-loom.jpg b/static/img/playbooks/hmis/facility-setup/03-loom.jpg new file mode 100644 index 0000000..3e0b797 Binary files /dev/null and b/static/img/playbooks/hmis/facility-setup/03-loom.jpg differ diff --git a/static/img/playbooks/hmis/facility-setup/04-loom.jpg b/static/img/playbooks/hmis/facility-setup/04-loom.jpg new file mode 100644 index 0000000..6d46ae7 Binary files /dev/null and b/static/img/playbooks/hmis/facility-setup/04-loom.jpg differ diff --git a/static/img/playbooks/hmis/facility-setup/05-loom.jpg b/static/img/playbooks/hmis/facility-setup/05-loom.jpg new file mode 100644 index 0000000..8001d83 Binary files /dev/null and b/static/img/playbooks/hmis/facility-setup/05-loom.jpg differ diff --git a/static/img/playbooks/hmis/ip-rounds/01-loom.jpg b/static/img/playbooks/hmis/ip-rounds/01-loom.jpg new file mode 100644 index 0000000..18c4cf9 Binary files /dev/null and b/static/img/playbooks/hmis/ip-rounds/01-loom.jpg differ diff --git a/static/img/playbooks/hmis/ip-rounds/02-loom.jpg b/static/img/playbooks/hmis/ip-rounds/02-loom.jpg new file mode 100644 index 0000000..eb89d11 Binary files /dev/null and b/static/img/playbooks/hmis/ip-rounds/02-loom.jpg differ diff --git a/static/img/playbooks/hmis/ip-rounds/03-loom.jpg b/static/img/playbooks/hmis/ip-rounds/03-loom.jpg new file mode 100644 index 0000000..b8f7509 Binary files /dev/null and b/static/img/playbooks/hmis/ip-rounds/03-loom.jpg differ diff --git a/static/img/playbooks/hmis/ip-rounds/04-loom.jpg b/static/img/playbooks/hmis/ip-rounds/04-loom.jpg new file mode 100644 index 0000000..5ac877a Binary files /dev/null and b/static/img/playbooks/hmis/ip-rounds/04-loom.jpg differ diff --git a/static/img/playbooks/hmis/lab-diagnostics/01-loom.jpg b/static/img/playbooks/hmis/lab-diagnostics/01-loom.jpg new file mode 100644 index 0000000..44bc514 Binary files /dev/null and b/static/img/playbooks/hmis/lab-diagnostics/01-loom.jpg differ diff --git a/static/img/playbooks/hmis/lab-diagnostics/02-loom.jpg b/static/img/playbooks/hmis/lab-diagnostics/02-loom.jpg new file mode 100644 index 0000000..d188c3a Binary files /dev/null and b/static/img/playbooks/hmis/lab-diagnostics/02-loom.jpg differ diff --git a/static/img/playbooks/hmis/lab-diagnostics/03-loom.jpg b/static/img/playbooks/hmis/lab-diagnostics/03-loom.jpg new file mode 100644 index 0000000..1b1cbb7 Binary files /dev/null and b/static/img/playbooks/hmis/lab-diagnostics/03-loom.jpg differ diff --git a/static/img/playbooks/hmis/lab-diagnostics/04-loom.jpg b/static/img/playbooks/hmis/lab-diagnostics/04-loom.jpg new file mode 100644 index 0000000..f698e04 Binary files /dev/null and b/static/img/playbooks/hmis/lab-diagnostics/04-loom.jpg differ diff --git a/static/img/playbooks/hmis/lab-diagnostics/05-loom.jpg b/static/img/playbooks/hmis/lab-diagnostics/05-loom.jpg new file mode 100644 index 0000000..4f28606 Binary files /dev/null and b/static/img/playbooks/hmis/lab-diagnostics/05-loom.jpg differ diff --git a/static/img/playbooks/hmis/lab-diagnostics/06-loom.jpg b/static/img/playbooks/hmis/lab-diagnostics/06-loom.jpg new file mode 100644 index 0000000..438c2e8 Binary files /dev/null and b/static/img/playbooks/hmis/lab-diagnostics/06-loom.jpg differ diff --git a/static/img/playbooks/hmis/lab-diagnostics/07-loom.jpg b/static/img/playbooks/hmis/lab-diagnostics/07-loom.jpg new file mode 100644 index 0000000..7c887e2 Binary files /dev/null and b/static/img/playbooks/hmis/lab-diagnostics/07-loom.jpg differ diff --git a/static/img/playbooks/hmis/lab-diagnostics/08-loom.jpg b/static/img/playbooks/hmis/lab-diagnostics/08-loom.jpg new file mode 100644 index 0000000..cc24b30 Binary files /dev/null and b/static/img/playbooks/hmis/lab-diagnostics/08-loom.jpg differ diff --git a/static/img/playbooks/hmis/lab-diagnostics/09-loom.jpg b/static/img/playbooks/hmis/lab-diagnostics/09-loom.jpg new file mode 100644 index 0000000..e437397 Binary files /dev/null and b/static/img/playbooks/hmis/lab-diagnostics/09-loom.jpg differ diff --git a/static/img/playbooks/hmis/lab-diagnostics/10-loom.jpg b/static/img/playbooks/hmis/lab-diagnostics/10-loom.jpg new file mode 100644 index 0000000..166bda9 Binary files /dev/null and b/static/img/playbooks/hmis/lab-diagnostics/10-loom.jpg differ diff --git a/static/img/playbooks/hmis/lab-diagnostics/11-loom.jpg b/static/img/playbooks/hmis/lab-diagnostics/11-loom.jpg new file mode 100644 index 0000000..bfc7a0b Binary files /dev/null and b/static/img/playbooks/hmis/lab-diagnostics/11-loom.jpg differ diff --git a/static/img/playbooks/hmis/op-consultation/01-loom.jpg b/static/img/playbooks/hmis/op-consultation/01-loom.jpg new file mode 100644 index 0000000..18c4cf9 Binary files /dev/null and b/static/img/playbooks/hmis/op-consultation/01-loom.jpg differ diff --git a/static/img/playbooks/hmis/op-consultation/02-loom.jpg b/static/img/playbooks/hmis/op-consultation/02-loom.jpg new file mode 100644 index 0000000..eb89d11 Binary files /dev/null and b/static/img/playbooks/hmis/op-consultation/02-loom.jpg differ diff --git a/static/img/playbooks/hmis/op-consultation/03-loom.jpg b/static/img/playbooks/hmis/op-consultation/03-loom.jpg new file mode 100644 index 0000000..b8f7509 Binary files /dev/null and b/static/img/playbooks/hmis/op-consultation/03-loom.jpg differ diff --git a/static/img/playbooks/hmis/op-consultation/04-loom.jpg b/static/img/playbooks/hmis/op-consultation/04-loom.jpg new file mode 100644 index 0000000..5ac877a Binary files /dev/null and b/static/img/playbooks/hmis/op-consultation/04-loom.jpg differ diff --git a/static/img/playbooks/hmis/pharmacy-dispensing/01-loom.jpg b/static/img/playbooks/hmis/pharmacy-dispensing/01-loom.jpg new file mode 100644 index 0000000..58eefff Binary files /dev/null and b/static/img/playbooks/hmis/pharmacy-dispensing/01-loom.jpg differ diff --git a/static/img/playbooks/hmis/pharmacy-dispensing/02-loom.jpg b/static/img/playbooks/hmis/pharmacy-dispensing/02-loom.jpg new file mode 100644 index 0000000..7ef00e8 Binary files /dev/null and b/static/img/playbooks/hmis/pharmacy-dispensing/02-loom.jpg differ diff --git a/static/img/playbooks/hmis/pharmacy-dispensing/03-loom.jpg b/static/img/playbooks/hmis/pharmacy-dispensing/03-loom.jpg new file mode 100644 index 0000000..69ae5ae Binary files /dev/null and b/static/img/playbooks/hmis/pharmacy-dispensing/03-loom.jpg differ diff --git a/static/img/playbooks/hmis/pharmacy-dispensing/04-loom.jpg b/static/img/playbooks/hmis/pharmacy-dispensing/04-loom.jpg new file mode 100644 index 0000000..edfce22 Binary files /dev/null and b/static/img/playbooks/hmis/pharmacy-dispensing/04-loom.jpg differ diff --git a/static/img/playbooks/hmis/pharmacy-dispensing/05-loom.jpg b/static/img/playbooks/hmis/pharmacy-dispensing/05-loom.jpg new file mode 100644 index 0000000..932fb58 Binary files /dev/null and b/static/img/playbooks/hmis/pharmacy-dispensing/05-loom.jpg differ diff --git a/static/img/playbooks/hmis/pharmacy-dispensing/06-loom.jpg b/static/img/playbooks/hmis/pharmacy-dispensing/06-loom.jpg new file mode 100644 index 0000000..45a71c9 Binary files /dev/null and b/static/img/playbooks/hmis/pharmacy-dispensing/06-loom.jpg differ diff --git a/static/img/playbooks/hmis/pharmacy-dispensing/07-loom.jpg b/static/img/playbooks/hmis/pharmacy-dispensing/07-loom.jpg new file mode 100644 index 0000000..2f03e3d Binary files /dev/null and b/static/img/playbooks/hmis/pharmacy-dispensing/07-loom.jpg differ diff --git a/static/img/playbooks/hmis/pharmacy-dispensing/08-loom.jpg b/static/img/playbooks/hmis/pharmacy-dispensing/08-loom.jpg new file mode 100644 index 0000000..fa45095 Binary files /dev/null and b/static/img/playbooks/hmis/pharmacy-dispensing/08-loom.jpg differ diff --git a/versioned_docs/version-3.1/flows/access-governance/_category_.json b/versioned_docs/version-3.1/flows/access-governance/_category_.json new file mode 100644 index 0000000..4c7812e --- /dev/null +++ b/versioned_docs/version-3.1/flows/access-governance/_category_.json @@ -0,0 +1,5 @@ +{ + "label": "Access governance", + "position": 6, + "key": "access-governance-flows" +} diff --git a/versioned_docs/version-3.1/flows/access-governance/assign-user-to-patient.mdx b/versioned_docs/version-3.1/flows/access-governance/assign-user-to-patient.mdx new file mode 100644 index 0000000..5dc05df --- /dev/null +++ b/versioned_docs/version-3.1/flows/access-governance/assign-user-to-patient.mdx @@ -0,0 +1,46 @@ +--- +sidebar_position: 3 +--- + +# Assign a user to a patient record + +This flow assigns a user — such as a volunteer or ASHA worker — to a specific **patient record**, so they can manage that patient in the system. + +## Before you start + +- Confirm the **correct patient** before assigning. +- Assign only users **authorized** to manage the patient record. + +## Steps + +### 1. Locate the patient + +![Locate the patient](/img/flows/access-governance/assign-user-to-patient/01-loom.jpg) + +Open the patient assignment feature, search for the patient, and confirm you've selected the correct one. + +### 2. Select the user role + +![Select the user role](/img/flows/access-governance/assign-user-to-patient/02-loom.jpg) + +Identify the role to assign (e.g. volunteer, ASHA worker) from the role list or search, ensuring it matches the intended user type. + +### 3. Choose and assign the user + +![Choose and assign the user](/img/flows/access-governance/assign-user-to-patient/03-loom.jpg) + +Select the user from the list and assign them to the patient record. Verify the action completes successfully. + +### 4. Confirm + +Check that the user now appears as assigned and has permission to manage the record before exiting. + +:::caution +Verify the user role carefully to avoid assigning the wrong type of user, and confirm the assignment to prevent access issues. +::: + +## Related + +- Flow: [Add or link users to a department](./manage-department-users) +- Flow: [Manage the care team](./manage-care-team) +- Flow: [Create and track a resource request](../supply/resource-request) diff --git a/versioned_docs/version-3.1/flows/access-governance/manage-care-team.mdx b/versioned_docs/version-3.1/flows/access-governance/manage-care-team.mdx new file mode 100644 index 0000000..c284ad6 --- /dev/null +++ b/versioned_docs/version-3.1/flows/access-governance/manage-care-team.mdx @@ -0,0 +1,52 @@ +--- +sidebar_position: 2 +--- + +# Manage the care team + +This flow adds one or more doctors to a patient's **Managed Care Team** from the encounter page, and designates or changes the **primary** doctor. + +## Before you start + +- Confirm the **correct patient encounter** is open. +- Prepare the list of doctors and their departments. + +## Steps + +### 1. Open Managed Care Team + +![Open Managed Care Team](/img/flows/access-governance/manage-care-team/01-loom.jpg) + +On the patient encounter page, locate **Managed Care Team** on the right-hand side. + +### 2. Edit and select a department + +![Edit and select a department](/img/flows/access-governance/manage-care-team/02-loom.jpg) + +Click **Edit**, then select the relevant **department** (e.g. *Surgery Department*). + +### 3. Add a doctor + +![Add a doctor](/img/flows/access-governance/manage-care-team/03-loom.jpg) + +Add the doctor's name, verifying they belong to the selected department and match the patient's care needs. + +### 4. Add more doctors if needed + +![Add more doctors if needed](/img/flows/access-governance/manage-care-team/04-loom.jpg) + +Repeat the department + doctor selection for each additional provider (e.g. add a doctor from *Anesthesia* alongside the surgery doctor). + +### 5. Set the primary doctor + +Designate the main point of contact as **Primary**. To change it later, select the primary button for the new doctor. + +:::caution +Confirm the department before adding a doctor, assign the primary doctor intentionally (it affects communication and responsibility), and review the final list before exiting. +::: + +## Related + +- Flow: [Add or link users to a department](./manage-department-users) +- Flow: [Assign a user to a patient record](./assign-user-to-patient) +- Playbook: [IP rounds](/deployments/hmis/playbooks/ip-rounds) diff --git a/versioned_docs/version-3.1/flows/access-governance/manage-department-users.mdx b/versioned_docs/version-3.1/flows/access-governance/manage-department-users.mdx new file mode 100644 index 0000000..6a0a64d --- /dev/null +++ b/versioned_docs/version-3.1/flows/access-governance/manage-department-users.mdx @@ -0,0 +1,67 @@ +--- +sidebar_position: 1 +--- + +# Add or link users to a department + +This flow adds a **new user** to a department, or **links an existing user** to it, with the appropriate role and access. + +## Before you start + +- You need user-administration access to **Settings → Departments**. +- Confirm the **correct department**, and prepare user details (name, email, role) in advance. + +## Steps + +### 1. Open the department + +![Open the department (1)](/img/flows/access-governance/manage-department-users/01-loom.jpg) + +![Open the department (2)](/img/flows/access-governance/manage-department-users/02-loom.jpg) + +![Open the department (3)](/img/flows/access-governance/manage-department-users/03-loom.jpg) + +Go to **Settings** → **Departments** and choose the relevant department. + +### 2. Open Users + +![Open Users (1)](/img/flows/access-governance/manage-department-users/04-loom.jpg) + +![Open Users (2)](/img/flows/access-governance/manage-department-users/05-loom.jpg) + +Click **Users** within the department. Two actions are available: **Add User** (create new) and **Link User** (connect an existing user). + +### 3. Add a new user + +![Add a new user (1)](/img/flows/access-governance/manage-department-users/06-loom.jpg) + +![Add a new user (2)](/img/flows/access-governance/manage-department-users/07-loom.jpg) + +Click **Add User** and enter the **user type**, **user name** (include a prefix if required), and **email**. Choose how the password is set — set it now yourself, or send an email invitation so the user creates their own. + +### 4. Set password, role, and confirm + +![Set password, role, and confirm (1)](/img/flows/access-governance/manage-department-users/08-loom.jpg) + +![Set password, role, and confirm (2)](/img/flows/access-governance/manage-department-users/09-loom.jpg) + +If setting manually, enter and confirm the password, then save. Assign the appropriate **role** (e.g. *Doctor*) and confirm the user appears in the department. + +### 5. Link an existing user + +![Link an existing user (1)](/img/flows/access-governance/manage-department-users/10-loom.jpg) + +![Link an existing user (2)](/img/flows/access-governance/manage-department-users/11-loom.jpg) + +Alternatively, click **Link User**, search for the user, select the **role**, and click **Add to Organization**. Confirm the user is linked. + +:::caution +Select the correct department and role to avoid access/permission issues. Prefer **Link User** for existing users to avoid duplicate accounts. +::: + +## Related + +- Flow: [Create a department](../facility/create-department) +- Flow: [Manage the care team](./manage-care-team) +- Flow: [Assign a user to a patient record](./assign-user-to-patient) +- Playbook: [Facility setup](/deployments/hmis/playbooks/facility-setup) diff --git a/versioned_docs/version-3.1/flows/billing/_category_.json b/versioned_docs/version-3.1/flows/billing/_category_.json new file mode 100644 index 0000000..5a5ebd7 --- /dev/null +++ b/versioned_docs/version-3.1/flows/billing/_category_.json @@ -0,0 +1,5 @@ +{ + "label": "Billing", + "position": 4, + "key": "billing-flows" +} diff --git a/versioned_docs/version-3.1/flows/billing/add-service-request.mdx b/versioned_docs/version-3.1/flows/billing/add-service-request.mdx new file mode 100644 index 0000000..b55acc6 --- /dev/null +++ b/versioned_docs/version-3.1/flows/billing/add-service-request.mdx @@ -0,0 +1,47 @@ +--- +sidebar_position: 1 +--- + +# Add a service request + +This flow creates a **service request** from the encounter page to order lab investigations, procedures, or radiology — recorded under Service Request for the encounter. + +:::info +Service requests are typically created by a **practitioner**. A lab-specific walkthrough is in [Raise a lab test request](../clinical/raise-lab-request). +::: + +## Before you start + +- Confirm you are on the **correct patient encounter**. + +## Steps + +### 1. Open Service Request + +![Open Service Request](/img/flows/billing/add-service-request/01-screenshot-2026-06-17-at-5.18.58-pm.png) + +On the **Patient Encounter** page, click **Service Request** to start a new request. + +### 2. Choose the request type + +![Choose the request type](/img/flows/billing/add-service-request/02-screenshot-2026-06-17-at-5.15.16-pm.png) + +Select the type matching the clinical need: + +- **Lab investigations** (e.g. Complete Blood Count) +- **Procedures** (e.g. dental extraction) +- **Radiology investigations** (e.g. chest X-ray) + +Confirm the selection matches the intended service. + +### 3. Submit and review + +![Submit and review](/img/flows/billing/add-service-request/03-loom.jpg) + +After entering the request, confirm it appears under **Service Request** and is recorded correctly before ending the encounter. + +## Related + +- Flow: [Raise a lab test request](../clinical/raise-lab-request) +- Flow: [Link a charge item to a schedule](../scheduling/link-charge-item) +- Playbook: [Billing and payment](/deployments/hmis/playbooks/billing-and-payment), [Lab diagnostics](/deployments/hmis/playbooks/lab-diagnostics) diff --git a/versioned_docs/version-3.1/flows/billing/collect-payment.mdx b/versioned_docs/version-3.1/flows/billing/collect-payment.mdx new file mode 100644 index 0000000..433ab61 --- /dev/null +++ b/versioned_docs/version-3.1/flows/billing/collect-payment.mdx @@ -0,0 +1,41 @@ +--- +sidebar_position: 4 +--- + +# Collect a payment + +This flow records a patient **payment** against an invoice, prints the receipt, and marks the account balanced. + +## Before you start + +- An invoice must already exist — see [Create an invoice](./create-invoice). +- Know the actual payment method used by the patient. + +## Steps + +### 1. Record the payment + +Choose the **payment method** the patient used (e.g. cash or other supported methods), enter the payment details, and click the record-payment confirmation to complete the transaction. + +![Record the payment](/img/flows/billing/collect-payment/01-loom.jpg) + +### 2. Print the receipt + +After payment is recorded, the system generates a receipt. Print it and give it to the patient for their records. + +![Print the receipt](/img/flows/billing/collect-payment/02-loom.jpg) + +### 3. Mark the account as balanced + +Click **Mark as Balanced**, then return to the patient account to confirm the balance is cleared and the payment shows as completed. + +![Mark the account as balanced](/img/flows/billing/collect-payment/03-loom.jpg) + +:::caution +Do not mark the account as balanced until payment has been successfully recorded and verified. +::: + +## Related + +- Flow: [Create an invoice](./create-invoice) +- Playbook: [Billing and payment](/deployments/hmis/playbooks/billing-and-payment) diff --git a/versioned_docs/version-3.1/flows/billing/create-discount.mdx b/versioned_docs/version-3.1/flows/billing/create-discount.mdx new file mode 100644 index 0000000..bf1058b --- /dev/null +++ b/versioned_docs/version-3.1/flows/billing/create-discount.mdx @@ -0,0 +1,53 @@ +--- +sidebar_position: 2 +--- + +# Create a discount code and component + +This flow creates a **discount code** and a **discount component** in billing settings, with a condition so eligible patients (e.g. those with a given tag) receive the discount automatically. + +## Before you start + +- You need access to **Settings → Billing**. +- Decide the eligibility condition (patient tag, age, or gender) and the discount value. + +## Steps + +### 1. Open Billing discount settings + +![Open Billing discount settings (1)](/img/flows/billing/create-discount/01-screenshot-2026-06-17-at-6.51.23-pm.png) + +![Open Billing discount settings (2)](/img/flows/billing/create-discount/02-da6af6433f7b4b3ca7e554f0618d35ec-workflows_screenshot-true.jpg) + +Go to **Settings** → **Billing**. You'll see two sections: **Discount Code** and **Discount Components**. Create the code first. + +### 2. Create the discount code + +![Create the discount code](/img/flows/billing/create-discount/03-ac957d2284f74cc8a57432596083e361-workflows_screenshot-true.jpg) + +Under **Discount Code** → **Create Discount Code**, enter a clear name (e.g. *Hospital Staff*) and a short code (e.g. *HSF*). Confirm it was created. + +### 3. Create the discount component + +![Create the discount component](/img/flows/billing/create-discount/04-loom.jpg) + +Under **Discount Components** → **Create Discount Component**, enter a name and choose the type: + +- **Amount** — a fixed value +- **Factor** — a percentage (e.g. select Factor and enter 70% for a 70% discount) + +### 4. Add the condition + +![Add the condition](/img/flows/billing/create-discount/05-loom.jpg) + +Set the condition by **Patient Tag**, **Patient Age**, or **Patient Gender** (e.g. tag = *Hospital Staff*), add it, and **Save**. Verify that matching patients receive the discount automatically. + +:::caution +Create the discount code before the component. Use **Factor** for percentage discounts and **Amount** for fixed values. Test with a sample patient after saving. +::: + +## Related + +- Flow: [Add a service request](./add-service-request) +- Flow: [Add patient tags](../clinical/patient-tags) +- Playbook: [Billing and payment](/deployments/hmis/playbooks/billing-and-payment) diff --git a/versioned_docs/version-3.1/flows/billing/create-invoice.mdx b/versioned_docs/version-3.1/flows/billing/create-invoice.mdx new file mode 100644 index 0000000..cf3f76e --- /dev/null +++ b/versioned_docs/version-3.1/flows/billing/create-invoice.mdx @@ -0,0 +1,44 @@ +--- +sidebar_position: 3 +--- + +# Create an invoice + +This flow has billing staff open a patient account, review billable charge items, and **create an invoice** for the selected charges. + +## Before you start + +- You need billing access to **My Facility → Billing/Accounts**. +- Confirm the correct facility and patient before invoicing. + +## Steps + +### 1. Open Billing and view billable accounts + +Log in, go to **My Facility**, and open **Billing → Accounts** to view patients with outstanding charges. Confirm you are in the correct facility. + +![Open Billing and view billable accounts](/img/flows/billing/create-invoice/01-loom.jpg) + +### 2. Select the patient account + +Select the patient from the list and open their account to review all pending charges. Verify the patient and service details. + +![Select the patient account](/img/flows/billing/create-invoice/02-loom.jpg) + +### 3. Review charge items + +Go to **Charge Items** within the account. Review the billable services (e.g. lab work, X-rays) and select the specific items to include — if only some should be billed, select just those. + +![Review charge items](/img/flows/billing/create-invoice/03-loom.jpg) + +### 4. Create the invoice + +Click **Create Invoice**. Confirm the invoice includes the correct services and amounts, and that it generated successfully. + +![Create the invoice](/img/flows/billing/create-invoice/04-loom.jpg) + +## Related + +- Flow: [Collect a payment](./collect-payment) +- Flow: [Create a discount code and component](./create-discount) +- Playbook: [Billing and payment](/deployments/hmis/playbooks/billing-and-payment) diff --git a/versioned_docs/version-3.1/flows/clinical/ai-scribe.mdx b/versioned_docs/version-3.1/flows/clinical/ai-scribe.mdx new file mode 100644 index 0000000..56edeb6 --- /dev/null +++ b/versioned_docs/version-3.1/flows/clinical/ai-scribe.mdx @@ -0,0 +1,52 @@ +--- +sidebar_position: 11 +--- + +# Use AI-Scribe (voice autofill) + +**AI-Scribe** is a multilingual voice-to-text tool that detects clinical parameters from speech and fills the matching fields in a clinical form automatically — vitals, history, symptoms, assessment, and short-term plan. + +## Before you start + +- Open the relevant [clinical form](./submit-clinical-forms) on the encounter. +- Be ready to dictate clearly; AI-Scribe maps spoken values to specific fields. + +## Steps + +### 1. Enable Voice Autofill + +![Enable Voice Autofill (1)](/img/flows/clinical/ai-scribe/01-dd21a20caf3f4f4eba211fa9026485a6-workflows_screenshot-true.jpg) + +![Enable Voice Autofill (2)](/img/flows/clinical/ai-scribe/02-screenshot-2026-06-17-at-7.22.33-pm.png) + +In the bottom-right corner of the clinical form, enable the green **Voice Autofill** (AI-Scribe) button. + +### 2. Dictate the clinical fields + +![Dictate the clinical fields](/img/flows/clinical/ai-scribe/03-screenshot-2026-06-17-at-7.21.37-pm.png) + +Speak the values to capture, for example: + +- Vitals — pulse 60, BP 120/80, SpO₂ 98%, temperature 100°F +- History — hypertension for 6 years, no diabetes +- Symptom — tired on exertion + +### 3. Dictate diagnosis and plan + +![Dictate diagnosis and plan](/img/flows/clinical/ai-scribe/04-loom.jpg) + +State the working diagnosis, medication (drug, dose, frequency, duration), supportive care, recommended investigations, follow-up/review date, and disposition (e.g. no admission). + +### 4. Review and finalize + +![Review and finalize](/img/flows/clinical/ai-scribe/05-loom.jpg) + +Confirm every field was captured correctly. Either accept all entries or review each one, then submit the form. + +:::caution +Voice transcription can mis-hear drug names and doses. Verify medication dose, diagnosis wording, and investigation names against the clinical record before submitting. +::: + +## Related + +- Flow: [Submit a clinical form](./submit-clinical-forms) diff --git a/versioned_docs/version-3.1/flows/clinical/complete-encounter.mdx b/versioned_docs/version-3.1/flows/clinical/complete-encounter.mdx new file mode 100644 index 0000000..0022c51 --- /dev/null +++ b/versioned_docs/version-3.1/flows/clinical/complete-encounter.mdx @@ -0,0 +1,45 @@ +--- +sidebar_position: 3 +--- + +# Mark an encounter complete + +This flow marks a patient **encounter as completed** once the doctor–patient interaction has ended. + +## Before you start + +- Confirm all documentation for the visit is finished — completing an encounter signals the visit is closed. +- Make sure you are in the **correct** encounter. + +## Steps + +### 1. Open Encounter Actions + +![Open Encounter Actions](/img/flows/clinical/complete-encounter/01-loom.jpg) + +On the encounter record, click **Encounter Actions** to open the menu and locate **Mark as Completed**. + +### 2. Mark as completed + +![Mark as completed](/img/flows/clinical/complete-encounter/02-loom.jpg) + +Select **Mark as Completed**, or use the keyboard shortcut **M + C**. The encounter status updates to **Completed**. + +### 3. Confirm + +![Confirm](/img/flows/clinical/complete-encounter/03-loom.jpg) + +Verify the status now shows **Completed**. If it does not update, repeat the action or confirm you selected the correct encounter. + +## After completion + +| Next step | When | +| --- | --- | +| [Generate a treatment summary](./treatment-summary) | Patient needs a visit summary | +| [Generate a discharge summary](./discharge-summary) | Inpatient discharge | + +## Related + +- Flow: [Create an encounter](./create-encounter) +- Flow: [Discharge an encounter](./discharge-encounter) +- Playbook: [OP consultation](/deployments/hmis/playbooks/op-consultation) diff --git a/versioned_docs/version-3.1/flows/clinical/create-encounter-tag.mdx b/versioned_docs/version-3.1/flows/clinical/create-encounter-tag.mdx new file mode 100644 index 0000000..52b1ada --- /dev/null +++ b/versioned_docs/version-3.1/flows/clinical/create-encounter-tag.mdx @@ -0,0 +1,36 @@ +--- +sidebar_position: 6 +--- + +# Create an encounter tag + +This flow creates a reusable **tag** (via Tag Config) that can be applied to encounters — and to other resources such as patients or accounts — to categorize and filter records. + +## Before you start + +- You need access to **Tag Config** (an administrative permission). +- Decide the tag's **category**, the **resource type** it applies to, and which **organizations** should use it. + +## Steps + +### 1. Open Tag Config + +From the left navigation bar, click **Tag Config**, then click **Add Tag Config** on the right-hand side. + +### 2. Define the tag + +| Field | Notes | +| --- | --- | +| Name | The tag label | +| Category | The tag's grouping | +| Resource | Where it applies — Patient, Encounter, Account, etc. | +| Priority | `1` = maximum, `100` = minimum | +| Organizations | The organizations allowed to use this tag | + +### 3. Create + +Click **Create Tag**. The tag becomes available for the selected resource type. + +## Related + +- Flow: [Create an encounter](./create-encounter) diff --git a/versioned_docs/version-3.1/flows/clinical/create-encounter.mdx b/versioned_docs/version-3.1/flows/clinical/create-encounter.mdx new file mode 100644 index 0000000..f267e3d --- /dev/null +++ b/versioned_docs/version-3.1/flows/clinical/create-encounter.mdx @@ -0,0 +1,65 @@ +--- +sidebar_position: 2 +--- + +# Create an encounter + +This flow covers opening a new **encounter** for an existing patient — the record of a single visit or admission that all clinical documentation hangs off. + +:::info Prerequisite +The patient must already exist. If not, run [Create a patient](./create-patient) first. +::: + +## Before you start + +- You need a role with **encounter create** permission for the facility. +- Know the **encounter type** (e.g. outpatient, inpatient, emergency) and the **department** the visit belongs to. + +## Steps + +### 1. Search for the patient + +![Search for the patient](/img/flows/clinical/create-encounter/01-loom.jpg) + +From the left navigation bar, click **Search Patients** and search using any patient identifier (name, phone, MRN). Wait for the patient details to load. + +### 2. Open the create form + +![Open the create form](/img/flows/clinical/create-encounter/02-loom.jpg) + +On the patient record, under **Actions**, click **Create Encounter**. A new encounter form opens. + +### 3. Fill encounter details + +![Fill encounter details](/img/flows/clinical/create-encounter/03-loom.jpg) + +| Field | Notes | +| --- | --- | +| Encounter type | Select from the dropdown (outpatient, inpatient, etc.) | +| Status | Adjust if the default does not match the visit | +| Department | Add the department associated with the encounter | + +### 4. Create + +![Create](/img/flows/clinical/create-encounter/04-loom.jpg) + +Click **Create Encounter** to save. The encounter opens, ready for documentation. + +## After creation + +| Next step | When | +| --- | --- | +| [Submit a clinical form](./submit-clinical-forms) | Documenting the consultation | +| [Update diagnosis](./update-diagnosis) / [symptoms](./update-symptoms) | Recording clinical findings | +| [Mark encounter complete](./complete-encounter) | Visit is finished | + +## Edge cases + +End-to-end visit handling is documented in playbooks. + +→ See [OP consultation](/deployments/hmis/playbooks/op-consultation) and [IP rounds](/deployments/hmis/playbooks/ip-rounds). + +## Related + +- Flow: [Create a patient](./create-patient) +- Concept: [Patient](../../concepts/clinical/patient) diff --git a/versioned_docs/version-3.1/flows/clinical/discharge-encounter.mdx b/versioned_docs/version-3.1/flows/clinical/discharge-encounter.mdx new file mode 100644 index 0000000..a562491 --- /dev/null +++ b/versioned_docs/version-3.1/flows/clinical/discharge-encounter.mdx @@ -0,0 +1,50 @@ +--- +sidebar_position: 4 +--- + +# Discharge an encounter + +This flow discharges a patient encounter from the **Patient Encounter** page using **Update Encounter**, recording the discharge details before the encounter is closed. + +## Before you start + +- Gather the discharge details first (disposition/reason, discharge date/time, admit source) to avoid back-and-forth. +- Confirm you are in the correct encounter. + +## Steps + +### 1. Open Update Encounter + +![Open Update Encounter](/img/flows/clinical/discharge-encounter/01-loom.jpg) + +On the **Patient Encounter** page, on the right-hand side, click **Update Encounter**. + +### 2. Mark as discharged + +![Mark as discharged](/img/flows/clinical/discharge-encounter/02-loom.jpg) + +In the Update Encounter window, select **Mark as Discharge**. The encounter status changes to **Discharged**. + +### 3. Enter discharge details + +![Enter discharge details](/img/flows/clinical/discharge-encounter/03-loom.jpg) + +Set the **discharge disposition/reason** clearly (e.g. discharged home). Review it to confirm it reflects the correct outcome. + +### 4. Update encounter information + +![Update encounter information](/img/flows/clinical/discharge-encounter/04-loom.jpg) + +Review and update **Admit Source** and the **discharge date/time** as needed. Confirm any other encounter details are accurate. + +### 5. Add diet preference and submit + +![Add diet preference and submit](/img/flows/clinical/discharge-encounter/05-loom.jpg) + +If applicable, set the patient's **diet preference**, then click **Submit**. Verify the encounter is marked complete and can be closed. + +## Related + +- Flow: [Mark an encounter complete](./complete-encounter) +- Flow: [Generate a discharge summary](./discharge-summary) +- Playbook: [IP rounds](/deployments/hmis/playbooks/ip-rounds) diff --git a/versioned_docs/version-3.1/flows/clinical/discharge-summary.mdx b/versioned_docs/version-3.1/flows/clinical/discharge-summary.mdx new file mode 100644 index 0000000..664170b --- /dev/null +++ b/versioned_docs/version-3.1/flows/clinical/discharge-summary.mdx @@ -0,0 +1,40 @@ +--- +sidebar_position: 14 +--- + +# Generate a discharge summary + +This flow generates and prints a **discharge summary** from a patient encounter. + +## Before you start + +- Confirm the **correct patient encounter** is open. +- Follow your organization's privacy and documentation policies when handling records. + +## Steps + +### 1. Open the encounter + +![Open the encounter](/img/flows/clinical/discharge-summary/01-loom.jpg) + +From the patient dashboard, open the relevant encounter and locate the **Reports** section on the right-hand side. + +### 2. Generate the discharge summary + +![Generate the discharge summary](/img/flows/clinical/discharge-summary/02-loom.jpg) + +Select the option to **generate the discharge summary**. Review it once it opens to confirm it is the correct document for the encounter. + +### 3. Print + +Click **Print**, confirm printer settings if prompted, and verify the document was sent successfully. + +:::caution +Verify the discharge summary content before printing to avoid distributing incorrect information. +::: + +## Related + +- Flow: [Discharge an encounter](./discharge-encounter) +- Flow: [Generate a treatment summary](./treatment-summary) +- Playbook: [IP rounds](/deployments/hmis/playbooks/ip-rounds) diff --git a/versioned_docs/version-3.1/flows/clinical/edit-demographics.mdx b/versioned_docs/version-3.1/flows/clinical/edit-demographics.mdx new file mode 100644 index 0000000..823df25 --- /dev/null +++ b/versioned_docs/version-3.1/flows/clinical/edit-demographics.mdx @@ -0,0 +1,43 @@ +--- +sidebar_position: 19 +--- + +# Edit patient demographics + +This flow updates a registered patient's **demographic details** from their profile. + +## Before you start + +- Confirm you are viewing the **correct patient** profile. +- Follow your organization's privacy and data-handling policies. + +## Steps + +### 1. Open the patient profile + +![Open the patient profile](/img/flows/clinical/edit-demographics/01-loom.jpg) + +Locate the registered patient and open their profile. + +### 2. Click Edit + +![Click Edit](/img/flows/clinical/edit-demographics/02-loom.jpg) + +Review the existing details, then click **Edit** to enable changes. + +### 3. Update the details + +![Update the details](/img/flows/clinical/edit-demographics/03-loom.jpg) + +Modify the required fields (e.g. address or other demographics). Review carefully, then click **Update**. + +### 4. Confirm + +![Confirm](/img/flows/clinical/edit-demographics/04-loom.jpg) + +Verify the updated information appears correctly on the profile. Repeat if further corrections are needed. + +## Related + +- Flow: [Register a patient manually](./register-patient-manually) +- Flow: [Add patient tags](./patient-tags) diff --git a/versioned_docs/version-3.1/flows/clinical/fetch-records-abdm.mdx b/versioned_docs/version-3.1/flows/clinical/fetch-records-abdm.mdx new file mode 100644 index 0000000..839047a --- /dev/null +++ b/versioned_docs/version-3.1/flows/clinical/fetch-records-abdm.mdx @@ -0,0 +1,64 @@ +--- +sidebar_position: 21 +--- + +# Fetch patient records via ABDM + +This flow requests and retrieves a patient's external health records through **ABDM**, including submitting the consent request and monitoring its status. + +:::info Availability +ABDM record fetch applies to **ABDM-enabled deployments** and requires patient consent. Access records only per patient consent and applicable privacy policies. +::: + +## Before you start + +- Have the required **date range** and **consent expiry date** ready. +- Confirm the **purpose of request** for the access. + +## Steps + +### 1. Open Encounter Actions + +![Open Encounter Actions (1)](/img/flows/clinical/fetch-records-abdm/01-loom.jpg) + +![Open Encounter Actions (2)](/img/flows/clinical/fetch-records-abdm/02-loom.jpg) + +On the patient dashboard, click **Encounter Actions** (top-right). + +### 2. Choose Fetch Records over ABDM + +![Choose Fetch Records over ABDM (1)](/img/flows/clinical/fetch-records-abdm/03-loom.jpg) + +![Choose Fetch Records over ABDM (2)](/img/flows/clinical/fetch-records-abdm/04-loom.jpg) + +Select **Fetch Records over ABDM** to open the request form. + +### 3. Set the purpose + +![Set the purpose](/img/flows/clinical/fetch-records-abdm/05-loom.jpg) + +In **Purpose of Request**, select the reason that matches the use case (e.g. **Care Management**). + +### 4. Set the date range and consent expiry + +![Set the date range and consent expiry](/img/flows/clinical/fetch-records-abdm/06-loom.jpg) + +Enter the **Health Record Date Range** for the records you need, then set the **Consent Expiry Date**, allowing enough time for processing. + +### 5. Submit the consent request + +![Submit the consent request](/img/flows/clinical/fetch-records-abdm/07-loom.jpg) + +Review the details and click **Request Consent**. Confirm the request shows as successfully submitted. + +### 6. Check status and view records + +![Check status and view records](/img/flows/clinical/fetch-records-abdm/08-loom.jpg) + +Open **ABDM Records**, click **Check Status** (processing may take time), then open the fetched records once available and review them for completeness. + +## Related + +- Flow: [Register a patient through ABHA](./register-patient-abha) +- Flow: [View previous encounters](./view-previous-encounters) +- Playbook: [OP consultation](/deployments/hmis/playbooks/op-consultation) diff --git a/versioned_docs/version-3.1/flows/clinical/manage-allergy.mdx b/versioned_docs/version-3.1/flows/clinical/manage-allergy.mdx new file mode 100644 index 0000000..73f386b --- /dev/null +++ b/versioned_docs/version-3.1/flows/clinical/manage-allergy.mdx @@ -0,0 +1,53 @@ +--- +sidebar_position: 9 +--- + +# Add or update an allergy + +This flow records an **allergy** on a patient's record and lets you edit or remove it afterward — with criticality, status, and date. + +:::caution Patient safety +Allergy data drives downstream safety checks (e.g. prescribing). Select the correct allergy and verify every field before submitting. +::: + +## Before you start + +- Confirm the correct patient chart and encounter are open. +- Only authorized users should edit or remove allergy information. + +## Steps + +### 1. Start an allergy entry + +![Start an allergy entry](/img/flows/clinical/manage-allergy/01-loom.jpg) + +From the encounter, click **Encounter Actions** → **Add Allergy**. + +### 2. Enter allergy details + +![Enter allergy details](/img/flows/clinical/manage-allergy/02-loom.jpg) + +Select the allergy, then set: + +| Field | Notes | +| --- | --- | +| Criticality | How critical the allergy is | +| Status | e.g. active, inactive | +| Date | Onset / recorded date | + +### 3. Review date information + +![Review date information](/img/flows/clinical/manage-allergy/03-loom.jpg) + +Confirm the duration/date displayed for the allergy is accurate before finalizing. + +### 4. Submit + +![Submit](/img/flows/clinical/manage-allergy/04-loom.jpg) + +Submit to save the allergy. To correct it, use **Edit** to update or remove the entry (where permitted). If removal is blocked, follow your organization's correction process. + +## Related + +- Flow: [Add or update symptoms](./update-symptoms) +- Flow: [Prescribe medication](../medications/prescribe-medication) diff --git a/versioned_docs/version-3.1/flows/clinical/patient-consent.mdx b/versioned_docs/version-3.1/flows/clinical/patient-consent.mdx new file mode 100644 index 0000000..ab1c2ac --- /dev/null +++ b/versioned_docs/version-3.1/flows/clinical/patient-consent.mdx @@ -0,0 +1,57 @@ +--- +sidebar_position: 16 +--- + +# Add patient consent + +This flow records a patient's **consent** on the patient dashboard — including date, category, decision, status, notes, and supporting files. + +## Before you start + +- Confirm you are in the **correct patient record**. +- Gather the consent details (date, category, decision, any supporting document) before opening the form. + +## Steps + +### 1. Open Consent + +![Open Consent](/img/flows/clinical/patient-consent/01-loom.jpg) + +From the patient dashboard, click **Consent** to open the consent area. + +### 2. Add a consent entry + +![Add a consent entry](/img/flows/clinical/patient-consent/02-loom.jpg) + +Click **Add Consent** to open the form. + +### 3. Enter date and validity + +![Enter date and validity](/img/flows/clinical/patient-consent/03-loom.jpg) + +Enter the **date consent was given**. Optionally set **valid from / valid till** — the validity period is not required. + +### 4. Record decision and category + +![Record decision and category](/img/flows/clinical/patient-consent/04-loom.jpg) + +Select the **decision** (**Permitting** or **Denying**) and the **category**: + +- Research +- Privacy +- Treatment + +### 5. Add status, notes, and files + +![Add status, notes, and files](/img/flows/clinical/patient-consent/05-loom.jpg) + +Set the **status**, add **notes** for context, and attach **files** if supporting documentation is needed. + +### 6. Save + +Review for accuracy and click **Save**. Confirm the consent record appears in Care. + +## Related + +- Flow: [Register a patient manually](./register-patient-manually) +- Flow: [Upload a clinical file](./upload-clinical-files) diff --git a/versioned_docs/version-3.1/flows/clinical/patient-notes.mdx b/versioned_docs/version-3.1/flows/clinical/patient-notes.mdx new file mode 100644 index 0000000..6e43ee4 --- /dev/null +++ b/versioned_docs/version-3.1/flows/clinical/patient-notes.mdx @@ -0,0 +1,41 @@ +--- +sidebar_position: 15 +--- + +# Add patient notes (non-clinical) + +This flow documents **non-clinical** patient information — social, religious, or other context — as organized **conversation threads** in the patient profile. + +## Before you start + +- Confirm you are in the **correct patient profile**. +- Use professional language and follow your organization's privacy and documentation policies. + +## Steps + +### 1. Open the patient profile + +![Open the patient profile](/img/flows/clinical/patient-notes/01-loom.jpg) + +From the left navigation bar, click **Search Patients**, find the patient, and open their profile. Navigate to the **Notes** section on the right of the profile. + +### 2. Start a conversation thread + +![Start a conversation thread](/img/flows/clinical/patient-notes/02-loom.jpg) + +In Patient Notes, start a **new conversation thread** to keep a note topic separate. + +### 3. Use a preset or custom thread + +![Use a preset or custom thread](/img/flows/clinical/patient-notes/03-loom.jpg) + +Pick a preset category if it matches, or create a custom thread (e.g. **Patient Social History**). Use separate threads per topic for easier review. + +### 4. Document the information + +Enter the relevant non-clinical context (e.g. patient arrived with a relative, social or religious considerations relevant to care). Keep notes relevant and professional. + +## Related + +- Flow: [Edit patient demographics](./edit-demographics) +- Flow: [Create an encounter](./create-encounter) diff --git a/versioned_docs/version-3.1/flows/clinical/patient-tags.mdx b/versioned_docs/version-3.1/flows/clinical/patient-tags.mdx new file mode 100644 index 0000000..e19e48b --- /dev/null +++ b/versioned_docs/version-3.1/flows/clinical/patient-tags.mdx @@ -0,0 +1,48 @@ +--- +sidebar_position: 20 +--- + +# Add patient tags + +This flow assigns **patient tags** (categories) during registration, or updates them afterward — including for patients registered via ABHA scan-and-share. + +:::info +Use only the tag categories configured by your facility — incorrect assignment can affect billing or eligibility. Tags themselves are created via [Create an encounter tag](./create-encounter-tag) (Tag Config) with the *Patient* resource type. +::: + +## Before you start + +- Confirm the patient's details so you select the correct tag without backtracking. + +## Steps + +### 1. Open registration + +![Open registration (1)](/img/flows/clinical/patient-tags/01-loom.jpg) + +![Open registration (2)](/img/flows/clinical/patient-tags/02-loom.jpg) + +Go to **Patients** → **Search Patient**, then start a **New Patient** registration and enter the patient's details. + +### 2. Select a tag during registration + +![Select a tag during registration](/img/flows/clinical/patient-tags/03-loom.jpg) + +Locate the **Patient tags** option (below the Date of Birth field). Open the drop-down and select the category that applies, verifying it matches the patient's eligibility. + +### 3. Update tags after registration + +![Update tags after registration](/img/flows/clinical/patient-tags/04-loom.jpg) + +For a patient registered via **Scan and Share** (ABHA), open their registration window, find the tags section, click **Add Tags**, and select the appropriate tag from the list. + +### 4. Save + +![Save](/img/flows/clinical/patient-tags/05-loom.jpg) + +Save or proceed per the registration workflow so the tag is applied. If an expected tag is missing, follow your internal escalation/support process. + +## Related + +- Flow: [Create an encounter tag](./create-encounter-tag) +- Flow: [Register a patient through ABHA](./register-patient-abha) diff --git a/versioned_docs/version-3.1/flows/clinical/raise-lab-request.mdx b/versioned_docs/version-3.1/flows/clinical/raise-lab-request.mdx new file mode 100644 index 0000000..40dbad3 --- /dev/null +++ b/versioned_docs/version-3.1/flows/clinical/raise-lab-request.mdx @@ -0,0 +1,44 @@ +--- +sidebar_position: 22 +--- + +# Raise a lab test request + +This flow raises a **laboratory service request** for a patient so the lab team can process it — from the patient dashboard or directly from the consultation form. + +## Before you start + +- Confirm the **correct patient** before raising any request. +- Know which lab tests are available at your facility. + +## Steps + +### 1. Select the patient + +![Select the patient (1)](/img/flows/clinical/raise-lab-request/01-loom.jpg) + +![Select the patient (2)](/img/flows/clinical/raise-lab-request/02-loom.jpg) + +From the **Patient List**, locate and select the correct patient record. + +### 2. Raise from the patient dashboard + +![Raise from the patient dashboard](/img/flows/clinical/raise-lab-request/03-loom.jpg) + +On the dashboard, click the **Service Request** button and choose the category **Laboratory**. Select the relevant lab test, add any patient instructions, recheck, and **Submit**. Confirm the request is sent to the lab. + +### 3. Or raise from the consultation form + +![Or raise from the consultation form](/img/flows/clinical/raise-lab-request/04-loom.jpg) + +Alternatively, during consultation open the [clinical form](./submit-clinical-forms) and, in the **Investigation Suggestion** section, enter the lab test. Confirm the details and submit so the request is recorded. + +:::caution +Don't assume the request was sent unless the service request or form update was submitted successfully. Follow your organization's lab request approval/routing workflow if applicable. +::: + +## Related + +- Flow: [Submit a clinical form](./submit-clinical-forms) +- Flow: [Add a service request](../billing/add-service-request) +- Playbook: [Lab diagnostics](/deployments/hmis/playbooks/lab-diagnostics) diff --git a/versioned_docs/version-3.1/flows/clinical/register-patient-abha.mdx b/versioned_docs/version-3.1/flows/clinical/register-patient-abha.mdx new file mode 100644 index 0000000..3e24906 --- /dev/null +++ b/versioned_docs/version-3.1/flows/clinical/register-patient-abha.mdx @@ -0,0 +1,72 @@ +--- +sidebar_position: 18 +--- + +# Register a patient through ABHA + +This flow registers a patient via **ABHA** (Ayushman Bharat Health Account) — generating a new ABHA number or linking an existing one, verifying identity, and completing registration. + +:::info Availability +ABHA registration applies to **ABDM-enabled deployments**. The patient's Aadhaar-linked mobile must be available for OTP verification. +::: + +## Before you start + +- Select the correct **facility** first. +- Obtain the patient's consent and confirm their **Aadhaar number** is accurate. + +## Steps + +### 1. Open patient registration + +![Open patient registration (1)](/img/flows/clinical/register-patient-abha/01-image-20260508-092514.png) + +![Open patient registration (2)](/img/flows/clinical/register-patient-abha/02-image-20260508-092523.png) + +Go to **Patients** → **Search Patients**, then click **Add New Patient** and select **Generate or Link ABHA**. + +### 2. Choose the ABHA path + +![Choose the ABHA path (1)](/img/flows/clinical/register-patient-abha/03-loom.jpg) + +![Choose the ABHA path (2)](/img/flows/clinical/register-patient-abha/04-loom.jpg) + +Decide whether to **generate a new ABHA number** or **link an existing** one. To generate via Aadhaar, enter the patient's **Aadhaar number**. + +### 3. Complete consent and details + +![Complete consent and details (1)](/img/flows/clinical/register-patient-abha/05-loom.jpg) + +![Complete consent and details (2)](/img/flows/clinical/register-patient-abha/06-loom.jpg) + +Review and accept the required **consents**, then confirm the patient's name and displayed details. + +### 4. Verify identity + +![Verify identity (1)](/img/flows/clinical/register-patient-abha/07-loom.jpg) + +![Verify identity (2)](/img/flows/clinical/register-patient-abha/08-loom.jpg) + +Choose a verification method — **OTP**, **Demographics**, **Biometrics**, or **Face**. For OTP, wait for the code sent to the Aadhaar-linked mobile, enter it (and the mobile number if required), and click **Verify**. + +### 5. Create the ABHA address + +![Create the ABHA address](/img/flows/clinical/register-patient-abha/09-loom.jpg) + +If prompted, create a new **ABHA address** in the required format (or pick a suggested one) and click **Create ABHA Address**. + +### 6. Review and submit + +![Review and submit](/img/flows/clinical/register-patient-abha/10-loom.jpg) + +Confirm the **ABHA ID** was created, review patient details (download for records if needed), click **Proceed**, then **Submit** on the final review screen. + +:::caution +Enter the OTP within its valid window and verify all details before submitting. If an existing ABHA number/address is found, decide whether to link it or create a new one based on the patient's situation. +::: + +## Related + +- Flow: [Register a patient manually](./register-patient-manually) +- Flow: [Fetch patient records via ABDM](./fetch-records-abdm) +- Flow: [Add patient tags](./patient-tags) diff --git a/versioned_docs/version-3.1/flows/clinical/register-patient-manually.mdx b/versioned_docs/version-3.1/flows/clinical/register-patient-manually.mdx new file mode 100644 index 0000000..ba1a2a8 --- /dev/null +++ b/versioned_docs/version-3.1/flows/clinical/register-patient-manually.mdx @@ -0,0 +1,60 @@ +--- +sidebar_position: 17 +--- + +# Register a patient manually + +This flow registers a **new patient** by entering their details manually — the detailed counterpart to the baseline [Create a patient](./create-patient) flow. + +:::info Prerequisite +Search first to confirm the patient is not already registered. See [Create a patient](./create-patient) for the search-first principle. +::: + +## Before you start + +- You need **patient create** permission. +- Keep the patient's documents (ID, contact details) ready to complete the form in one pass. + +## Steps + +### 1. Open patient registration + +![Open patient registration](/img/flows/clinical/register-patient-manually/01-loom.jpg) + +Go to the **Patients** section and select the registration option. + +### 2. Start a new registration + +![Start a new registration](/img/flows/clinical/register-patient-manually/02-loom.jpg) + +Click **Add New Patient** and wait for the registration form to load. + +### 3. Enter basic details + +![Enter basic details](/img/flows/clinical/register-patient-manually/03-loom.jpg) + +Name, phone number, gender, age, blood group, and religion or other demographic fields the form requests. + +### 4. Enter address and location + +![Enter address and location](/img/flows/clinical/register-patient-manually/04-loom.jpg) + +Address plus location fields — **state**, **district**, and **local body**. Review for accuracy. + +### 5. Add identification + +Enter the patient's **unique identification number** if available, and confirm it matches their official record. + +### 6. Save + +Click **Save / Register**, then confirm the patient was added successfully. + +:::caution +Enter details accurately to avoid duplicate or incorrect records — double-check spelling, phone, age, and ID numbers before saving. +::: + +## Related + +- Flow: [Create a patient](./create-patient) +- Flow: [Register a patient through ABHA](./register-patient-abha) +- Flow: [Edit patient demographics](./edit-demographics) diff --git a/versioned_docs/version-3.1/flows/clinical/submit-clinical-forms.mdx b/versioned_docs/version-3.1/flows/clinical/submit-clinical-forms.mdx new file mode 100644 index 0000000..53b54ae --- /dev/null +++ b/versioned_docs/version-3.1/flows/clinical/submit-clinical-forms.mdx @@ -0,0 +1,54 @@ +--- +sidebar_position: 10 +--- + +# Submit a clinical form + +This flow completes and submits a **clinical form** from the encounter page — capturing history, vitals, diagnosis, investigations, and treatment in one structured document. + +## Before you start + +- Open the correct patient encounter. +- The clinical form you need must be configured and available for the encounter. + +## Steps + +### 1. Open Forms + +![Open Forms](/img/flows/clinical/submit-clinical-forms/01-loom.jpg) + +From the encounter page, click **Forms** (or press the shortcut **F**). Confirm the form you need is available. + +### 2. Enter patient details + +![Enter patient details](/img/flows/clinical/submit-clinical-forms/02-loom.jpg) + +Fill the required fields — type manually, or use **AI-Scribe** (voice-to-text) if available. See [Use AI-Scribe](./ai-scribe). + +### 3. Document history and findings + +![Document history and findings](/img/flows/clinical/submit-clinical-forms/03-loom.jpg) + +Record past history, comorbidities, and vitals. Enter the diagnosis if available and set its verification status: **Provisional**, **Differential**, or **Confirmed**. + +### 4. Add investigations + +![Add investigations](/img/flows/clinical/submit-clinical-forms/04-loom.jpg) + +Enter recommended investigations matching the clinical assessment (e.g. CBC, chest X-ray). + +### 5. Add treatment, referral, and submit + +![Add treatment, referral, and submit](/img/flows/clinical/submit-clinical-forms/05-loom.jpg) + +Add prescribed medication with **dosage**, **frequency**, and **duration**. Record whether **admission is needed**, any internal/external references, advice, and the **review date**. Review once, then **Submit**. + +:::caution +Double-check medication dosage, frequency, and duration, and confirm whether the diagnosis is provisional, differential, or confirmed before submitting. +::: + +## Related + +- Flow: [Use AI-Scribe](./ai-scribe) +- Flow: [Prescribe medication](../medications/prescribe-medication) +- Playbook: [OP consultation](/deployments/hmis/playbooks/op-consultation), [IP rounds](/deployments/hmis/playbooks/ip-rounds) diff --git a/versioned_docs/version-3.1/flows/clinical/treatment-summary.mdx b/versioned_docs/version-3.1/flows/clinical/treatment-summary.mdx new file mode 100644 index 0000000..b689bde --- /dev/null +++ b/versioned_docs/version-3.1/flows/clinical/treatment-summary.mdx @@ -0,0 +1,34 @@ +--- +sidebar_position: 13 +--- + +# Generate a treatment summary + +This flow generates and prints a patient's **treatment summary** from the Reports section of the patient dashboard, for sharing with the patient or recordkeeping. + +## Before you start + +- Confirm you are viewing the **correct patient** dashboard. + +## Steps + +### 1. Open Reports + +![Open Reports](/img/flows/clinical/treatment-summary/01-loom.jpg) + +On the patient dashboard, on the right-hand side, click **Reports**. + +### 2. Select Treatment Summary + +![Select Treatment Summary](/img/flows/clinical/treatment-summary/02-loom.jpg) + +In Reports, click **Treatment Summary** to generate and display it. Review it on screen to confirm the information is correct and fully loaded. + +### 3. Print or share + +Use **Print** (or the **P** shortcut if available) to produce a hard copy. Verify the printout is legible and complete before handing it to the patient. + +## Related + +- Flow: [Generate a discharge summary](./discharge-summary) +- Flow: [Mark an encounter complete](./complete-encounter) diff --git a/versioned_docs/version-3.1/flows/clinical/update-diagnosis.mdx b/versioned_docs/version-3.1/flows/clinical/update-diagnosis.mdx new file mode 100644 index 0000000..19a0043 --- /dev/null +++ b/versioned_docs/version-3.1/flows/clinical/update-diagnosis.mdx @@ -0,0 +1,51 @@ +--- +sidebar_position: 7 +--- + +# Update a diagnosis + +This flow adds or updates a **diagnosis** on a patient's encounter, including editing details, adding notes, or removing an entry made in error. + +## Before you start + +- Confirm the correct patient chart and encounter are open. +- Have the diagnosis details ready (status, severity, date). + +## Steps + +### 1. Start a diagnosis update + +![Start a diagnosis update](/img/flows/clinical/update-diagnosis/01-loom.jpg) + +On the encounter record, click **Encounter Actions** → **Add Diagnosis**. + +### 2. Enter diagnosis details + +![Enter diagnosis details](/img/flows/clinical/update-diagnosis/02-loom.jpg) + +Choose the diagnosis from the drop-down, then set the available fields as needed: + +| Field | Notes | +| --- | --- | +| Answer date | When the diagnosis applies | +| Status | e.g. active, resolved | +| Severity | Clinical severity | +| Notification | Notification setting | + +Review for accuracy and **Submit**. + +### 3. Verify and edit + +![Verify and edit](/img/flows/clinical/update-diagnosis/03-loom.jpg) + +Confirm the diagnosis appears on the patient dashboard. To change it, click **Edit** next to the diagnosis — from there you can add notes or remove it if entered in error. + +:::caution +Only remove a diagnosis if clinically appropriate and permitted by your organization's workflow. Keep notes clear and compliant with documentation standards. +::: + +## Related + +- Flow: [Update symptoms](./update-symptoms) +- Flow: [Submit clinical forms](./submit-clinical-forms) +- Playbook: [OP consultation](/deployments/hmis/playbooks/op-consultation) diff --git a/versioned_docs/version-3.1/flows/clinical/update-symptoms.mdx b/versioned_docs/version-3.1/flows/clinical/update-symptoms.mdx new file mode 100644 index 0000000..79c54fc --- /dev/null +++ b/versioned_docs/version-3.1/flows/clinical/update-symptoms.mdx @@ -0,0 +1,46 @@ +--- +sidebar_position: 8 +--- + +# Add or update symptoms + +This flow documents a patient **symptom** on an encounter and lets you review, edit, or remove it afterward — with the correct onset date, severity, and verification. + +## Before you start + +- Confirm the correct patient chart and encounter are open. +- Only authorized clinical staff should add, edit, or remove symptoms. + +## Steps + +### 1. Start a symptom entry + +![Start a symptom entry](/img/flows/clinical/update-symptoms/01-loom.jpg) + +On the encounter, click **Encounter Actions** → **Add Symptom**. + +### 2. Enter symptom details + +![Enter symptom details](/img/flows/clinical/update-symptoms/02-loom.jpg) + +Choose the symptom from the list and complete: + +| Field | Notes | +| --- | --- | +| Onset date | When the symptom started | +| Severity | Clinical severity | +| Verification | Verification status | + +Click **Submit**. + +### 3. Review and edit + +![Review and edit](/img/flows/clinical/update-symptoms/03-loom.jpg) + +Confirm the symptom appears in the record. Use **Edit** to update details, add notes, or remove the symptom if needed. + +## Related + +- Flow: [Update a diagnosis](./update-diagnosis) +- Flow: [Add or update an allergy](./manage-allergy) +- Playbook: [OP consultation](/deployments/hmis/playbooks/op-consultation) diff --git a/versioned_docs/version-3.1/flows/clinical/upload-clinical-files.mdx b/versioned_docs/version-3.1/flows/clinical/upload-clinical-files.mdx new file mode 100644 index 0000000..3936e04 --- /dev/null +++ b/versioned_docs/version-3.1/flows/clinical/upload-clinical-files.mdx @@ -0,0 +1,47 @@ +--- +sidebar_position: 12 +--- + +# Upload a clinical file + +This flow attaches a **clinical file** (document, image, or audio) to a patient record from the patient dashboard. + +## Before you start + +- Confirm you are in the **correct patient record**. +- Have the document ready and a clear, descriptive file name in mind. + +## Steps + +### 1. Open Files + +![Open Files](/img/flows/clinical/upload-clinical-files/01-loom.jpg) + +From the patient dashboard, click **Files** at the top to open the file management area. + +### 2. Add files + +![Add files](/img/flows/clinical/upload-clinical-files/02-loom.jpg) + +Click **Add Files** to see the upload methods. + +### 3. Choose an upload method + +![Choose an upload method](/img/flows/clinical/upload-clinical-files/03-loom.jpg) + +Select one of: + +- **Record with audio** +- **Open camera and upload** +- **Upload from device** — for a document already saved on your computer/device + +Pick the file when prompted. + +### 4. Name and upload + +Enter a clear, descriptive **document name**, complete the upload, and confirm the file appears in Care. + +## Related + +- Flow: [Submit a clinical form](./submit-clinical-forms) +- Flow: [Create an encounter](./create-encounter) diff --git a/versioned_docs/version-3.1/flows/clinical/view-previous-encounters.mdx b/versioned_docs/version-3.1/flows/clinical/view-previous-encounters.mdx new file mode 100644 index 0000000..ebc6e22 --- /dev/null +++ b/versioned_docs/version-3.1/flows/clinical/view-previous-encounters.mdx @@ -0,0 +1,45 @@ +--- +sidebar_position: 5 +--- + +# View previous encounters + +This flow locates and reviews a patient's **previous encounters** from the patient dashboard, so you can understand their history before documenting a new visit. + +## Before you start + +- Confirm you are viewing the **correct patient**. +- Previous encounters may contain sensitive clinical information — access them per your organization's privacy policy. + +## Steps + +### 1. Open the patient dashboard + +![Open the patient dashboard](/img/flows/clinical/view-previous-encounters/01-loom.jpg) + +Navigate to the patient dashboard. Encounter information is shown in the left-hand panel. + +### 2. Identify the current encounter + +![Identify the current encounter](/img/flows/clinical/view-previous-encounters/02-loom.jpg) + +The selected encounter at the top represents the **current** encounter — use it as your reference point. + +### 3. Review the list of previous encounters + +![Review the list of previous encounters](/img/flows/clinical/view-previous-encounters/03-loom.jpg) + +Below/alongside the current encounter, the patient's **previous encounters** are listed. Scan to find the one you want. + +### 4. Open a previous encounter + +Click the encounter; wait for its details to load and review the record, including what was updated during that visit. + +### 5. Compare as needed + +Open encounters in chronological order to compare changes across visits. Repeat for additional encounters. + +## Related + +- Flow: [Create an encounter](./create-encounter) +- Playbook: [IP rounds](/deployments/hmis/playbooks/ip-rounds), [OP consultation](/deployments/hmis/playbooks/op-consultation) diff --git a/versioned_docs/version-3.1/flows/facility/_category_.json b/versioned_docs/version-3.1/flows/facility/_category_.json new file mode 100644 index 0000000..252b60a --- /dev/null +++ b/versioned_docs/version-3.1/flows/facility/_category_.json @@ -0,0 +1,5 @@ +{ + "label": "Facility", + "position": 5, + "key": "facility-flows" +} diff --git a/versioned_docs/version-3.1/flows/facility/add-locations.mdx b/versioned_docs/version-3.1/flows/facility/add-locations.mdx new file mode 100644 index 0000000..f7feb1a --- /dev/null +++ b/versioned_docs/version-3.1/flows/facility/add-locations.mdx @@ -0,0 +1,79 @@ +--- +sidebar_position: 1 +--- + +# Add facility locations + +This flow builds the **facility location hierarchy** — buildings, floors/levels, wards, rooms, and beds — and assigns organizations to locations, so beds, departments, and services can be managed correctly. + +## Before you start + +- Log in as the **facility admin** with the correct permissions. +- Plan the full hierarchy first (on paper or a spreadsheet) and use consistent naming. Test in a non-production environment before live changes. + +## Steps + +### 1. Open facility configuration + +![Open facility configuration (1)](/img/flows/facility/add-locations/01-loom.jpg) + +![Open facility configuration (2)](/img/flows/facility/add-locations/02-loom.jpg) + +Go to **Facility Details** → **Settings** → **Manage Facility Configurations**, then open **Locations**. + +### 2. Add a building + +![Add a building (1)](/img/flows/facility/add-locations/03-loom.jpg) + +![Add a building (2)](/img/flows/facility/add-locations/04-loom.jpg) + +Click **Add Location**, select the **Building** category, name it (e.g. *Main Building*), and confirm. + +### 3. Add floors / levels + +![Add floors / levels (1)](/img/flows/facility/add-locations/05-loom.jpg) + +![Add floors / levels (2)](/img/flows/facility/add-locations/06-loom.jpg) + +Open the building, add a location, select the **Level** category, and name each floor (e.g. *Ground Floor*, *First Floor*). Repeat for all floors. + +### 4. Add rooms and wards + +![Add rooms and wards (1)](/img/flows/facility/add-locations/07-loom.jpg) + +![Add rooms and wards (2)](/img/flows/facility/add-locations/08-loom.jpg) + +Open a floor and add locations for rooms, functional areas, and wards (e.g. *Outpatient Pharmacy*, *Outpatient Department*, *Cardiology* ward), choosing the appropriate category for each. + +### 5. Add beds within a ward + +![Add beds within a ward (1)](/img/flows/facility/add-locations/09-loom.jpg) + +![Add beds within a ward (2)](/img/flows/facility/add-locations/10-loom.jpg) + +Open the ward, add a location with the **Bed** category, choose **multiple beds** to add several at once, and give them a consistent base name. See [Create multiple beds](./create-beds). + +### 6. Assign an organization + +![Assign an organization (1)](/img/flows/facility/add-locations/11-loom.jpg) + +![Assign an organization (2)](/img/flows/facility/add-locations/12-loom.jpg) + +In the ward, open **Manage Organization**, choose the department assignment option, select the department (e.g. *Cardiology*), and save. See [Link departments to a location](./link-departments-location). + +### 7. Verify the hierarchy + +![Verify the hierarchy](/img/flows/facility/add-locations/13-loom.jpg) + +Review that buildings, floors, wards, rooms, and beds are correctly placed before exiting. + +:::caution +Always confirm the correct **parent level** before creating a location, and verify each creation before moving on to prevent hierarchy errors. +::: + +## Related + +- Flow: [Create multiple beds](./create-beds) +- Flow: [Link departments to a location](./link-departments-location) +- Flow: [Create a department](./create-department) +- Playbook: [Facility setup](/deployments/hmis/playbooks/facility-setup) diff --git a/versioned_docs/version-3.1/flows/facility/assign-bed.mdx b/versioned_docs/version-3.1/flows/facility/assign-bed.mdx new file mode 100644 index 0000000..bfd3090 --- /dev/null +++ b/versioned_docs/version-3.1/flows/facility/assign-bed.mdx @@ -0,0 +1,42 @@ +--- +sidebar_position: 4 +--- + +# Assign a bed to a patient + +This flow assigns a room, ward, or **bed** to a patient from the encounter page, so the patient's location is recorded. + +## Before you start + +- Confirm the **correct patient encounter** is open. +- Have the intended room/bed ready; the bed must be available. + +## Steps + +### 1. Open the location area + +![Open the location area](/img/flows/facility/assign-bed/01-loom.jpg) + +On the **Patient Encounter** page, go to the right-hand side and click the **Location** button. + +### 2. Choose the area + +![Choose the area](/img/flows/facility/assign-bed/02-loom.jpg) + +Review the available facility locations (rooms, wards, etc.) and select where the patient should go (e.g. *Ground Level*). + +### 3. Select the bed and confirm + +![Select the bed and confirm](/img/flows/facility/assign-bed/03-loom.jpg) + +Pick the specific bed (e.g. *Bed 2*), click **Assign Bed**, then **Save**. Verify the assignment appears in the **Location** section of the encounter. + +:::caution +Double-check the room, ward, and bed before saving. If the bed is occupied or unavailable, choose another valid bed. +::: + +## Related + +- Flow: [Create multiple beds](./create-beds) +- Flow: [Discharge an encounter](../clinical/discharge-encounter) +- Playbook: [IP rounds](/deployments/hmis/playbooks/ip-rounds) diff --git a/versioned_docs/version-3.1/flows/facility/create-beds.mdx b/versioned_docs/version-3.1/flows/facility/create-beds.mdx new file mode 100644 index 0000000..daca9c2 --- /dev/null +++ b/versioned_docs/version-3.1/flows/facility/create-beds.mdx @@ -0,0 +1,48 @@ +--- +sidebar_position: 3 +--- + +# Create multiple beds + +This flow adds multiple **beds** to a ward in one operation, with optional custom naming. + +## Before you start + +- Decide the **bed count** and naming convention in advance. +- Confirm you are in the **correct ward** before creating beds. + +## Steps + +### 1. Navigate to the location + +![Navigate to the location](/img/flows/facility/create-beds/01-loom.jpg) + +Go to **Settings** → **Locations**, then drill into the target ward (e.g. *Main Building* → *Ground Floor* → *General Ward*). + +### 2. Start bed creation + +![Start bed creation](/img/flows/facility/create-beds/02-loom.jpg) + +Click **Add Location**. In the **Location Form**, choose **Bed** as the type, select **Create Multiple Beds**, and enter the number to create (e.g. 10). + +### 3. Customize names if needed + +![Customize names if needed](/img/flows/facility/create-beds/03-loom.jpg) + +Review the default naming (e.g. *Bed 1*–*Bed 10*) and customize individual bed names or the format if required. + +### 4. Confirm and create + +![Confirm and create](/img/flows/facility/create-beds/04-loom.jpg) + +Click **Create**, then verify the beds appear in the ward with the expected range. + +:::caution +Double-check the bed count and the location before clicking Create — beds added to the wrong ward have to be redone. +::: + +## Related + +- Flow: [Add facility locations](./add-locations) +- Flow: [Assign a bed to a patient](./assign-bed) +- Playbook: [Facility setup](/deployments/hmis/playbooks/facility-setup) diff --git a/versioned_docs/version-3.1/flows/facility/create-department.mdx b/versioned_docs/version-3.1/flows/facility/create-department.mdx new file mode 100644 index 0000000..126ebfe --- /dev/null +++ b/versioned_docs/version-3.1/flows/facility/create-department.mdx @@ -0,0 +1,44 @@ +--- +sidebar_position: 5 +--- + +# Create a department + +This flow creates a new **department** (organization/team) within a facility so it can be used for locations, services, and user assignments. + +## Before you start + +- Select the **correct facility** first. +- Prepare the department name and description, using your organization's naming conventions. + +## Steps + +### 1. Select the facility + +![Select the facility](/img/flows/facility/create-department/01-loom.jpg) + +Log in to Care and select your facility. Confirm you are in the correct location. + +### 2. Open Department settings + +![Open Department settings](/img/flows/facility/create-department/02-loom.jpg) + +Go to **Settings** → **Departments**, where department and team records are managed. + +### 3. Add a department + +Click **Add Department / Team**, enter the **name**, and add a **description** if needed. + +### 4. Create + +Click **Create Organization** to save. Wait for the success confirmation before navigating away. + +:::caution +Verify the facility before creating the department so it isn't added to the wrong location, and keep the name accurate and consistent. +::: + +## Related + +- Flow: [Manage department users](../access-governance/manage-department-users) +- Flow: [Link departments to a location](./link-departments-location) +- Playbook: [Facility setup](/deployments/hmis/playbooks/facility-setup) diff --git a/versioned_docs/version-3.1/flows/facility/link-departments-location.mdx b/versioned_docs/version-3.1/flows/facility/link-departments-location.mdx new file mode 100644 index 0000000..0443cc7 --- /dev/null +++ b/versioned_docs/version-3.1/flows/facility/link-departments-location.mdx @@ -0,0 +1,46 @@ +--- +sidebar_position: 2 +--- + +# Link departments to a location + +This flow assigns one or more **departments** to a specific **location** (e.g. a ward), so the location is associated with the right organizations. + +## Before you start + +- Prepare the list of departments to link. +- Confirm you are editing the **correct location**. + +## Steps + +### 1. Open Locations + +![Open Locations](/img/flows/facility/link-departments-location/01-loom.jpg) + +Go to **Settings** → **Locations** and select the location to update (e.g. a ward). + +### 2. Open Manage Organizations + +![Open Manage Organizations](/img/flows/facility/link-departments-location/02-loom.jpg) + +With the location selected, click **Manage Organizations** and review the assignment options. + +### 3. Select departments + +![Select departments](/img/flows/facility/link-departments-location/03-loom.jpg) + +Choose **All Organizations** (or the relevant list) and select the departments to link — e.g. add both *General Surgery* and *Cardiology* to the same ward. + +### 4. Confirm + +Verify all selected departments now appear under the location, and save/confirm if required. + +:::caution +Double-check department selections to avoid linking the wrong organization to a ward, and complete any save/confirm before leaving. +::: + +## Related + +- Flow: [Add facility locations](./add-locations) +- Flow: [Create a department](./create-department) +- Playbook: [Facility setup](/deployments/hmis/playbooks/facility-setup) diff --git a/versioned_docs/version-3.1/flows/facility/link-hfid-abdm.mdx b/versioned_docs/version-3.1/flows/facility/link-hfid-abdm.mdx new file mode 100644 index 0000000..57f8615 --- /dev/null +++ b/versioned_docs/version-3.1/flows/facility/link-hfid-abdm.mdx @@ -0,0 +1,43 @@ +--- +sidebar_position: 6 +--- + +# Link HFID for ABDM and generate QR + +This flow links the facility's **Health Facility ID (HFID)** to Care for ABDM, then generates and downloads the facility **QR code**. + +:::info Availability +Applies to **ABDM-enabled deployments**. Have the correct HFID ready before starting. +::: + +## Before you start + +- You need access to **Settings → General**. +- Confirm the HFID value is correct. + +## Steps + +### 1. Open health facility configuration + +![Open health facility configuration](/img/flows/facility/link-hfid-abdm/01-loom.jpg) + +Go to **Settings** → **General** → **Configure Health Facility**. + +### 2. Add the HFID and link + +![Add the HFID and link](/img/flows/facility/link-hfid-abdm/02-loom.jpg) + +Enter the **Health Facility ID (HFID)**, click **Health Facility**, then **Link Health Facility**. On success, the system generates a facility **QR code**. + +### 3. Download the QR code + +Use the **Download** option to save the generated QR code, and store it for future use or display. + +:::caution +Confirm the HFID is correct before linking, and don't download the QR until linking succeeds. If a QR already exists, confirm it matches the correct facility. +::: + +## Related + +- Flow: [Create a department](./create-department) +- Playbook: [Facility setup](/deployments/hmis/playbooks/facility-setup) diff --git a/versioned_docs/version-3.1/flows/laboratory/_category_.json b/versioned_docs/version-3.1/flows/laboratory/_category_.json new file mode 100644 index 0000000..53bcdbc --- /dev/null +++ b/versioned_docs/version-3.1/flows/laboratory/_category_.json @@ -0,0 +1,5 @@ +{ + "label": "Laboratory", + "position": 8, + "key": "laboratory-flows" +} diff --git a/versioned_docs/version-3.1/flows/laboratory/collect-specimen.mdx b/versioned_docs/version-3.1/flows/laboratory/collect-specimen.mdx new file mode 100644 index 0000000..a23870d --- /dev/null +++ b/versioned_docs/version-3.1/flows/laboratory/collect-specimen.mdx @@ -0,0 +1,36 @@ +--- +sidebar_position: 2 +--- + +# Collect a specimen + +This flow records **specimen collection** against a reviewed lab request, so result entry can begin. + +## Before you start + +- The request must already be [reviewed](./review-lab-request). +- Have the specimen details ready (type, quantity, source, fasting status). + +## Steps + +### 1. Record specimen collection + +Select the request record and click **Collect Specimen**. Enter the specimen details: type/quantity, collection location/source, fasting status (if applicable), and any notes. Complete all required fields before saving. + +![Record specimen collection](/img/flows/laboratory/collect-specimen/01-loom.jpg) + +### 2. Confirm collection + +Click **Collect** to confirm. Verify the collection status updates correctly in the system before continuing to result entry. + +![Confirm collection](/img/flows/laboratory/collect-specimen/02-loom.jpg) + +:::caution +Ensure fasting status, specimen source, and notes are accurate — these can affect interpretation of the results. +::: + +## Related + +- Flow: [Review a lab request](./review-lab-request) +- Flow: [Enter lab results](./enter-lab-results) +- Playbook: [Lab diagnostics](/deployments/hmis/playbooks/lab-diagnostics) diff --git a/versioned_docs/version-3.1/flows/laboratory/enter-lab-results.mdx b/versioned_docs/version-3.1/flows/laboratory/enter-lab-results.mdx new file mode 100644 index 0000000..ef86193 --- /dev/null +++ b/versioned_docs/version-3.1/flows/laboratory/enter-lab-results.mdx @@ -0,0 +1,36 @@ +--- +sidebar_position: 3 +--- + +# Enter lab results + +This flow records **test results** against a collected specimen and generates a preliminary report for review. + +## Before you start + +- The specimen must be [collected](./collect-specimen) and confirmed. +- Have the completed test values ready. + +## Steps + +### 1. Enter results and create the report + +Once the test is completed, enter the laboratory results and click **Create Report**. Input the test values, add conclusions or interpretations if applicable, and save to generate a preliminary report. + +![Enter results and create the report](/img/flows/laboratory/enter-lab-results/01-loom.jpg) + +### 2. Submit for review and approval + +Confirm a **preliminary report** has been generated. It goes to the senior lab technician or pathologist for review. + +![Submit for review and approval](/img/flows/laboratory/enter-lab-results/02-loom.jpg) + +:::caution +Do not release the report to doctors until the pathologist's approval is completed — see [Publish a lab report](./publish-lab-report). +::: + +## Related + +- Flow: [Collect a specimen](./collect-specimen) +- Flow: [Publish a lab report](./publish-lab-report) +- Playbook: [Lab diagnostics](/deployments/hmis/playbooks/lab-diagnostics) diff --git a/versioned_docs/version-3.1/flows/laboratory/publish-lab-report.mdx b/versioned_docs/version-3.1/flows/laboratory/publish-lab-report.mdx new file mode 100644 index 0000000..78724b8 --- /dev/null +++ b/versioned_docs/version-3.1/flows/laboratory/publish-lab-report.mdx @@ -0,0 +1,35 @@ +--- +sidebar_position: 4 +--- + +# Publish a lab report + +This flow covers the senior reviewer/pathologist **approving and publishing** a lab report so it becomes visible to doctors. + +## Before you start + +- A preliminary report must exist — see [Enter lab results](./enter-lab-results). +- You need reviewer/pathologist approval rights. + +## Steps + +### 1. Approve and publish + +Once the senior reviewer/pathologist approves the result, click **Approve**. The report becomes publishable — publish it so it appears in the patient record for doctors. + +![Approve and publish](/img/flows/laboratory/publish-lab-report/01-loom.jpg) + +### 2. Mark complete and verify availability + +Click **Mark as Done** (or the equivalent). Confirm the report is now available to doctors in the patient's file, and check the patient timeline to verify the lab activity and report status are recorded. + +![Mark complete and verify availability](/img/flows/laboratory/publish-lab-report/02-loom.jpg) + +:::caution +Avoid overwriting or editing approved results unless your organization's policy allows it. +::: + +## Related + +- Flow: [Enter lab results](./enter-lab-results) +- Playbook: [Lab diagnostics](/deployments/hmis/playbooks/lab-diagnostics) diff --git a/versioned_docs/version-3.1/flows/laboratory/review-lab-request.mdx b/versioned_docs/version-3.1/flows/laboratory/review-lab-request.mdx new file mode 100644 index 0000000..e0a52b4 --- /dev/null +++ b/versioned_docs/version-3.1/flows/laboratory/review-lab-request.mdx @@ -0,0 +1,32 @@ +--- +sidebar_position: 1 +--- + +# Review a lab request + +This flow covers the lab team **reviewing and verifying** a laboratory service request raised by a clinician, before specimen collection begins. + +## Before you start + +- You need access to **Laboratory Services**. +- A clinician must have already raised the request — see [Raise a lab test request](../clinical/raise-lab-request). + +## Steps + +### 1. Open Laboratory Services and view requests + +Navigate to **Services** → **Laboratory Services** and click **View Request** to display all lab requests raised by doctors. Identify the patient and test request you need to process. + +![Open Laboratory Services and view requests](/img/flows/laboratory/review-lab-request/01-loom.jpg) + +### 2. Verify the request details + +Click **See Details** for the selected request. Confirm the requested test name and any associated charge items, and double-check you have the correct patient and test before proceeding. + +![Verify the request details](/img/flows/laboratory/review-lab-request/02-loom.jpg) + +## Related + +- Flow: [Collect a specimen](./collect-specimen) +- Flow: [Raise a lab test request](../clinical/raise-lab-request) +- Playbook: [Lab diagnostics](/deployments/hmis/playbooks/lab-diagnostics) diff --git a/versioned_docs/version-3.1/flows/medications/_category_.json b/versioned_docs/version-3.1/flows/medications/_category_.json new file mode 100644 index 0000000..5a29393 --- /dev/null +++ b/versioned_docs/version-3.1/flows/medications/_category_.json @@ -0,0 +1,5 @@ +{ + "label": "Medications", + "position": 2, + "key": "medications-flows" +} diff --git a/versioned_docs/version-3.1/flows/medications/administer-medication.mdx b/versioned_docs/version-3.1/flows/medications/administer-medication.mdx new file mode 100644 index 0000000..431e4b5 --- /dev/null +++ b/versioned_docs/version-3.1/flows/medications/administer-medication.mdx @@ -0,0 +1,51 @@ +--- +sidebar_position: 2 +--- + +# View and administer medication + +This flow views a patient's prescription and records **medication administration** — typically for an inpatient encounter — so administration status and times are documented accurately. + +## Before you start + +- Confirm the correct patient. +- Have the actual administration time(s) ready, especially when recording a past event. + +## Steps + +### 1. Open Medicines + +![Open Medicines](/img/flows/medications/administer-medication/01-loom.jpg) + +On the patient dashboard, go to the **Medicines** section at the top to access prescription details and administration options. + +### 2. Open Medicine Administration + +![Open Medicine Administration](/img/flows/medications/administer-medication/02-loom.jpg) + +Review the prescription, click **Medicine Administration**, then **Administer** to begin recording the event. + +### 3. Review details and set status + +![Review details and set status](/img/flows/medications/administer-medication/03-loom.jpg) + +Confirm the prescribed **dosage** and current **status**. Update the status to reflect the actual administration outcome. + +### 4. Record a past time if needed + +![Record a past time if needed](/img/flows/medications/administer-medication/04-loom.jpg) + +If the medication was given earlier, select **Yes** for past administration and enter the exact time (and end time if applicable). Verify the entries. + +### 5. Submit + +Click **Administer Medicine** to save the record with the administration time. + +:::caution +Verify the prescription, confirm the status matches the actual action taken, and complete all required fields before submitting. +::: + +## Related + +- Flow: [Prescribe medication](./prescribe-medication) +- Playbook: [Pharmacy dispensing](/deployments/hmis/playbooks/pharmacy-dispensing), [IP rounds](/deployments/hmis/playbooks/ip-rounds) diff --git a/versioned_docs/version-3.1/flows/medications/dispense-medication.mdx b/versioned_docs/version-3.1/flows/medications/dispense-medication.mdx new file mode 100644 index 0000000..0fe8dfd --- /dev/null +++ b/versioned_docs/version-3.1/flows/medications/dispense-medication.mdx @@ -0,0 +1,72 @@ +--- +sidebar_position: 3 +--- + +# Review and dispense medication + +This flow has a **pharmacist** review a doctor's prescription, handle stock shortages via approved substitution, and dispense the medicine to the patient. + +## Before you start + +- You need access to the pharmacy queue under **Services → Pharmacy**. +- A clinician must have [prescribed](./prescribe-medication) the medication. + +## Steps + +### 1. Open the prescription list + +Go to **Services** in the left navigation, select the **Pharmacy** healthcare service, and click **View Prescriptions**. Confirm you are viewing the correct pharmacy queue. + +![Open the prescription list](/img/flows/medications/dispense-medication/01-loom.jpg) + +### 2. Review the prescription + +Choose the patient and open the doctor's order. Review the prescribed medicine(s), dosage, and special instructions, and verify it belongs to the correct patient. + +![Review the prescription](/img/flows/medications/dispense-medication/02-loom.jpg) + +### 3. Print the prescription if needed + +If required, click **Print** for a hard copy to reference during dispensing or to share with the patient. + +![Print the prescription if needed](/img/flows/medications/dispense-medication/03-loom.jpg) + +### 4. Handle stock shortages + +Check stock. If the prescribed item is **out of stock**, select an appropriate substitute with a suitable dosage form/strength, ensuring it aligns with pharmacy policy. + +![Handle stock shortages](/img/flows/medications/dispense-medication/04-loom.jpg) + +### 5. Select the medicines to dispense + +Choose the medicine(s) to dispense, including any approved substitute, and review the dosage and quantity. + +![Select the medicines to dispense](/img/flows/medications/dispense-medication/05-loom.jpg) + +### 6. Review quantity and bill + +Check the auto-calculated quantity, verify it's correct, and click **Bill Selected** to proceed. + +![Review quantity and bill](/img/flows/medications/dispense-medication/06-loom.jpg) + +### 7. Complete the dispense + +Click **Confirm Dispense** to finalize. The system marks the medicines as dispensed; verify the status updates and the record is saved. + +![Complete the dispense](/img/flows/medications/dispense-medication/07-loom.jpg) + +### 8. Verify completion + +Open the **Completed** section to confirm the prescription is listed as completed. Use this to audit recent dispensing activity. + +![Verify completion](/img/flows/medications/dispense-medication/08-loom.jpg) + +:::caution +Verify the patient name before dispensing, and don't substitute a medicine unless permitted by pharmacy policy. If medicines can't be dispensed, the prescription can be printed and shared with the patient. +::: + +## Related + +- Flow: [Prescribe medication](./prescribe-medication) +- Flow: [View and administer medication](./administer-medication) +- Playbook: [Pharmacy dispensing](/deployments/hmis/playbooks/pharmacy-dispensing) diff --git a/versioned_docs/version-3.1/flows/medications/prescribe-medication.mdx b/versioned_docs/version-3.1/flows/medications/prescribe-medication.mdx new file mode 100644 index 0000000..2bb3556 --- /dev/null +++ b/versioned_docs/version-3.1/flows/medications/prescribe-medication.mdx @@ -0,0 +1,50 @@ +--- +sidebar_position: 1 +--- + +# Prescribe medication + +This flow creates a **medication request** from the encounter page. On submission the prescription is routed automatically to pharmacy. + +:::caution Patient safety +Verify patient identity and check the existing [allergy](../clinical/manage-allergy) list before prescribing. Double-check medicine name, dosage, frequency, and duration — once submitted, the request goes to pharmacy and corrections need a follow-up. +::: + +## Before you start + +- Open the correct patient encounter. +- Have the prescription details ready (drug, dose, frequency, duration). + +## Steps + +### 1. Start a medication request + +![Start a medication request](/img/flows/medications/prescribe-medication/01-loom.jpg) + +On the **Patient Encounter** page, click **Medication**, then begin a new **Medication Request**. + +### 2. Enter prescription details + +![Enter prescription details](/img/flows/medications/prescribe-medication/02-loom.jpg) + +| Field | Notes | +| --- | --- | +| Medicine name | The drug to prescribe | +| Dosage | Amount per administration | +| Frequency | How often it is given | +| Number of days | Duration of the course | +| Notes | Special instructions, if any | + +### 3. Submit + +Review for accuracy and click **Submit**. The request is sent and routed directly to pharmacy. + +### 4. Verify + +Go to **Medicines** to confirm the prescription appears and the order was recorded correctly. + +## Related + +- Flow: [View and administer medication](./administer-medication) +- Flow: [Submit a clinical form](../clinical/submit-clinical-forms) +- Playbook: [Pharmacy dispensing](/deployments/hmis/playbooks/pharmacy-dispensing) diff --git a/versioned_docs/version-3.1/flows/scheduling/_category_.json b/versioned_docs/version-3.1/flows/scheduling/_category_.json new file mode 100644 index 0000000..914ce8b --- /dev/null +++ b/versioned_docs/version-3.1/flows/scheduling/_category_.json @@ -0,0 +1,5 @@ +{ + "label": "Scheduling", + "position": 3, + "key": "scheduling-flows" +} diff --git a/versioned_docs/version-3.1/flows/scheduling/create-healthcare-service.mdx b/versioned_docs/version-3.1/flows/scheduling/create-healthcare-service.mdx new file mode 100644 index 0000000..d6e4c91 --- /dev/null +++ b/versioned_docs/version-3.1/flows/scheduling/create-healthcare-service.mdx @@ -0,0 +1,49 @@ +--- +sidebar_position: 3 +--- + +# Create a healthcare service + +This flow creates a new **healthcare service** in Care — naming it, assigning its type, linking a location and department, and choosing an icon — so it can be scheduled and accessed by the right users. + +## Before you start + +- You need access to **Settings → Healthcare Services**. +- The target **location** and **department** must already exist (see [Add facility locations](../facility/add-locations) and [Create a department](../facility/create-department)). + +## Steps + +### 1. Open Healthcare Services + +![Open Healthcare Services](/img/flows/scheduling/create-healthcare-service/01-loom.jpg) + +Go to **Settings** → **Healthcare Services** → **Add Healthcare Service**. + +### 2. Enter service details + +![Enter service details](/img/flows/scheduling/create-healthcare-service/02-loom.jpg) + +Type the **service name** (e.g. Laboratory) and choose the **internal type** — for example **Lab** or **Pharmacy**. + +### 3. Link the location + +![Link the location](/img/flows/scheduling/create-healthcare-service/03-loom.jpg) + +Select the **location** where the service is available (e.g. Main Building – Ground Floor) and confirm it links successfully. + +### 4. Link the department + +Select the **department** that should have access (e.g. Lab) and verify the association. + +### 5. Choose an icon and create + +Pick an **icon**, review all details, and click **Create**. Confirm the service was created. + +:::caution +Double-check the type, location, and department before creating — these determine who can access the service. Avoid duplicate services with similar names. +::: + +## Related + +- Flow: [Schedule an appointment](./schedule-appointment) +- Playbook: [Facility setup](/deployments/hmis/playbooks/facility-setup) diff --git a/versioned_docs/version-3.1/flows/scheduling/link-charge-item.mdx b/versioned_docs/version-3.1/flows/scheduling/link-charge-item.mdx new file mode 100644 index 0000000..af90eaa --- /dev/null +++ b/versioned_docs/version-3.1/flows/scheduling/link-charge-item.mdx @@ -0,0 +1,51 @@ +--- +sidebar_position: 4 +--- + +# Link a charge item to a schedule + +This flow links a **charge item definition** to a service's appointment **schedule**, so charges are applied correctly to appointments. You can also create a new charge item definition if needed. + +## Before you start + +- Identify the **charge item definition** you want to link before starting. +- Confirm you are editing the **correct service**. + +## Steps + +### 1. Open the service schedule + +![Open the service schedule](/img/flows/scheduling/link-charge-item/01-loom.jpg) + +Select the relevant service and open its **Schedule** section. + +### 2. Open Manage Charges + +![Open Manage Charges](/img/flows/scheduling/link-charge-item/02-loom.jpg) + +In the Schedule area, click **Manage Charges**. The options are: + +- **Create a charge item definition** +- **Link an existing charge item definition** + +### 3. Link an existing charge item + +![Link an existing charge item](/img/flows/scheduling/link-charge-item/03-loom.jpg) + +Choose **link an existing charge item definition** and select the appropriate item from the list. Confirm any eligibility or hospital-list/duration settings, then click **Save**. + +### 4. Confirm + +![Confirm](/img/flows/scheduling/link-charge-item/04-loom.jpg) + +Verify the success message and that the charge item definition was updated. If it didn't save, repeat the steps and confirm the correct item and settings. + +:::caution +Double-check the selected charge item and any time-based or hospital-list restrictions before saving. +::: + +## Related + +- Flow: [Schedule an appointment](./schedule-appointment) +- Flow: [Add a service request](../billing/add-service-request) +- Playbook: [Billing and payment](/deployments/hmis/playbooks/billing-and-payment) diff --git a/versioned_docs/version-3.1/flows/scheduling/manage-appointment.mdx b/versioned_docs/version-3.1/flows/scheduling/manage-appointment.mdx new file mode 100644 index 0000000..d669cbc --- /dev/null +++ b/versioned_docs/version-3.1/flows/scheduling/manage-appointment.mdx @@ -0,0 +1,53 @@ +--- +sidebar_position: 2 +--- + +# Cancel, reschedule, or check in an appointment + +This flow manages an existing patient appointment from the patient homepage — **rescheduling**, **cancelling**, or **checking in** the patient on arrival. + +## Before you start + +- Confirm the **correct appointment** before changing it. +- For check-in, the patient must be **physically present**. + +## Steps + +### 1. Open Appointments + +![Open Appointments](/img/flows/scheduling/manage-appointment/01-loom.jpg) + +From the patient homepage, click **Appointments** to view scheduled visits. + +### 2. Locate the appointment + +![Locate the appointment](/img/flows/scheduling/manage-appointment/02-loom.jpg) + +Find the appointment to modify in the active list; use the options on the right-hand side (the **three-dot menu**). + +### 3. Reschedule + +![Reschedule](/img/flows/scheduling/manage-appointment/03-loom.jpg) + +Open the three-dot menu → **Reschedule**. Pick a new date or the **next available slot** and confirm. + +### 4. Cancel + +![Cancel](/img/flows/scheduling/manage-appointment/04-loom.jpg) + +From the same menu → **Cancel Appointment**. Enter the **reason for cancellation** and confirm. Verify the appointment is marked cancelled. + +### 5. Check in + +![Check in](/img/flows/scheduling/manage-appointment/05-loom.jpg) + +When the patient arrives, open their **appointment details** and click **Check In**. Confirm the patient is checked in and ready for consultation. + +:::caution +Cancellation reasons may be used for reporting/audit — enter them accurately. Double-check date/time when rescheduling to avoid conflicts. +::: + +## Related + +- Flow: [Schedule an appointment](./schedule-appointment) +- Flow: [Create an encounter](../clinical/create-encounter) diff --git a/versioned_docs/version-3.1/flows/scheduling/schedule-appointment.mdx b/versioned_docs/version-3.1/flows/scheduling/schedule-appointment.mdx new file mode 100644 index 0000000..7a7d89a --- /dev/null +++ b/versioned_docs/version-3.1/flows/scheduling/schedule-appointment.mdx @@ -0,0 +1,44 @@ +--- +sidebar_position: 1 +--- + +# Schedule an appointment + +This flow books a patient **appointment** for a healthcare service, then confirms it, bills the charges, and prints the details. + +## Before you start + +- Confirm the correct patient profile is open. +- Know which **healthcare service** and **department** the appointment is for. The service must already exist — see [Create a healthcare service](./create-healthcare-service). + +## Steps + +### 1. Start scheduling + +![Start scheduling](/img/flows/scheduling/schedule-appointment/01-loom.jpg) + +From the **Patient Homepage**, select **Schedule Appointment**. + +### 2. Select the service and department + +![Select the service and department](/img/flows/scheduling/schedule-appointment/02-loom.jpg) + +Choose the **Healthcare Service** from the drop-down (e.g. the OPD department). The system auto-selects the available slot once the service is chosen. + +### 3. Confirm and follow up + +Review the service and assigned slot, then click **Confirm Appointment**. After booking: + +- **Bill the charges** associated with the appointment. +- **Print the appointment details** for records or the patient. + +:::caution +Review the auto-selected slot before confirming, and complete billing after scheduling so charges aren't missed. +::: + +## Related + +- Flow: [Cancel, reschedule, or check in an appointment](./manage-appointment) +- Flow: [Create a healthcare service](./create-healthcare-service) +- Flow: [Link a charge item to a schedule](./link-charge-item) +- Playbook: [Billing and payment](/deployments/hmis/playbooks/billing-and-payment) diff --git a/versioned_docs/version-3.1/flows/supply/_category_.json b/versioned_docs/version-3.1/flows/supply/_category_.json new file mode 100644 index 0000000..93d864c --- /dev/null +++ b/versioned_docs/version-3.1/flows/supply/_category_.json @@ -0,0 +1,5 @@ +{ + "label": "Supply", + "position": 7, + "key": "supply-flows" +} diff --git a/versioned_docs/version-3.1/flows/supply/product-knowledge.mdx b/versioned_docs/version-3.1/flows/supply/product-knowledge.mdx new file mode 100644 index 0000000..6f4b602 --- /dev/null +++ b/versioned_docs/version-3.1/flows/supply/product-knowledge.mdx @@ -0,0 +1,64 @@ +--- +sidebar_position: 2 +--- + +# Add product knowledge + +This flow creates a **product knowledge** entry in Care — selecting or creating a category, then entering the product details and attributes — so products (medicines, consumables, etc.) are set up consistently. + +## Before you start + +- You need access to **Settings → Product Knowledge**. +- Prepare the product details (name, code, strength, dosage form, route, storage) in advance. + +## Steps + +### 1. Open Product Knowledge + +![Open Product Knowledge (1)](/img/flows/supply/product-knowledge/01-screenshot-2026-06-17-at-3.05.38-pm.png) + +![Open Product Knowledge (2)](/img/flows/supply/product-knowledge/02-screenshot-2026-06-17-at-3.03.21-pm.png) + +![Open Product Knowledge (3)](/img/flows/supply/product-knowledge/03-screenshot-2026-06-17-at-2.56.29-pm.png) + +Go to **Settings** in the left navigation bar and select **Product Knowledge**. + +### 2. Select or create a category + +![Select or create a category (1)](/img/flows/supply/product-knowledge/04-screenshot-2026-06-17-at-2.38.40-pm.png) + +![Select or create a category (2)](/img/flows/supply/product-knowledge/05-screenshot-2026-06-17-at-2.34.16-pm.png) + +![Select or create a category (3)](/img/flows/supply/product-knowledge/06-screenshot-2026-06-17-at-2.27.03-pm.png) + +Check whether the required category exists and select it; otherwise create it first (e.g. *Medicines*, *Consumables*). In the example, **Medicine** is selected. + +### 3. Enter product details + +![Enter product details (1)](/img/flows/supply/product-knowledge/07-screenshot-2026-06-17-at-2.23.52-pm.png) + +![Enter product details (2)](/img/flows/supply/product-knowledge/08-screenshot-2026-06-17-at-2.12.21-pm.png) + +![Enter product details (3)](/img/flows/supply/product-knowledge/09-loom.jpg) + +| Field | Notes | +| --- | --- | +| Product name | The product's name | +| Strength / specification | Strength or spec | +| Code | Product code | +| Base unit | Unit of measure | +| Alternative names | Other names for the product | +| Storage guidelines | Especially important for medicines | +| Dosage form | e.g. tablet, syrup | +| Route(s) | Intended route(s) of administration | + +Verify all required fields, then save. + +:::caution +Ensure the category is correct before entering details, and double-check spelling, dosage form, and route to avoid incorrect product setup. +::: + +## Related + +- Flow: [Prescribe medication](../medications/prescribe-medication) +- Playbook: [Pharmacy dispensing](/deployments/hmis/playbooks/pharmacy-dispensing) diff --git a/versioned_docs/version-3.1/flows/supply/resource-request.mdx b/versioned_docs/version-3.1/flows/supply/resource-request.mdx new file mode 100644 index 0000000..327c94c --- /dev/null +++ b/versioned_docs/version-3.1/flows/supply/resource-request.mdx @@ -0,0 +1,73 @@ +--- +sidebar_position: 1 +--- + +# Create and track a resource request + +This flow creates a **resource request** for a patient, submits it to another facility, and tracks its status through approval or other outcomes. + +## Before you start + +- Confirm the **correct patient** before creating a request. +- Know the **receiving facility** and the reason for the request. + +## Steps + +### 1. Open the patient profile + +![Open the patient profile (1)](/img/flows/supply/resource-request/01-screenshot-2026-06-17-at-4.33.18-pm.png) + +![Open the patient profile (2)](/img/flows/supply/resource-request/02-ad2ebde86c4a423eaedd14ffedc33f03-workflows_screenshot-true.jpg) + +Search for the patient by any identifier (name, UHID, phone) and open the record. + +### 2. Start a new request + +![Start a new request](/img/flows/supply/resource-request/03-ca519c9804a746dcb692b23fd1ceb54d-workflows_screenshot-true.jpg) + +In the patient profile, find the **Request** section in the middle navigation bar and click **Create Request**. + +### 3. Select facility and type + +![Select facility and type](/img/flows/supply/resource-request/04-fa4f2eff4fbe4ba7940a9ce4128e4c3a-workflows_screenshot-true.jpg) + +Choose the destination **facility**, mark it **Emergency** if applicable, and review the status (defaults to **Pending**). + +### 4. Enter request details + +![Enter request details](/img/flows/supply/resource-request/05-13c662a3601c46bea075aa4d11819784-workflows_screenshot-true.jpg) + +Set the request **title** to the patient's requirement and enter the **reason**. + +### 5. Add contact information + +![Add contact information](/img/flows/supply/resource-request/06-ac14b889e2cc43acaa578dbde4e8d8ae-workflows_screenshot-true.jpg) + +Enter the contact details for the requesting hospital/staff (phone, etc.). If you're the requester, use **Fill My Details** to auto-populate. + +### 6. Submit + +![Submit](/img/flows/supply/resource-request/07-loom.jpg) + +Review for accuracy and click **Submit** to send the request to the selected facility. + +### 7. Track and update status + +![Track and update status](/img/flows/supply/resource-request/08-loom.jpg) + +Monitor the request. If it's approved offline (e.g. by phone), update the status manually via **Update Request**. + +### 8. Review incoming and outgoing requests + +![Review incoming and outgoing requests](/img/flows/supply/resource-request/09-loom.jpg) + +From the left navigation bar, open **Resource** to track both outgoing and incoming requests, and follow up on anything pending too long. + +:::caution +If a request is approved offline, update the system status so records stay current. +::: + +## Related + +- Flow: [Assign a user to a patient record](../access-governance/assign-user-to-patient) +- Flow: [Create an encounter](../clinical/create-encounter) diff --git a/versioned_sidebars/version-3.1-sidebars.json b/versioned_sidebars/version-3.1-sidebars.json index 5376f67..80f2aa9 100644 --- a/versioned_sidebars/version-3.1-sidebars.json +++ b/versioned_sidebars/version-3.1-sidebars.json @@ -18,10 +18,8 @@ "collapsed": false, "items": [ { - "type": "category", - "label": "Clinical", - "key": "clinical-flows", - "items": ["flows/clinical/create-patient"] + "type": "autogenerated", + "dirName": "flows" } ] },