Project: OTB Billing Version: v0.4.3 Last Updated: 2026-03-13 Status: Portal lifecycle complete Current capabilities: - Admin can enable/disable portal access - Admin can generate/reset one-time access codes - Admin can send portal invite email - Admin can send portal password reset email Client portal features: - First login via single-use access code - Forced password creation - Email + password authentication after setup - Invoice dashboard - Invoice detail page - Secure invoice PDF downloads Infrastructure: - Flask backend running via systemd - MariaDB backend - SMTP email integration - Portal domain: portal.outsidethebox.top - Billing admin: otb-billing.outsidethebox.top