
Customer Success Hub
Health scores, renewal calendars and QBR prep for the team that keeps revenue from leaking.
Next.js · TypeScript · PostgreSQL · Recharts
OverviewBilling Support1 / 6
Recurring revenue is easy to report and hard to prove. This build ties every MRR movement to a subscription event, so the number on the board slide reconciles to the ledger.
Next.js · TypeScript · PostgreSQL · Recharts
Inside the app
22 connected functions on one schema, spanning three permission levels. Everything below is in the template before a line of customisation.
18 payments failed overnight and 6 subscriptions are in their final dunning step.
Every active, trialling and cancelled subscription with its billing state.
Raised by the billing run, with tax applied by customer location.
Retry schedule and what happens when it runs out. Cancellation is never silent.
New, expansion, contraction and churn. Every movement ties to an event.
Metered consumption against plan limits, with overage before it becomes a surprise.
Price changes never apply retrospectively without an explicit decision.
Every price change, refund and cancellation. Retained for seven years.
Permissions
Billing support fixes what broke. A revenue manager owns the numbers leadership quotes. An administrator owns pricing. Pricing changes are the highest-risk action here, so they are the most tightly controlled.
The build
22 functions, all of them live in the preview. Nothing on this list is a mockup or a roadmap item.
What you get
SaaS and service businesses billing monthly or annually, from 100 to 50,000 customers.
Access and evidence
An MRR number nobody can tie back to subscription events is a number that falls apart in diligence. Every movement here traces to an event, and every price change is a version rather than an edit.
Related

Health scores, renewal calendars and QBR prep for the team that keeps revenue from leaking.
Next.js · TypeScript · PostgreSQL · Recharts

Deal stages, forecasting and activity history for a sales team that has outgrown a spreadsheet.
Next.js · TypeScript · PostgreSQL · Tailwind

A branded space where your customers see their documents, requests and invoices without emailing you.
Next.js · TypeScript · PostgreSQL · Auth.js
Questions
Yes. The repository, application code, database schema, migrations, seed data and deployment configuration, is transferred to your organisation on delivery. There is no licence key and nothing that calls home.
No, and you should be wary of anything that claims to. It records what is owed, what was charged and what failed, and drives the retry schedule. Taking the money is your payment provider's job, a fitted build connects your existing merchant account so we are never in the money flow and you keep your own rates.
A price change creates a new plan version; nobody moves onto it automatically. Migrating a cohort is a separate, deliberate, reversible action with customer notification. Silently repricing an existing subscriber is the fastest route to a cancellation and a public complaint, so the app makes it impossible to do by accident.
Yes. Metered consumption is tracked against plan limits, customers are warned at 80% and 100% rather than surprised by the invoice, and overage is either billed automatically or raised as an upsell, depending on the plan.
That is the usual route. A fitted build sets up your plans, metering, proration rules, dunning schedule, tax treatment, invoice design, branding and up to two integrations, and typically takes one to three weeks from a signed scope.
Hosting only, paid to your own cloud provider, roughly $50 to $200 a month, rising with subscriber count and how granular your usage metering is.
A fitted build adjusts fields, stages, roles and integrations to how your team already works. One scoping call, a fixed price, one to three weeks.
