> ## Documentation Index
> Fetch the complete documentation index at: https://docs.nubidoc.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Inventario

> Control de stock y productos

### Descripción

El módulo de **Inventario** permite a los centros médicos gestionar el stock de productos médicos, materiales, medicamentos y consumibles. Es una herramienta completa para el control de almacenes que incluye la gestión de productos, movimientos de inventario, proveedores y pedidos de compra.

El sistema permite registrar entradas y salidas de productos, realizar ajustes de inventario, gestionar múltiples almacenes, realizar pedidos a proveedores, y llevar un control exacto de las existencias y su valoración económica. Es especialmente útil para clínicas que utilizan productos costosos como Botox, implantes, material quirúrgico, o cualquier centro que necesite un control riguroso de su stock.

### Quién puede utilizarlo

* **Administradores del centro**: Supervisión general del inventario y análisis económico
* **Personal de almacén**: Registro de entradas, salidas y movimientos diarios
* **Personal de compras**: Gestión de proveedores y pedidos
* **Profesionales médicos**: Consulta de disponibilidad de productos
* **Dirección**: Análisis de valoración de inventario y costes

#### 1. **Registrar entrada de material (recepción de pedido)**

El personal de almacén autorizado puede registrar la llegada de productos cuando el pedido está en estado "Enviado".

* **Pasos:**
  1. Acceder a Pedidos de compra
  2. Localizar el pedido recibido
  3. Hacer clic en "Recibir"
  4. Indicar cantidades recibidas (pueden ser parciales)
  5. Confirmar recepción
  6. Sistema actualiza existencias automáticamente
     Las unidades recibidas se añaden al stock y el pedido pasa a "Recibido" o "Recepción parcial".

#### 2. **Registrar salida de productos (consumo)**

El personal médico o de almacén autorizado puede descontar los productos utilizados en un tratamiento cuando están dados de alta y tienen stock disponible.

* **Pasos:**
  1. Acceder a Buscar productos
  2. Seleccionar el producto consumido
  3. Hacer clic en "Descontar inventario"
  4. Indicar cantidad, almacén y motivo
  5. Guardar movimiento
     El stock se reduce y el movimiento queda registrado en el historial.

#### 3. **Crear pedido de compra a proveedor**

El personal de compras autorizado puede solicitar la reposición de productos a un proveedor ya registrado.

* **Pasos:**
  1. Acceder a Pedidos de compra
  2. Crear nuevo pedido
  3. Seleccionar proveedor y almacén destino
  4. Añadir líneas de productos con cantidades
  5. Guardar como borrador o enviar directamente
  6. Opcionalmente: Imprimir y enviar al proveedor
     El pedido queda registrado y pendiente de recepción.

***

### Opciones del Menú

#### Opción 1: Resumen

* **Descripción:** Resumen visual del inventario, cuando esta vista está disponible para el centro
* **Acceso:** Requiere permiso para consultar el inventario

#### Opción 2: Buscar productos

* **Descripción:** Búsqueda y gestión de productos facturables con control de stock
* **Acceso:** Requiere permiso para consultar el inventario

#### Opción 3: Buscar movimientos

* **Descripción:** Historial completo de movimientos de inventario (entradas, salidas, ajustes)
* **Acceso:** Requiere permiso para consultar el inventario

#### Opción 4: Proveedores

* **Descripción:** Gestión del catálogo de proveedores (empresas que suministran productos)
* **Acceso:** Requiere permiso para consultar proveedores

#### Opción 5: Pedidos de compra

* **Descripción:** Gestión completa del ciclo de pedidos a proveedores
* **Acceso:** Requiere permiso para consultar pedidos de compra

#### Opción 6: Transferencias

* **Descripción:** Transferencias de productos entre almacenes del mismo centro
* **Acceso:** Requiere permiso para consultar el inventario

***

### Pantalla 1: Buscar Productos

#### Descripción

Interfaz principal para buscar y gestionar productos con control de inventario. Muestra una tabla con todos los productos facturables que tienen gestión de stock habilitada.

#### Secciones de la Pantalla

**1. Encabezado**

* Título: "BUSCAR FACTURABLES"

**2. Formulario de búsqueda**

* **Nombre:** Buscar por nombre del producto
* **Descripción:** Buscar por descripción
* **Código:** Código interno del producto
* **Código externo:** Código de proveedor o código de barras
* Botones: Buscar, Limpiar filtros

**3. Tabla de resultados "Listado Otros facturables"**
Columnas:

