ScreenReviewed 2026-09-29

Revenue run

One period close: what each booking and member offer recognises, the journals and cost moves it posts, the subjects it left out, and the actions to recompute, post, reverse or delete it.

Revenue run

A revenue run page shows one period close in full: the revenue each booking and member offer has earned up to the period end, the cost of sales and brokerage that go with it, the costs moved into inventory, and the journals that carry all of it into the books. Here the accountant reviews and recomputes the draft, and the CA posts it or reverses it.

Where to find it

From the Revenue runs list, click the run number or the eye icon (tooltip "Open"). Prepare draft in the New revenue run dialog opens the new run here, and the notification from an automatic run points finance to it. The Revenue recognition breadcrumb takes you back to the list for the run's books.

You need the View permission on Revenue Recognition. Without it the page reads "No access" and "You do not have permission to view revenue recognition. Ask your administrator." A run that doesn't exist shows the title "Revenue run" with the breadcrumb "Not found" and the error.

This page stands outside the Revenue recognition tabs, so it has no books switcher; the books are named in the header.

What you see

The header shows the run number, its status badge, and "<books> · revenue to <period end>". The action buttons sit on the right.

Alerts

  • A Draft run shows "A draft posts nothing. Posting recomputes it from the books as they stand, then posts one journal per project for the revenue and one for the brokerage released."
  • A warning "Expected loss: the cost share exceeds the price on <booking no> (cost <amount> against <amount>, provision to date <amount>). The unrecognised loss is provided by this run (Dr 5410 / Cr 2640)." appears when a subject's share of the project cost is more than its price. With the policy's Onerous contracts at Flag only it ends "The policy only flags it: the CA books the provision by hand." instead, and the "provision to date" part is left out when nothing is provided. Each booking number links to the booking; a member offer is named "Member offer" without a link.
  • A Reversed run shows "Reversed <date and time>: <reason>. The next run starts again from the run before this one."

Summary

Field What it shows
Revenue to recognise (draft) / Revenue recognised (posted) The revenue this run adds, over all its lines.
Cost of sales The cost of sales this run posts.
Moved into inventory The expense balances this run moves into work-in-progress and land.
Expected losses provided Only when the run provides for an expected loss: the change in the provision for onerous contracts this run posts (a negative amount unwinds it).
To completed units (1510) Only when the run moves something: the work-in-progress of unsold units of a completed project moved to 1510 Completed Units - Inventory (negative when a unit sold and moved back).
Brokerage released The capitalised brokerage this run releases to expense.
Subjects How many bookings and member offers got a line, and "(N skipped)" when some were left out.
Recognised to date Revenue recognised up to this run, summed over this run's lines.
Contract liability Billed ahead of revenue, summed over this run's lines.
Contract asset Revenue ahead of billing, summed over this run's lines.
Policy "<framework> · <method> (from <date>)", a link to the books' Revenue policy.
Posted When the run was posted.
Notes The notes given when the run was prepared; an automatic run's notes name its rule.

Journals

One line per journal voucher the run posted: its number (a link to the voucher), its status badge (green for Posted, red otherwise) and its narration, which reads "Revenue run <no>: <what> to <period end> (<project>)". A draft reads "Posted when the run is posted."; a posted run that had nothing to post reads "Nothing changed, so nothing was posted." The mirror vouchers of a reversal are not listed here.

Bookings and member offers

One row per subject the run computed. When none qualifies, the card reads "No booking or member offer of these books has a With-the-unit charge, billing or capitalised brokerage yet."

Column What it shows
Subject The booking number (a link to the booking) or "Member offer"; underneath, the party, "unit <no>", the tower and the project. A red Cancelled badge marks a cancelled booking.
Progress The percentage recognised to date. Underneath: "since <date>" once revenue is recognised; otherwise the reason it is still at 0% (see below), or the method used.
Price The transaction price: every charge treated With the unit, plus the financing component and the rehab-units share when the policy adds them.
Revenue to date Price × progress, up to and including this run.
This run What this run adds: revenue to date less what earlier posted runs recognised. A negative amount is a reversal (a cancelled booking under Sales return).
Billed What has been demanded on the subject's With the unit charges to date.
Liability Billed ahead of revenue on this subject.
Asset Revenue ahead of billing on this subject.
Cost of sales The cost this run charges for the subject, with "of <amount>" underneath: the subject's full cost share.
Brokerage The capitalised brokerage this run releases for the subject.

