Etapa 02 · Almacén
Verificación de Stock
El área de almacén/compras recibe la requisición y la cruza contra el inventario actual. Ítems disponibles se despachan internamente. Los que no hay → pasan a compras externas.
Actor principal
Almacenero / Jefe de Compras
Revisa stock, aprueba, despacha o compra
Lógica de decisión
📋 Llega requisición del área
↓
🔍 Sistema cruza contra stock actual
↓
✅ Hay stock
Despachar a área solicitante → marcar como entregado
❌ Stock insuficiente
Pasar a Etapa 3: Comparación de precios
Auto-cruce: Si el inventario está actualizado (food cost activo), el sistema marca automáticamente qué ítems hay y cuáles no, sin que el almacenero tenga que buscar uno por uno.
Panel de Almacén / Compras
Vista del encargado
Cocina · #47
Hace 3 min · 5 ítems
Bar · #46
Hace 1h · 3 ítems
Sala · #45
Hace 2h · 2 ítems
Aceite de oliva · 5L
✓ Stock: 8L
Harina sin prep. · 10kg
⚠ Stock: 2kg
Mantequilla · 2kg
✗ Stock: 0
Limones · 30 un
✓ Stock: 50
Aceite de oliva
8L
Harina sin preparar
2kg ⚠
Mantequilla
0 ✗
Limones
50 un
Solicitudes recibidas
8
Atendidas con stock
5
Necesitan compra
3
Urgentes pendientes
1
📊 Alertas automáticas activadas para stock crítico
⚙️ Implementación técnica · Etapa 2
Auto-cruce
JOIN entre
requisition_items y ingredients (stock_current). Retorna status: "available" | "partial" | "out_of_stock" por ítemStock mínimo
Cada ingrediente tiene
min_stock. Si stock_current < min_stock → alerta automática + WhatsApp al encargadoDespacho interno
Al marcar "despachar" → crea
stock_movement tipo "internal_dispatch" → resta del inventario → marca ítem de requisición como "fulfilled"Realtime
Supabase Realtime: el panel de almacén se actualiza automáticamente al llegar nuevas solicitudes, sin refrescar la página