# PRD — De Tamarinde Management System

**Version:** 0.1 (Initial)
**Status:** Draft
**Owner:** De Tamarinde / Loge Volharding No. 6
**Last updated:** June 2026

---

## 1. Overview

### 1.1 Problem Statement

De Tamarinde, the recreational facility of Loge Volharding No. 6, is currently operated by a single person managing all aspects of the business manually: purchasing supplies, running bar and kitchen sales, coordinating hall rentals, and producing periodic reports for the lodge board. Everything is tracked on paper. There is no visibility into stock levels, no sales history, no rental overview, and no automated reporting. This creates administrative overload, financial blind spots, and an inability to produce reliable reports for the board.

### 1.2 Solution

A unified, AI-assisted web application that digitizes and automates the core operations of De Tamarinde: inventory management, point-of-sale, hall reservations, and board reporting — all in one browser-based interface accessible from tablet, smartphone, and laptop.

### 1.3 Guiding Principles

- **Reduce manual work** — once a sale or purchase is entered, the system handles the rest automatically
- **AI does the writing** — reports, summaries, and alerts are generated by AI, not typed by hand
- **Simple first** — built for one person to operate solo; complexity is added only when needed
- **Non-profit aware** — no commercial framing; all financial reporting reflects community purpose
- **Works anywhere** — tablet at the bar, phone in the hall, laptop in the office

---

## 2. Users & Roles

| Role | Access | Description |
|------|--------|-------------|
| Admin | Full | Manages all modules, settings, users |
| Bar Staff | POS (bar) | Processes bar orders and payments |
| Kitchen Staff | POS (kitchen) | Processes kitchen orders and payments |
| Board Member | Read-only | Views dashboards and reports only |

> Initial deployment: Admin role only (single operator). Other roles added as team grows.

---

## 3. Modules

### Module 1 — Inventory Management *(Priority 1)*

**Goal:** Know what is in stock at all times, track what was purchased and when, and never run out of critical supplies.

#### Features

**3.1.1 Product Catalog**
- Create, edit, and delete products (name, category, unit, reorder threshold)
- Categories: drinks, food ingredients, cleaning, other
- Support for units: bottle, can, kg, liter, piece, box

**3.1.2 Purchase Registration**
- Log incoming stock: product, quantity, unit price, supplier, date
- Automatically update stock level on save
- Attach notes (e.g. "bought at Kersten, price increase")

**3.1.3 Stock Overview**
- Real-time stock level per product
- Color indicator: green (ok), amber (low), red (critical / below threshold)
- Filter by category

**3.1.4 AI Low-Stock Alerts**
- When stock falls below threshold, AI generates a prioritized reorder suggestion
- Suggestion includes estimated quantity based on past consumption rate
- Manager can approve or adjust before placing order

**3.1.5 Consumption Tracking**
- Stock automatically decreases when a sale is processed in POS (Module 2)
- Manual adjustment available for waste, spoilage, or corrections

**3.1.6 Purchase History**
- Log of all past purchases with date, supplier, quantity, and total cost
- Filterable by date range and product

---

### Module 1b — Vaste Lasten (Operating Expenses) *(Priority 1b)*

**Goal:** Register monthly bills and labor payments so board reports reflect the full financial picture, not only inventory purchases.

#### Features

**3.1b.1 Monthly Bills**
- Register recurring operating costs: utilities, rent, maintenance, insurance, other
- Fields: description, category, amount (SRD), payment date, month the bill applies to, notes
- Examples: EBS electricity, water, internet, building maintenance

**3.1b.2 Labor / Work Payments**
- Register payments to people who help at De Tamarinde (not full payroll)
- Fields: description, worker name, amount (SRD), payment date, notes
- Examples: cleaning help after an event, temporary bar assistance

**3.1b.3 Expense Overview**
- Tabbed view: monthly bills / labor costs
- Monthly totals and recent entries
- Edit and delete registered expenses