The notes under Progress tell you why a line is still at 0%:

  • "Waiting for: <trigger>" (for example "Waiting for: possession handed over"): the possession event the policy recognises on has no date yet, or it falls after the period end.
  • "No occupation certificate on or before the trigger date": the policy requires an OC and the tower (or project) has none dated on or before the possession date. Record it on the tower under Structure or on the project under Project settings.
  • "Cancelled": the booking is cancelled, so it recognises nothing (and reverses under Sales return).
  • "N of M stages achieved", or "No construction stages with a share": progress under Over time (stages achieved).
  • "cost incurred <amount> of <amount>", or "Budget is nil": progress under Over time (cost incurred).
  • "Guidance Note: …" reasons under AS (Guidance Note 2012): "a cost budget is needed to test the cost-incurred threshold", "cost incurred N% is below M%", "area sold N% is below M%", or "realised <amount> is below N% of the price".
  • On a member offer: "Offer <status>" when the offer isn't live, "No unit allotted", "An allotted unit has no booking yet", or "Unit <no>: <note>" repeating the note of the booking on its allotted unit.

Costs moved into inventory

Shown only when the run moves something: "Each expense ledger's balance for the project to the period end, less what earlier runs moved: construction and borrowing cost to 1500, rehab cost to 1600."

Column What it shows
Project The project the expense belongs to.
Ledger The expense ledger's code.
Role Its inventory role: Construction cost, Rehab cost or Borrowing cost.
To date The ledger's balance for the project up to the period end.
Moved before What earlier runs already moved.
This run The difference, moved by this run.

Left out

Lists, with a count, the subjects the run skipped and why, in amber:

  • "The policy recognises revenue on billing: demands already posted it" (the whole books, under Revenue on billing).
  • "<project>: the cost method needs a cost budget (Project > Settings > Budget cost)", repeated for each booking of a project that has no Budget Cost under Over time (cost incurred).

What you can do

Recompute

Rebuilds every line from the books as they stand: new possession dates, OCs, stage dates, budgets, demands, receipts and mappings are all picked up. The message reads "Draft recomputed."

  • Who: anyone with the Create permission on Revenue Recognition. In the default roles that is the Administrator, the Finance Lead and the Accountant. The button shows only on a Draft, and only with the permission.
  • If it's refused, the message shows as a toast: "Only a Draft run can be refreshed (this one is <status>)" when the run is no longer a draft, or "These books have no ledger <code>; sync templates" when an inventory target ledger is missing.

Delete draft

Asks "Delete this draft?" with "Nothing was posted; the draft is removed." Confirm with Delete. The message reads "Draft deleted." and you return to the Revenue runs list.

  • Who: anyone with the Delete permission on Revenue Recognition. In the default roles that is the Administrator and the Finance Lead. The button shows only on a Draft, and only with the permission.
  • What happens next: the books hold no draft, so a new run can be prepared.
  • If it's refused, the dialog shows "Only a Draft run can be deleted; reverse a posted one".

Post run

Asks "Post <run no>?" with "The run is recomputed from the books as they stand, then its journals are posted on <period end>. The revenue policy it uses becomes locked." Confirm with Post run. The message reads "Run <no> posted: N journals." ("1 journal" when there is only one).

  • Who: anyone with the Approve permission on Revenue Recognition. In the default roles that is the Administrator and the Finance Lead. The button shows on every Draft.
  • Greyed out without the permission, with the hover reason "Posting a revenue run needs REVENUE:approve".
  • What happens next: the run is recomputed, then it posts one journal per project for each kind of entry it needs, all dated on the period end and numbered as journal vouchers with the run number as reference: development rights received, the financing component, costs moved into inventory, revenue recognised (crediting revenue and drawing down the contract liability, or building a contract asset), cost of sales, expected losses provided, brokerage released, and completed units. The status becomes Posted, the policy it used becomes Locked, and the possession dates of every booking it recognised are locked on the booking page. The reports under Revenue recognition and the vouchers list update at once.
  • If it's refused, the reason shows in the dialog:
    • "Run <no> already closed <date>; a new run must end on or after it".
    • "No fiscal year covers that date. Open the next fiscal year under Books first."
    • "Period <n> of <FY> is locked" or "That fiscal year is closed." Unlock the period or reopen the year under Fiscal years.
    • "These books are inactive. Reactivate them under Books to post entries."
    • "These books have no ledger <code>; sync templates".
    • "Only a Draft run can be posted (this one is <status>)" when the run is no longer a draft.

