# ADR-003: Product master boundary

- **Status:** Proposed for P2 schema review
- **Date:** 2026-10-19

## Context

The existing `erp_products` table stores a complete product per company. The roadmap calls for a reusable master product database across legal companies while prices, tax treatment, accounts and availability may differ by company.

## Proposed decision

Use an installation-level product identity with variants and barcodes, then a company-level assortment record:

- Product and variant: descriptive identity shared inside the customer installation.
- Barcode: attached to a variant and unique under the agreed installation policy.
- Company product: activation, internal SKU when needed, tax code, sales/purchase settings and accounting references.
- Price lists: separate from product identity.
- Media and TDRA certificates: linked to the appropriate product/model version with explicit public/private classification.

## Migration rule

Do not modify or drop the applied `erp_products` migration. P2 must introduce additive tables, backfill in staging, reconcile duplicates and retain a documented rollback path before production deployment.

## Open point

Final SKU and barcode uniqueness—installation-wide versus company-specific aliases—must be signed off before P2 migrations.