**3.1b.4 Reporting Integration**
- Vaste lasten and arbeidskosten included in dashboard anomaly detection
- Board reports and expense breakdowns show inventory purchases, fixed costs, and labor separately

---

### Module 1c — Inventaris (Assets) *(Priority 1c)*

**Goal:** Keep a register of De Tamarinde's durable belongings (chairs, tables, kitchen and audio equipment) so the board knows what the lodge owns, its condition, and what needs repair or replacement. Distinct from **Voorraad** (consumable stock that is sold).

#### Features

**3.1c.1 Asset Register**
- Register durable items the lodge owns
- Fields: name, category, quantity, condition, location, value per unit (optional), acquisition date, notes
- Categories: furniture (meubilair), kitchen (keuken), equipment (apparatuur), audio/visual (audiovisueel), decoration (decoratie), other (overig)
- Conditions: good (goed), fair (redelijk), needs repair (reparatie nodig), broken (defect)

**3.1c.2 Inventory Overview**
- Stats: total number of items, distinct asset types, total estimated value, items needing attention
- Filter by category
- Edit and delete registered assets

**3.1c.3 Condition Tracking**
- Highlight assets marked "needs repair" or "broken" so maintenance can be planned
- Assets are a standalone register; they are not counted as operating expenses in financial reports

---

### Module 2 — POS System (Bar & Kitchen) *(Priority 2)*

**Goal:** Replace pen-and-paper order tracking with a fast, tablet-friendly POS that automatically updates stock and records all sales.

#### Features

**3.2.1 Product Menu**
- Visual grid of products with name and price
- Separate views: Bar menu / Kitchen menu
- Quick-add buttons (tap to add to order)

**3.2.2 Order Management**
- Build an order by tapping products
- Adjust quantities, remove items
- Add notes per item (e.g. "no ice")
- Support for table number or customer label (optional)

**3.2.3 Payment Processing**
- Payment methods: cash, bank transfer (no card terminal integration required at launch)
- Calculate change for cash payments
- Mark order as paid → stock decreases automatically

**3.2.4 Order History**
- Log of all orders with timestamp, items, total, payment method
- Searchable and filterable

**3.2.5 End-of-Day Closing (Kassasluiting)**
- Summary of day's sales: total revenue, items sold, payment method breakdown
- AI-generated daily summary text (ready to copy/share)
- Export as PDF

**3.2.6 Price Management**
- Admin can set and update prices per product
- Price changes logged with date

---

### Module 3 — Hall Reservations *(Priority 3)*

**Goal:** Manage bookings of the recreation hall in an organized way, with automated follow-ups and simple invoicing.

#### Features

**3.3.1 Reservation Calendar**
- Monthly calendar view of all bookings
- Click a date to create a new reservation
- Color coding: confirmed, tentative, cancelled

**3.3.2 Reservation Details**
- Fields: renter name, organization, contact info, date, start/end time, purpose, number of guests
- Renter type: lodge member, other lodge, third party
- Notes field

**3.3.3 Pricing & Invoicing**
- Set rental price per reservation (or apply standard rate)
- Generate a simple invoice (PDF) per reservation
- Track payment status: unpaid, partially paid, paid

**3.3.4 AI Follow-Up Reminders**
- AI drafts a reminder message when a reservation is approaching unpaid
- Manager reviews and sends (WhatsApp or email copy)

**3.3.5 Availability Check**
- Prevent double-booking
- Show availability when creating a new reservation

**3.3.6 Rental History**
- Full log of past reservations with revenue totals
- Filter by renter type and date range

---

### Module 4 — Reporting & Board Dashboard *(Priority 4)*

**Goal:** Automatically produce clear, professional reports for the board of Loge Volharding No. 6, without requiring the manager to write them manually.

#### Features

