Core platform capabilities
Single-database multi-tenancy
Every tenant-scoped table carries a tenant_id with a composite index — a global query scope filters every request automatically, with an explicit, audit-logged bypass for platform admins.
Strict role hierarchy
root_admin → superadmin → unlimited dynamic roles. A role can never be granted a permission its creator doesn't already hold.
Everything is a setting
Branding, URLs, email/SMS gateways, subscription rules — nothing is hardcoded. Global defaults with per-tenant overrides, cached and instantly invalidated on change.
Dynamic subscription engine
Per-module, per-user monthly pricing set by the platform team, with proration, manual discounts, and a configurable minimum user count.
Configurable notifications
Every notification — including login OTP — can be routed to email, SMS, both, or neither, per role, per tenant.
Full activity logging
Every user action is recorded. Sensitive platform-level entries stay visible to root admins only.