Bed Management

Last updated: 26 July 2026

Overview

The Bed Management module manages hospital locations — wards, operation theaters, beds, and rooms. Beds are created within wards, assigned to patients during IPD admission, and released at discharge or transfer. The entire system uses FHIR Location resources for interoperability with ABDM.

Bed status is tracked via operational status, which has two states: Unoccupied (available) and Occupied (patient assigned).

Creating Wards and Locations

Before adding beds, create the wards or locations that contain them.

Access: Admin Dashboard > Bed Management > Create Ward (/admin/admin/bed-management/ward/create)

Form Fields

FieldRequiredDescription
Location TypeYesWard, Operation Theater, Radiology, Pharmacy, Blood Bank, Store, or IT
Location NameYesName of the ward or location, e.g., "General Ward - Floor 1", "Main OT"
StatusYesactive, inactive, or suspended

Location types are configured in the system and include all physical areas that can contain beds.

Creating Beds and Rooms

Once wards exist, add beds or rooms inside them.

Access: Admin Dashboard > Bed Management > Create Bed (/admin/admin/bed-management/bed/create)

Form Fields

FieldRequiredDescription
Choose WardYesSelect the parent ward. Only locations with type "Ward" are shown in this dropdown (not OT, Radiology, Pharmacy, etc.)
Name of Bed or RoomYese.g., "Bed 1", "ICU Bed A", "Room 101"
StatusYesactive, inactive, or suspended

When a bed is created, its operational status defaults to Unoccupied (available for allotment).

How Locations are Stored

  • Wards and beds are stored as FHIR Location resources.
  • A ward has type = "Ward". A bed has type = "Bed" and partOfLocationId pointing to its parent ward.
  • Beds are searched by FHIR query: type=Bed&organization={orgId}.

Allotting a Bed to a Patient

Assigning a bed to a patient links the bed to their active encounter.

Access: Patient's record > Allot Bed (/admin/patient/bed/allot/{patientid}?bedid={bedid})

How Allotment Works

  1. The patient must have an active (open) encounter — typically created at IPD admission.
  2. Select a bed. The system checks that the bed is Unoccupied before the allotment proceeds.
  3. If the patient already occupies another bed, the previous bed is released (marked Unoccupied) and its location entry in the encounter is marked "completed" with an end date.
  4. The new bed is marked Occupied and added to the encounter as an active location.
  5. The encounter's location entry records the bed as {WardName}-{BedName} in the physical type field.

Roles Allowed

Bed allotment is not admin-only. The following roles can allot beds: admin, director, accountant, nurse, receptionist_accountant, receptionist, insurance_lead, insurance_executive.

Releasing a Bed

Beds are released in two scenarios:

  • At discharge: The bed is freed and returns to Unoccupied.
  • During transfer: The old bed is released as part of the new allotment process (see above).

The release API sets the bed's operational status back to Unoccupied. This is called automatically during bed transfer and should be called manually or as part of the discharge workflow.

API: POST /api/admin/allot-bed/release-bed with the bed's location ID.

How Bed Status Connects to IPD

Bed status flows through the encounter lifecycle:

IPD Admission → Encounter created (in-progress)
       ↓
Allot Bed → Bed marked Occupied, linked to encounter
       ↓
Bed Transfer → Old bed Released, new bed Occupied
       ↓
IPD Discharge → Bed Released, Unoccupied

The encounter's location array tracks all beds occupied during the stay, with start and end timestamps for each.

See IPD Admission, IPD Bed Transfer, and IPD Discharge for the full IPD workflow.

FAQ

Q: Can I bulk-create beds? A: Beds are created one at a time through the form. For bulk setup during implementation, contact support for data migration.

Q: What is the difference between bed status and operational status? A: The Location's status (active/inactive/suspended) controls whether the bed appears in dropdowns and search. Operational status (Unoccupied/Occupied) tracks whether a patient is currently assigned.

Q: Can a bed be reserved in advance? A: There is no reservation feature in the current version. Beds go directly from Unoccupied to Occupied at allotment time.

Q: How do I deactivate a bed? A: Only an admin can edit a bed. Go to the bed edit page and set its status to "inactive". It will not appear in bed selection dropdowns but stays in historical records.

Q: What happens if I try to allot an already occupied bed? A: The allotment API checks that the bed's operational status is Unoccupied before proceeding. If occupied, it returns an error: "One of the bed Chosen is not Unoccupied."

Was this page helpful?
NICE HMS. 1st Gate Nehru Stadium, City Hubballi, District Dhrawad, State Karnataka, 580020
INDIA, Phone : +919611560555 email admin@nicehms.com, GST 29AEYPB4702Q1ZS
facebook
twitter
linkedin
youtube
RSS