Stock Orderpoint Safety Stock
Este módulo mejora la gestión de inventario al introducir un control estocástico basado en el nivel de servicio mediante un sistema de reposición de revisión continua. En lugar de depender únicamente de niveles de stock mín/máx fijos, el módulo estima tu demanda diaria típica (media) y variable (varianza) a partir de datos históricos y tiene en cuenta el plazo de entrega. Estos cálculos generan un stock de seguridad estadísticamente sólido, que se incluye en tu umbral de reposición (el «min»). El «max» se establece para que tu inventario cubra la demanda esperada durante todo el ciclo de reposición.
Ahora puedes establecer reglas de reposición (orderpoints) basadas en el Cycle Service Level (CSL), que refleja la probabilidad de satisfacer toda la demanda durante un ciclo de reposición sin quedarte sin stock. Esto proporciona una alternativa práctica a establecer manualmente los umbrales mínimo y máximo de stock.
Con CSL habilitado, el stock de seguridad se calcula automáticamente utilizando tus datos históricos de ventas diarias (tanto la media como la desviación estándar), recopilados durante un periodo que tú defines, más el plazo de entrega del orderpoint. El sistema entonces mantiene actualizados los niveles mín y máx de tu regla de reposición.
¿Prefieres el control manual? Siempre puedes volver al modo «Manual» para especificar mín y máx directamente.
Teoría
La base de este enfoque es el Cycle Service Level (CSL), una métrica ampliamente utilizada en la cadena de suministro:
- Definición de CSL: La probabilidad de que tu inventario cubra completamente la demanda durante un ciclo de reposición.
- Ejemplo: Un CSL del 95% significa que solo el 5% de los ciclos correrán el riesgo de quedarse sin stock.
Este sistema asume que la demanda es aleatoria (no fija), por lo que utiliza métodos estadísticos:
- Demanda diaria media (μ)
- Desviación estándar de la demanda diaria (σ)
Dado que la demanda puede fluctuar durante el plazo de entrega, el stock de seguridad actúa como un búfer para reducir el riesgo de quedarse sin stock.
Fórmula del stock de seguridad:
safety_stock = σ_L × z × g
Donde:
- σ_L: Desviación estándar de la demanda durante el plazo de entrega
- z: Puntuación Z para el CSL deseado (p. ej., 1,65 para un CSL del 95%)
- g: Factor de crecimiento (opcional, te permite añadir un margen)
Se necesitan tres zonas para definir cómo se derivan mín y máx:
- Zona roja = stock de seguridad:
- Esta zona nunca debe tocarse. Actúa como el búfer para variaciones inesperadas.
- Consulta la fórmula del stock de seguridad anterior.
- Zona amarilla = demanda esperada durante el plazo de entrega:
- Esta zona representa el consumo de stock esperado desde el momento en que haces clic en reponer hasta el momento en que recibes tu orden de compra.
- Fórmula: demanda diaria media × plazo de entrega en días
- Zona verde = demanda esperada durante el ciclo:
- Representa el consumo de stock durante el ciclo de reposición deseado (el tiempo entre dos reposiciones)
- Fórmula: demanda diaria media × días del ciclo
Donde:
- plazo de entrega: El tiempo que se tarda en recibir el pedido.
- días del ciclo: El número deseado de días entre pedidos.
A partir de estas tres zonas, las cantidades mín y máx se derivan de la siguiente manera:
- Mínimo (min): Roja + Amarilla
- Máximo (max): Roja + Amarilla + Verde
¿Por qué funciona?
- Odoo activa la reposición siempre que el stock cae por debajo del mín, lo que debería ser suficiente para cubrir la varianza (stock de seguridad) y la demanda durante el plazo de entrega.
- El nivel máx se establece lo suficientemente alto como para cubrir toda la demanda esperada hasta la siguiente reposición, más un búfer para cubrir los días del ciclo deseados.
Esto hace que la gestión de inventario sea a la vez más basada en datos y más fácil de mantener.
Traducción automática al español (DeepSeek) de la descripción original de OCA, que está en inglés.
auto_awesome Qué hace este módulo
Generado por IA a partir del código · Odoo 19.0Te permite establecer reglas de reabastecimiento (orderpoints) utilizando un Cycle Service Level objetivo en lugar de escribir manualmente las cantidades mínimas/máximas. Odoo entonces estima la demanda diaria promedio a partir de los movimientos pasados y calcula automáticamente un stock de seguridad, mínimo y máximo.
Este módulo añade una forma estadística de dimensionar tus reglas de reabastecimiento. En cada orderpoint puedes elegir un método de Stock de Seguridad: Manual (como antes) o Cycle Service Level. Cuando eliges Cycle Service Level, seleccionas un objetivo CSL y Odoo calcula el resto.
- Un nuevo menú bajo la configuración de Inventario, Cycle Service Levels, almacena los objetivos (se proporcionan 0.90, 0.95, 0.97 y 0.99). Cada objetivo muestra su Z-Score, y un botón abre los reabastecimientos que lo utilizan.
- A partir de los movimientos de salida pasados, Odoo calcula la Demanda Media Diaria y su Desviación Estándar, luego la desviación durante el plazo de entrega y, finalmente, el stock de seguridad. El Mínimo cubre la demanda del plazo de entrega más el stock de seguridad; el Máximo añade la demanda para la duración de ciclo elegida.
- Puedes añadir un factor de crecimiento para planificar una demanda creciente o decreciente, y establecer el número de días entre pedidos.
- Cuando se utiliza un método automatizado, los campos Min y Max pasan a ser de solo lectura y se rellenan con un botón Apply Safety Stock, o automáticamente cuando cambias el producto, la ubicación, el método, el objetivo, el crecimiento o el ciclo.
- Una tarea programada diaria actualiza el stock de seguridad de los orderpoints que aún no se han actualizado hoy.
- Los ajustes te permiten elegir cuántos días de historial analizar y si empezar a contar desde el primer movimiento.
- El informe de reabastecimiento y su gráfico muestran la línea de stock de seguridad y la desviación estándar.
Depende de
Menús que añade
Modelos y campos (6)
- res.company · amplía un modelo existentedemand_history_days, demand_serie_skip_leading_0s
- product.product · amplía un modelo existente
- res.config.settings · amplía un modelo existentedemand_history_days, demand_serie_skip_leading_0s
- stock.replenishment.info · amplía un modelo existentez_score, cycle_days, safety_stock, growth_factor, demand_avg_qty, demand_std_dev, demand_lt_std_dev, demand_history_days, safety_stock_method, cycle_service_level_id
- stock.cycle.service.level · modelo nuevocsl (Cycle Service Level), z_score (Z-Score), orderpoint_ids (Orderpoints), orderpoint_count (Orderpoints Count)
- stock.warehouse.orderpoint · amplía un modelo existentecsl (Cycle Service Level Target), z_score, cycle_days, safety_stock, growth_factor, demand_avg_qty (Average Daily Demand), demand_std_dev (Standard Deviation of Daily Demand), demand_lt_std_dev (Standard Deviation of Daily Demand over Lead Time), demand_history_days (Demand History Days), safety_stock_method, cycle_service_level_id (Cycle Service Level), safety_stock_update_date (Last modification date of Min and Max quantities from Safety Stock), demand_serie_skip_leading_0s
Texto generado por IA (DeepSeek) al leer el código de la versión 19.0 en GitHub; puede contener errores, así que verifícalo en el código antes de decidir. Ver el código en GitHub
Disponibilidad por versión
Revisado: 2026-11-03Estado de confirmación: 1 confirmada, 8 sin información de 9 versiones.
Fuentes · Odoo 19.0
Confirmado el 2026-11-03 en la rama 19.0 de OCA/stock-logistics-orderpoint.
terminal Instalación y uso
Documentación de OCA · Odoo 19.0Configuración
Fuente · Odoo 19.0Para utilizar este módulo de forma eficiente, es necesario realizar alguna configuración en Odoo.
Demand History Days
En Ajustes generales > Inventario, dentro de Programación avanzada, tienes la posibilidad de establecer los Demand History Days.
Define la ventana móvil para el análisis histórico con el fin de calcular la demanda media diaria y el stock de seguridad resultante. Por defecto es 365. Específico de la compañía.
Postpone Demand History Start to 1st Move
En Ajustes generales > Inventario, dentro de Programación avanzada, tienes la posibilidad de posponer la fecha de inicio del historial de demanda.
Si se selecciona, los cálculos del historial de demanda comenzarán a partir de la fecha de la cantidad movida más temprana dentro de la ventana móvil. No está marcado por defecto. Específico de la compañía.
Cycle Service Levels
Definen la probabilidad objetivo de satisfacer toda la demanda durante un ciclo de reposición sin quedarse sin stock. El módulo incluye valores predefinidos para los Cycle Service Levels y sus z-scores, pero puedes crear más según tus necesidades.
Configure sus Reglas de Reabastecimiento (Orderpoints) para usar el método Cycle Service Level, y juegue con las siguientes variables para adaptarlas a sus necesidades. El módulo recalculará diariamente las cantidades Min, Max y por lo tanto las cantidades A pedir en función de los datos históricos de demanda y los parámetros que establezca.
Parámetros de la Regla de Reorden
Método de Stock de Seguridad
- Manual: Las cantidades min y max del producto se establecen manualmente (comportamiento estándar de Odoo).
- Cycle Service Level: Las cantidades min y max del producto se calculan en función del nivel de servicio de ciclo objetivo, el factor de crecimiento, el ciclo de pedido y los plazos de entrega.
Cycle Service Level
Define la probabilidad objetivo de satisfacer toda la demanda durante un ciclo de reabastecimiento sin quedarse sin existencias. Los valores típicos oscilan entre el 90% y el 99%. Un objetivo más alto aumenta el stock de seguridad para reducir el riesgo de rotura de stock; un objetivo más bajo reduce el inventario a costa de sufrir faltantes con más frecuencia.
Cycle Days
El número deseado de días entre pedidos. Se utiliza para dimensionar la diferencia entre las cantidades min y max, para cubrir la demanda esperada durante el ciclo de reorden deseado.
Growth Factor
Un multiplicador opcional para tener en cuenta el crecimiento esperado de la demanda. Se aplicará al stock de seguridad y a las cantidades min y max resultantes.
Información adicional
Este módulo mejora la transparencia de la gestión de inventario mostrando la ruta de cálculo completa para los niveles de stock mínimo y máximo. Al proporcionar visibilidad sobre cómo se derivan las fórmulas de stock de seguridad directamente dentro de la interfaz de usuario, genera confianza en el usuario y simplifica la verificación de las reglas de aprovisionamiento automatizadas.
Al hacer clic en el icono ℹ️, se le redirige a toda la información y configuración necesarias para usar este módulo de OCA:
Nota: Algunos campos solo se muestran en "Developer Mode".
Cálculo de Min y Max
Todas las estadísticas y el stock de seguridad son campos no almacenados calculados al vuelo, mientras que las cantidades min y max se calculan ya sea:
- Manualmente haciendo clic en el botón 🔄 del reabastecimiento
- Automáticamente mediante una acción programada diaria
Filtros de usabilidad
Es posible filtrar por el método de stock de seguridad y por el nivel de servicio de ciclo en la vista de árbol de Orderpoint:
Traducción automática al español (DeepSeek) de la documentación original de OCA; los comandos y el código no se traducen. Sin información verificada en OCA: Instalación.
Las instrucciones de instalación, el paquete de distribución, las dependencias y los pasos de configuración no se muestran porque todavía no se han verificado en la documentación del módulo para ninguna versión.
Datos importados de GitHub: esta ficha refleja la última revisión del catálogo, no una consulta en directo. Verifica siempre en la documentación del módulo y en staging antes de instalar en producción.