* **Nombre**: Nombre comercial del producto
* **Descripción**: Descripción detallada
* **Tipo de IVA**: Categoría fiscal (General 21%, Reducido 10%, Exento, etc.)
* **Centro(s)**: Centro médico al que pertenece
* **activa**: Si el producto está activo (Sí/No)
* **código**: Código interno
* **código ext.**: Código externo
* **cantidad**: Stock actual desglosado por almacén (ej: "37 en Almacén Principal, -1 en Almacén Secundario")
* **precio prov**: Precio de coste del proveedor
* **total**: Valoración total del stock (cantidad × precio proveedor)

**4. Totalizador**

* **TOTAL**: Suma de cantidades y valoración total del inventario

**5. Paginación**

* Selector de registros por página (10/50/200)
* Navegación entre páginas
* Contador de registros

**6. Barra de botones de acción**

* **Nuevo**: Crear nuevo producto
* **Modificar**: Editar producto seleccionado
* **Borrar**: Eliminar producto
* **Importar**: Importación masiva de productos
* **Añadir inventario**: Registrar entrada de stock manualmente
* **Añadir inventario CB** (icono código de barras): Entrada usando lector de código de barras
* **Descontar inventario**: Registrar salida/consumo de stock
* **Descontar inventario CB** (icono código de barras): Salida usando lector de código de barras

#### Acciones disponibles

* **Buscar productos**: Filtrar por criterios
* **Gestionar entradas/salidas**: Añadir o descontar inventario
* **Ver stock por almacén**: Consultar existencias detalladas
* **Importación masiva**: Cargar productos desde archivo

***

### Pantalla 2: Buscar Movimientos

#### Descripción

Historial completo de todos los movimientos de inventario, permitiendo auditar y rastrear todas las operaciones realizadas.

#### Secciones de la Pantalla

**1. Encabezado**

* Título: "BUSCAR MOVIMIENTOS"

**2. Formulario de filtros**

* **Entre Fecha**: Fecha inicio del rango de búsqueda (por defecto primer día del mes actual)
* **y fecha**: Fecha fin del rango
* **Productos**: Selector de producto específico (opcional)
* **Almacenes**: Selector de almacén específico (opcional)
* Botón "Buscar"

**3. Tabla "Movimientos"**
Columnas:

* **Fecha**: Fecha de creación del movimiento en sistema
* **Fecha Movimiento**: Fecha real del movimiento físico
* **Almacén**: Almacén afectado
* **Producto**: Producto movido
* **Comentario**: Descripción del motivo (ej: "Recepción de pedido PO-2025-00001")
* **Código**: Código del producto
* **Orden Compra**: Número de pedido asociado (si aplica)
* **Exis. antes**: Stock antes del movimiento
* **Cantidad**: Cantidad movida (+ entrada, - salida)
* **Exis. después**: Stock resultante tras el movimiento

**4. Paginación**

* Registros por página (25/50/100)
* Navegación entre páginas

**5. Botones de acción**

* **Ver detalle**: Ver información completa del movimiento
* **Deshacer**: Revertir un movimiento (si está permitido)

#### Acciones disponibles

* **Consultar historial**: Ver todos los movimientos en un período
* **Auditar stock**: Verificar por qué cambió el stock de un producto
* **Deshacer movimientos**: Corregir errores (con restricciones)

***

### Pantalla 3: Proveedores

#### Descripción

Gestión del catálogo de proveedores y empresas suministradoras de productos médicos.

#### Acciones disponibles

* Búsqueda de proveedores por nombre, CIF, etc.
* Creación y edición de fichas de proveedor
* Gestión de datos de contacto y condiciones comerciales
* Asociación de productos a proveedores

***

### Pantalla 4: Pedidos de Compra

#### Descripción

Gestión completa del ciclo de pedidos a proveedores, desde la creación hasta la recepción.

#### Secciones de la Pantalla

**1. Encabezado**

* Título: "BUSCAR PEDIDOS DE COMPRA"

**2. Formulario de filtros**

* **Nº Pedido**: Número de pedido (formato PO-YYYY-NNNNN)
* **Proveedor**: Selector de proveedor
* **Estado**: Selector de estado (Todos/Borrador/Enviado/Recepción parcial/Recibido/Cancelado)
* **Desde** / **Hasta**: Rango de fechas
* Botón "Buscar"

**3. Tabla "Pedidos de compra"**
Columnas:

* **Nº Pedido**: Identificador único (ej: PO-2025-00001)
* **Fecha**: Fecha de creación del pedido
* **Proveedor**: Nombre del proveedor
* **Almacén**: Almacén destino de la recepción
* **Estado**: Estado actual (Borrador, Enviado, Recepción parcial, Recibido, Cancelado)
* **Total**: Importe total del pedido
* **Líneas**: Número de productos diferentes en el pedido

**4. Paginación**

* Registros por página (25/50/100)
* Navegación

**5. Botones de acción**

