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.
Login & Access
See exactly which Google account is active, how the role was decided, what this account can open now, and what to do next if access still looks wrong.
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
| 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 |
|---|
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
| 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.
Reminder Log
| ID | Member | Channel | Scheduled | Status | Period | Error |
|---|
Report Exports
Period Snapshot
| Bucket | Money In | Money Out | Net |
|---|
Authentication & Authorization
The app keeps access simple: Google sign-in proves who the user is, Staff Access or invitation email decides the role, spreadsheet sharing is synced automatically, and the role controls which sections appear.
Always open the web app with the exact Gmail or Google Workspace email that should receive access.
An Admin either saves the email directly in Staff Access or sends an invitation email for that same address.
The app updates spreadsheet sharing in the background so the approved role can open the app immediately.
Admin gets full control, Manager gets day-to-day operational entry access, and Viewer stays read-only.
Full control
Best for owners or trusted leads who manage people, settings, security, and recovery.
- Can open every section, including Admin.
- Can manage staff roles, invitations, settings, mPIN, integrations, backups, restores, and upgrades.
- Uses the Admin mPIN for sensitive actions when a PIN is configured.
Daily operations
Best for trusted staff entering purchases, payments, usage, reminders, and regular operational work.
- Can use Transactions, Operations, Reminders, Dashboard, History, Inventory, and Reports.
- Cannot open Admin or change security, staff roles, backups, or app settings.
- Gets spreadsheet editor access because daily work writes data.
Read-only review
Best for owners, accountants, or observers who should review information without editing live data.
- Can use Dashboard, History, Inventory, and Reports.
- Cannot enter new rows, change existing rows, run reminders, or open Admin.
- Gets spreadsheet viewer access only.
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.
Full control. Can manage staff access, business settings, integrations, PIN, backups, restores, and all operational entries.
Can work with day-to-day mess records like purchases, cash, payments, expenses, and consumption, but cannot manage admin-only configuration.
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.
+
- 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.
- 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.
- Go to Admin -> Staff Access and enter the staff member email exactly as their Google sign-in email.
- Choose the role:
Admin,Manager, orViewer. - Use
MembersorStaff Accessto add the exact email, then send an invitation so the person verifies that mailbox before the assigned role unlocks. - If you send an invitation, the staff member must sign into Google with that exact email and click
Accept Invitationfrom the email. Their role becomes active as soon as the app opens that link.
Setup
First-day setup for a new mess
What to configure before entering daily records.
+
- Open the Admin section and fill in Business Name, Mess Name, currency, default threshold, inactivity days, reminder channel, and backup frequency.
- Save the Admin PIN in Security & Integrations. This PIN protects high-risk actions.
- Save staff emails and roles so the right people can use the app.
- Use the Inventory or master-driven forms to make sure the common items, menus, and payment sources match your mess reality.
- Choose the month range at the top of the app. Most screens use the selected period for filtering, analytics, and reports.
- Start entering transactions from current day onward so the dashboard, history, stock, and balances can calculate correctly.
The selected From Month and To Month control what the dashboard and reports summarize. Change the range whenever you review another month.
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.
+
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.
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.
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.
Use for non-stock costs such as utilities, maintenance, rent, delivery, or any other expense that should affect money out but not inventory quantities.
- Choose the correct date first. Month-based calculations are built from the date value.
- Pick existing items and categories whenever possible so analytics stay clean and grouped properly.
- Use meaningful references like receipt number, shopping slip number, or payment transfer ID.
- 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.
- 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.
Kitchen
Track kitchen usage and editing operations
How to record daily cooking consumption, per-person usage, and edit old rows safely.
+
Use this when the kitchen consumes stock for a meal. Example: dinner used 4 kg chicken for Chicken + Roti.
Use this when a specific member consumed an item personally and you want billable or traceable usage against that member.
- Record meal, menu, item used, quantity, and unit carefully because inventory deductions depend on these entries.
- Use Editable Entries tables below the forms to review past purchase, consumption, and per-person rows for the selected month range.
- Press Edit from an entry row to bring that row back into the matching form. Save again to update it.
- Delete should be used carefully. The app soft-deletes these rows, and deletion may require a PIN based on role and settings.
Reading Data
Understand dashboard cards and every main table
What the numbers and columns are telling the user.
+
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.
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.
Shows warnings such as large balances, low stock, inactivity, or other conditions the app considers important for the selected period.
Shows how money in, money out, and the net moved over time so you can spot unusual swings or heavy-expense days.
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.
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.
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.
These tables show whether reminder jobs were queued or sent, and whether backups were created, ready, or restored successfully.
- Always confirm the month range at the top before reading summary numbers.
- If a total looks wrong, cross-check History, Payments, Purchases, and Expenses for the same month range.
- 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.
+
- Business Settings: update organization name, cook name, threshold, inactivity days, reminder defaults, footer, and backup preferences.
- 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.
- Staff Access: add each Google email once and assign the correct role. Deactivate users instead of deleting them when someone leaves.
- Reminders: queue reminder jobs, process them, or open member reminder text before sending manually.
- Reports: export CSV, Google Sheet, Excel, PDF, WhatsApp summaries, statements, and payment receipts.
- 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.
Routine
Recommended daily workflow for staff
A simple operating order that keeps the numbers correct.
+
- Open the app and confirm the selected month range.
- Enter all purchases and expenses as they happen instead of batching them much later.
- Record cash contributions and member payments as soon as money is received.
- At each meal or end of day, record kitchen consumption and any per-person usage.
- Check Dashboard for alerts and History for obvious mistakes in direction, amount, or method.
- Review Inventory regularly so low-stock items can be purchased before they run out.
- Before the day ends, make sure no important row is still missing and no pending sync has failed.
- Before month close, create a backup and export reports for sharing or archiving.
Check the selected month range first, then inspect History, Payments, Purchases, Expenses, and Consumption in that order.
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 | 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.
| 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.
| Role | Active | App Access | Google Access | Notes | Action |
|---|
Cloud Backup
| ID | Date | Type | Status | Link |
|---|