# ADR-001: Deployment and company boundary

- **Status:** Accepted
- **Date:** 2026-10-19

## Decision

Each commercial customer receives an independent Laravel installation, database and operational configuration. An installation supports multiple legal companies.

A user identity belongs to the installation. Access to a legal company is granted through an explicit membership. Company-owned business records require `company_id`; branch and warehouse identifiers are added only where operational scope requires them.

No request may infer authorization from the first company row. A validated active-company context must be selected from the authenticated user's memberships. System administrators may cross company boundaries only through explicit privileged behavior that is audited.

## Consequences

- Existing single-company assumptions must be remediated additively.
- Company isolation tests are mandatory for UI, API, exports and files.
- Catalog and Van databases remain separate; future integration is versioned API only.