* **Nuevo pedido**: Crear nuevo pedido de compra
* **Ver/Editar**: Consultar o modificar pedido (solo borradores)
* **Enviar pedido**: Marcar pedido como enviado al proveedor
* **Recibir**: Registrar recepción total o parcial
* **Imprimir**: Generar PDF del pedido
* **Cancelar**: Cancelar pedido no recibido

#### Estados del pedido

* **Borrador**: Pedido en proceso de creación, editable
* **Enviado**: Pedido confirmado y comunicado al proveedor
* **Recepción parcial**: Recibida solo parte de la mercancía
* **Recibido**: Pedido completamente recibido, stock actualizado
* **Cancelado**: Pedido anulado, no se recibirá

***

### Pantalla 5: Transferencias

#### Descripción

Gestión de transferencias de productos entre diferentes almacenes del mismo centro médico.

#### Secciones de la Pantalla

**1. Encabezado**

* Título: "BUSCAR TRANSFERENCIAS"

**2. Formulario de filtros**

* **Almacén origen**: Selector de almacén de origen
* **Almacén destino**: Selector de almacén de destino
* **Estado**: Estado de la transferencia (Todos/Completada/Pendiente/Cancelada)
* **Desde** / **Hasta**: Rango de fechas
* Botón "Buscar"

**3. Tabla "Transferencias"**
Columnas:

* **Fecha**: Fecha de la transferencia
* **Origen**: Almacén origen
* **Destino**: Almacén destino
* **Estado**: Estado actual
* **Líneas**: Número de productos transferidos

**4. Botones de acción**

* **Ver detalle**: Ver información completa de la transferencia
* **Nueva**: Crear nueva transferencia entre almacenes

#### Funcionalidad

Las transferencias permiten mover stock de un almacén a otro dentro del mismo centro, manteniendo la trazabilidad completa del movimiento.

***

### Formulario: Nuevo Producto / Editar Producto

**Propósito:** Crear o modificar un producto con control de inventario
**Acceso:** Ventana que se abre al hacer clic en **Nuevo** o **Modificar**

Este formulario reúne los datos del producto facturable y las opciones necesarias para controlar sus existencias.

#### Campos del Formulario (específicos de inventario)

| Campo                 | Obligatorio | Descripción                                    |
| --------------------- | ----------- | ---------------------------------------------- |
| Gestión de inventario | No          | Activa el control de stock para este producto  |
| Código interno        | No          | Código utilizado por el centro; debe ser único |
| Código externo        | No          | Código del proveedor o código de barras        |
| Precio proveedor      | No          | Coste de adquisición                           |
| Stock mínimo          | No          | Cantidad mínima antes de mostrar una alerta    |
| Stock máximo          | No          | Cantidad máxima recomendada                    |

***

### Formulario: Añadir Inventario (Entrada de Stock)

**Propósito:** Registrar entrada manual de productos al inventario
**Acceso:** Ventana que se abre al hacer clic en **Añadir inventario**

#### Campos del Formulario

| Campo            | Obligatorio | Descripción                                                        |
| ---------------- | ----------- | ------------------------------------------------------------------ |
| Producto         | Sí          | Producto que se incorpora al inventario                            |
| Almacén          | Sí          | Almacén que recibe las unidades                                    |
| Cantidad         | Sí          | Unidades que se añaden; debe ser mayor que cero                    |
| Precio unitario  | No          | Coste por unidad; si se informa, actualiza el precio del proveedor |
| Fecha movimiento | Sí          | Fecha real de la entrada; no puede ser futura                      |
| Comentario       | No          | Motivo o referencia de la entrada                                  |

#### Botones y Acciones

* **Aceptar**
  * Registra la entrada y actualiza las existencias.
  * Requiere una cantidad válida, un almacén y un producto.

* **Cancelar**
  * Cierra el formulario sin guardar los cambios.

***

### Formulario: Descontar Inventario (Salida de Stock)

**Propósito:** Registrar salida/consumo de productos del inventario
**Acceso:** Ventana que se abre al hacer clic en **Descontar inventario**

#### Campos del Formulario

| Campo            | Obligatorio | Descripción                                                      |
| ---------------- | ----------- | ---------------------------------------------------------------- |
| Producto         | Sí          | Producto que se descuenta                                        |
| Almacén          | Sí          | Almacén del que salen las unidades                               |
| Cantidad         | Sí          | Unidades que se descuentan; no puede superar el stock disponible |
| Fecha movimiento | Sí          | Fecha real del consumo; no puede ser futura                      |
| Paciente         | No          | Paciente con el que se utilizó el producto                       |
| Comentario       | No          | Motivo del consumo                                               |

#### Botones y Acciones

* **Aceptar**
  * Registra la salida y reduce las existencias.
  * Requiere una cantidad válida que no supere el stock disponible, además de un almacén y un producto.

