Home / Help Center / pos-app-pharmacy / pharmacy / Narcotics Reg.
📖 pharmacy

Narcotics Reg.

Narcotics Register is a manual receipt/issue ledger for Schedule H1, X and other controlled substances, required for regulatory compliance. Every entry — a stock receipt from a supplier or an issue against a patient prescription — automatically computes and stores a running balance for that drug and schedule class.

📍 Menu path: Pharmacy → Narcotics Reg.
👤 Who uses it: All roles with the Billing feature enabled

Overview

Every entry is one of two types: RECEIPT (stock coming in from a supplier) or ISSUE (drug dispensed to a patient); the form shows different fields for each.

The running Balance is calculated at save time from the most recent prior entry for the same Drug Name and Schedule together — RECEIPT adds the quantity, ISSUE subtracts it — and is stored on the entry, not recalculated on the fly when you view the register later.

This register is independent of Prescriptions — narcotics entries are not automatically created when a prescription is dispensed at billing; each entry must be logged here manually.

Before You Start

Step-by-Step Guide

1 Log a stock receipt

  1. Open Pharmacy → Narcotics Reg. and click "+ New Entry".
  2. Keep the RECEIPT tab selected, choose the Schedule (H1 / X / H) and enter Drug Name and Quantity (with unit) — both required.
  3. Fill in Supplier Name and Invoice No. under "Supplier (Receipt)", add a Batch Number and Remarks if relevant, then click "Record Entry".

2 Log an issue to a patient

  1. Click "+ New Entry" and switch to the ISSUE tab.
  2. Enter Drug Name and Quantity, then fill in Patient Name, Prescription No., Doctor Name and Doctor Reg. No. under "Patient & Doctor (Issue)".
  3. Click "Record Entry" — the balance for that drug/schedule is reduced by the quantity issued.

3 Review and filter the register

  1. Use the search box to filter by drug name, patient name, doctor name or batch number.
  2. Use the schedule chips (All / H1 / X / H) and the two date pickers to narrow the register to a specific class or date range.
  3. Each row shows the entry's type (green RECEIPT / red ISSUE badge), quantity with a +/− sign, and the resulting running Balance in that drug's unit.

Every Field & Button, Explained

Field / ButtonWhat it does
DateDefaults to today; can be backdated for a receipt/issue that happened earlier.
ScheduleH1, X or H — the controlled-substance schedule class this drug falls under. Balance is tracked separately per drug name + schedule combination.
Drug Name / Batch NumberDrug Name is required and used both for display and for matching prior entries when computing the running balance; Batch Number is optional free text.
TypeRECEIPT (adds to balance) or ISSUE (subtracts from balance) — chosen via the tab at the top of the New Entry form.
Quantity / UnitQuantity is required; Unit defaults to "tablets" but can be changed to any free-text unit (e.g. ml, vials).
Patient Name / Prescription No. / Doctor Name / Doctor Reg. No.Only shown and relevant for ISSUE entries.
Supplier Name / Invoice No.Only shown and relevant for RECEIPT entries.
BalanceComputed once at save time from the previous entry for the same drug + schedule (0 if there is none yet) and stored on the entry — it is not a live/recalculated total.

Tips & Best Practices

Troubleshooting & FAQ

The balance after my new entry looks wrong.
Balance is derived from the single most recent prior entry for the exact same Drug Name and Schedule — if an earlier entry used slightly different spelling/casing of the drug name, it will not be picked up as "the same drug" and the balance will restart from 0.
I deleted an entry by mistake.
Deletion is immediate and permanent — there is no undo. Note that deleting an entry does not recalculate the balances stored on any entries that came after it.