You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 10 Next »

VersionDateChanged BySummary of Changes
0.116th September 2026Pranoti MondeInitial draft. Item Master changes for Non-Medical items (2.2.A). Device Master, Device Inventory, Device AMC/Warranty and Device to Camp/Store Mapping (2.2.B–E).
0.214th October 2026Ganesh ShirpureUpdated Purpose (1.1) and added Scope (1.2). Added Hierarchy Node Master (2.2.F), Node to Store Mapping (2.2.G), User Management changes (2.2.H), Role & Privilege Matrix (2.2.I), and one-time Bulk Item Upload (2.2.J). Added Reports & Audit (3) and Acceptance Criteria & Open Questions (4). Corrected section numbering from 2.3.x to 2.2.x.

1. Introduction

1.1 Purpose

This document captures the business requirements for the Inventory Management module spanning the admin Portal and camp-level local servers (camp laptops), the synchronization between them, the backend APIs supporting the StopTB drug master and local stock management. It also covers the creation of a National → State → District → Block hierarchy mapped to the StopTB programme states, level-based user management with role-wise privileges, and a one-time bulk upload of items into the Item Master using an Excel template.


1.2 Scope

  • Creation of a four-level hierarchy (National → State → District → Block) mapped to the 10 StopTB programme states
  • Mapping of existing stores to hierarchy nodes
  • User creation at each level, with each user mapped to one hierarchy node and one role
  • Role-wise privileges, controlling what each user can view and do based on their level and role
  • Data visibility restricted to the user’s own node and the levels below it
  • One-time bulk upload of items into the Item Master using an Excel template, with validation and an error report
  • Audit log of hierarchy, user and bulk upload actions

2. Required Changes in AMRIT Inventory Management Module 

2.1 Purpose of This Section

The existing AMRIT platform already has a live Inventory Management Module, with an Admin Portal for master-data configuration. Highlighting the sections that will get added to the flow : 

  • Supplier Master (No change in the form)
  • Manufacturer Master (No change in the form)
  • Pharmacological Category Master (No change in the form)
  • New Form : Device Master - Refer Section 2.2.B
  • Item Category Master (Can include category name like X-Ray machine, PPE kit)
  • Unit of Measure Master (No change in the form)
  • Item issue method config (No change in the form)
  • Expiry date alert config (No change in the form)
  • Item Master (Changes suggested) - Refer Section 2.2.A
  • New Function: Bulk Item Upload (one-time, via Excel) – Refer Section 2.2.J
  • New Form : Device Inventory - Refer Section 2.2.C
  • New Form : Device AMC/Warranty (linked to Device Inventory) - Refer Section 2.2.D
  • Facility type master 
  • Main store and substore
  • New Form: Node to Store Mapping – Refer Section 2.2.G
  • Item to Store Mapping
  • Item to facility mapping
  • New Form : Device to Camp/Store Mapping - Refer Section 2.2.E
  • Van/parking place to store mapping.
  • User Management (Changes suggested) – Refer Section 2.2.H
  • New Config: Role & Privilege Matrix – Refer Section 2.2.I

This BRD is not proposing a new module from scratch - it is defining the changes required on top of what already exists. This section exists specifically to answer that question for the Admin Portal component, where all inventory master data is configured and from which it synchronizes out to various service line.

2.2 Section wise Detailing 

2.2.A. Item Master (existing form, changes only)

Item Type stays a two-way radio (Medical / Non-Medical) - Device is deliberately not a third Item Type; it is handled by the new masters in Tables 2.3.2 & 2.3.3


Name of Data FieldField TypeValue/OptionsValidation/Logic/Condition
Item TypeRadio button
  • Medical
  • Non-Medical
  • Mandatory
Item CategoryDropdown (single-select)e.g. Drugs, Non-Medical Consumables, Lab Devices, Devices/Equipment, PPE
  • Mandatory. 
  • Moved to sit directly next to Item Type in the field sequence.
Item CodeText—
  • Mandatory.
  • Must be unique.
Item NameText—
  • Mandatory.
  • Existing validation.
Snomed CT Code
—Enabled only when Item Type = Medical.
Snomed CT Term
—Enabled only when Item Type = Medical.
Strength
—Enabled/mandatory only when Item Type = Medical.
UOM
  • Medical: mg, ml.
  • Non-Medical: Piece, Number, Box/Kit
Shown for both Medical and Non-Medical
Drug List Type
—Enabled only when Item Type = Medical.
Item Form
—Enabled only when Item Type = Medical.
Pharmacology Category
—Enabled only when Item Type = Medical.
ManufacturerDropdown/TextFrom Manufacturer MasterMandatory for all Item Types.
Drug Type
  • Scheduled
  • Non-Scheduled