Reverse

Opens "Reverse <run no>?": "Every journal of the run is mirrored. Only the latest posted run of the books can be reversed; the next run starts again from the one before it." Fill in the Reversal date (not before the period end; "Blank: the run's own date (<period end>).") and a Reason (up to 255 characters), then confirm with Reverse run. The message reads "Run <no> reversed."

  • Who: anyone with the Approve permission on Revenue Recognition. The button shows only on a Posted run, and only with the permission.
  • What happens next: every posted journal of the run gets a mirror voucher "Reversal of revenue run <no>" dated on the reversal date, the status becomes Reversed, and the next run starts again from the posted run before this one. The policy this run had locked is released if no other posted run uses it.
  • If it's refused, the reason shows in the dialog:
    • "Reverse run <no> first: later runs start from this one" when a later run has been posted.
    • "The reversal date cannot be before the original voucher date."
    • "No fiscal year covers that date. Open the next fiscal year under Books first." when no fiscal year covers the reversal date.
    • "Period <n> of <FY> is locked" or "That fiscal year is closed." when the reversal date falls in a locked period or a closed year.
    • "These books are inactive. Reactivate them under Books to post entries."
    • "This voucher has already been reversed." when one of the run's journals was reversed by hand.
    • "Only a Posted run can be reversed (this one is <status>)" when the run is no longer posted.

Statuses

  • Draft: computed, nothing posted. Recompute, Post run and Delete draft apply.
  • Posted: journals in the books; the policy is locked. Reverse applies while it is the latest posted run of the books.
  • Reversed: mirrored and final. It cannot be deleted or posted again.

Things to know

  • Posting recomputes first. The figures you reviewed on the draft can differ from what is posted if the books changed in between (a receipt, a possession date, a new OC). Review, then post promptly, or Recompute and check again before posting.
  • Every run is a catch-up. Revenue to date is price × progress; this run posts only the difference from the last posted run. Nothing is double-counted when a run is prepared twice, and a correction to a date or a budget flows through the next run rather than needing a manual journal.
  • Runs chain, so only the latest can be reversed. Each line starts from the subject's line on the latest posted run; reversing an earlier run would leave the later ones starting from nothing.
  • A posted run locks two things: the revenue policy it used (add a later policy to change the rules) and the possession dates of the bookings it recognised ("Revenue on this booking is recognised; its possession dates stay as posted." on the booking). Reverse the run first if a date is wrong.
  • The draft alert undercounts the journals. It speaks of one journal per project for the revenue and one for the brokerage, but a run can also post journals for costs moved into inventory, cost of sales, expected losses provided, completed units, the financing component and development rights received. The Journals card lists what was posted.
  • Contract liability and Contract asset in the Summary are sums of this run's lines, not ledger balances. The ledger view, rolled forward over a period, is Contract balances.
  • The financing component and the development rights show only as journals. Their amounts are not broken out on this page; open the journal from the Journals card.
  • An expected loss is provided unless the policy only flags it. A subject whose cost share exceeds its price is an onerous contract. With the policy's Onerous contracts at Provide, each run posts the part of the loss not yet through revenue and cost of sales as "expected losses provided" (Dr 5410 Expected Loss on Onerous Contracts / Cr 2640 Provision for Onerous Contracts), and unwinds it as the loss flows through later runs; the alert names each subject's provision to date. With Flag only the run only warns and the CA books the provision by hand. A cancelled booking is no longer flagged.
  • Completed units move out of work-in-progress. With the policy's Completed units to their own inventory on, once a project has its OC (or every tower has one) the run moves the work-in-progress share of its unsold units to 1510 Completed Units - Inventory ("completed units" journal, To completed units (1510) in the Summary), never more than the work-in-progress actually left in the ledger. A unit booked later moves back and goes to cost of sales with its revenue.
  • Member offers are subjects too. A society member's offer earns revenue on its With the unit tenant charges and, when the policy treats rehab units as non-cash consideration, on its share of the development rights; under Point in time it follows the bookings on its allotted units. When rehab units count as revenue the offer's line also carries its allotted units' share of the project cost as Cost of sales, and the allottee's own booking on that unit carries none. Offers are shown as "Member offer" without a link.
  • Billed and Brokerage come from other records. Billed is what issued demands have charged on the subject's With the unit charges; Brokerage is released from what approved commissions capitalised under the policy.
  • Cost of sales needs the plumbing. Expense ledgers carry an Inventory role under Ledgers, vouchers carry the project's cost centre (see Cost centres), and a Budget Cost gives the cost base; without a budget the cost inventoried to date is used and trued up every run. Cost shares use the project's chargeable area for buyers when the policy shares By area.
  • The cost-method skip is per booking. Under Over time (cost incurred) a project without a budget shows the same "the cost method needs a cost budget" line once per booking under Left out.
  • Runs are audited. Posting and reversing appear under Settings > Audit log in the Money component; there is no History button on this page.

