Changelog — ChargeGrid
[2026-04-20]
- Fixed demo data not loading on install — the seed file was referencing an outdated column name, so new customers never saw the sample agents, funders, and transactions.
Internal
seeds/demo.sql now writes to members.pancho_user_id (schema has been on UUIDs for a while); every foreign-key to a member row is a matching UUID placeholder instead of the old 100-series integers.
[2026-04-18] — Renamed
- Renamed from Charge Pro to ChargeGrid (slug
chargepro → chargegrid).
- Every display string, marketing copy, schema reference, code-comment, folder path, DB filename, and
subscriptions.app_id value now uses the new slug. Platform had not gone live yet, so old URLs are not preserved.
All notable changes to this app are recorded here. Newest entries on top.
[2026-04-17] — Funder rename, 30% agent share, payoff mechanic
- Renamed the "investor" role to "funder" across every screen, API route, setting, and URL — less regulatory baggage, clearer to Nigerian users.
- Agents now earn a fixed 30% of every swap (was 33%). Changed is visible on the new "How you earn" page in the agent dashboard — no more splitting hairs over platform math.
- Funded units now have a payoff target. When you fund a unit, the platform records the purchase price × (1 + interest %) as your payoff goal (default 20% interest). Every swap on that unit credits you the non-agent share until your earnings reach the target, at which point the split reverts to the platform.
- Director settings page simplified: just set the agent % and the default interest rate — the rest is derived automatically.
- Funder portfolio page shows a per-unit payoff progress bar.
- New in-app event
chargegrid_unit_paid_off fires when a unit crosses its payoff target (useful for future notification hooks).
Internal
- Full rename of
investor_* → funder_* across schema (investor_devices → funder_devices, investor_id, investor_share), API routes (/investors/ → /funders/), app.json permissions, role values, and setting keys.
- New columns on
funder_devices: interest_rate, payoff_target, paid_off_at. Guarded ALTERs for existing installs.
[0.3.0] — 2026-04-17
- Role-aware home dashboard: customers see wallet/device status and quick actions, agents see inventory counts and today's earnings, funders see portfolio summary, directors see area overview
- 3-step swap wizard for agents: verify customer identity (photo + name), scan returned and outgoing device IDs, confirm and process with automatic wallet debit and three-way revenue split
- Customer swap view showing active device info and how-to-swap instructions
- Wallet page with balance card, top-up flow, withdrawal requests (agents/funders), and full transaction history
- Customer swap history with chronological transaction list
- Family sub-accounts page for managing household members under one membership
- Agent inventory view with filter tabs (charged/charging/damaged) and device grid
- Earnings view shared by agents, funders, and directors — shows relevant commission data per role
- Funder portfolio showing all owned devices with ROI calculation, rental counts, and lifecycle status
- Director area management: view/create geographic zones with agent/device/swap counts
- Director agent management with enriched stats per agent (devices, swaps, earnings)
- Director member management with search, role filtering, detail sheet with freeze/unfreeze actions
- Director device fleet view with table layout, status filters, and create-new-device form
- Director settings page for configuring swap fee, deposit, revenue split percentages, late fees, and payout thresholds
- Self-service public signup portal at /p/{userId}/chargegrid/signup — multi-step form with photo capture, NIN/BVN collection, tier selection, and deposit payment flow
[0.2.0] — 2026-04-17
- Full database schema: members with NIN/BVN and photo verification, sub-accounts, geographic areas, power banks with 6-digit device IDs, transactions with three-way revenue split, wallets, funder devices, agent profiles, deposits, damage reports, late returns, corporate sponsors, director area assignments, and payouts
- Four first-class roles: customer, agent, funder, director — each with role-specific navigation and permissions
- Role-aware dashboard API returning tailored stats per role
- Swap processing API with wallet debits, three-way revenue split (platform/agent/funder), and device status tracking
- Wallet API: balance check, top-up recording, transaction history, payout requests
- Devices API: fleet CRUD with filtering by status/area, device creation with funder linking
- Members API: list, update, freeze/unfreeze, account closure request and approval flow
- Agents API: list with enriched stats, profile updates, approve/suspend
- Funders API: portfolio view, device purchase flow
- Deposits API: payment recording, refund processing with wallet integration
- Geographic areas API: CRUD with director assignment
- Demo seed with Lagos zones, sample agents, funders, customers, power banks, and transactions
- Fresh seed with default settings (1,200 NGN swap fee, 20,000 NGN deposit, configurable revenue split)
[0.1.0] — 2026-04-16
- Initial shell scaffold with customer / agent / admin roles.
- Concept page outlining PIN-based swap confirmation and deposit flow.
- Added funder role as a stretch idea — outside funders fund individual power banks and earn a cut of every rental their unit generates, tracked live in-app.