Zerp — system requirements (rebuild-grade)
Complete, code-accurate requirements documentation for the zerp / Zyncount ERP — backend zerp-be + admin zerp-admin — organized by domain → module → flow. Detailed enough to rebuild the system from these docs.
~80 modules · ~277k LOC captured into 90 documents / ~31k lines. Every module doc follows a fixed template (data model → API → business rules → permissions → flows → admin UI → gotchas), cites source files, and flags real gaps/stubs/bugs found in the code.
Start here
- 00 — System Overview — what zerp is, the recurring "ledger" idea, the domains, how a request flows, deployment.
- Module Map —
zerp-be↔︎zerp-admin↔︎ docs correspondence (incl. headless & UI-only modules). - Glossary & data dictionary — shared vocabulary and base-schema conventions.
- SPEC (methodology) · TEMPLATE (per-doc skeleton).
Platform (cross-cutting spine)
| Doc | Covers |
|---|---|
| architecture | Layering (Resolver→Service→Repository→Schema; component→context→gql→Apollo), base abstractions, stack, conventions |
| multi-tenancy | Per-tenant DBs, master DB, context, timezone rule, migrations |
| auth | Login, JWT access/refresh, OTP, ESS login, company/module selection |
| permissions-access | RBAC: permission modules/actions, access groups, CASL, master-access |
| workflow-approval-engine | Generic approval engine: stages, approvers, callbacks |
| audit-trail | @AuditMeta interceptor, audit entries/diffs, system log |
| notifications | In-app + workflow notifications, Redis subscriptions, email |
| files-assets-upload | FileUpload + S3 storage, how entities reference files |
| reporting-framework | Financial statements + operational reports, report-section mapping |
Domains
Generated from a complete read of zerp-be and zerp-admin. Docs are descriptive of the code as it exists (gaps and stubs flagged inline), not an idealized spec.