Files
ERP/PRD.md
2026-10-11 14:14:01 +00:00

177 lines
7.0 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
**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?
---