* **Cancelar**
  * Cierra el formulario sin guardar los cambios.

***

### Formulario: Nuevo Pedido de Compra

**Propósito:** Crear un pedido de productos a un proveedor
**Ubicación:** Diálogo/pantalla al hacer clic en "Nuevo pedido"

#### Campos del Formulario (Cabecera)

| Campo                  | Obligatorio | Descripción                                                              |
| ---------------------- | ----------- | ------------------------------------------------------------------------ |
| Proveedor              | Sí          | Proveedor al que se realiza el pedido                                    |
| Almacén destino        | Sí          | Almacén donde se recibirá el pedido                                      |
| Fecha pedido           | Sí          | Fecha de creación; no puede ser futura                                   |
| Fecha entrega prevista | No          | Fecha estimada de recepción; no puede ser anterior a la fecha del pedido |
| Notas                  | No          | Observaciones del pedido                                                 |

#### Campos del Formulario (Líneas)

| Campo           | Obligatorio | Descripción                                                 |
| --------------- | ----------- | ----------------------------------------------------------- |
| Producto        | Sí          | Producto que se solicita                                    |
| Cantidad        | Sí          | Unidades solicitadas; debe ser mayor que cero               |
| Precio unitario | No          | Precio acordado con el proveedor                            |
| Subtotal        | Calculado   | Resultado de multiplicar la cantidad por el precio unitario |

#### Botones y Acciones

* **Añadir línea**: Añade un producto al pedido
* **Eliminar línea**: Quita un producto
* **Guardar como borrador**: Guarda sin enviar
* **Enviar pedido**: Guarda y marca como "Enviado"
* **Cancelar**: Cierra sin guardar

***

### Formulario: Recibir Pedido

**Propósito:** Registrar la recepción total o parcial de un pedido
**Ubicación:** Diálogo al hacer clic en "Recibir" sobre un pedido

#### Campos del Formulario

Para cada línea del pedido:

| Campo              | Obligatorio | Descripción                                                 |
| ------------------ | ----------- | ----------------------------------------------------------- |
| Producto           | -           | Nombre del producto; no se puede modificar                  |
| Cantidad pedida    | -           | Cantidad original del pedido; no se puede modificar         |
| Cantidad recibida  | Sí          | Unidades recibidas; no puede superar la cantidad pendiente  |
| Cantidad pendiente | -           | Unidades que quedan por recibir, calculadas automáticamente |

#### Campos adicionales

| Campo           | Obligatorio | Descripción                                |
| --------------- | ----------- | ------------------------------------------ |
| Fecha recepción | Sí          | Fecha real de llegada; no puede ser futura |
| Albarán         | No          | Número de albarán del proveedor            |
| Notas recepción | No          | Observaciones de la recepción              |

#### Botones y Acciones

* **Confirmar recepción**
  * Registra una entrada por cada producto recibido y actualiza el stock del almacén.
  * El pedido pasa a "Recibido" o "Recepción parcial", según las cantidades indicadas.
  * Debe indicarse una cantidad recibida para al menos un producto.

* **Cancelar**
  * Cierra el formulario sin modificar el pedido.

***

### Flujo 1: Ciclo Completo de Pedido de Compra

```
1. Usuario detecta stock bajo de un producto
   ↓
2. Va a Inventario → Pedidos de compra → Nuevo pedido
   ↓
3. Selecciona proveedor y almacén destino
   ↓
4. Añade líneas de productos con cantidades y precios
   ↓
5. Guarda como "Borrador" (puede editar aún)
   ↓
6. Revisa el pedido, imprime PDF si necesita
   ↓
7. Hace clic en "Enviar pedido"
   ↓
8. Sistema marca pedido como "Enviado" (ya no editable)
   ↓
9. Proveedor envía mercancía días después
   ↓
10. Usuario recibe paquete físico
   ↓
11. Va a Pedidos de compra, selecciona el pedido
   ↓
12. Hace clic en "Recibir"
   ↓
13. Indica cantidades recibidas (pueden ser parciales)
    - Si recibe todo: indica cantidad total
    - Si recibe parte: indica solo lo recibido
   ↓
14. Confirma recepción
   ↓
15. Sistema:
    - Crea movimientos de inventario (entrada)
    - Actualiza stock en almacén
    - Marca pedido como "Recibido" o "Recepción parcial"
   ↓
16. Usuario verifica en Buscar productos que el stock se actualizó
```

**Variantes del flujo:**

* Si recepción es parcial: Se puede recibir el resto en otra fecha
* Si hay diferencias: Se pueden anotar en comentarios de recepción
* Si pedido no llega: Se puede cancelar el pedido

**Errores comunes:**

