How-toReviewed 2026-09-29

Plan construction stages and their shares

Record the project's construction stages (plinth, slabs, possession…) with their order, share of the payment bucket, tower and expected date, one at a time on the tab or in bulk from an Excel sheet, so construction-linked payment plans and pricing plans can be built on them.

Plan construction stages and their shares

Construction stages are the project's plan of work: Plinth, each slab, Possession. Each stage has an order, a share of the payment bucket it belongs to, an expected date and, if it is one tower's own stage, that tower. The stages do two jobs: a construction-linked payment plan spreads the buyer's price over them, and a pricing plan can route a charge group to specific stages. Later, recording a stage as completed gives the installments waiting on it their due date.

Plan the stages before you set up pricing and before you sell. This article covers the planning; recording commencement and completion is a separate task.

Before you start

  • You need the Create permission on Construction Stages to add stages, and the Edit permission to correct them. In the default roles the Administrator, the Project Manager and the Site Engineer can add and edit; the Compliance Officer can edit. To import you need both Create and Edit; otherwise the Import button isn't shown.
  • To put a stage on a tower, the tower must exist on the Structure tab, and seeing the tower list needs the View permission on Towers, Floors & Units.
  • Decide the shares. Project-wide stages share one 100% between them, and each tower's own stages share a separate 100%. A bucket may add up to less than 100%, never more.

Steps

  1. Open the project and choose the Construction Stages tab. You see the Construction Stages card headed "N stages · N completed · N in progress", with Export, Import and Add stage at the top right. On a new project it reads "No construction stages yet" and "Stages (plinth, slabs, possession…) carry commencement and completion dates and drive construction-linked payment schedules." The Manage link on the Construction stages card of the setup wizard's Amenities, parking, stages & pricing step brings you here too.

  2. Click Add stage. The panel Add construction stage slides in, with Sequence already set to one after the highest stage.

  3. Fill in the stage and click Add stage at the foot of the panel:

    • Name (required, up to 100 characters), for example "Plinth completed".
    • Code (optional): capital letters, digits and underscores, up to 30 characters, unique in the project ("Optional; A–Z, digits, _"). The sheet import matches stages by this code, so give one to stages you'll maintain from Excel.
    • Sequence (required, a whole number, 0 or more): the order stages are shown and achieved in.
    • Share of total (optional, %, 0 to 100): "Of its bucket: project-wide stages total 100% (e.g. Tower A 20%, Amenities 20%); each tower's own stages total 100%". On an estimate's construction-linked payment plan, Fill from milestone defaults copies these shares.
    • Tower: blank means Whole project; "Optional; with a tower the stage is one of that tower's sub-stages". (The quick Add on the setup wizard's card offers no towers, so add a tower's stages here.)
    • Expected date (optional): when you expect the stage to be completed. A default workflow rule flags stages past this date and not completed to the Project Managers every Monday.
    • Description (optional, up to 255 characters).

    You see “Stage "<name>" added.” and the row in the grid with Project-wide or the tower as its badge, its Share, and Not started as its status.

  4. Repeat for every stage. Under the card title a line sums each bucket: "Shares (each bucket up to 100%): project-wide X% allocated, Y% completed · <Tower> X% allocated, Y% completed". The allocated figure is green at exactly 100% and amber below it. A typical Mumbai schedule for one tower: Plinth 10%, then each slab, Brickwork, Plaster, Flooring, Possession, adding up to 100%.

  5. Or load the stages from Excel. Click Import; the dialog Import construction stages opens ("Names, order, share of the bucket and expected dates. Achieving a stage stays on this screen — it fills due dates on the payments that reference it."). Click Download template (or start from Export, which downloads "<project> construction-stages.xlsx" with the stage_id of every existing stage) and fill in one row per stage:

    Column What to enter
    stage_id Leave blank for a new stage. The export fills it in; keep it to update that stage.
    tower A tower of this project (a dropdown), or blank for a project-wide stage.
    code Short code, unique in the project when given, for example PLINTH.
    name Required, for example Plinth, 5th Slab, Possession.
    sequence_no A whole number; the order stages are shown and achieved in.
    percent_of_total The share of its bucket, for example 10 for "10% on plinth".
    expected_date YYYY-MM-DD, optional.
    description Optional.

    Click Choose Excel file. The app checks the sheet first ("Checking…") and shows the counts "to add", "to update", "skipped" and "with errors". Rows are matched by stage_id, then by code, then by tower and name. With "Checked, nothing written yet. Use Import to apply it.", click Import N rows; you see "N added, N updated." and "Imported into <project>.". With "Nothing has been written. Fix the rows below in your sheet and choose the file again.", fix the rows in red and choose the file again.

  6. To correct a stage, click its pencil (hover "Edit <name>"), change the fields and click Save changes; you see “Stage "<name>" updated.” To remove one, click its bin (hover "Delete <name>"), read "Delete stage?" ("<name> and its N files will be removed. Stages referenced by payment schedules cannot be deleted.") and click Delete; you see “"<name>" deleted.” Deleting needs the Delete permission on Construction Stages.