Related

  • Revenue runsScreen

    The revenue runs (period closes) of the chosen books, the dialog that prepares a new draft run, and the scheduled rules that draft runs automatically.

  • Revenue policyScreen

    The CA's effective-dated choices on how the books recognise sale revenue and the costs that go with it: framework, method, possession trigger, OC rule, cost treatments and judgement areas.

  • Contract balancesScreen

    The Ind AS 115 contract-balances disclosure per project over a period: contract liability, contract asset and contract acquisition costs rolled forward from the ledger, with the revenue recognised in the period and how much of it came out of the opening liability.

  • Remaining obligationScreen

    The Ind AS 115 disclosure of revenue still to come from what is already booked: each live booking and member offer's price less what the posted revenue runs have recognised, per project, banded by the financial year of the project's expected possession.

  • Project performanceScreen

    Revenue, cost of sales and margin per project for a period and to date, the booked price and how much of it is recognised, the cost budget against cost incurred and cost to complete, progress by stages and by cost, revenue by month, and the flags the CA needs to act on.

  • VoucherScreen

    One voucher with its lines and bill allocations, its reversal links, its history, and the actions to post, reverse, cancel or delete it.

  • VouchersScreen

    Every voucher in the chosen set of books (drafts, posted, reversed and cancelled), with filters and the menu to start a new voucher.

  • DemandScreen

    One demand: the installments it bills, its amounts with GST, the expected TDS and what is payable in money, the receipts and TDS credits against it and how the money is placed on the charges, with the actions to edit, issue, cancel or delete it.

  • CommissionScreen

    One channel-partner commission: the partner, the brokerage with GST and TDS, the payouts against it, and the actions to edit, approve, cancel or delete it.

  • Fiscal yearsScreen

    The fiscal years of a set of books with their 12 monthly periods: lock or unlock a month, open the next year, and close or reopen a year at year end.

  • LedgersScreen

    Every ledger of the chosen set of books, as a grouped tree or a flat list, with the actions to add ledgers and party ledgers, edit or retire them, and open a ledger's report.

  • Component mappingsScreen

    Which ledger each charge component posts to in the chosen set of books (a main ledger, an optional second tax ledger, an optional cost centre and, for sale and tenant charges, the revenue treatment and contract liability ledger), and the action to copy template additions into the books.

  • Cost centresScreen

    The cost-centre tree of a set of books, usually one per project with a child per tower, so the ledger and the reports can be cut by project; mirror the projects in one click or add cost centres by hand.

  • Budget CostScreen

    The project's (or a tower's) estimated total cost, effective-dated, that cost of sales shares across the saleable units and the cost method of over-time revenue recognition measures progress against.

  • Construction StagesScreen

    Plan the project's construction stages (plinth, slabs, possession…) with their shares and dates, record commencement and completion, and keep the certificates and photos for each stage.

  • StructureScreen

    Build and maintain a project's towers (wings), floors and units, generate them in bulk, and see every unit's status and designation at a glance.

  • Edit projectScreen

    Change a project's facts on one page: basics, site address, land survey details and expected possession, and, on a redevelopment, the development agreement date and the fair value of the development rights. The settings the project inherits from the organization live on its Settings tab.

  • Booking overviewScreen

    A booking's home page: the applicant and unit, parking, dates, money summary, termsheet status and possession, with the buttons to edit the booking, see its history, jump to the opportunity or cancel it.

  • Audit logScreen

    The organization-wide change log: every create, change and delete, every sign-in (including refused ones), sign-out and downloaded file, with who did it, when, from where and what changed.

  • Revenue recognition: policy, point in time vs over time, and revenue runsConcept

    Each set of books carries an effective-dated revenue policy (framework, method, possession trigger, cost and brokerage treatments, judgement areas) chosen by the CA; a revenue run is the period close that computes every booking's and member offer's progress under it, recognises the catch-up revenue, cost of sales and brokerage, and posts the journals.

  • Possession: offer, handover, conveyance and the occupation certificateConcept

    Possession of a booked unit is recorded as three dates on the booking (possession offered, handed over, conveyance registered); the occupation certificate on the tower or project is what allows the offer, the handover marks the unit Sold, and the books' revenue policy names which of these dates is the moment sale revenue is recognised.

  • Contract liability, contract asset and the transaction priceConcept

    A booking's transaction price is the sum of its charges treated "With the unit"; while revenue is deferred, demands for those charges are credited to a contract liability (billed ahead of revenue), a revenue run debits it as revenue is recognised, and revenue recognised ahead of billing sits in the contract asset.

  • Contract acquisition costs (capitalised brokerage)Concept

    Under a revenue policy that capitalises the costs of obtaining a contract, an approved channel-partner commission is parked in Contract Acquisition Costs instead of brokerage expense and released to expense by each revenue run in step with the booking's revenue; possession expected within the practical-expedient months expenses it at once.

  • Cost of sales, cost budgets and inventory transferConcept

    Each revenue run moves the period's construction, rehab and borrowing cost from the expense ledgers into work-in-progress and land inventory, then charges every booking a share of the project's cost (its budget, else the cost inventoried so far) in step with its revenue progress, so revenue and its cost land in the same period.

  • Vouchers, reversals and system vouchersConcept

    A voucher is the only way an amount enters the ledger: a dated header with balanced debit and credit lines, editable as a Draft, numbered and frozen when posted, corrected only by a mirrored reversal; demands, payments, commissions, benefit accruals, cancellations, revenue runs and the year-end close post their own system vouchers the same way.

  • Fiscal years, periods, locks, opening balances and the year-end closeConcept

    Each set of books runs in fiscal years of twelve monthly periods; a voucher can post only into an open year and an unlocked period, opening balances carry each ledger's balance into a year, the year-end close moves income and expense into Profit & Loss Account by a closing journal and writes the next year's openings, and a monthly balance cache is kept as a cross-check.

  • Prepare, review and post a revenue runHow-to

    The monthly revenue close: prepare a draft revenue run for a period end, read what each booking and member offer would recognise, fix what holds lines back, post the run's journals, and check the contract balances and the balance sheet.

  • Reverse a posted revenue runHow-to

    Undo the latest posted revenue run of a set of books: every journal it posted is mirrored, the run becomes Reversed, and the next run starts again from the run before it.

  • Posting refused: no open fiscal year or period for the dateTroubleshooting

    Every posting, manual or automatic, needs a fiscal year of the books that covers its date, with the year open and the month's period unlocked; open the next year, unlock the period or reopen the year under Books, or move the document's date.

  • Revenue run leaves a project out: "the cost method needs a cost budget"Troubleshooting

    Under the cost-incurred method, and for the Guidance Note cost threshold, a project needs a cost budget in force on the period end; without one the run leaves its bookings out and the reports flag the project.

  • Possession cannot be offered or handed over: no occupation certificate, wrong dates or revenue already recognisedTroubleshooting

    Possession is offered only once an occupation certificate (the tower's, else the project's) dated on or before the offer is recorded, when the revenue policy requires one; the handover must follow the offer, no date may precede the booking, and once a revenue run has recognised the booking its possession dates are locked.

  • NotificationsScreen

    Your in-app inbox: every message the workflow rules sent you, newest first, with links to the records they are about and a way to mark them read.