LankaSoft Solutions: Allocating a Discounted Bundle and Constraining an Uptime Bonus under SLFRS 15
LankaSoft Solutions (Pvt) Ltd, a Colombo software vendor with a 31 December year end, signed a contract on 1 March 2025 with a state bank. The contract price is LKR 90 million: the bank pays LKR 45 million on signing and the balance in three annual instalments. LankaSoft must (i) grant a three-year licence to its core banking module, (ii) customise and implement the module over four months, and (iii) provide 36 months of support starting when the module goes live at the end of month four. The implementation work significantly modifies the licence's functionality, and the bank cannot use the module without it. Standalone selling prices are licence LKR 60 million, implementation LKR 25 million and support LKR 15 million. A further LKR 5 million is payable if uptime reaches 99.9% over the contract; the module has achieved 99.95% for four consecutive years, but the bank's old servers will be retained for the first six months. The accountant has recognised LKR 30 million of revenue in 2025 (half the cash received) and parked the rest as a liability.
1. Identify the performance obligations in the bank contract and allocate the LKR 90 million transaction price. Should the LKR 10 million discount be spread pro rata?
Read the worked answer
Step 1 – Identify distinct performance obligations.
- Licence + implementation: not distinct. The implementation significantly customises the module and the bank cannot benefit from the licence without it, so the two are highly interdependent and are combined into one performance obligation.
- Support: distinct. The bank can benefit from the live module without support, and support is not highly integrated with the licence, so it is a separate obligation.
Step 2 – Allocate on relative standalone selling price (SSP).
| Obligation | SSP (LKR m) | Share | Allocation of 90 |
|---|---|---|---|
| Licence + implementation | 85 | 85% | 76.5 |
| Support (36 months) | 15 | 15% | 13.5 |
| Total | 100 | 100% | 90.0 |
Step 3 – The discount. Under SLFRS 15 a discount is allocated proportionately unless there is observable evidence that it relates only to one or more (but not all) obligations. Here the LKR 10 million is a general bundle discount with no such evidence, so it is spread pro rata as above. Allocating the whole discount to support would be wrong and would front-load licence profit.
2. Compute revenue for the year ended 31 December 2025 and the closing contract balances. How should the LKR 5 million uptime bonus be treated?
Read the worked answer
Combined licence/implementation obligation (LKR 76.5m). Recognise over time using cost-to-cost progress; the work runs March–June 2025 and is complete by 30 June, so the full 76.5m falls in 2025.
Support obligation (LKR 13.5m). Straight-line over 36 months from 1 July 2025 = 0.375m per month. Six months in 2025 = LKR 2.25m revenue; LKR 11.25m contract liability remains.
Revenue 2025 = 76.5 + 2.25 = LKR 78.75m (before any variable consideration).
Contract balances. Cash received is 45m against 78.75m recognised, so the net position is a contract asset of LKR 33.75m, presented as an unconditional receivable of 45m for work already transferred (only the passage of time is required) and a contract liability of 11.25m for support not yet delivered.
Uptime bonus. It is variable consideration and must be constrained: include it only to the extent it is highly probable there will be no significant reversal. Four years of 99.95% uptime is good evidence, but the six months on the bank's old servers create real reversal risk. If unconstrained, it relates to the uptime obligation (support), is allocated there, and 6/36 would be recognised in 2025 (about LKR 0.83m). Otherwise recognise nothing and disclose the unconstrained amount.
Correction. The accountant's LKR 30m (half of cash) is wrong: it ignores progress on implementation and the allocation of the bundle.
3. Does the three-year instalment structure create a significant financing component? Advise on the treatment and on the year-end presentation.
Read the worked answer
Analysis. SLFRS 15 requires an adjustment where the timing of payments gives either party a significant financing benefit. The indicators are the length of time between transfer of the goods or services and payment, and the prevailing market interest rate.
- The licence/implementation work is transferred by 30 June 2025 but roughly LKR 45m of consideration is collected over 2026–2028. That is a gap of up to three years and points to a financing component.
- The practical expedient permits ignoring the financing element where the period between transfer and payment is expected to be one year or less. That expedient does not cover the later instalments here.
- If material, discount the future instalments at the rate that would apply in a separate financing transaction between the bank and LankaSoft (the rate used in the contract, adjusted for any collateral, is a starting point), recognise interest income over the period, and increase revenue on the combined obligation accordingly.
Presentation. Keep the receivable (unconditional right) separate from the contract liability for undelivered support. Do not net them into one unexplained figure; disclose the allocation, the progress method and the constrained variable consideration. If the financing effect is immaterial in amount, document that judgement rather than remaining silent.