KopiCening POS & Micro Accounting Dashboard

KopiCening is a small business web application built with Flask and MySQL that combines a minimal e‑commerce front (product listing, session cart, checkout with paid / credit status) and an internal admin dashboard for inventory updates, purchase logging, cash flow, receivables, liabilities, and profit overview. It implements basic accounting groupings (cash, expenses, purchases, sales, equipment, supplies, assets, capital, payables) and derives summary metrics (cash position, inventory value, outstanding receivables, supplier & business debt, and profit). Data persistence uses SQLAlchemy models with Alembic migrations; templates use Jinja2 filters for localized date and thousand formatting (Indonesian style).

Technologies Used

FlaskSQLAlchemyMySQLInventoryPOSAccountingDashboard

Key Features

  • Public product catalog with add-to-cart and session-based cart storage
  • Checkout flow with random order ID and paid / credit (receivable) status
  • Automatic stock decrement per sold item
  • Inventory valuation (stock * base cost) and editable cost & price fields
  • Admin dashboard: cash flow, receivables, inventory, equipment, assets, liabilities, profit
  • Purchase entry with quantity, unit price, and paid flag (cash or payable)
  • Simple profit & loss style aggregation (sales, cost context, operating costs)
  • Accounts grouping via coded account IDs (1xxx–4xxx logic mapping)
  • Basic authentication (fixed admin credentials session)
  • Custom Jinja2 filters for Indonesian date & thousand separators
  • Alembic migrations for schema evolution

Technical Stack

Python
Flask
Flask-Migrate (Alembic)
SQLAlchemy
MySQL (PyMySQL driver)
Jinja2
Bootstrap (static templates)
Session-based state management