Project Proposal · Prepared for OneAirLiving · June 2026
Internal Systems for OneAirLiving
A complete plan to build 7 internal tools covering the end-to-end business — from the first client enquiry through inspection, installation, and onboarding, to post-sale air quality monitoring, filter maintenance, and AMC management. Built lean, built to scale, no vendor lock-in.
OneAirLiving (OAL)Air Filter · Installation · AMCHybrid Stack · GSheet + CloudflareWhatsApp via BagachatPrepared by Kapil Bindal
These 7 systems cover the complete OAL business lifecycle — from the first sales enquiry to ongoing post-sale care. P0 systems are built first as they are operationally critical. P1 and P2 follow in sequence.
P0 Must-have · build immediately
P1 Critical · Phase 2
P2 Important · Phase 3
P3 Nice-to-have · Phase 4
#
System
Channel
Primary users
Priority
1
CRM – Order Management (OMS)
Tracks every client order from initial enquiry through inspection, proposal, negotiation, payment, installation, onboarding, and invoice — 10 stages in total. AE owns the client relationship throughout. OC coordinates field resources. Supports 500 orders/month initially, built to scale.
Web App
AEACPLOC
P0
2
Care & Ticketing System – FMS
Post-sale support owned end-to-end by CC. Covers service visits, filter replacements, maintenance, and AMC requests. CC raises tickets, OC allocates OE/FE for execution, clients are notified via WhatsApp. Completely separate from the OMS sales pipeline.
WhatsAppWeb App
CCOCCustomers
P1
3
WMS – Inventory Management (IMS)
Filter stock, spare parts, and warehouse management. Critical for coordinating installation and maintenance supply. Everything depends on inventory being accurate.
Web App
PLOC
P0
4
P&L Dashboard
Revenue, cost, and margin reporting across one-time sales, AMC subscriptions, and maintenance revenue streams. Auto-pulls from OMS and FMS data. Covers both installation revenue and recurring care revenue.
Reporting
ACPL
P2
5
Air Quality & Monitoring Dashboard
CC's primary daily tool. Shows live air quality data per client site (sourced from internet AQI data + OAL's own on-site readings entered during care visits), open care tickets, filter replacement schedules, and OE/FE field activity.
Live Dashboard
CCOC
P2
6
Live Proposal Calculator
Real-time pricing tool for AE to generate a quote during a client call. Pulls pricing rules from Google Sheet — AE or PL can update pricing without any code changes. Outputs a shareable proposal.
Web Tool
AEAC
P2
7
Field Check-in — OE, FE, FC
Location is captured automatically when OE, FE, or FC completes an on-site action — inspection (S2), installation (S8), or a post-sale care visit. All three roles use the same mobile web app; role flag controls what each sees. FC gets an additional team view. No background GPS.
Mobile Web
OEFEFC
P1
02 — Roles & Who Uses What
8 roles across OAL — three foundational, three coordinators, two senior
Currently many of these roles are worn by the same person. The system is designed around the roles, not headcount — so as OAL grows and roles split into dedicated people, nothing needs to change in the software.
AEAccount Executive
Owns the client relationship from first enquiry to invoice. Single point of contact through installation. Shares final invoice, collects feedback informally, then hands off to CC for all post-sale care. Uses the OMS dashboard.
OEOperations Executive
Field operations lead. Conducts or oversees site inspections (S2) and leads installations (S8). Interfaces with the client during field visits. Reports back to OC. Manages FEs on-site. Uses the mobile check-in app.
FEField Executive
End-to-end field execution. Assists OE during installation (S8). Executes post-sale service, filter replacement, and maintenance visits raised by CC. Uses the mobile check-in app.
CCCare Coordinator
Owns the entire post-sale vertical. Raises service, filter replacement, and maintenance tickets. Monitors air quality per client site. Interfaces with clients post-onboarding. CC's world starts after S9 — no involvement in the OMS sales pipeline.
PLPipeline Coordinator
Backend support for AEs. Manages the sales pipeline view. Forwards installation requests to OC at S7. Follows up with AE for final payment at S9 and generates the invoice. Full OMS pipeline visibility.
OCOperations Coordinator
Oversees all field operations. Allocates OE and FE to inspections (S2) and installations (S7–S8). Schedules and coordinates care visits raised by CC. Interfaces with clients in rare circumstances.
ACAccount Coordinator
Senior AE. May manage multiple AEs. Sees own orders plus their team's orders in the OMS dashboard. Same permissions as AE otherwise.
FCField Coordinator
Senior FE. May manage multiple FEs. Uses the same mobile app as FE with an additional team view showing their FEs' check-ins and locations for the day.
System access by role
Role
OMS
FMS / Care
Monitoring
Mobile App
P&L
AE
Own orders
—
—
—
—
AC
Own + team
—
—
—
Yes
PL
Full pipeline
—
—
—
Yes
OC
S2 + S7–S8
Allocate only
Yes
—
—
CC
—
Full access
Primary
—
—
OE
—
—
—
S2 + S8 + care
—
FE
—
—
—
S8 + care visits
—
FC
—
—
—
S8 + care + team view
—
Access is enforced at the API level — not just the frontend. A role that should not see certain data cannot retrieve it even if they know the URL.
03 — OMS — 10-Stage Pipeline
From first enquiry to final invoice
Every client engagement follows this pipeline. AE owns the client relationship throughout. OC coordinates field resources for inspections and installations. The pipeline has one branch point at S5 — Closed Cold orders are archived for win/loss reporting, Closed Won orders continue to S6.
Stage
Description
Actor
Location GPS
WA notify
S0
Entry AE records enquiry from client — call, text, or visit. Logged in OMS with date and source.
AE
—
—
S1
Discovery AE conducts discovery with client — call, text, or in-person. Requirements and budget confirmed.
AE
—
Yes ✓
S2
Inspection OE (allocated by OC) visits the site. Inspection report filed. AE reviews and advances to S3.
OE on-site OC allocates · AE advances
Yes ✓
Yes ✓
S3
Proposal AE sends proposal based on inspection report — using the Live Proposal Calculator.
AE
—
Yes ✓
S4
Negotiation AE negotiates on the proposal. Revised quotes and approvals logged in OMS.
AE
—
—
S5a
Closed Cold — pipeline ends AE marks as lost. Order archived. Not deleted — used for win/loss analysis. Reason logged.
AE
—
—
S5b
Closed Won — pipeline continues AE marks as won. Order moves to S6. Customer notified.
AE
—
Yes ✓
S6
Payment AE collects full or part payment. Payment recorded in OMS. Remaining balance tracked at S9.
AE
—
Yes ✓
S7
Installation scheduling AE raises request. PL forwards to OC. OC schedules and aligns OE and FEs. Internal only — no client-facing action.
Invoice PL follows up for final payment, generates invoice. AE shares invoice and collects feedback. CC takes over post-sale care.
PL + AE CC takes over after S9
—
Yes ✓
Payments are tracked as an array — part payment at S6, final at S9. S5 is a branch, not a linear step. Closed Cold orders are archived with a reason logged, enabling win/loss rate analysis over time.
04 — Post-Sale Care Vertical
Everything after S9 is owned by CC
Once the invoice is issued and AE hands off, the client enters OAL's care vertical. CC manages everything — air quality monitoring, filter replacements, service visits, maintenance, and AMC renewals. This is a recurring, subscription-like relationship that generates ongoing revenue separate from the initial installation sale.
Care ticket types
Service visitReactive · CC raises on complaint
Filter replacementScheduled · based on cycle
Maintenance visitScheduled · periodic check
AMC renewalAnnual · CC tracks and follows up
Emergency visitReactive · priority flag
Air quality data sources
Area-level AQISourced from internet (public AQI APIs)
Client-site readingOAL machine · entered manually at visit
Entry pointOE/FE enters on mobile at S8 + care visits
Viewed byCC on Monitoring Dashboard
IoT / auto-pushNot in current scope
📋
Filter replacement cycles & AMC — design note
Filter replacement cycles will be configured per client (e.g. every 3 months). The system will flag upcoming replacements automatically so CC can raise the ticket proactively — rather than waiting for a complaint. AMC contracts will have renewal dates tracked, with CC alerted before expiry. Both of these are scheduled ticket types in FMS, not reactive ones.
05 — Field Check-in Design
One mobile app · three roles · location on action only
OE, FE, and FC all use the same mobile web app. The role flag on login controls what each person sees and can act on. Location is captured only when an action is submitted — no background GPS, no battery drain, no continuous pings. Every location stamp is tied to a specific work event.
What each role sees in the app
OES2 inspections · S8 installations · care visits
FES8 installations · care visits
FCS8 + care visits + team view of all assigned FEs
Air quality readingEntered manually at S8 and care visits
TimestampISO 8601
The air quality reading entered at S8 (onboarding) becomes the baseline for that client site. Subsequent readings entered during care visits are compared against this baseline on CC's monitoring dashboard.
06 — Build Phases & Timeline
Phased delivery in 12 weeks
Work is sequenced by operational impact. The OMS and WMS are built first as they are the core of the business. Care, monitoring, and reporting tools follow once the sales pipeline is running.
3 wks
Phase 1 · Weeks 1–3
Core Operations
OMS — 10-stage pipeline
WMS – IMS (inventory)
Field check-in mobile app
AE, OC, OE, FE flows
4 wks
Phase 2 · Weeks 4–7
Care & Support
FMS — care ticketing
WhatsApp via Bagachat
CC dashboard
Filter replacement scheduling
3 wks
Phase 3 · Weeks 8–10
Reporting & Tools
P&L dashboard
Proposal Calculator
AMC tracking
Win/loss reporting
2 wks
Phase 4 · Weeks 11–12
Monitoring & Analytics
Air quality dashboard
Internet AQI integration
Site-level readings view
Live ops monitoring
07 — Technology Approach
Hybrid stack — two tools, each where it excels
After evaluating both options, neither Google Sheets nor Cloudflare wins outright. Google Sheets is excellent for reporting, formula-driven tools, and human-editable data. Cloudflare KV is built for concurrent high-speed writes and instant reads. The right answer is to use both.
Cloudflare Worker + KV
✓ Receives all writes instantly (<50ms)
✓ Handles all roles writing concurrently
✓ WhatsApp webhooks respond in <50ms
✓ Powers live dashboards (<10ms reads)
✓ No queue, no write conflicts
⇄
syncs every 5 minutes
Google Sheet + AppScript
✓ P&L pivot tables and charts — zero extra build
✓ PL and OC can edit data directly in the sheet
✓ WMS and Proposal Calculator run natively
✓ Source of truth for reporting and audit
✓ Non-technical staff can access without training
How they work together: Cloudflare Worker receives every write — OMS stage updates, FMS tickets, field check-ins, WhatsApp webhooks — and stores instantly in KV, returning confirmation in under 50ms. Every 5 minutes, a background job syncs KV data into Google Sheet for P&L, reporting, and audit. Staff who need to correct an entry open the sheet directly.
08 — GSheet vs Cloudflare — Full Comparison
Why the hybrid — scored across what matters for OAL
Each option is scored on the criteria that matter most for this system. A 5 means it handles the requirement perfectly. This analysis drove the hybrid architecture decision.
Criteria
Google Sheet + AppScript
Cloudflare KV + Worker
Concurrent writes AE, OE, FE, CC all writing at the same time
1/5 — One write at a time. Creates a queue under load.
5/5 — Every write is independent. No queue, no conflicts.
Verdict: Google Sheet wins on reporting, human editing, and P&L. Cloudflare wins on write speed, concurrency, and webhook reliability. Using both gives OAL the best of each at minimal cost.
09 — WhatsApp via Bagachat
WhatsApp for both OMS notifications and post-sale care
Bagachat is a WhatsApp Business Solution Provider (BSP) that gives OAL a multi-agent inbox, chatbot routing, and webhook API without building raw WhatsApp integration from scratch. It handles two distinct flows — AE-triggered OMS notifications during the sales pipeline, and CC-managed post-sale care conversations.
A "conversation" in Meta's billing model is a 24-hour window — not a single message. One client enquiry resolved in a day = 1 conversation. Starter plan's 3,000 conversation cap is tight for OAL's volume. Business plan at 15,000 conversations provides comfortable headroom.
10 — Google Workspace Options
Currently on free Gmail — two options going forward
OAL currently uses personal Gmail IDs. This works for now but creates problems as the team grows — no centralised admin, no shared drives with proper access control, and AppScript on free Gmail has tighter execution limits. Here are the two options with an honest assessment of each.
Option A — Workspace for central team only
10 central staff (AE, AC, PL, OC, CC) get Workspace IDs. Field roles (OE, FE, FC) continue on personal Gmail or use app login only.
₹1,250/mo @ ₹125/user × 10 users
Pros
✓ Immediate fix for central team — proper email addresses, shared drives, admin control
✓ AppScript gets 30 min execution limit vs 6 min on free Gmail — important for P&L and WMS sync scripts
✓ Cheaper upfront — only 10 licences
✓ Field staff don't need email — they only use the mobile app
Cons
✗ Split setup — some staff on Workspace, some on personal Gmail
✗ As field roles grow into coordination roles, they'll need Workspace licences added later
Option B — Workspace for everyone
All 20 current staff (10 central + 10 field) get Workspace IDs. Scales cleanly as headcount grows.
₹2,500/mo @ ₹125/user × 20 users
Pros
✓ Clean, uniform setup — everyone on the same system
✓ OAL can issue and revoke access centrally when staff join or leave
✓ Field staff get professional email if ever needed for client communication
✓ No migration pain later as field staff move into coordination roles
Cons
✗ Double the cost upfront (₹2,500 vs ₹1,250/mo)
✗ Field staff primarily use the mobile app — a Workspace licence may be underutilised for them currently
Recommendation: Start with Option A — Workspace for the 10 central staff. The AppScript execution limit improvement alone makes this worth it for PL running the WMS and P&L scripts. Add field staff to Workspace as they grow into coordination roles or when the cost becomes negligible relative to the business size.
11 — Full Cost Breakdown
Day 1 vs steady-state costs — honest picture
Infrastructure costs are low. The dominant spend is WhatsApp (Bagachat + Meta) and Google Workspace. Costs below are shown as Day 1 (launch) and Steady State (6 months in, as the team and client base grow). All figures in INR per month.
300 emails/day free. If PL generates 500 invoices + AE sends proposals, Brevo Starter at $25/mo (₹2,080) may be needed.
+₹0–2,080
Google Maps API
~1,500 map loads/mo comfortably within $200 free credit. Watch if active client sites exceed 500 with daily monitoring loads. Alternative: Leaflet + OSM at ₹0.
₹0 (watch)
SMS fallback (optional)
If a client doesn't have WhatsApp or messages fail. ~₹0.60/SMS via Twilio. At 10% fallback on 3,500 msgs = ₹210/mo.
+₹0–210
GSheet cell limit — 16 months out
At 500 orders × 10 stages × ~10 fields, you add ~50,000 cells/month. Google Sheets hits 10M cell limit in ~16 months if all data is in one sheet. Solution: sheet rotation (free, minor effort) or migrate OMS data to Cloudflare D1 (free up to 5GB, then $0.75/GB).
Plan ahead
Steady-state estimated range₹10,000 – ₹15,000 / mo
The ₹10,000–15,000 steady-state range assumes: Workspace for all staff, 4 Bagachat agent seats, full Meta message volume, R2 photo storage, and occasional email. Infrastructure (Cloudflare) remains flat at ₹478/mo regardless of scale. WhatsApp and Workspace are the dominant costs — not technology infrastructure.
12 — Architecture Diagrams
How data flows through the system
Four diagrams showing: overall system architecture, the 10-stage OMS pipeline, the field check-in flow, and the post-sale care ticket flow via Bagachat.
Overall system architecture
No frontend app talks to GSheet directly. All writes go through the Cloudflare Worker. GSheet receives data only via the 5-minute background sync — keeping it clean and consistent.
OMS — 10-stage pipeline flow
Blue = AE/PL/OC (internal). Coral = OE + FEs on-site with GPS. Green = coordinator stages. S5 branches into Closed Cold (pipeline ends) or Closed Won (continues to S6).
S2 and S8 are the only OMS stages that capture GPS. S8 also captures the first air quality reading for the client site — this becomes CC's baseline on the monitoring dashboard.
Field check-in flow
One mobile app for OE, FE, and FC. Role flag on login controls what each person sees. GPS is captured only on action submit — no background tracking.
FC gets an additional team map tab showing all assigned FEs' latest check-in locations for the day. No background GPS — every location stamp is tied to a submitted work event.
Post-sale care ticket flow
Everything after S9 is owned by CC. Tickets are either reactive (client complaint) or scheduled (filter replacement cycle, AMC renewal). All client communication goes via WhatsApp through Bagachat.
Scheduled tickets (filter replacement, AMC renewal) are auto-flagged by the system based on configured cycles — CC does not need to remember dates. Reactive tickets are raised manually by CC when a client raises a complaint via WhatsApp or call.
Prepared for OneAirLiving · June 2026 · Version 1.0Kapil Bindal · Pricing: Bagachat · Meta · Cloudflare · Google