Changelog
3 July 2026
Accounting module — Invoices, Quotations, Payments
FeatureFull billing suite benchmarked against Xero / QuickBooks. Create quotations, convert them to invoices in one click, record full or partial payments (auto-flips to Partial / Paid), and track everything with atomic IV-##### numbering that continues from the legacy system (matching the established invoice PDF template). Line-item editor with a single-source SST tax engine (tax charged on the post-discount net).
Item catalog + invoice / quotation PDF
FeatureReusable item catalog (course / SaaS / service) with default price + tax. One-click professional A4 PDF for any invoice or quotation — company letterhead, tax identifiers, line items, totals, and a DRAFT watermark on drafts.
Financial reports — AR aging, sales, SST
FeatureAccounts-receivable aging (current / 1-30 / 31-60 / 61-90 / 90+), sales summary with top customers and a monthly trend, and an SST tax report grouped by rate. Exportable to PDF for the board or the taxman.
Company & tax profile (MyInvois-ready)
FeatureCompany profile drives every document header: legal name, address, SSM reg no, LHDN TIN, SST no, and MSIC code — all the identifiers Malaysia's e-Invoice (MyInvois) will require. Configured for AIGC SDN. BHD.
ERP interface now fully English
PolishTranslated all remaining admin-facing UI (accounting, upgrade leads, duplicate merge, review side-peek, pipeline deal-rot, quick search) to consistent English. Customer-facing multilingual content (student review forms, notifications) stays localized.
2 July 2026
Tasks / next-action system
FeatureA real follow-up container: due dates, priority, assignee, source. Filter by Due today / Overdue / All open. One-click 'Add follow-up' on any customer profile, complete with Undo. Health-score risk now has somewhere to land.
Two-way outreach — Email + WhatsApp
FeatureSend an email (Resend) or WhatsApp (Cloud API) straight from a customer profile; the message is logged to their timeline. Degrades to a wa.me link when WhatsApp isn't connected, so no send ever silently fails.
Duplicate customer merge
FeatureFinds customers sharing a phone or email (union-find across both), lets you pick the primary and merge. Migrates subscriptions / reviews / interactions / tags / certificates in one transaction, backfills missing fields, recomputes review count.
Deal-rot detection on the pipeline
FeatureEach pipeline card shows how many days a deal has been stuck in its stage — amber past 7 days, red past 21. A board-level banner counts stalled deals so nothing rots unnoticed.
Side-peek review triage
FeatureOpening a review in the moderation queue slides out a right-side panel instead of a full-page jump. J / K move between reviews, approve / reject / feature actions live in the peek — triage without losing your place.
Product-qualified leads (PQL)
FeatureTurns AIGC App usage into a sales list: high-usage users on low/no plan become upgrade candidates; users stuck 7+ days without their first video become an onboarding-intervention list. One click spins up a follow-up task.
Viral certificate sharing + SEO review wall
FeatureCertificate pages get LinkedIn / Facebook / WhatsApp share + a course sign-up CTA. New public review wall at /reviews-wall carries schema.org AggregateRating so Google can show star ratings in search results.
Bulk customer actions
FeatureMulti-select rows in the customer list to add a tag, move stage, or create follow-up tasks in one go — a slide-up action bar handles the batch.
AI natural-language search
FeatureAsk a question in plain language ('how many 5-star reviews from KL last month?') and get an answer + data table. Query plans are whitelisted server-side — no raw SQL, and financial answers are gated to finance roles.
Per-customer AI insight
FeatureA Claude-powered card on each customer summarizes the relationship, flags health, and suggests the next best action from their interactions, subscriptions and reviews.
Security audit — sealed critical leaks
SecurityFull 6-dimension audit (44 findings, 42 confirmed). Fixed: unauthenticated customer/revenue/dashboard APIs (anyone could read all PII + MRR), unsigned Stripe webhook (forgeable paying customers), missing CRON_SECRET on 3 jobs, mass-assignment on customer update, and an AI-search finance-data leak to non-finance roles.
Data-integrity + palette crash fixes
FixMRR waterfall no longer crashes (invalid null filter) and now counts churn correctly. Command palette no longer white-screens on a recent item, sign-out hits the real endpoint, expiring-subscription deep links resolve, the AI insight card loads (was stuck skeleton), and archived system alerts resurface after 24h instead of silencing forever.
Premium visual system + 3D charts
PolishNew design-token foundation (glow / glass / gradients), a redesigned login hero, gradient sidebar, and a full ChartKit refresh — gradient-filled areas, 3D bars, donut conversions and glass tooltips across every dashboard chart.
14 May 2026
Cohort retention + Revenue forecast + TTFV
FeatureThree SaaS health metrics: customer cohort retention heatmap, 90-day revenue forecast with ±15% confidence, and time-to-first-video activation metric for AIGC App users.
Renewal reminder cron
FeatureAuto-queues notification at 30 / 14 / 7 / 3 / 1 days before subscription expiry. Idempotent by (subscription, window).
Vercel Analytics + Speed Insights
PolishPage-view tracking + Core Web Vitals monitoring. Lets us see which ERP pages get used and catch perf regressions.
RBAC Phase 3 — full role enforcement
SecuritySidebar nav filtered by role. Self-service password change. Admin user management actions (role / suspend / reset password). Safety guards: no self-suspend, no last-superadmin-delete.
Withdrawal approve / reject UI
FeatureInline buttons on /aigcapp/withdrawals call the app-side admin endpoints. SOD checks + audit log atomic on the platform side.
13 May 2026
Customer Health Score
Feature0-100 score per customer aggregating CRM + AIGC App signals (active sub, recent paid orders, login recency, video success, email status). Ranking page with VIP / Healthy / At-Risk / Churn bands.
Refund workflow
FeatureOne-click refund on PAID orders: atomic transaction updates order status, deducts balance (clamped to 0), inserts CreditLedger entry, writes audit log.
12 May 2026
Dark mode + mobile responsive
PolishThree-way light / dark / system toggle with FOUC prevention. All list tables fallback to mobile-friendly card layout < 768px.
Help page + global Cmd+K search
Polish/help with keyboard shortcuts, feature map, FAQ. Cmd+K from anywhere searches across customers / orders / videos / etc.
Dashboard inbox + sonner toasts
PolishToday's Actionables card on the dashboard aggregates reviews pending, withdrawals overdue, videos failed 24h, etc. Toast notifications replace browser alerts.
11 May 2026
ERP audit log + admin user table
FeatureEvery ERP mutation writes to AdminAuditLog with operator identity + before/after diff. /audit page surfaces the trail.
Customer 360° view + AIGC App ↔ CRM bidirectional links
FeatureCustomer detail page now shows their AIGC App account (balance, lifetime spent, recent orders, videos, subscriptions) inline. AIGC App user detail page links back to CRM customer.
10 May 2026
AIGC App admin section (24 pages)
FeatureFull read-only admin coverage of the digital-human platform: users, orders, videos, credits, providers, plans, subscriptions, agents, withdrawals, redeem codes, audit, avatars, voices, smart-edit, PPTX jobs, notifications, webhooks.