What happens next

  • The stages feed the Unit Pricing tab: How each charge group is collected can narrow a charge group to some of them, and Payment plan preview spreads a plan over them. See Decide how each charge group is collected and Preview a price and payment schedule on a unit.
  • On an estimate's construction-linked payment plan, Fill from milestone defaults copies the stages' shares into the plan. The Unit Pricing tab's preview uses the shares only when every stage of the project has one and together they add up to 100; otherwise it splits the plan equally across the stages and says so.
  • The setup wizard's Amenities, parking, stages & pricing step counts as done once any stage (or amenity, parking area or pricing plan) exists.
  • When work starts and finishes, record it on the same tab with Commencement and Completed; completing a stage dates the installments waiting on it and the accounts team is notified to bill them.
  • Deleting a stage also removes it from any pricing plan's stage links without warning. Only a payment schedule that references the stage blocks the delete.

If something goes wrong

  • "Project-wide stages cannot exceed 100%." or "Stages of <tower> cannot exceed 100%." under Share of total (the sheet says "percent_of_total: The project-wide stages would add up to X%, more than 100%" or "percent_of_total: This tower's stages would add up to X%, more than 100%"): the bucket would go over 100% with this share. Lower this or another stage's share. See Stage shares exceed 100% (trouble.projects.stage-shares-exceed-100).
  • "A milestone with this code already exists in this project." under Code (the sheet says "code: "<c>" is already used by another stage here" or "code: "<c>" also appears on row N"): codes are unique in the project. Use another code, or leave it blank. See Stage code already taken (trouble.projects.stage-code-taken).
  • "That tower does not belong to this project." (the sheet says "tower: no tower of this project called "<x>" (known: …)"): pick a tower from the list, or add it under Structure first. See Record not found or stale (trouble.admin.record-not-found).
  • "N payment schedule row(s) reference this stage" when you delete: a booking's or offer's payment schedule waits on the stage, so it can't be removed. Leave it in place.
  • Rows in red with "name: required", "sequence_no: "<v>" is not a whole number", "sequence_no: <v> is out of range", "percent_of_total: <v> is out of range", "expected_date: "<v>" is not a date (use YYYY-MM-DD)" or "stage_id: no construction stage with this id in this project": fix the cell and choose the file again; nothing was written. See Import rows rejected (trouble.projects.import-rows-rejected).
  • "The sheet is missing the column(s): name. Download the template and fill that in.", "That file could not be read as an Excel workbook (…)" or "The file is not readable: save it as .xlsx from Excel": start from the template and save as .xlsx. See Import file not readable (trouble.projects.import-file-not-readable).
  • No Add stage or Import button, or "You do not have permission to view construction stages. Ask your administrator.": your role lacks the permission on Construction Stages. See No permission (trouble.admin.no-access).