**3.4.1 Live Dashboard**
- Revenue today / this week / this month
- Top-selling bar and kitchen products
- Hall occupancy rate
- Current low-stock alerts
- Recent transactions

**3.4.2 AI Board Report Generator**
- Select a reporting period (monthly, quarterly, custom)
- AI generates a formal written report covering:
  - Total revenue (bar, kitchen, hall rental)
  - Expenses (inventory purchases, monthly bills, labor payments)
  - Net result
  - Notable trends or anomalies
  - Stock status
  - Hall usage summary
  - Social projects budget status (manual input)
- Output: formatted text ready to present at lodge meeting
- Export as PDF

**3.4.3 Revenue Breakdown**
- Charts: revenue by source (bar, kitchen, hall), by time period
- Expense breakdown by category (inventory, vaste lasten, arbeidskosten)

**3.4.4 Export**
- Export any report as PDF
- Export transaction data as CSV (for manual review or archiving)

---

## 4. AI Integration

The AI layer uses the Anthropic Claude API (model: `claude-sonnet-4-6`).

| Feature | Trigger | AI Output |
|---------|---------|-----------|
| Low-stock alert | Stock falls below threshold | Prioritized reorder list with suggested quantities |
| Daily sales summary | End-of-day closing | Short narrative summary of the day's performance |
| Board report | Manual request by admin | Full formal report text for lodge meeting |
| Rental reminder | Upcoming reservation, unpaid | Draft reminder message (Dutch) |
| Anomaly detection | Unusual revenue or spend pattern | Alert with brief explanation |

All AI outputs are shown to the manager for review before use. The system never sends anything automatically without human approval.

---

## 5. Non-Functional Requirements

| Requirement | Specification |
|-------------|--------------|
| Platform | Web browser (Chrome, Safari, Firefox) |
| Devices | Tablet, smartphone, laptop/desktop |
| Offline support | POS and inventory must work offline; sync when reconnected |
| Language (UI) | Dutch |
| Currency | Surinamese Dollar (SRD) |
| Date format | DD-MM-YYYY |
| Users | 3–10 concurrent |
| Data storage | Laravel database (Eloquent); migrations and seeders for all domain data |
| Authentication | PIN or password per role |
| Performance | POS screen must load and respond within 1 second |

---

## 6. Out of Scope (v1)

- Card payment terminal integration
- Supplier ordering / procurement automation
- Full payroll, contracts, or staff scheduling (simple labor payment registration is in scope)
- Customer loyalty program
- Public-facing booking page
- Multi-location support
- Native mobile app

---

## 7. Success Metrics

| Metric | Target |
|--------|--------|
| Time to generate board report | < 2 minutes (vs. hours manually) |
| Stock-outs per month | Reduced to near zero |
| Daily closing time | < 5 minutes |
| Manager satisfaction | No more paper tracking |
| Report quality | Accepted by board without revision |

---

## 8. Build Phases

### Phase 1 — Inventory (MVP)
- Product catalog
- Purchase logging
- Stock overview with alerts
- AI reorder suggestions
- Vaste lasten (monthly bills and labor payments)
- Inventaris (asset register for durable belongings)

### Phase 2 — POS
- Bar and kitchen menus
- Order processing and payment
- Stock auto-decrement
- End-of-day closing + AI summary

### Phase 3 — Hall Reservations
- Calendar and booking form
- Invoice generation
- AI follow-up drafts

### Phase 4 — Reporting
- Live dashboard
- AI board report generator
- PDF and CSV export

---

## 9. Open Questions

- [x] Will a backend/database be hosted externally, or remain browser-only? → **Laravel backend with database** (repo: `tamarinde_ops`)
- [ ] Should WhatsApp integration be added for rental reminders (Phase 3)?
- [ ] What is the budget allocation structure for social projects — fixed budget or ad hoc?
- [ ] Should board members log in via the same app, or receive a separate read-only link?
- [ ] Is multi-currency needed (USD alongside SRD)?
