How Statutory Compliance Works in Plinth (Step by Step)
How statutory compliance works in Plinth
Plinth Statutory Compliance runs on a regulatory-pack calendar merged from your society's entity type, state, and feature flags (GST registered, lift, building age). Here is the end-to-end workflow committees follow from setup through AGM season.
Step 1: Complete your legal profile
Admin opens Governance → Statutory compliance → Set up (/admin/compliance/setup). The wizard captures:
- Entity type (CHS under MCS, RWA, AOA, etc.)
- State and registration number
- Co-operative year (default April–March)
- Statutory auditor and committee term end
- Alert channels (in-app, email, SMS, push) and escalation schedule
On finish, Plinth calls initialize_compliance_year and instantiates tasks from the correct regulatory pack — e.g. mh_chs_v1 for Maharashtra CHS with 18+ tasks including accounts finalization, AGM, and annual returns.
Step 2: View the compliance hub
The Compliance Hub (/admin/compliance) shows upcoming, overdue, and completed tasks for the active year. Each task card displays due date, owner role (Secretary, Treasurer, Chairman), legal references, and a readiness score where applicable.
Step 3: Fix blockers before generating packs
For ACCOUNTS_FINALIZE, readiness checks billing cycles issued, trial balance balanced, member register complete, and expenses reconciled. Blockers deep-link to billing and finance screens. Regenerate packs only after books are correct — generated numbers always match GL at generation time.
Step 4: Generate filing packs
On task detail, tap Generate filing pack. Plinth produces immutable PDF/CSV/ZIP artifacts:
| Task | Pack output |
|---|---|
| Accounts finalization | Form N balance sheet, P&L, receipts & payments, member list |
| Member inspection | Inspection ZIP (optional publish to document vault) |
| Audit handover | Handover ZIP with Tally export and billing summary |
| AGM (pre) | AGM notice and agenda with statutory notice-period check |
| AGM (post) | Minutes with RSVP quorum summary |
| Annual returns | Mahasahakar JSON + human-readable summary PDF |
| Audit rectification | Form O draft from objection tracker |
| Election due | GBE election compliance report when linked |
Step 5: Link meetings and elections
Link your AGM in the Meetings module to AGM_HOLD — dependent due dates (auditor appointment return, rectification window) recalculate from the actual AGM date. For committee elections, start a GBE election from the ELECTION_DUE task; results auto-attach to annual returns export.
Step 6: Upload signed artifacts and record submission
Auditor-signed Form N-1, fire NOC, and Registrar acknowledgment PDFs upload as external artifacts. Mark tasks submitted with an optional portal reference number (e.g. Mahasahakar ack). Plinth logs every transition in the audit log.
Step 7: Alerts keep the committee on track
T-30, T-14, T-7, and T-1 reminders fire to task owners plus Secretary and Treasurer. Overdue tasks escalate at +1, +7, and +14 days. A weekly Monday digest summarizes the year timeline.
Important: Plinth exports packs for manual upload to Mahasahakar and other portals. It does not auto-file on government systems.
Detailed guides: Form N pack · Mahasahakar export · Form O objections