ConceptReviewed 2026-09-29

Generated documents: offer letters, cost sheets, void and superseded

A generated document is a numbered, filed rendering of a published template against one record, kept with its merged text, template version and file; offer letters are generated when an offer is issued and supersede the earlier ones, cost sheets print an estimate for the buyer, and a void or superseded document keeps its number and shows a watermark saying what replaced it.

Generated documents: offer letters, cost sheets, void and superseded

A generated document is what you get when a published template is merged with one record: a numbered letter, term sheet, agreement or cost sheet, filed against that record and listed in the organization-wide log. It keeps the merged text, the template version, the letterhead, a snapshot of the values used and the file itself, so it can be reopened, downloaded again or emailed exactly as it was. Two documents have their own rules: the offer letter, generated when a member's offer is issued and superseding earlier letters, and the cost sheet printed from a buyer's estimate.

How it works in NirmaanOne

Generating and filing

Records that take documents show a Documents card: the demand page, the opportunity overview, the estimate page, the offer (termsheet) panel and the booking's Documents tab. Generate document (the Create permission on Generated Documents, plus the View permission on the record's module) lists the published, active templates of that record type; you pick one and a Format (PDF or Word, "Either format can be downloaded later; this one is stored."). Without a published template the dialog says "No published template for this record type". Workflow rules can generate the same documents automatically with a Generate document action or attach them to an email.

The document gets its number (see Numbers and series), its Document title from the template (which becomes the file name), the letterhead chosen for the record's project, and is stored in the object store when one is configured; otherwise every download renders it afresh from the merged text. The card and the log offer Preview, Download PDF, Download Word, Email and Void. Every download is written to the audit trail.

Statuses

  • Generated: made, not yet sent. It can be deleted (the Delete permission), which frees its serial if it was the latest.
  • Sent: Email (the Edit permission) sent it to at least one address with the file attached (or logged the message, when mail is not set up), or a workflow emailed it; the addresses are shown under the status. It can be emailed again. "A sent document cannot be deleted; void it instead."
  • Void: Void (the Edit permission) with an optional reason. "The document stays on record marked void; its number is not reused." A void document cannot be emailed ("A void document cannot be sent").

Void and superseded: the watermark

A void document, when previewed or rendered afresh, carries a diagonal red "VOID" across every page with the reason at the top (or "This document has been voided."). When it was voided because a newer letter replaced it, the watermark reads "SUPERSEDED" and the note names the replacement: "This document has been superseded by <number> dated <date>. Please refer to that document." The log links the two. A PDF stored at generation is served as it was stored, so the watermark shows on the on-screen preview and on files rendered again; Word files never carry it.

Receipts

A receipt is generated on the payment, from the payment's Documents card or by the system rule "Receipt cleared: generate the receipt (system)" (ships off). Its merge context carries the payer under one name whichever kind they are (party: a buyer, a company or an allottee with their membership number), the allocations the money was placed on (allocations: the demand or instalment, its date and the amount) and the totals allocated and left on account. Because a receipt acknowledges money, bouncing or cancelling the payment voids every receipt document on it with the reason ("Receipt <no> bounced: <reason>", "Receipt <no> cancelled"); other documents on the payment are left as they are. The booking's Documents tab lists the receipts of its payments and the letters of its demands beside its own.

Offer letters

When a rehab officer issues a member's offer, the Issue the offer dialog offers every published template written for a termsheet under Letter, with "Issue without a letter" as the alternative (needs the Edit permission on Termsheets or Bookings; no separate document permission). Generate letter & issue generates the letter from the chosen template (the starter "Offer letter (standard)" is kind Offer Letter, numbered OL-), then voids every earlier document filed on that offer with the reason "Superseded by <new number>" and points them at the new one, then marks the offer Issued. The dialog warns beforehand: "The letter already on this offer will be voided and stamped "superseded by" the new one…". That is how a corrected offer is re-issued: reopen it, fix it, issue again, and the member's old copy can always be traced to the current letter. A letter generated from the offer's Documents card by hand does not supersede anything. The offer letter's merge context carries the allotted units, the entitled and allotted carpet areas and the benefit and charge totals, never netted (see Member offer).

When the member returns a signed copy, Mark signed on the offer offers Upload & mark signed: the scan is filed as an uploaded document (kind Offer Letter, title "Signed — <file>", number UP-) and the offer becomes Signed. Uploads need the object store; they have no merged text, so Preview answers "An uploaded document has no rendered HTML; download the file". The allottee's page lists the letters from all their offers and uploads, with "Superseded by <no> — that letter is the current one." on the old ones.

Cost sheets

A cost sheet is the estimate printed for the buyer: kind Cost Sheet, record type Estimate, numbered CS-. Once the office has published the starter "Cost estimate sheet (standard)", it is generated from the estimate page. Its merge context gives the template the estimate's charges by charge group with each group's subtotal, GST and total, every line with its amount plus GST, the grand totals, the current payment plan's terms (one row per share with its due rule in words and percentage, no rupee amounts) and the plan in rupees, instalment by instalment, split exactly as a booking's schedule would be. The seeded "Cost sheet sent to buyer" email and the Resend cost sheet workflow button send a text summary; they do not attach the sheet.

Why

A developer's correspondence is evidence: which wording the buyer received, on which date, under which number. Keeping the merged text and version means a letter never changes after the fact, void rather than delete keeps the numbered series complete, and superseding stamps the old copy so that a printout in a member's hands cannot be mistaken for the current offer.

