Dashboard

Unified view of balances, cash flow, alerts and inventory.

v3.1.0
Preparing dashboard shell
Background preload idle
No pending changes
Checking sign-in and access rules

Background Activity

Mess-first operations, with real controls.

Track shared purchases, partial payments, operating expenses, stock movement, reminders, invoices, and backups from one signed-in Apps Script dashboard.

Business Name
Shared Mess
Fixed Cook
Salman Shahid
Alerts in selected period
0
Total Expense
PKR 0
Money In
PKR 0
Money Out
PKR 0
Outstanding
PKR 0
Net Balance
PKR 0
Active Members
0

Member Ledger

Member Credit Share Usage Net Paid Remaining Status

Smart Alerts

Type Severity Details

Cash Flow Trend

Date Money In Money Out Net

Top Members Snapshot

Category Member Value

Bulk Shopping Entry

Shopping Items
Item Category Type Qty Unit Amount

Cash Contribution


Payment Recording


Expense Tracking


Payment History

ID Date Member Amount Method Status Reference Action

Kitchen Consumption


Per-Person Consumption


Tandoor Bread Meal

Member Bread Eaten Charge Absent
No bread meal entered

Editable Entries

Edit buttons copy entry values back into the matching form. Delete requires PIN when configured.

Purchases & Cash Entries

Date Month Item Quantity Amount By Source Action

Consumption Entries

Date Month Meal Menu Item Quantity Action

Per-Person Entries

Date Month Meal Member Item Quantity Action

Full Ledger & Transaction History


History Summary

0 rows
In: PKR 0
Out: PKR 0
Charges: PKR 0
Date Type Member Amount Direction Status Method Reference Action

Item Management


Quick Masters

Inventory Stock

Item Category Purchased Used Current Unit Status

Reminder Queue


Automation & Integrations

WhatsApp reminders prepare share links by default. SMS reminders send through a configured external gateway.

SMS: Off
WhatsApp API: Off

Reminder Log

ID Member Channel Scheduled Status Period Error

Report Exports

Period Snapshot

Bucket Money In Money Out Net

Full Usage Guide

This guide is the in-app playbook for owners, managers, and viewers. Follow it when setting up a new mess, training a new staff member, or reviewing what each table and form means. The app is designed so daily work happens from Dashboard, Transactions, Operations, History, Inventory, Reports, and Reminders, while Admin controls access, settings, security, and backups.

Step 1 Give staff email access first
Step 2 Save business settings and PIN
Step 3 Enter purchases, cash, payments, and usage
Step 4 Read dashboard, history, inventory, and reports
Admin

Full control. Can manage staff access, business settings, integrations, PIN, backups, restores, and all operational entries.

Manager

Can work with day-to-day mess records like purchases, cash, payments, expenses, and consumption, but cannot manage admin-only configuration.

Viewer

Read-only role for checking dashboard numbers, history, inventory, and reports without changing the source data.

Access Create access for a new user How a new owner, manager, or staff member gets into the app and what they must use to sign in.
+
  1. The app does not create a local username and password account inside the UI. Every user opens the deployed web app with a Google account.
  2. If this is the first owner, deploy the Apps Script web app for signed-in users and open it once with the main Google account linked to the spreadsheet.
  3. Go to Admin -> Staff Access and enter the staff member email exactly as their Google sign-in email.
  4. Choose the role: Admin, Manager, or Viewer.
  5. Use Members or Staff Access to add the exact email, then send an invitation so the person verifies that mailbox before the assigned role unlocks.
  6. If you send an invitation, the staff member must sign into Google with that exact email and click Accept Invitation from the email. Their role becomes active as soon as the app opens that link.
If an email is not verified, the user only gets the dashboard while they finish invitation acceptance. If you set an Admin PIN, sensitive actions such as deletes, settings changes, and backups also require that PIN.
Setup First-day setup for a new mess What to configure before entering daily records.
+
  1. Open the Admin section and fill in Business Name, Mess Name, currency, default threshold, inactivity days, reminder channel, and backup frequency.
  2. Save the Admin PIN in Security & Integrations. This PIN protects high-risk actions.
  3. Save staff emails and roles so the right people can use the app.
  4. Use the Inventory or master-driven forms to make sure the common items, menus, and payment sources match your mess reality.
  5. Choose the month range at the top of the app. Most screens use the selected period for filtering, analytics, and reports.
  6. Start entering transactions from current day onward so the dashboard, history, stock, and balances can calculate correctly.
Important period rule

The selected From Month and To Month control what the dashboard and reports summarize. Change the range whenever you review another month.

Fresh setup behavior

Fresh setup now keeps operational data empty. It prepares the system structure without loading fake members, purchases, or demo transactions.

Entries Use every form in Transactions correctly What each entry type means and when staff should use it.
+
Purchase

Use when the mess buys items like chicken, rice, vegetables, oil, or any stock/direct ingredient. Add multiple shopping lines at once, mark each line as Direct or Stock, then save one bulk purchase.

Cash Contribution

Use when a member gives money to the mess fund. This is not a purchase. It increases the cash side of the system and appears in financial history.

Payment

Use when a member settles dues or when you record a formal payment entry with payment method, payment type, reference number, and optional linked entry.

Expense

Use for non-stock costs such as utilities, maintenance, rent, delivery, or any other expense that should affect money out but not inventory quantities.

  1. Choose the correct date first. Month-based calculations are built from the date value.
  2. Pick existing items and categories whenever possible so analytics stay clean and grouped properly.
  3. Use meaningful references like receipt number, shopping slip number, or payment transfer ID.
  4. After saving, the app may show the change as syncing in the background. That is expected. The UI acknowledges the change immediately and then completes the server write.
  5. If you are editing an existing purchase, cash contribution, or other entry, the form notice will tell you you are in edit mode. Save from the form to update the existing row.
