Las cinco tablas iniciales con todos sus campos, más tres tablas intermedias. Las líneas con flecha indican qué tabla apunta a cuál.
Esta página es el punto de partida: el esquema inicial y las tablas relacionadas. El modelo vigente y oficial que separa producto de variante y completa la parte legal es Las tablas del negocio.
1 → Nfactura → cliente. Cada factura es de un cliente; un cliente puede tener muchas facturas.
1 → Nfactura → empleado. Quién hizo la venta. En la tienda física es un empleado; en la web puede ir vacío (el cliente compra solo).
puentedetalle_factura. Una factura lleva varios productos, así que cada producto vendido es una fila aquí, con su cantidad y su precio. Corresponde a lo que en el esquema inicial se llamaba «lista productos».
puenteproducto_distribuidor. Como un producto lo puede traer uno o varios distribuidores, el enlace vive aquí. Por eso ya no hace falta el campo "id_distribuidor" dentro de producto.
stockmovimiento_inventario → producto. Cada entrada (compra) y salida (venta) se anota aquí, y el stock disponible se calcula sumando. Así nunca queda mal.
Lo que cambió. La factura incorpora el campo portal (web / tienda física). Las tres tablas de borde punteado —detalle_factura, producto_distribuidor y movimiento_inventario— son las que faltaban: las dos primeras resuelven las relaciones de «uno o varios», y la tercera hace que el stock sea siempre correcto y auditable.
Cómo evolucionó esto: al diseñar a fondo se vio que el producto con versiones (una pintura en 5 colores, un pincel en 3 tamaños) necesita partir producto en producto + variante, porque el SKU, el stock y el precio son de cada versión, no del producto en general. Y la facturación electrónica añade a la venta el tipo (boleta o factura) y la serie/correlativo de SUNAT. Todo eso ya está resuelto en el modelo oficial —Las tablas del negocio—, que es el que se implementa. Esta vista se conserva para entender de dónde se partió.