Current Limitation
-
Shared doctypes: Core modules like Sales Invoice, Purchase Order, Stock Entry are global, so even if you filter by company, the schema itself isn’t isolated.
-
Shared functions: Workflows, reports, and permissions often overlap, making it tricky to enforce strict separation.
-
Privacy issue: If multiple companies in the same industry share a site, sensitive data can leak through reporting or user roles.
What would help
-
Doctype isolation toggle: A global setting to mark certain doctypes as “company-specific” so they don’t share schema/data.
-
Function isolation: Ability to scope workflows, reports, and permissions to a company without cross-contamination.
-
Transaction isolation: Configurable rules so transactions are stored and processed independently per company.
-
Customizable global settings: A system-level architectural option to choose between shared vs. isolated mode.