Skip to content

Inward Service and Item Requests

Dr M H B Ariyaratne edited this page Jul 3, 2026 · 3 revisions

Inward Service and Item Requests (Approval Queue)

Overview

External systems — such as a patient mobile app or a ward request terminal — can send service requests (for example Breakfast, Lunch, Dinner) and stock item requests (for example Water Bottle, Tea, Milk, Sugar) for an admitted patient's BHT. Each request arrives as a Pending entry in the receiving department's approval queue. Nothing is charged to the patient and no stock moves until a department user approves the request. This gives the department full control over what is actually supplied and billed.

When to Use

Use the Service/Item Requests queue when:

  • Your department (kitchen, ward store, housekeeping, etc.) receives meal or consumable requests from an external requesting system
  • You need to approve a request so the patient is charged and stock is issued
  • You need to reject a request that cannot be fulfilled, with a reason
  • You want to check what requests are still waiting for a decision

How It Works

Every request follows this lifecycle:

  1. Pending — the request has been received. The patient has not been charged and no stock has been deducted.
  2. Approved — a department user approved it. The patient's BHT is charged, and for stock items the department's stock is deducted at the same moment.
  3. Rejected — a department user rejected it with a reason. No charge, no stock movement.
  4. Cancelled — the requesting system withdrew the request before anyone acted on it.

Important: Charging happens only at approval. A pending or rejected request never affects the patient's bill or your stock.

How to Use

Opening the Approval Queue

  1. Log in and select the department that receives the requests (for example the kitchen store or ward store). The queue only shows requests addressed to your current login department.
  2. Click Inward in the main menu.
  3. Click Service/Item Requests (clipboard-check icon).
  4. The Pending Item/Service Requests page opens, showing your department name in the header.

Note: The menu item only appears if you hold the approval or rejection privilege — see Permissions below.

Reading the Queue

Pending approval queue showing requests routed to the department

Each row shows one pending request:

  • Request No — the request's bill number
  • BHT No and Patient Name — the admitted patient the request is for
  • Requested At / Requested By — when the request arrived and which user (API account) submitted it
  • Requested Items — the item lines with quantities (a single request can contain both services and stock items)
  • Actions — the Approve and Reject buttons

Approving a Request

  1. Check the requested items and quantities against what your department can supply.
  2. Click the Approve button (green check) on the row.
  3. Confirm in the dialog that appears.
  4. The system processes everything in one step:
    • Service items (meals etc.) are charged to the patient's BHT using the fees configured for that service.
    • Stock items are deducted from your department's stock — earliest-expiry batch first — and charged to the BHT at the batch's retail sale rate.
  5. The message "Request approved successfully." appears and the row leaves the pending queue.

After approving a stock item request — the request is removed from the queue

Important: Approval is all-or-nothing. If any line cannot be fulfilled (for example not enough stock), the whole approval is cancelled — nothing is charged and no stock moves. Fix the stock situation or reject the request instead.

Insufficient stock blocks the whole approval with a clear message

Rejecting a Request

  1. Click the Reject button (red cross) on the row.
  2. The Reject Request dialog opens.
  3. Type the reason in Reason for Rejection — this is mandatory and is sent back to the requesting system.
  4. Click Confirm Reject.
  5. The message "Request rejected." appears and the row leaves the queue. The patient is not charged.

Reject dialog — a rejection reason is required

Understanding Messages

Success Messages

  • "Request approved successfully." — the patient has been charged and (for stock items) stock has been deducted.
  • "Request rejected." — the request was closed with your reason; no charge, no stock change.

Error Messages

  • "Approval failed: Insufficient stock for item: …" — your department does not have enough stock of the named item. Nothing was charged or deducted. Receive stock first, or reject the request.
  • "Request is already approved/rejected/cancelled, cannot approve" — another user (or the requesting system) acted on this request first. Refresh the queue.
  • "Approval failed: No fee configured for service item: …" — the named service item has no fee set up, so the system cannot price it. Ask your administrator to configure the item's fee, then approve again. Nothing was charged.
  • "This request belongs to another department's queue." — you are logged in to a different department than the one the request was sent to. Switch to the correct department and reopen the queue.
  • "Rejection reason is required" — you clicked Confirm Reject without typing a reason.
  • "You do not have privileges to approve/reject item/service requests." — ask your administrator to grant the privilege (see below).

Best Practices

  • Decide promptly — the requesting system polls for the outcome; patients may be waiting on a meal or item.
  • Check stock before approving stock-item requests; an insufficient-stock failure blocks the whole request, including any service lines in it.
  • Write meaningful rejection reasons — the reason is returned to the requesting system and may be shown to the requester.
  • Log in to the correct department — you only ever see requests addressed to your current login department.

Permissions (Admin)

Two privileges control this feature, granted per user per department in the usual privilege management screens:

  • Inward Service Item Request Approval — user can approve pending requests
  • Inward Service Item Request Rejection — user can reject pending requests

The Service/Item Requests menu item is visible only to users holding at least one of these privileges. See Assigning Privileges to a Role.

Setup (Admin)

Before requests can flow, the requestable items must exist:

  1. Service items (Breakfast, Lunch, Dinner, …) — create them as inward services with fees configured. A service item without any configured fee cannot be approved — approval fails with a "No fee configured for service item" message until a fee is set up.
  2. Stock items (Water Bottle, Tea, Milk, Sugar, …) — create them as normal stock-tracked items and receive stock into the target department through the usual GRN flow. Approval deducts from that department's stock and charges the batch retail sale rate.
  3. API key — issue an API key to the external requesting system (Admin → API Key Management). See the Inward Item Request API page for the integration details.

FAQ

Q: Can I approve only some lines of a request? A: No. A request is approved or rejected as a whole. If only part can be supplied, reject it with a reason and ask the requester to resubmit the fulfillable part.

Q: Can the requesting system approve its own requests? A: No. Approval and rejection are only possible inside HMIS, by a privileged department user. The external system can only submit, view, and cancel its own pending requests.

Q: What if two users click Approve at the same time? A: Only the first approval succeeds; the second user sees "Request is already approved, cannot approve". The patient is never charged twice.

Q: When exactly is the patient charged? A: Only at the moment of approval. The charge appears against the BHT like other inward charges and is included in interim/final bills as usual.

Q: Can a rejected request be re-approved? A: No. Rejection is final for that request. The requesting system must submit a new request.

Related Features

Clone this wiki locally