Results: forecast, revenue and reporting

Recognise contract revenue at month end

Recognise each contract's revenue at month end by certified progress or cost-to-cost percentage of completion, with the contract asset or liability and a provision for loss-making projects.

Where to find itProjectsRevenue Recognition

3 min readLast updated

A progress certificate bills what was measured, which is not always what was earned. At month end, revenue recognition brings each contract's revenue to the right figure (IFRS 15 / Egyptian Accounting Standard 48) and provides for projects that will end in a loss.

The two methods

Each contract has a revenue recognition method, set on the contract:

  • Certified progress (the default): revenue is what issued certificates billed, less penalties and other deductions. The run only checks for a loss.

  • Cost-to-cost percentage of completion: the contract earns its value (signed value + approved variations) times the project's % complete, which is the cost to date ÷ the approved estimate at completion.

For a cost-to-cost contract, earned above billed is a Contract asset (work done, not yet billed). Billed above earned is a Contract liability (billed ahead of the work). Without an approved estimate the contract keeps last month's position and is marked "No approved estimate".

Loss-making projects

When a project's approved estimate at completion is above the value of its contracts, the whole expected loss is recognised now: the run books a Loss provision for the expected loss, less the loss the books already show.

Recognise a month

  1. Go to Projects > Revenue Recognition.

  2. In Recognise a month, choose the month (last month by default) and select Preview. You see each contract's value, cost to date, estimate at completion, % complete, earned, billed, its asset or liability, and the loss provision. Nothing is posted yet.

  3. Select Recognise revenue and confirm.

Previewing a month's revenue recognition per contract, with the contract asset or liability and the loss provision

The run posts one journal per contract, dated the last day of the month and tagged with its project. It moves the contract asset or liability against contract revenue by the change since last month, and moves the loss provision against the loss expense. The accounts are set in project accounts.

The month is also recognised automatically on the 3rd of the following month.

Run again or reverse

Recognising a month again reverses its earlier run and posts today's figures, so a late certificate or cost only needs the month run again. Under Revenue runs, the latest month can be reversed. An earlier month cannot be recognised once a later one is.

Common questions

Does the loss provision count as cost on the next run? No. It is left out of the cost to date, so it never raises the % complete.

Several contracts on one project? They share the project's % complete and loss, in proportion to their value.

Was this article helpful?

Still need help?

Tell us what you are trying to do, and our team will get back to you.

Contact us