Related

  • 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.

  • Unit PricingScreen

    Keep the project's pricing plans, one per unit type: the sale charges by charge group with GST per line, how each charge group is collected, and a preview of the price and payment schedule on a real unit.

  • Project setup wizardScreen

    Set up a project step by step, from the land and RERA details and bank accounts to towers, society, members, offers, amenities, parking, stages and pricing; each step saves as you go.

  • Importing and exporting Excel sheetsScreen

    Download a project's units, parking slots, construction stages or unit pricing as an Excel sheet, fill in the template, check it row by row and import it in one go.

  • Generate towers, floors and unitsHow-to

    Add a project's towers and build their floors and units in bulk with the guided generator: one floor range at a time, with the unit mix, areas, designation and numbering pattern, and a safe re-run that only adds what is missing.

  • Record construction progress on a stageHow-to

    Mark a construction stage as commenced and then completed on the project's Construction Stages tab, with optional certificates or site photos, so the construction-linked installments waiting on it get their due date and accounts are told to bill them.

  • Decide how each charge group is collectedHow-to

    On a pricing plan, say for each charge group whether the buyer's payment plan collects it (on every stage or only on the stages you pick) or whether it falls due at possession outside the plan, then set the project's expected possession date so those rows get a due date.

  • Preview a price and payment schedule on a unitHow-to

    Check a pricing plan on a real unit of the project: the grouped cost sheet with GST and grand total, then how a construction-linked or lumpsum payment plan would collect it, with the plan's stage links and possession charges applied; nothing is saved.

  • Construction stages and share bucketsConcept

    A project's construction stages (plinth, slabs, possession) each carry a share of a 100% bucket, one bucket for the project-wide stages and one per tower; completing a stage dates the installments waiting on it and moves the revenue progress.

  • Payment plans: lumpsum, cadence, custom and construction-linkedConcept

    A payment plan says how the buyer's total is collected: all at once, in equal installments on a cadence, on agreed dates, or as construction stages are achieved; it lives on the estimate as numbered versions, is finalized with the price for approval, and becomes the booking's schedule.

  • Excel sheets: check first, then applyConcept

    Units, parking slots, construction stages, unit pricing, benefit plans, society members and allottees can be exported to and imported from Excel; every sheet is checked row by row first, and nothing is written while any row fails.

  • Construction stage shares refused or the plan splits equally: shares must add up to 100%Troubleshooting

    Project-wide stages share one 100% and each tower's own stages share their own; a share that pushes its bucket over 100% is refused, while shares that do not reach 100% make the pricing preview split the plan equally and leave revenue progress with nothing to measure.

  • "Already exists" or "listed twice": the name, code, number or line must be uniqueTroubleshooting

    Names, codes and numbers are unique within their scope (the organization, a project, a tower, a set of books) so that records can be told apart, and a line can appear once on a plan, offer or account; rename, reuse the existing record, or remove the duplicate line.

  • "That item could not be found" or "does not belong to this project": the record is gone, elsewhere or staleTroubleshooting

    A record that was deleted, belongs to another organization, or is linked from a stale page answers "not found"; a tower, stage, parking slot, estimate, tenant, ledger or bill picked from the wrong project, opportunity or set of books is refused as not belonging there.

  • Import is greyed out or nothing was written: rows in the sheet failed the checkTroubleshooting

    Every Excel import is checked row by row before anything is saved, and nothing at all is written while even one row fails; Import stays greyed out until the listed rows are fixed in the sheet and the file is chosen again.

  • The Excel file cannot be read: wrong format, missing columns or no rowsTroubleshooting

    An import reads only an .xlsx workbook (or a CSV from an older template) laid out like the template: the Data sheet with the template's header row and at least one row under it. Any other file, a renamed or missing column, or an empty sheet is refused before a single row is checked.

  • "No access" or "You do not have permission": your role lacks a permissionTroubleshooting

    Every screen, button and picker is gated by a permission on a module; your role decides which you hold, so a missing one shows as a No access card, a refused action, a greyed-out button with a hover reason, or a picker that explains which permission it needs.