## v0.4.2 - 2026-03-12 - Deduped backend/app.py and removed duplicated major route/function sections. - Removed the text_for_pdf_routes snapshot hack from active runtime path. - Added secure portal-safe invoice PDF route. - Confirmed portal login, dashboard, invoice detail, invoice itemization, and PDF access flow. - This version is the first clean post-dedupe checkpoint. ## v0.4.1 - 2026-03-12 - Added secure client portal login using email plus one-time access code. - Added forced password setup on first portal login. - Added client portal dashboard with invoice listing. - Added portal invoice detail page. - Wired new and editable invoices to create invoice_items automatically. - Confirmed live admin edits refresh correctly in client portal views. - Polished invoice edit notice bar contrast for dark theme. - This version is the pre-refactor savepoint before cleaning duplicate sections in backend/app.py. - System package dependency note: install `zip` on deployment hosts for release snapshot creation. ## v0.4.0 - 2026-03-12 - Released stable service-managed build of OTB Billing. - Added working /health styled page and /health.json endpoint. - Added health backend module for app/server/db/disk/memory status reporting. - Added .env-based runtime configuration through run_dev.sh shell loading. - Moved runtime control to systemd via otb_billing.service. - Confirmed reboot persistence and mintme webfront reachability through LAN bind on port 5050. - Kept debug off and reloader disabled for stable service operation. # otb-billing ## v0.3.0 — 2026-03-09 Major operational milestone release. New Features ------------ - Revenue reporting system - JSON export for reports - Batch invoice printing - Batch CSV export - Filtered invoice export - Invoice logo support (PDF + print) - Business identity settings - Report frequency selector (monthly / quarterly / yearly) Infrastructure -------------- - Improved reporting backend - Cleaner filter handling - Settings system extended - Print layouts stabilized ## v0.3.1 — 2026-03-09 Milestone release. Features included ----------------- - Invoice PDF generation - Invoice email sending - Settings/config system - Branding/logo support - CSV exports - Filtered invoice export - Batch PDF ZIP export - Batch print - Revenue report - Revenue JSON export - Accounting package ZIP export - Email delivery for reports and accounting package Notes ----- - Core billing/export/report workflow is now operational. - Email logging/audit trail is planned for a future release. ## v0.3.1 — 2026-03-10 Milestone release. Features included ----------------- - Invoice PDF generation - Invoice email sending - Settings/config system - Branding/logo support - CSV exports - Filtered invoice export - Batch PDF ZIP export - Batch print - Revenue report - Revenue JSON export - Accounting package ZIP export - Email delivery for reports and accounting package - Email audit logging Notes ----- - Core billing/export/report workflow is now operational. - Email log table records invoice, revenue report, and accounting package sends. ## Installer From the project root: ```bash chmod +x install.sh ./install.sh ## Installer From the project root: chmod +x install.sh ./install.sh The installer will install dependencies, configure MariaDB, create the database, and start the service. ## Installer From the project root: chmod +x install.sh ./install.sh The installer will: - install Python and MariaDB dependencies - copy the app to the target path - create a Python virtualenv - install requirements.txt - create the database and import schema - create the systemd service - start the service