Example

Sagar Darshan CHS member Mrs Meena Mehta, Sea Breeze Residency.

  1. On 2 June 2026 the rehab officer issues her draft offer with "Offer letter (standard)": OL-2026-27-00003, "Offer letter (standard) v1", status Generated, filed on the offer and listed on her Allottee page. Email to her address makes it Sent.
  2. A week later the corpus figure is found wrong. The officer reopens the offer, corrects it, and issues it again on 9 June with the same template. The new letter is OL-2026-27-00005 (two other members' letters took 00004 in between). OL-2026-27-00003 becomes Void with the reason "Superseded by OL-2026-27-00005"; its preview shows "SUPERSEDED" across each page and the line "This document has been superseded by OL-2026-27-00005 dated 2026-06-09. Please refer to that document." The log's Status column shows the void reason, and her page reads "Superseded by OL-2026-27-00005 — that letter is the current one."
  3. She signs; the officer's Upload & mark signed files the scan as UP-2026-27-00002, "Signed — mehta-offer-signed.pdf", and the offer is Signed.

Buyer Rakesh Shah, unit A-1203: the sales executive generates the cost sheet from his estimate on 12 September 2026, CS-2026-27-00014, showing the Unit Base Price group (₹1,19,25,000.00 plus 5% GST), the other charge groups with their own GST, the grand total, and the construction-linked payment terms ("On booking" 10%, "On Plinth" 15%, …). The executive emails it as a PDF; the document turns Sent. When the estimate is revised the next day, a new sheet CS-2026-27-00015 is generated and he voids the first one with the reason "Superseded by revised pricing"; both stay in the log.

Where you see it

Related

  • Generated documentsScreen

    The organization-wide log of every document generated from a template or uploaded against a record, where you preview, download, email, void or delete them.

  • Document templatesScreen

    The list of your organization's document templates (demand letters, offer letters, termsheets, agreements, allotment letters, receipts, cost sheets), with filters and the actions to create, duplicate, open or delete one.

  • Booking documentsScreen

    The letters and agreements generated for one booking, such as the allotment letter, together with the receipts of its payments and the letters of its demands, with the button to generate another from a published template and the icons to preview, download, email, void or delete each one.

  • EstimateScreen

    One estimate version: its charges by group, payment plan, approvals, unit and parking hold and validity, with the lifecycle actions to send, finalize, request approval, approve or reject, extend, cancel, version and book.

  • Opportunity (Overview tab)Screen

    One buyer's enquiry on one project: who they are, what they want, the current estimate, the latest activity, documents and tasks, with the pipeline actions (estimate, assign, book, mark lost, reopen) in the header.

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

  • Society & TenantsScreen

    On a redevelopment project, link the society being redeveloped, keep its members and the project's landowners and PAP tenants, and give each of them an offer that allots new units and sets the benefits the developer pays.

  • AllotteeScreen

    One society member, landowner or PAP tenant on a page: who they are, what they hold today, their co-owners, their offers on each project, the letters and files filed for them, their bank accounts and parking.

  • RuleScreen

    One automation rule's page: read or change its basics, trigger, conditions and actions, test it against a record, clone or delete it, and switch a system rule on or off.

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

  • Document templates, published versions and letterheadsConcept

    A document template is an HTML letter with merge fields written for one record type; publishing it freezes a numbered version that generation uses while the draft stays editable, and a letterhead (the template's own, else the project's, else the organization's default) supplies the logo, header, footer and page layout around it.

  • Numbers and series: documents, bookings, demands, payments and vouchersConcept

    How NirmaanOne numbers what it creates: generated documents, bookings, demands, demand runs, payments, payout runs and revenue runs take a prefix, the Indian financial year and a five-digit serial (BK-2026-27-00007), while vouchers are numbered on posting from their voucher type's prefix, padded counter and suffix.

  • Merge fields and filtersConcept

    Merge fields are the double-brace placeholders in document and message templates ({{ entity.demand_no }}, {{ contact.name }}) that are replaced with the record's values when a document or message is rendered; filters such as inr, words and date format the value, and Repeat row / Show when add tables and conditional blocks.

  • Member offer (term sheet): benefits and charges, never nettedConcept

    The one live offer an allottee has on a project: the area they hold and are entitled to, the new units allotted, and the money on both sides, benefits the developer pays and charges the member pays, each with its own schedule and never set off against the other.

  • Estimate versions, price lock, overrides and the approval gateConcept

    Every priced offer to a buyer is a numbered version of the opportunity: a Draft is edited in place, any later price change is a new version that supersedes the current one, the price is locked when finalized, and every estimate must be approved before it can be booked.

  • Charge groups and per-line GSTConcept

    A charge group is a section of the cost sheet with a default GST rate; every charge line carries its own GST, worked out from the estimate override, the plan line, the component or the group, in that order.

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

  • Issue an offer with its letterHow-to

    Publish the offer letter template once, then issue a draft offer so the letter is generated and filed with it and the offer moves to Issued.

  • Correct an issued offer and re-issue itHow-to

    Take an issued or accepted offer back to draft, change the areas, units, benefits or split, and issue it again so a fresh letter supersedes the one already with the allottee.

  • Record acceptance and the signed offerHow-to

    Mark an issued offer accepted, then signed, attaching the scanned signed copy so it is filed with the offer and on the allottee's page.