* **Error:** "No se puede recibir más cantidad de la pedida"
  * **Causa:** Cantidad recibida > cantidad pendiente
  * **Solución:** Ajustar cantidad o crear nueva línea si viene producto extra

***

### Flujo 2: Registro de Consumo de Material

```
1. Profesional utiliza producto en tratamiento (ej: Botox en paciente)
   ↓
2. Personal de almacén (o el mismo profesional) va a Buscar productos
   ↓
3. Busca el producto consumido (ej: "Botox Allergan")
   ↓
4. Selecciona el producto en la tabla
   ↓
5. Hace clic en botón "Descontar inventario"
   ↓
6. Sistema muestra diálogo de salida
   ↓
7. Usuario completa:
    - Almacén: Selecciona de dónde sale (ej: Almacén Principal)
    - Cantidad: Unidades consumidas (ej: 1)
    - Paciente: (Opcional) Selecciona al paciente tratado
    - Comentario: "Aplicado en tratamiento facial"
    - Fecha movimiento: Fecha del tratamiento
   ↓
8. Hace clic en "Aceptar"
   ↓
9. Sistema valida que hay stock suficiente
   ↓
10. El sistema registra el movimiento de salida
   ↓
11. Stock se reduce automáticamente
   ↓
12. Movimiento queda registrado en historial (Buscar movimientos)
```

**Variantes del flujo:**

* Si se usa lector de código de barras: Clic en botón CB y escanear código
* Si stock es insuficiente: Sistema alerta y no permite descontar

***

### Flujo 3: Transferencia entre Almacenes

```
1. Usuario necesita mover productos de un almacén a otro
   (ej: de Almacén Principal a Almacén Consulta 2)
   ↓
2. Va a Inventario → Transferencias → Nueva
   ↓
3. Selecciona:
    - Almacén origen: Almacén Principal
    - Almacén destino: Almacén Consulta 2
    - Fecha transferencia: Fecha actual
   ↓
4. Añade líneas de productos a transferir:
    - Producto: Silhouette Soft
    - Cantidad: 5 unidades
   ↓
5. Guarda la transferencia
   ↓
6. Sistema crea dos movimientos automáticamente:
    - Salida (-5) en Almacén Principal
    - Entrada (+5) en Almacén Consulta 2
   ↓
7. Transferencia queda completada
   ↓
8. Stocks se actualizan en ambos almacenes
```

**Variantes del flujo:**

* Transferencias pendientes: Se puede crear como pendiente y completar después
* Cancelación: Se puede cancelar antes de completar

***

### Flujo 4: Ajuste Manual de Inventario (Corrección)

```
1. Usuario realiza recuento físico y detecta diferencias
   (ej: Sistema dice 37 unidades, físicamente hay 35)
   ↓
2. Va a Buscar productos
   ↓
3. Localiza el producto con diferencia
   ↓
4. Opción A - Si sobra en sistema (sistema > real):
    - Clic en "Descontar inventario"
    - Cantidad: 2 (la diferencia)
    - Comentario: "Ajuste por recuento físico"
   ↓
5. Opción B - Si falta en sistema (sistema < real):
    - Clic en "Añadir inventario"
    - Cantidad: 2 (la diferencia)
    - Comentario: "Ajuste por recuento físico"
   ↓
6. Sistema registra movimiento de ajuste
   ↓
7. Stock queda corregido
```

***

### Integraciones

**Con Módulo Facturación:**

* Los productos con inventario pueden facturarse a pacientes
* Al facturar un producto con gestión de stock, se puede descontar automáticamente
* Datos compartidos: Precio de venta, IVA, descripción del producto

**Con Módulo Administración:**

* Los productos se crean en Administración → Servicios y Productos
* La configuración de almacenes se realiza en Administración → Almacenes
* Los permisos de inventario se configuran en Administración → Equipo y accesos → Usuarios

**Con Módulo Pacientes:**

* Los movimientos de inventario pueden asociarse a pacientes
* Permite rastrear qué productos se usaron con cada paciente
* Datos compartidos: Información del paciente para trazabilidad

**Con Módulo Listados:**

* Se pueden generar informes de valoración de inventario
* Reportes de movimientos por período
* Análisis de productos más consumidos

### Antes de empezar

Para utilizar Inventario:

* **Productos** - Deben existir productos dados de alta
* **Almacenes** - Debe haber al menos un almacén configurado
* **Configuración de permisos** - El rol del usuario debe permitir consultar el inventario

***

### Control de stock negativo

Por defecto, Nubidoc bloquea el descuento de más unidades de las disponibles. Algunos almacenes pueden configurarse para permitir stock negativo.

### Corrección de movimientos

Un movimiento registrado no puede editarse. Si el usuario tiene permiso, puede deshacerlo mediante un movimiento contrario para conservar la trazabilidad del inventario.

