Data isolation
How workspaces stay separate
Tenant-isolated by default
Cash Workspace is multi-tenant from day one. Every record carries a workspace ID and row-level security in Postgres enforces isolation at the database layer — not just in the app code.
Documents stored per workspace
Document files live in workspace-scoped storage. A user's documents are not visible to other workspaces, even if the workspace IDs are guessable.
Membership scoped to a workspace
Users see the workspaces they have been invited to. Removing a member revokes access immediately for new requests.