Add PRD.md

This commit is contained in:
2026-10-11 14:14:01 +00:00
parent fa375bde91
commit 79f7d22433
+176
View File
@@ -0,0 +1,176 @@
**Product Requirements Document (PRD)**
**For Review of Pre-Production MVP**
**Product**: Multi-Tenant SaaS for Water/Refill Businesses
**Document Purpose**: Evaluate the current built MVP (not yet in production) against defined requirements
**Version**: 1.0
**Date**: October 2026
**Status**: Review Ready
---
### 1. Product Overview
A multi-tenant SaaS platform that allows independent water and refill businesses to manage multiple branches from a single account. The system provides centralized inventory control, point-of-sale (POS), basic reporting, and a mobile-friendly owner dashboard.
**Primary Value Proposition**
Owners can monitor and control all branches (sales, stock, performance) from a phone or computer, while branch staff can continue selling even when internet is unavailable.
---
### 2. Goals of the MVP
- Enable a water/refill business to onboard and start operating multiple branches quickly.
- Provide reliable multi-branch inventory visibility and control.
- Support fast, offline-capable sales at branch level.
- Give the owner a clear, mobile-accessible overview of the entire business.
- Support a per-branch subscription pricing model.
**Success Criteria for this Pre-Production MVP**
- A new tenant can be fully set up and process real sales within 60 minutes.
- Sales work offline and sync correctly without data loss or duplication.
- Owner can view accurate consolidated and per-branch data on mobile.
- Complete data isolation between tenants.
- Core flows are stable enough for closed beta / pilot customers.
---
### 3. Target Users
| Role | Description | Key Needs |
|-------------------|--------------------------------------------------|----------------------------------------|
| Business Owner | Owns 2+ water/refill branches | Visibility, control, mobile access |
| Branch Manager | Runs one branch | Local stock & sales management |
| Cashier | Serves customers at the counter | Fast, simple, offline POS |
---
### 4. Scope
**In Scope (Must be present in the current MVP)**
- Multi-tenancy with strict data isolation
- Multi-branch management
- Product catalog and multi-branch inventory
- Inter-branch stock transfers
- Sales / POS (cash)
- Basic reporting
- Owner mobile-friendly dashboard
- Role-based access control
- Offline sales capability with sync
- Foundation for per-branch pricing
**Explicitly Out of Scope for this MVP**
- Full accounting / general ledger
- M-Pesa STK Push or eTIMS integration
- Customer subscription / recurring delivery management
- Advanced analytics or forecasting
- Native mobile apps (PWA or responsive web is acceptable)
- Delivery routing or driver app
- Multi-currency or complex tax engines
---
### 5. Functional Requirements & Acceptance Criteria
**5.1 Multi-Tenancy & User Management**
- Each company (tenant) has completely isolated data.
- Ability to create and manage multiple branches under one tenant.
- Roles: Owner (all branches), Branch Manager, Cashier.
- Users can be invited and assigned roles/branches.
**Acceptance Criteria**
- [ ] Creating Tenant A does not allow any visibility into Tenant B’s data.
- [ ] Owner can add/remove branches and users.
- [ ] Permissions are enforced on both frontend and backend.
**5.2 Inventory Management**
- Create products (water sizes, refill bottles, side items).
- Track stock quantity independently per branch.
- Perform inter-branch stock transfers.
- Basic low-stock indication.
**Acceptance Criteria**
- [ ] Stock levels are maintained accurately per branch.
- [ ] Transfer from Branch A to Branch B correctly updates both sides.
- [ ] Sales correctly deduct stock from the selling branch.
**5.3 Sales / POS**
- Simple, fast interface suitable for high-volume water sales.
- Support multiple items in one sale.
- Cash payments.
- Automatic stock deduction.
- Receipt generation.
**Acceptance Criteria**
- [ ] A complete sale can be finished in a few taps.
- [ ] Sale works fully offline.
- [ ] Stock is deducted immediately (locally) and remains correct after sync.
**5.4 Reporting & Owner Dashboard**
- Daily and period sales (total + per branch).
- Current stock across all branches.
- Simple performance overview.
**Acceptance Criteria**
- [ ] Owner can see today’s total sales and breakdown by branch on mobile.
- [ ] Stock view shows quantities per branch.
- [ ] Data is reasonably up-to-date after sync.
**5.5 Offline & Sync**
- Sales and stock changes must work with zero internet.
- Changes queue and sync when connectivity returns.
- No double-counting of sales.
**Acceptance Criteria**
- [ ] Cashier can process multiple sales while completely offline.
- [ ] All offline sales appear correctly after coming online.
- [ ] No duplicate sales or incorrect stock after sync.
**5.6 Platform / Billing Readiness**
- System can track number of active branches per tenant.
- Structure supports charging per branch.
---
### 6. Non-Functional Requirements
- **Security**: Strict tenant isolation, role-based access, secure authentication.
- **Usability**: POS usable on low-end Android devices; owner dashboard mobile-friendly.
- **Reliability**: Offline-first for core sales operations.
- **Performance**: Local sale completion should feel instant.
---
### 7. Key End-to-End Flows to Test
1. New tenant signup → create branches → add products → add users → process first sale.
2. Process several sales completely offline → reconnect → verify correct sync.
3. Transfer stock between two branches and confirm both sides update.
4. Owner logs in on mobile and views consolidated sales + stock.
5. Attempt to access another tenant’s data (must fail).
---
### 8. Review Checklist (Use This on Your Current Build)
| Area | Fully Met | Partially Met | Missing | Notes / Gaps |
|----------------------------|-----------|---------------|---------|--------------|
| Multi-tenant isolation | | | | |
| Multi-branch support | | | | |
| Inventory + transfers | | | | |
| Offline POS + sync | | | | |
| Owner mobile dashboard | | | | |
| Role-based permissions | | | | |
| Basic reporting | | | | |
| Per-branch billing foundation | | | | |
| Core flows stable | | | | |
---
### 9. Open Questions for Your Review
- How robust is the current offline sync (conflict handling, duplicate prevention)?
- How water-specific is the product model (bottle sizes, full/empty tracking, etc.)?
- What is the current onboarding time for a new tenant?
- Are there any known limitations or technical debt that would block a pilot?
---