### Edición de pedidos enviados

Después de pulsar "Enviar pedido", el pedido deja de ser editable. Solo se permiten las acciones de recepción o cancelación que correspondan a su estado.

### Actualización del precio del proveedor

Al registrar una entrada con precio unitario, Nubidoc actualiza el campo "precio proveedor" para mantener al día la valoración del inventario.

### Separación del inventario por organización

Cada organización gestiona únicamente su propio inventario. No es posible ver ni mover stock entre organizaciones distintas.

### Recepciones parciales

Un pedido puede recibirse en varias entregas. Mientras queden unidades pendientes, permanece en estado "Recepción parcial".

***

### Mensajes de Éxito

* **"Movimiento registrado correctamente"**: Entrada o salida guardada
* **"Pedido creado correctamente"**: Nuevo pedido guardado
* **"Recepción registrada con éxito"**: Stock actualizado tras recibir pedido
* **"Transferencia completada"**: Productos movidos entre almacenes

### Mensajes de Error

* Nubidoc identifica el almacén cuando no hay stock suficiente para la salida solicitada.
* **"La cantidad recibida no puede superar la cantidad pendiente"**: Error en recepción
* **"Debe seleccionar un producto"**: Campo obligatorio vacío
* **"Debe seleccionar un almacén"**: Campo obligatorio vacío
* **"La cantidad debe ser mayor que cero"**: Validación de cantidad
* Nubidoc impide modificar un pedido que ya está enviado o recibido e indica su estado actual.
* **"El producto no tiene gestión de inventario activada"**: Intento de añadir stock a producto sin control

### Mensajes de Advertencia

* Nubidoc avisa cuando el stock resultante quedará por debajo del mínimo configurado.
* **"Esta acción generará un movimiento que no se puede editar"**: Confirmación antes de guardar
* **"¿Desea marcar el pedido como enviado? No podrá editarlo después"**: Confirmación de envío

***

## Preguntas Frecuentes

**Q: ¿Puedo tener varios almacenes en el mismo centro?**
A: Sí, el sistema permite crear múltiples almacenes (ej: Almacén Principal, Almacén Consulta 1, Almacén Quirófano). Cada producto puede tener stock diferente en cada almacén.

**Q: ¿Qué pasa si descontamos inventario y luego nos damos cuenta del error?**
A: Debes usar el botón "Deshacer" en la pantalla de Buscar movimientos, si está habilitado. Si no, puedes realizar un movimiento contrario manual (añadir la cantidad que restaste por error) y documentar el motivo en comentarios.

**Q: ¿Cómo importo productos masivamente?**
A: Usa el botón "Importar" en Buscar productos. El sistema te pedirá un archivo con formato específico (generalmente Excel o CSV) con las columnas necesarias: nombre, código, precio, etc.

**Q: ¿El sistema me avisa cuando un producto está bajo de stock?**
A: Sí, si has configurado el "Stock mínimo" en la ficha del producto. El sistema puede mostrar alertas visuales o enviarte notificaciones (según configuración).

**Q: ¿Puedo hacer un pedido sin tener el proveedor dado de alta?**
A: No, primero debes crear el proveedor en la opción "Proveedores" del menú Inventario.

**Q: ¿El precio de venta al paciente y el precio proveedor son diferentes?**
A: Sí. El precio proveedor es el coste de compra del centro. El precio de venta se configura en la ficha del producto y es el que se factura al paciente.

**Q: ¿Puedo ver el valor total de mi inventario?**
A: Sí, en la pantalla "Buscar productos" hay un totalizador que suma la valoración de todo el stock (cantidad × precio proveedor).

**Q: ¿Cómo funcionan los códigos de barras?**
A: Si tienes un lector de código de barras configurado, puedes usar los botones con icono CB para escanear productos rápidamente al añadir o descontar inventario.

**Q: ¿Se puede cancelar un pedido ya recibido?**
A: No. Una vez recibido total o parcialmente, el pedido no se puede cancelar porque ya afectó al stock. Deberías hacer una devolución manual si es necesario.

**Q: ¿Las transferencias entre almacenes afectan a la valoración total?**
A: No. Las transferencias solo mueven productos de un sitio a otro dentro del mismo centro. La cantidad total y valoración global no cambian.

**Q: ¿Puedo facturar productos sin descont descont de inventario?**
A: Sí. Al crear una factura, puedes elegir si descontar automáticamente del stock o no. Es útil cuando el descuento ya se hizo previamente.

***

### Búsqueda en Productos

En las búsquedas que actualizan tablas, al pulsar **Buscar** el botón cambia a **Buscando...** y queda deshabilitado hasta que termina la carga de resultados. Esto evita repetir la misma consulta mientras se están recuperando productos, movimientos o pedidos.

