Submitting deducts the quantities from stock and logs each assignment (with the recipient) in the stock ledger.
Recent Assignments
Date
Item
Qty
Assigned To
By
No assignments yet.
One-time Stock Update
Enter the physical counted quantity for . Leave a field empty to keep its current value. Every change is logged in the stock ledger as a Stocktake adjustment. This screen is available only while the admin has enabled it in Settings.
Product
Category
Currently Recorded (Each)
Counted Qty (Each)
Data Ledger
Sys Timestamp
Location / Shop
Sale Date
Type
Product
Qty
Loading...
Sys Timestamp
Location / Shop
Product
Req. Qty (Each)
Approved (Each)
Status
Received On
Action
Loading...
Submitted Daily Sales
Timestamp
Shop
Sale Date
Type
Product
Qty
Shop Stock
DC Stock
Action
No records found.
Submitted Requests
0 selected
Date
Shop
Product
Req. Qty (Each)
Approved (Each)
Shop Stock
DC Stock
Status
Action
No records found.
Inventory
Click any quantity to correct it (logged as an Adjustment).Low = at/below reorder levelDC = Distribution Center
Loading...
Timestamp
Location
Product
Movement
Qty +/-
Balance
Reference
By
Action
No movements found.
Purchase Planning
Click a shop's cell to approve/create that shop's stock order for the item.Qty = suggested quantity to buy (reorder level − current stock)DC = Distribution Center (reference only) Necessary Pending Partial Approved
Loading...
Product Management
Product
UOM
Transfer Qty
Conversion
Category
Action
Loading...
Usage Reports & Insights
Crunching report data...
Daily Sales Submission Tracker
Which shops have logged at least one Daily Sales entry each day — darker green = more entries, red = nothing submitted that day.
Submitted Missing
Total Units Moved
0
Transactions
0
Top Product
—
Staff Consumption
0%
Daily Usage Trend
Units by Shop
Top 10 Products
Sale Type Split
Category Split
Automatic Insights
Apply a filter to generate insights.
Stock Movement
Total Units Moved
0
Trending Up
0
items using more lately
Needs Attention
0
forecast exceeds stock
Busiest Item
—
Units that left each shop every month (sales, transfers out, staff issues) per item. Avg/mo and Forecast use a trailing (up to 3-month) moving average. Click a row for its trend chart.
Total Units Moved
0
Trending Up
0
Needs Attention
0
Busiest Item
—
Total Movement by Shop
Top Items
Pick an item above to see its usage across every shop.
Avg/mo (all shops)
0
Forecast Next Month
0
Current Stock (total)
—
Trend
—
Usage Trend & Forecast (all shops combined)
Which shops are driving this
Settings
Roles: admin (full access), Cashier (sales + requests), Clerk (purchase requests only). Inactive users cannot log in. To sign a user out, see Login Log > Active Sessions.
Username
Role
Shop
Shop Code
Status
Action
Creating a location automatically adds it to shop-master or dc-master and wires a zero-filled column into stock-master. The first row of dc-master is the active DC.
Shops
Distribution Centers
Recipients receive their selected reports daily. Scheduling requires running setupEmailTriggers() once from the Apps Script editor (Setup.gs).
Email
Reports
Status
Action
One-time Stock Update
When enabled, cashiers and clerks see a Stock Update screen to enter their physical counts (shops count everything except Essentials; the DC counts all items). Enable it for counting day, then switch it off.
Date Format
Applies to the app display and restyles every date/timestamp column across all sheets when saved.
Session Timeout
Signs a user out automatically after this many minutes of inactivity on their device.
PDF Report Template
Applies to print-friendly PDF exports (e.g. Purchase Planning). The header and footer repeat on every page.
One-way mirror: pushes all data into a Google Sheet on the interval you set (and on demand). Set up the small Apps Script relay once (see google-relay.gs / DEPLOY.md), then paste its Web App URL + secret below. Passwords are never exported.
Manual Push
Push everything to the sheet right now (requires the URL + Sheet ID saved).
Last synced: —
Active Sessions
Every device currently signed in — like Google's "Your devices" list. A device that's still listed here even though nobody's using it (e.g. a shop terminal someone forgot to sign out of) is exactly what this is for: sign it out yourself, individually or all at once.
Full sign-in history — username, role, shop, time, and IP address.
Login Time
Username
Role
Shop
IP Address
Bulk manage any table as an Excel-compatible CSV. Download Template for blank column headers, Export Data for everything currently in that table, or Import CSV to bulk-add/update rows. Products, Stock, Shops/DCs, UOMs, Email Recipients and Users are matched and updated by their natural key (item / location+item / name / email / username); Sales Ledger, Stock Ledger and Requests are history logs, so imported rows are always added as new entries.
A full snapshot of Products, Stock, Stock Ledger, Sales Ledger, Requests, Shops/DCs, UOMs and Email Recipients as a single .xlsx file — the same layout as the Google Sheet mirror, so a downloaded backup or a hand-edited copy of it (e.g. ims_sync.xlsx) can both be used to restore. Users and app Settings are never touched by Restore, and any extra sheets in the file (e.g. personal pivot tabs) are ignored.
Backup
Download everything listed above as one Excel workbook.
Restore
This fully replaces the tables found in the file — not a merge. Any table's data recorded after the file was made will be lost for that table. Use this to roll back to a known-good snapshot, or to push corrections made in a hand-edited copy of the backup.