Platform · front office

Billing and revenue from one contract record

The standard arrangement is a billing system that issues invoices and a spreadsheet that computes revenue, reconciled monthly. They disagree because they were built from different readings of the same contract — and that disagreement is the first thing a diligence team finds.

M1M4M7M10Platform subscription$144K over 12mImplementation service$36K over 3mPremium support$24K over 10mTraining credits$12K over 4mOne contract · $216K · four performance obligations · four different curvesallocated on standalone selling price · a mid-term upgrade re-plots this prospectively
One contract drives bothUsage and hybrid supportedStripe reconciled properly

What it does

Six things, specifically.

Recurring billing

Monthly, annual, and multi-year with ramps, escalators, and mid-term changes — generated from the contract rather than from a separately maintained billing plan.

Usage and overage

Metered consumption rated against the contract, with overage billed and recognised as consumed rather than estimated and trued up later.

Hybrid arrangements

A platform fee plus usage plus a one-off implementation is three obligations on one contract, and it is the shape most real software deals take.

Changes mid-term

Upgrades, downgrades, seat changes, and extensions handled as contract modifications with proration and the correct revenue treatment recorded.

Collection and dunning

Card and ACH through Stripe or your processor, with failed-payment retries and dunning that checks renewal status before it fires.

One source for revenue

The revenue schedule and the invoice derive from the same contract record, so there is nothing to reconcile between them.

Two readings of one contract

When billing and revenue live in different systems, somebody interprets the contract twice — once to set up the billing plan and once to build the revenue schedule. Those interpretations diverge on exactly the things that are ambiguous: when the implementation obligation is satisfied, how a ramp allocates, what happens on a mid-term upgrade.

The monthly reconciliation between them is not a control. It is the cost of having read the contract twice, and it grows with contract complexity rather than with volume.

Reconciling billing to revenue every month is not a control. It is the recurring cost of having interpreted the same contract twice.

The Stripe reconciliation nobody enjoys

Gross bookings in Stripe rarely equal revenue in the ledger, and the difference is structural rather than an error: processing fees, refunds, disputes, proration, and failed retries all sit between them.

The most common accounting mistake we find is fees netted against revenue rather than posted to their own expense account, which understates both revenue and cost and quietly distorts gross margin. Charges, refunds, disputes, fees, and payouts are read and matched separately for that reason.

Usage billing has a timing problem

Consumption happens continuously, invoices go out monthly, and revenue should be recognised as consumed. Most companies estimate usage revenue at period end and true it up when the invoice is produced, which creates a recurring adjustment nobody can explain in a rollforward.

Rating usage against the contract as it accrues removes the estimate. It also makes the deferred revenue movement explainable, which is the thing a reviewer actually tests.

Limits

Where this does not help.

Not a payment processor

Stripe, Adyen, or your existing processor moves the money. We rate, invoice, collect through them, and reconcile — we do not become your merchant of record.

Not a pricing engine at scale

Complex CPQ with configurable products and approval-heavy discount matrices belongs elsewhere. We handle quotes and subscription pricing for the mid-market.

Tax needs a specialist

Sales tax and VAT determination integrates with Avalara or similar. Nexus determination and filing is not something we do ourselves.

Questions

What people ask.

Do you replace Stripe or Chargebee?
Stripe stays as the processor. Chargebee or Recurly we can replace or read from — many customers keep them and use us for the revenue side, which removes the reconciliation without a migration.
How is usage handled?
Rated against the contract as it accrues, so revenue is recognised as consumed rather than estimated at period end and trued up later.
What about mid-term upgrades?
Treated as contract modifications with proration on the billing side and the correct prospective or cumulative treatment on the revenue side, with the determination recorded.
Does it handle sales tax?
Through Avalara or similar. We integrate for determination and filing rather than computing nexus ourselves.
How do Stripe fees post?
To their own expense account, not netted against revenue. Netting is the most common Stripe accounting error we find and it distorts gross margin in a way investors notice.

Stop reconciling billing to revenue.

Send your contract types and a billing export and we will show you where the two diverge.