| Campo          | Descripción                                         |
| -------------- | --------------------------------------------------- |
| Nombre         | Busca por todo o parte del nombre del producto      |
| Descripción    | Busca por todo o parte de la descripción            |
| Código         | Busca por el código interno exacto                  |
| Código externo | Busca por el código de proveedor o de barras exacto |

### Búsqueda en Movimientos

| Campo        | Descripción                                       |
| ------------ | ------------------------------------------------- |
| Fecha inicio | Incluye movimientos desde esta fecha              |
| Fecha fin    | Incluye movimientos hasta esta fecha              |
| Producto     | Muestra los movimientos del producto seleccionado |
| Almacén      | Muestra los movimientos del almacén seleccionado  |

### Búsqueda en Pedidos de Compra

| Campo       | Descripción                                         |
| ----------- | --------------------------------------------------- |
| Nº Pedido   | Busca por número de pedido                          |
| Proveedor   | Muestra los pedidos del proveedor seleccionado      |
| Estado      | Filtra por el estado del pedido                     |
| Desde/Hasta | Limita la búsqueda a un rango de fechas de creación |

***

### Estados de Pedido (código de colores típico)

* **Borrador** 🟡: Pedido en edición, aún no enviado
* **Enviado** 🔵: Pedido confirmado al proveedor
* **Recepción parcial** 🟠: Recibida parte de la mercancía
* **Recibido** 🟢: Pedido completamente recibido
* **Cancelado** 🔴: Pedido anulado

### Estados de Transferencia

* **Pendiente** 🟡: Transferencia creada pero no completada
* **Completada** 🟢: Transferencia realizada, stock movido
* **Cancelada** 🔴: Transferencia anulada

### Indicadores de Stock

* **Stock positivo**: Texto negro normal
* **Stock bajo** (\< mínimo): Texto naranja/amarillo con icono de alerta ⚠️
* **Sin stock** (0): Texto rojo con icono ❌
* **Stock negativo**: Texto rojo con signo menos destacado

### Iconos Principales

* 📦 Módulo Inventario
* 📊 Resumen
* 🔍 Buscar productos o movimientos
* 🚚 Proveedores
* 📄 Pedidos de compra
* 🔄 Transferencias
* ➕ Añadir inventario
* ➖ Descontar inventario
* 📱 Lector de código de barras
* ✏️ Modificar
* 🗑️ Eliminar
* 📥 Importar
* 🖨️ Imprimir

***

### Niveles de Acceso

Los permisos pueden concederse por función:

* **Consulta de inventario:** Ver productos, movimientos y transferencias.
* **Gestión de inventario:** Registrar entradas y salidas, crear transferencias y realizar ajustes.
* **Consulta de proveedores:** Ver el catálogo de proveedores.
* **Gestión de proveedores:** Crear, modificar y eliminar proveedores.
* **Consulta de pedidos:** Ver pedidos de compra.
* **Gestión de pedidos:** Crear, enviar, recibir y cancelar pedidos.

### Restricciones

* Solo los usuarios cuyo rol permite consultar el inventario pueden acceder al módulo
* No se puede editar stock directamente (solo vía movimientos)
* Movimientos de recepción de pedidos solo los puede crear el sistema
* Los almacenes están separados por organización y centro médico
* No se pueden eliminar movimientos, solo deshacer (si está habilitado)

***

### Exportaciones Disponibles

* **Exportar productos a Excel**: Lista completa de productos con stock actual
* **Exportar movimientos**: Historial de movimientos en período seleccionado
* **Imprimir pedido de compra**: PDF del pedido para enviar a proveedor
* **Valoración de inventario**: Informe del valor total del stock

### Informes Típicos (vía módulo Listados)

* **Stock actual por almacén**: Existencias de cada producto por ubicación
* **Productos con stock bajo**: Alerta de productos bajo mínimo
* **Movimientos por producto**: Historial de un producto específico
* **Consumo por período**: Productos más utilizados en un rango de fechas
* **Pedidos pendientes de recibir**: Seguimiento de pedidos en tránsito
* **Valoración de inventario**: Valor económico del stock actual

***

### Configuración de Almacenes

**Ubicación:** Administración → Almacenes

Cada almacén puede configurar:

* **Nombre y descripción**
* **Ubicación física** (dirección, planta, sala)
* **Permitir stock negativo**: Si activado, permite descuentos aunque no haya existencias
* **Almacén predeterminado**: Marcar cuál es el almacén principal

### Configuración de Productos con Inventario

**Ubicación:** Administración → Servicios y Productos → Editar producto

Campos específicos de inventario:

* **Gestionar inventario**: Casilla para activar el control de stock
* **Código interno**: Código del centro
* **Código externo**: Código de proveedor o código de barras
* **Precio proveedor**: Coste de adquisición
* **Stock mínimo/máximo**: Umbrales de alerta

