Security
How your organization's data is kept separate
A plain description of the controls that are actually implemented. We do not claim certifications, compliance programs or uptime guarantees we have not completed.
Isolation is enforced in the database, not the interface
Every business record carries the owning organization's workspace identifier. Read and write access is decided by row-level security policies in the database, so changing a record identifier in a URL, running a search, panning a map, building a route, importing a file or exporting data cannot reach another organization's records.
Access follows active membership
A user sees only the organizations and workspaces where they hold an active membership, and only the records their role permits. Deactivating a membership removes access while preserving that user's historical activity.
External partner accounts are separated from internal CRM data
Professional partner portal users can manage their own business profile, availability, appointment requests, messages, sample requests and orders. They cannot see internal notes, opportunity values, forecasts, representative performance, management reports, platform costs, internal communications, or any other organization.
Credentials stay on the server
Vendor and administrative credentials are held in a server-side secret store and used only inside server functions. They are not present in the browser bundle or in source control.
Support access is deliberate and recorded
Our staff have no implicit access to customer records. Access requires an explicit grant, is time-boxed where appropriate, and is written to an audit log.
Authentication controls
Email verification, password reset, session expiry, single-use invitations, audited role changes and login throttling. Multi-factor authentication is being prepared for organizations that require it.
Changes are tested before customers see them
Schema and policy changes are applied to development and staging environments first, with automated cross-organization isolation tests, and are reversible.
Report a security concern
Email security@opulentcrm.app with enough detail to reproduce the issue. Please do not test against other organizations' data.