Phase 16: Expense Tracking

phase-wkq-16-expense-tracking Phase

phase
Goal: Budget by category, log expenses, Stripe revenue auto-pull (tiered), budget vs actual dashboard.
Owner: Dev agent
Repo: forgejo_admin/basketball-api, forgejo_admin/westside-app
Depends on: phase-wkq-14-billing-tiers

Scope

  • US-4: Set monthly budget by category — Gym Rental, Coach Pay, Filing/Legal, Misc. Dollar amount per category per month.
  • US-5: Log expenses — date, category, amount, description, who logged it. Gym rental auto-calc ($65/hr x hours x courts).
  • US-6: See revenue from Stripe — all payments auto-pulled. Monthly total. Distinguishes tryout fees vs monthly. Handles tiered pricing ($160/$180/$200).
  • US-7: Budget vs actual dashboard — per-category budgeted vs actual spent vs remaining. Total revenue vs expenses. Monthly view.

Deliverables

  • Expense tracking endpoints (CRUD + Stripe sync)
  • Admin budget + expense management pages
  • Budget vs actual dashboard with revenue from Stripe