Files
tabungin/docs/planning/implementation-plan.md
Dwindi Ramadhana 6a6e74562c checkpoint: goals feature, wallet balance, and goals/wallet detail UI
- Add goals feature (models, migrations, API, web pages)
- Add reserved/centralized wallet balance service
- Add wallet detail page and overview components
- Add new UI components (progress, multi-select, FAB)
- Remove stray empty -H/-d files from working tree
2026-06-17 20:40:00 +07:00

3.8 KiB
Executable File

🚀 TABUNGIN IMPLEMENTATION PLAN

Date: 2025-10-22 (Updated)
Status: Phase 1 Complete
Current Phase: Planning Next Phase


📋 OVERVIEW

Tabungin is a personal finance SaaS with unique differentiators:

  • 💰 Goals/Savings tracking with visual progress
  • 👥 Team/Family collaboration on shared finances
  • 🔑 API access for advanced users
  • 💳 Flexible payment (manual + automatic)

🎯 PHASES

Phase 1: Admin Dashboard COMPLETE

  • User management
  • Dynamic plans management
  • Payment methods with logos (drag-drop reordering)
  • Payment verification
  • App settings (tabbed interface - General, Security, Payment Methods)
  • Maintenance mode with admin bypass
  • Admin auto-redirect
  • Profile page integration

Phase 2: Team Feature (2-3 weeks)

  • Team creation & invitations
  • Shared wallets & goals
  • Permission system
  • Activity feed

Phase 3: Goals Feature (2-3 weeks)

  • Goal creation with images
  • Multi-wallet allocation
  • Progress tracking with donut charts
  • Milestone notifications (25%, 50%, 75%, 100%)
  • Exchange rate conversion

Phase 4: Subscription (2 weeks)

  • Manual payment flow
  • Tripay integration
  • Trial period (7 days)
  • Grace period (3 days)
  • Feature gating
  • Coupon system

Phase 5: API & Webhooks (2 weeks)

  • API key generation
  • Rate limiting
  • Webhook system
  • Usage tracking

💰 PRICING

Feature Free Pro Monthly Pro Yearly
Price Rp 0 Rp 49,000 Rp 490,000
Wallets 5 Unlimited Unlimited
Goals 3 Unlimited Unlimited
Team (10) (10)
API 1000/hr 1000/hr
Trial - 7 days 7 days

🗄️ DATABASE STRATEGY

Zero Data Loss:

  • All new fields nullable or have defaults
  • Additive migrations only
  • No destructive changes
  • Backward compatible

New Models:

  • Plan, Subscription, Payment, PaymentMethod, Coupon
  • Goal, GoalAllocation, GoalMilestone
  • Team, TeamMember, TeamInvitation
  • ApiKey, ApiKeyUsage, Webhook, WebhookDelivery
  • AppConfig

Modified:

  • User: add role, phone, suspendedAt
  • Wallet: add teamId

🔐 SECURITY

  • Admin routes: /admin/*
  • JWT with role claim
  • API keys hashed
  • Internal DB URL in production
  • Encrypted sensitive config
  • Audit logging

📝 ADMIN SEEDER DATA

Admin Account:

  • Email: (provide)
  • Name: Dwindi Ramadhana
  • Password: (provide or auto-generate)

Default Plans:

  • Free: Rp 0, 5 wallets, 3 goals
  • Pro Monthly: Rp 49,000, unlimited
  • Pro Yearly: Rp 490,000, unlimited

Payment Methods:

  • BCA, Mandiri, GoPay, OVO (placeholder data)

PROGRESS

Completed:

  • Auth (email + Google OAuth)
  • OTP/2FA
  • Wallets & Transactions
  • Categories
  • Theme system
  • Filters & routing

Completed:

  • Phase 1: Admin Dashboard 100%
    • Schema migration
    • Seeder
    • Backend (100%)
      • Admin Guard
      • JWT Role Support
      • Plans CRUD
      • Payment Methods CRUD
      • Payments Verification
      • Users Management
      • App Config
      • Maintenance Guard
    • Frontend (100%)
      • Admin Layout with Sidebar
      • Dashboard with Stats
      • Plans Management (Full CRUD)
      • Users Management (Full CRUD)
      • Payment Methods (Full CRUD with drag-drop)
      • Payment Verification
      • App Settings (Tabbed: General, Security, Payment Methods)
      • Maintenance Mode UI
      • Profile Integration

Next Options:

  • Option A: PWA + Push Notifications (Recommended - 1-2 weeks)
  • Option B: Phase 4: Subscription System (Revenue - 2 weeks)
  • Option C: Phase 2: Team Feature (Original plan - 2-3 weeks)
  • Phase 3: Goals (After Team)
  • Phase 5: API & Webhooks

Last Updated: 2025-10-22