Enterprise software · Software and SaaS
Enterprise software contracts recognised by what was delivered, not by what was invoiced
Enterprise software is sold in large contracts that bundle licences, implementation, customisation and years of support. Payment follows milestones tied to the customer's approvals rather than the work. We separate each contract into its parts, recognise each as it is delivered, and keep unbilled revenue and receivables tied to named milestones.
In one paragraph
Enterprise software firms — ERP and vertical-software vendors, banking and insurance platforms, suppliers to government and public-sector buyers — usually turn over ₹20–300 crore from a few dozen large customers. Owners and finance heads live with the lumpiness. A handful of contracts make the year. Each has its own acceptance terms, retention and payment cycle.
Managing director or CFO, often with the head of delivery
The economics
How the money moves in this trade
A typical contract combines a perpetual or term licence, an implementation project, change requests and annual support, each delivered on a different pattern. Invoicing follows milestones such as go-live or user acceptance, which can sit months away from the work. Revenue recognised, revenue billed and cash collected therefore diverge for long stretches. The gap sits in unbilled revenue and contract balances that are rarely analysed contract by contract.
Large customers, and government buyers in particular, add retention money, performance bank guarantees, liquidated damages for delay and tax deducted at source on every payment. The cash a contract finally produces can be well below its headline value. The difference only becomes visible when receivables are aged by milestone rather than by invoice.
The problem
Where the numbers usually break down
Bundled contracts recognised as one stream
Licence, implementation and support are booked together, so revenue timing follows invoices rather than delivery of each part.
Unbilled revenue with no milestone behind it
Work done but not invoiced accumulates as a single balance, and nobody can say which acceptance it is waiting on.
Implementation overruns hidden in the project
Effort beyond the estimate on fixed-price implementations is absorbed without being costed, so contract margin is overstated until the project closes.
Customer TDS not matched to invoices
Tax deducted by customers is not reconciled to the annual tax statement invoice by invoice, so credits are missed or claimed late.
Retention and guarantees outside the receivables view
Retention money, bank guarantees and liquidated-damage deductions are tracked by the sales team, not in the ledger.
What we do
The work, and the result each part produces
Contract decomposition
Each contract separated into licence, implementation, customisation and support, with the price allocated on a stated basis and a recognition pattern for each.
Revenue follows delivery, part by part.
Unbilled revenue by milestone
Every unbilled balance linked to the milestone and acceptance it depends on, and reviewed monthly with delivery heads.
Unbilled revenue becomes a list of approvals to chase.
Implementation project costing
Effort and third-party cost booked against each implementation and compared with the estimate at completion.
Overruns appear while the project is still live.
Customer TDS reconciliation
Deductions shown in the annual tax statement matched to invoices and customers, with mismatches raised with the customer.
Tax credits are claimed in full.
Retention, guarantee and deduction register
Retention money, bank guarantees and liquidated-damage deductions recorded against each contract with release dates.
The cash each contract will actually produce is known.
Support renewal tracking
Annual support contracts tracked for renewal, price escalation and lapse.
Support revenue is not lost to missed renewals.
Where we start
The first steps of an engagement
Contracts and milestone schedules
We ask for signed contracts and change orders, the milestone and acceptance schedule, the receivables ledger and effort data from your project management tool.
Contract-by-contract revenue review
Each large contract is split into licence, implementation, customisation and support. Revenue to date is compared with what was actually delivered.
Unbilled revenue tied to milestones
Every unbilled balance is linked to the milestone and acceptance it depends on, and retention, guarantees and deductions are recorded against each contract.
Revenue, billing and cash report
The first report shows revenue recognised, billed and collected for each contract, with unbilled revenue aged by milestone.
How it is measured
The reports the work is judged on
Each is recorded as a baseline before the work starts, so later reports have an honest comparison.
- Revenue recognised, billed and collected, by contract
- Unbilled revenue by milestone and age
- Estimate-at-completion margin on live implementations
- Customer TDS reconciled to the annual tax statement
- Retention and guarantees outstanding, with release dates
- Support renewals due, renewed and lapsed
Who it suits
Written for, and not the right fit for
- You need the statutory audit or the tax-audit report signed; an independently engaged CA signs both.
- You want help preparing tender bids; we support the financial schedules but do not manage bids.
- Software vendors selling licences with implementation and support to large enterprises or banks.
- Suppliers to government and public-sector buyers working with retention, guarantees and milestone acceptance.
- Firms whose unbilled revenue has grown faster than their revenue.
Services
Services this work draws on
Outsourced accounting
Your books kept current and reconciled, closed to a published calendar.
Explore service ↗Costing and profitability
What each product, line and customer really contributes.
Explore service ↗MIS and financial planning
Reporting built around the questions you actually need answered.
Explore service ↗GST, TDS and tax compliance
GST, TDS and income-tax prepared from reconciled data, not a working file.
Explore service ↗Internal controls and risk
Controls sized to your business, documented and actually tested.
Explore service ↗Every other service, also available in this trade
Common questions
Questions owners in this trade ask
Why change a revenue method our auditor already accepts?
If the method follows invoices and your contracts follow delivery, the difference eventually shows up — often as a large adjustment in the year a big contract slips. Splitting contracts now makes the timing defensible and the margin on each part visible.
How should disputed liquidated damages from government customers be recorded?
Record the deduction as it happened and track the disputed amount separately with its status. That way the receivable isn't overstated, and a recovery is recognised when it's actually agreed.
Will this work with our project management tool?
Yes. Effort and milestone data usually already exist there. The work is in linking them to contracts in the ledger, not in replacing the tool.
Explore further