Quick rule: if the action buys food or stock, use Purchase. If a person gives the mess money, use Cash Contribution. If a person pays dues through a payment method, use Payment. If it is money out without stock movement, use Expense.
Kitchen Track kitchen usage and editing operations How to record daily cooking consumption, per-person usage, and edit old rows safely.
+
Kitchen Consumption

Use this when the kitchen consumes stock for a meal. Example: dinner used 4 kg chicken for Chicken + Roti.

Per-Person Consumption

Use this when a specific member consumed an item personally and you want billable or traceable usage against that member.

  1. Record meal, menu, item used, quantity, and unit carefully because inventory deductions depend on these entries.
  2. Use Editable Entries tables below the forms to review past purchase, consumption, and per-person rows for the selected month range.
  3. Press Edit from an entry row to bring that row back into the matching form. Save again to update it.
  4. Delete should be used carefully. The app soft-deletes these rows, and deletion may require a PIN based on role and settings.
If stock numbers look wrong, first review Purchases, then Kitchen Consumption, then Per-Person Consumption in the selected period. Those are the three main drivers of inventory movement.
Reading Data Understand dashboard cards and every main table What the numbers and columns are telling the user.
+
Dashboard KPI cards

Total Expense shows money out, Money In shows incoming funds, Outstanding shows unpaid dues, and Net Balance shows the overall balance for the selected period.

Member Ledger table

Credit is the money/credit side for the member, Share is the allocated mess share, Paid is payment recorded, and Remaining is what is still due after the app calculations.

Smart Alerts

Shows warnings such as large balances, low stock, inactivity, or other conditions the app considers important for the selected period.

Cash Flow Trend

Shows how money in, money out, and the net moved over time so you can spot unusual swings or heavy-expense days.

Payments table

Read the payment ID, member, amount, method, status, and reference. A Syncing status means the frontend has accepted the row and the server is finishing the save.

Inventory table

Purchased is total bought quantity, Used is total recorded consumption, and Current is the remaining stock. Low Stock means it is near or below reorder level.

History table

Use this as the audit-style financial ledger. Direction tells whether the row moved money in or out, while Status and Method explain how the transaction was recorded.

Reminder and backup logs

These tables show whether reminder jobs were queued or sent, and whether backups were created, ready, or restored successfully.

  1. Always confirm the month range at the top before reading summary numbers.
  2. If a total looks wrong, cross-check History, Payments, Purchases, and Expenses for the same month range.
  3. If inventory looks wrong, cross-check Purchases against Kitchen Consumption and Per-Person Consumption.
Admin Use settings, PIN, reminders, reports, and backups What each admin-only area is for and when to use it.
+
  1. Business Settings: update organization name, cook name, threshold, inactivity days, reminder defaults, footer, and backup preferences.
  2. Security & Integrations: save or rotate the Admin PIN, use the emergency reset only from a signed-in Admin Google account if the PIN is forgotten, and configure SMS/WhatsApp API credentials if you want reminders to use those services.
  3. Staff Access: add each Google email once and assign the correct role. Deactivate users instead of deleting them when someone leaves.
  4. Reminders: queue reminder jobs, process them, or open member reminder text before sending manually.
  5. Reports: export CSV, Google Sheet, Excel, PDF, WhatsApp summaries, statements, and payment receipts.
  6. Cloud Backup: create a backup before structural changes, before mass edits, and before a restore. Restore only when you are sure you want to replace current data with the selected backup snapshot.
Good practice: create a backup before changing staff roles, changing settings that affect many users, doing a restore, rotating the Admin PIN, or making cleanup changes across many historical rows. Keep at least two trusted Admin emails in Staff Access so PIN recovery is never blocked by one absent person.
Routine Recommended daily workflow for staff A simple operating order that keeps the numbers correct.
+
  1. Open the app and confirm the selected month range.
  2. Enter all purchases and expenses as they happen instead of batching them much later.
  3. Record cash contributions and member payments as soon as money is received.
  4. At each meal or end of day, record kitchen consumption and any per-person usage.
  5. Check Dashboard for alerts and History for obvious mistakes in direction, amount, or method.
  6. Review Inventory regularly so low-stock items can be purchased before they run out.
  7. Before the day ends, make sure no important row is still missing and no pending sync has failed.
  8. Before month close, create a backup and export reports for sharing or archiving.
When a user says “number is wrong”

Check the selected month range first, then inspect History, Payments, Purchases, Expenses, and Consumption in that order.

When a row is saved but still loading

Watch the status chips and Background Activity card. The frontend accepts the row first and completes the server save in the background.

Business Settings


Security & Integrations

Use Save PIN when you know the current PIN. If the PIN is forgotten, only a signed-in Admin Google account can use the emergency reset below.


Members

Members are every person linked to this app, including Admins. Keep Include in billing on for anyone sharing mess meals; turn it off only for an access-only account.



Name Email Role Billing Verified Active Action

Verification Invites

This table is an invitation history, not the live access source. Pending invites can be cancelled here, which revokes the emailed link immediately. The Current Staff Directory below is the source of truth.



Email Role Status Invited By Sent Accepted / Closed Expires Action

Current Staff Directory

This is the live authorization list. Use it to confirm which email is approved, whether the row is active, what spreadsheet access the app should grant, and what that role is meant to do.

Email Role Active App Access Google Access Notes Action

Cloud Backup



ID Date Type Status Link