### Numeración de Pedidos

Los pedidos se numeran automáticamente con el formato:

* `PO-YYYY-NNNNN`
* Ejemplo: `PO-2025-00001`
* YYYY = año actual
* NNNNN = secuencial por año

***

### Tutorial 1: Dar de Alta un Producto con Inventario

**Pasos:**

1. **Ir a Administración → Servicios y Productos**
   * Clic en menú "Administración"
   * Seleccionar "Servicios y Productos"

2. **Crear nuevo producto**
   * Clic en botón "Nuevo"
   * Completar datos básicos:
     * Nombre: `Botox Allergan 100U`
     * Descripción: `Toxina botulínica tipo A`
     * Precio venta: `450.00` €
     * IVA: `General (21%)`

3. **Activar gestión de inventario**
   * Marcar la casilla "Gestionar inventario"
   * Código interno: `BOT-ALL-100`
   * Código externo: `5012345678901` (código de barras)
   * Precio proveedor: `100.00` €
   * Stock mínimo: `5`
   * Stock máximo: `20`

4. **Guardar producto**
   * Clic en "Aceptar"
   * El producto ya está listo para gestión de stock

***

### Tutorial 2: Realizar un Pedido y Recepción Completa

**Pasos:**

**Parte 1: Crear el pedido**

1. **Ir a Inventario → Pedidos de compra**
   * Clic en botón "Nuevo pedido"

2. **Completar cabecera del pedido**
   * Proveedor: Seleccionar `Allergan España`
   * Almacén destino: `Almacén Principal`
   * Fecha pedido: (automática, hoy)
   * Fecha entrega prevista: `+7 días`

3. **Añadir productos**
   * Clic en "Añadir línea"
   * Producto: `Botox Allergan 100U`
   * Cantidad: `10`
   * Precio unitario: `100.00` €
   * (Subtotal se calcula automáticamente: 1,000.00 €)

4. **Guardar y enviar**
   * Opción A: "Guardar como borrador" (si necesitas revisar después)
   * Opción B: "Enviar pedido" (si ya está listo)
   * El pedido queda con número `PO-2025-00001` y estado "Enviado"

**Parte 2: Recibir el pedido (días después)**

5. **Cuando llega la mercancía**
   * Ir a Inventario → Pedidos de compra
   * Localizar el pedido `PO-2025-00001`
   * Verificar estado: "Enviado"

6. **Registrar recepción**
   * Seleccionar el pedido en la tabla
   * Clic en botón "Recibir"
   * Sistema muestra diálogo con líneas del pedido

7. **Indicar cantidades recibidas**
   * Botox Allergan 100U:
     * Cantidad pedida: 10 (solo lectura)
     * Cantidad recibida: `10` (todo recibido)
   * Fecha recepción: (automática, hoy)
   * Albarán: `ALB-2025-123` (número del proveedor)

8. **Confirmar recepción**
   * Clic en "Confirmar recepción"
   * Sistema:
     * Crea movimiento de entrada: +10 en Almacén Principal
     * Actualiza stock de Botox a 10 unidades
     * Marca pedido como "Recibido"

9. **Verificar**
   * Ir a Buscar productos
   * Buscar "Botox Allergan"
   * Verificar columna "cantidad": debe mostrar "10 en Almacén Principal"

***

### Tutorial 3: Registrar Consumo de Productos en Tratamiento

**Pasos:**

1. **Tras realizar el tratamiento**
   * El médico ha aplicado 1 vial de Botox al paciente Juan Pérez

2. **Acceder al inventario**
   * Ir a Inventario → Buscar productos

3. **Localizar el producto**
   * Buscar: "Botox Allergan"
   * Seleccionar el producto en la tabla

4. **Descontar inventario**
   * Clic en botón "Descontar inventario"
   * Sistema muestra diálogo

5. **Completar formulario**
   * Producto: `Botox Allergan 100U` (ya seleccionado)
   * Almacén: `Almacén Principal`
   * Cantidad: `1`
   * Paciente: Buscar y seleccionar `Juan Pérez`
   * Fecha movimiento: (hoy)
   * Comentario: `Aplicado en tratamiento facial - arrugas frontales`

6. **Confirmar**
   * Clic en "Aceptar"
   * Sistema valida que hay stock (10 unidades disponibles)
   * Crea movimiento de salida: -1
   * Stock actualizado a 9 unidades

7. **Verificar en historial** (opcional)
   * Ir a Buscar movimientos
   * Ver el último movimiento:
     * Producto: Botox Allergan 100U
     * Exis. antes: 10
     * Cantidad: -1
     * Exis. después: 9
     * Paciente: Juan Pérez