Enabled only when Item Type = Medical.
Composition

Enabled/mandatory only when Item Type = Medical.
Route Of Admin

Enabled only when Item Type = Medical.
Item DescriptionText (multi-line)Free textOptional, shown for all Item Types.

2.2.B. Device Master (NEW)

Generic device catalog, e.g. "Truenat Device," "X-ray Device," "Glucometer." Consumables tied to a device (e.g. glucometer strips) are not here - they stay in regular Item Master.

Name of Data FieldField TypeValue/OptionsValidation/Logic/Condition
Device Code TextFree text
  • Mandatory
Device NameTexte.g. Truenat Device, X-ray Device, Glucometer
  • Mandatory
  • Generic/model-level name, not a per-unit record.
Device DescriptionText (multi-line)Free textOptional


2.2.C. Device Inventory (NEW)

Item Master → Device Inventory (NEW) — the specific, physical units owned (e.g. this facility's actual glucometer unit).

Name of Data FieldField TypeValue/OptionsValidation/Logic/Condition
Device Master ReferenceDropdownFrom Device Master
  • Mandatory.
  • Links this unit to its generic device type.
Device Number / Serial NumberTextFree text
  • Mandatory.
  • Distinguishes multiple units of the same device model.
ManufacturerDropdown/TextFrom Manufacturer Master
  • Mandatory.
Device Brand NameTextFree textOptional.
SupplierDropdownFrom Supplier MasterOptional.
Date of PurchaseDate pickerDateOptional.
CostNumericCurrency valueOptional.
AMC Cost (summary)NumericCurrency valueOptional — quick-reference figure; full AMC details captured separately in Table D.


2.2.D. Device AMC/Warranty (NEW, separate form, linked to Device Inventory)

Name of Data FieldField TypeValue/OptionsValidation/Logic/Condition
Device Inventory ReferenceDropdownFrom Device Inventory (Device Number)Mandatory.
AMC VendorDropdown/TextFrom Supplier Master or free textOptional.
AMC Start DateDate pickerDateOptional.
AMC End DateDate pickerDate

Optional.

Should trigger an expiry-style alert similar to batch expiry, but for AMC/warranty lapse.

AMC CostNumericCurrency valueOptional.
Asset StatusDropdown
  • Active
  • Under Maintenance 
  • Condemned
  • Mandatory (per NTEP condemnation guidance)

 

2.2.E. Device to Camp/Store Mapping 

Name of Data FieldField TypeValue/OptionsValidation/Logic/Condition
Device Inventory ReferenceDropdownFrom Device Inventory (Device Number)Mandatory.
Store/FacilityDropdownFrom Facility Type Master / Main Store & SubstoreMandatory.
Assigned DateDate pickerDateOptional.
Mapping StatusDropdown
  • Active
  • Transferred
  • Returned
Optional.

2.2.F. Hierarchy Node Master

This form defines the four-level hierarchy (National → State → District → Block) that the inventory module currently lacks. There is one National node, with the 10 StopTB programme states under it. Each State has its districts under it, and each District has its blocks. Every node will later be linked to a store (Section 2.2.G), and users are mapped to these nodes (Section 2.2.H).

Name of Data FieldField TypeValue/OptionsValidation/Logic/Condition
Hierarchy LevelDropdown (single select)National, State, District, BlockMandatory.
Node CodeTextFree text, e.g. NAT-01, MH, MH-PUN, MH-PUN-HVLMandatory. Must be unique.
Node NameTextFree text, e.g. Maharashtra, Pune, HaveliMandatory.
Parent NodeDropdownNodes from one level aboveMandatory for State, District and Block. Disabled for National. Only nodes one level above can be selected (State → National, District → State, Block → District).
Location Code (LGD)DropdownFrom existing AMRIT State / District / Block location masterMandatory for State, District and Block. Reuse the existing location master; do not create duplicate locations.
ProgrammeDropdown (multi-select)StopTB (TBMJA); others in futureMandatory. Only StopTB-tagged nodes appear in StopTB screens.
StatusDropdownActive, InactiveMandatory. Default Active. An inactive node cannot have new users mapped to it.

Rules

  • Only one National node can exist.
  • National Admin can create and edit State nodes. State Admin can create and edit District and Block nodes only within their own state.
  • A node cannot be inactivated while active users are mapped to it.
  • A node cannot be deleted once created. It can only be inactivated.

2.2.G. Node to Store Mapping

This form links each hierarchy node to a store in the existing Main Store / Substore master. Existing stores, stock and reports keep working unchanged. Each node gets one main store, and Blocks can also have substores.

Name of Data FieldField TypeValue/OptionsValidation/Logic/Condition
Hierarchy NodeDropdownFrom Hierarchy Node Master (2.2.F)Mandatory. Only Active nodes shown.
StoreDropdownFrom existing Main Store / Substore masterMandatory. A store can be mapped to only one node.
Store RoleDropdownMain, SubMandatory. Each node can have only one active Main store.
Effective FromDate pickerDateMandatory. Default today. Cannot be a future date.
StatusDropdownActive, InactiveMandatory. Default Active.

Rules

  • Every Active node must have exactly one Active Main store before users can be mapped to it.
  • National Admin can map stores for National and State nodes. State Admin can map stores for District and Block nodes within their own state.
  • Changing a node’s Main store keeps the old mapping as Inactive, so the history is kept.
  • A store cannot be unmapped while it holds stock. This check applies once stock transfer is introduced.

2.2.H. User Management (existing form, changes only)

The existing user creation form gets new fields so that each user is mapped to one hierarchy node and one role. The node controls what data the user can see: their own node and everything below it. The role controls what the user can do (Section 2.2.I).

Name of Data FieldField TypeValue/OptionsValidation/Logic/Condition
Full NameTextFree textMandatory. Existing field, no change.
Mobile NumberNumeric10 digitsMandatory. Must be unique. Used for OTP and password reset.
Email IDTextEmail formatOptional. Needed for email alerts.
UsernameTextAuto-suggested, editableMandatory. Must be unique. Existing field, no change.
DesignationDropdowne.g. State Programme Officer, DTO, Pharmacist, STS, Block Store In-chargeMandatory.
Hierarchy LevelDropdownNational, State, District, BlockNEW. Mandatory.
Hierarchy NodeDropdownFrom Hierarchy Node Master (2.2.F), filtered by the selected levelNEW. Mandatory. Shows only nodes within the logged-in admin’s own hierarchy.
RoleDropdownRoles valid for the selected level (2.2.I)NEW. Mandatory.
StoreAuto-filledMain store of the selected node (2.2.G)NEW. Read-only.
StatusDropdownActive, Inactive, LockedMandatory. Default Active.

Rules

  • An admin can create users only at their own level or below, and only within their own hierarchy. National Admin can create users at any level. State Admin can create users only for their own state and the districts and blocks under it.
  • Each user is mapped to one node and one role.
  • When a staff member is transferred, the admin re-maps the user to the new node. The old mapping and all transactions done under it are kept.
  • Inactivating a user does not delete their past transactions.
  • After login, the user sees data only for their own node and the nodes below it. This restriction must be enforced in the backend APIs, not only on screen.

2.2.I. Role & Privilege Matrix (NEW)

This config defines the roles available at each hierarchy level and what each role can do. Super Admin can edit the matrix. The defaults are below.

Roles

RoleHierarchy LevelMain Responsibility
Super AdminPlatformConfigures roles, privileges and system settings (AMRIT/Piramal team).
National AdminNationalManages Item Master, bulk item upload, State nodes and State users.
State AdminStateCreates District and Block nodes and users within own state.
National Store ManagerNationalManages the national store.
State Store ManagerStateManages the state store.
District Store ManagerDistrictManages the district store.
Block Store UserBlockManages the block store.
ViewerAny levelRead-only access to masters and reports for own node and below.

Privilege Matrix

Y = allowed for all nodes, Sub = own node and nodes below, Own = own node only, – = not allowed.

PrivilegeSuper AdminNational AdminState AdminNational Store MgrState Store MgrDistrict Store MgrBlock Store UserViewer
Configure roles and privilegesY–––––––
Create / edit National nodeY–––––––
Create / edit State nodesYY––––––
Create / edit District and Block nodesYYSub–––––
Node to Store MappingYYSub–––––
Create / edit usersYYSub–––––
Item Master: create / editYY––––––
Bulk Item UploadYY––––––
Item Master: viewYYYYYYYY
View stock and reportsYSubSubOwnSubSubOwnSub
View audit logYSubSub–––––

Rules

  • A role can only be assigned to a user at a matching hierarchy level. For example, State Admin can only be assigned to a State-level user.
  • A user can never see or select a node outside their own hierarchy in any dropdown, report or API.
  • Privileges for stock transfer (dispatch, receipt, block stock entry) will be added to this matrix when that BRD is taken up.


2.2.J. Bulk Item Upload (One-time activity)

This function lets National Admin load the full item list into the Item Master in a single upload, instead of entering items one by one. Items uploaded at central level apply to the national store and all StopTB states. The template columns match the Item Master fields in Section 2.2.A, and the same mandatory rules apply. Medical-only columns can be left blank for Non-Medical items.

Excel template columns

Name of Data FieldField Type (in Excel)Value/OptionsValidation/Logic/Condition
Item TypeDropdown listMedical, Non-MedicalMandatory.
Item CategoryDropdown listFrom Item Category MasterMandatory. Must match an existing category.
Item CodeTextFree textMandatory. Unique within the file and against existing Item Master.
Item NameTextFree textMandatory.
SNOMED CT CodeTextFree textOptional for Medical. Leave blank for Non-Medical.
SNOMED CT TermTextFree textOptional for Medical. Leave blank for Non-Medical.
StrengthTexte.g. 500Mandatory when Item Type = Medical. Leave blank for Non-Medical.
UOMDropdown listFrom Unit of Measure MasterMandatory for all item types.
Drug List TypeDropdown listFrom existing masterOptional for Medical. Leave blank for Non-Medical.
Item FormDropdown listFrom existing master, e.g. Tablet, SyrupOptional for Medical. Leave blank for Non-Medical.
Pharmacology CategoryDropdown listFrom Pharmacological Category MasterOptional for Medical. Leave blank for Non-Medical.
ManufacturerDropdown listFrom Manufacturer MasterMandatory for all item types. Must match an existing manufacturer.
Drug TypeDropdown listScheduled, Non-ScheduledOptional for Medical. Leave blank for Non-Medical.
CompositionTextFree textMandatory when Item Type = Medical. Leave blank for Non-Medical.
Route of AdminDropdown listFrom existing masterOptional for Medical. Leave blank for Non-Medical.
Item DescriptionTextFree textOptional for all item types.

Upload process

  1. National Admin opens Bulk Item Upload and downloads the Excel template. The template contains the column headers, mandatory columns marked with *, dropdown lists for master values, and one sample row each for Medical and Non-Medical.
  2. Admin fills in the items and uploads the file (.xlsx only, max 5,000 rows and 10 MB).
  3. The system validates every row and shows a preview with counts of valid rows, error rows and duplicate rows.
  4. If there are errors, the admin downloads an error file. It contains the original rows plus an “Error Reason” column, so the admin can correct the rows and re-upload.
  5. The admin clicks Confirm. Nothing is saved if any row has an error (all-or-nothing).
  6. The system saves the items and shows a summary of rows added. The upload is recorded in the audit log along with the uploaded file.

Rules

  • Only Super Admin and National Admin can use Bulk Item Upload (Section 2.2.I).
  • Column headers and their order must match the template exactly, otherwise the file is rejected.
  • Dropdown values must match existing master values. Matching is case-insensitive.
  • An Item Code that already exists in Item Master is rejected as a duplicate. This upload adds new items only and does not update existing ones.
  • Master values used in the file must already exist, for example Manufacturer, Category and UOM. Add any missing masters before uploading.
  • Items added through bulk upload can be edited later through the normal Item Master form.

3. Reports & Audit

These reports cover the hierarchy, users and bulk upload. Each user sees data only for their own node and the nodes below it. All reports can be exported to Excel and PDF.

3.1 Reports

Report NameContentFiltersPrimary Users
Hierarchy Node ListAll nodes with level, code, name, parent node, mapped main store and statusLevel, State, District, StatusSuper Admin, National Admin, State Admin
Nodes Without Store MappingActive nodes that have no Active Main store, which blocks user mappingLevel, StateNational Admin, State Admin
User ListUsers with name, mobile, designation, level, node, role and statusLevel, Node, Role, StatusSuper Admin, National Admin, State Admin
User ActivityUsers per node, last login date, and users who have not logged in for 30 daysLevel, Node, Role, Date rangeSuper Admin, National Admin, State Admin
Item Master ListAll items with type, category, code, name, UOM, manufacturer and source (manual entry or bulk upload)Item Type, Category, SourceAll roles
Bulk Upload LogEach upload with date, uploaded by, file name, total rows, rows added, rows rejected and statusDate range, Uploaded by, StatusSuper Admin, National Admin

3.2 Audit Trail

Action LoggedDetails Captured
Hierarchy node created / edited / inactivatedUser, date-time, node, old value, new value
Node to Store mapping created / changedUser, date-time, node, old store, new store
User created / edited / re-mapped / inactivatedUser who made the change, date-time, affected user, old value, new value
Role and privilege changesUser, date-time, role, privilege changed, old value, new value
Bulk item uploadUser, date-time, file name, row counts, the uploaded file and the error file
Item Master create / editUser, date-time, item code, old value, new value
Login / logout / failed loginUser, date-time, IP address

Rules

  • The audit log is read-only and cannot be edited or deleted by any role.
  • The audit log is kept for at least 5 years (to be confirmed with the programme team).
  • Super Admin can view the full audit log. National Admin and State Admin can view it only for their own node and the nodes below.

Format of exising inventory:


  • No labels