Introducción
Un error de dependencia de módulo en Odoo ocurre cuando Odoo no puede instalar o actualizar un módulo porque uno o más módulos requeridos están ausentes, no instalados o declarados incorrectamente.
Este tipo de error suele aparecer durante:
- La instalación de módulos
- La actualización de módulos
- La migración de base de datos
- Despliegue de módulos personalizados
Cuando las dependencias no están configuradas correctamente, Odoo bloquea el proceso para evitar un comportamiento inconsistente del sistema.
Esta guía explica por qué ocurren errores de dependencia de módulos y cómo solucionarlos correctamente.
¿Qué es una dependencia de módulo en Odoo?
Cada módulo de Odoo contiene un archivo __manifest__.py con una sección de depends:
{
'name': 'Mi Módulo Personalizado',
'depends': ['base', 'sale'],
}
Esto significa:
- El módulo requiere que base y sale estén instalados
- Odoo los instalará automáticamente si es necesario
- El módulo depende de sus modelos y características
Si una de estas dependencias falta o está declarada incorrectamente, Odoo genera un error de dependencia.
Causas comunes de errores de dependencia de módulo en Odoo
1. Módulo Requerido Faltante
Si tu módulo depende de otro módulo que no está instalado, Odoo no puede proceder.
Ejemplo:
'depends': ['stock']
Si el stock no está instalado → la instalación falla.
2. Nombre de Módulo Incorrecto en el Manifiesto
Si el nombre de la dependencia es incorrecto:
'depends': ['sales']
En lugar de:
'depends': ['sale']
Odoo no encontrará el módulo y generará un error.
3. Dependencias Circulares
Si:
- El Módulo A depende del Módulo B
- El Módulo B depende del Módulo A
Odoo no puede resolver el orden de instalación.
Las dependencias circulares causan fallos en la instalación.
4. Módulo Personalizado No en la Ruta de Addons
Si una dependencia es un módulo personalizado pero no se encuentra en la ruta de addons_path configurada, Odoo no puede detectarlo.
5. Módulo Instalado pero No Cargado Correctamente
Si el módulo de dependencia fue instalado parcialmente o falló durante la instalación anterior, el sistema puede considerarlo no disponible.
6. Incompatibilidad de Versiones Entre Módulos
Si un módulo personalizado fue construido para una versión diferente de Odoo, pueden ocurrir conflictos de dependencias durante la instalación o actualización.
Cómo solucionar el error de dependencia de módulo en Odoo
Paso 1 – Verificar el Mensaje de Error
El mensaje de error generalmente especifica qué dependencia falta.
Ejemplo:
ModuleNotFoundError: No module named 'stock'
O:
Dependencias no satisfechas: sale_management
Paso 2 – Verificar el archivo de manifiesto
Abre __manifest__.py y verifica:
- Nombres de módulo correctos
- Ortografía adecuada
- Sin comas finales ni errores de sintaxis
Compara los nombres con los nombres técnicos de módulo oficiales en Odoo.
Paso 3 – Instalar dependencias faltantes
Ve a:
Apps → Busca el módulo faltante → Instalar
Si es un módulo personalizado, asegúrate de que sea:
- Presente en la carpeta de addons
- Listada en addons_path
- Visible en el menú de Apps
Paso 4 – Reiniciar el servidor Odoo
Después de corregir problemas de dependencia:
- Reiniciar el servidor
- Actualizar la lista de aplicaciones
- Reintentar la instalación
Paso 5 – Evitar dependencias circulares
Si existe una dependencia circular:
- Refactorizar la lógica compartida en un tercer módulo
- Eliminar dependencias cruzadas innecesarias
Los módulos deben tener relaciones jerárquicas claras.
Paso 6 – Verificar la configuración de la ruta de los complementos
Verifica tu archivo de configuración de Odoo:
addons_path = /ruta/a/odoo/addons,/ruta/a/complementos/personalizados
Asegúrate de que todos los módulos requeridos se encuentren en estos directorios.
Cómo prevenir errores de dependencia de módulo
- Siempre declara las dependencias de manera explícita
- Mantén la estructura del módulo limpia y modular
- Evita dependencias circulares
- Utiliza nombres de módulo técnicos correctos
- Prueba la instalación en staging
- Documenta las relaciones de los módulos personalizados
Una arquitectura de módulo bien estructurada previene la mayoría de las fallas de instalación relacionadas con dependencias.
Cómo Dasolo estructura dependencias de módulo limpias
Los errores de dependencia de módulos suelen indicar jerarquías de módulos poco claras o dependencias cruzadas ocultas entre componentes personalizados. A medida que los entornos de Odoo crecen, las dependencias no gestionadas pueden llevar rápidamente a fallos en la instalación o actualización.
En Dasolo, prevenimos conflictos de dependencia centrándonos en:
- Declaraciones de dependencia explícitas
- Límites de módulo claros
- Acoplamiento mínimo entre módulos
- Evitación de referencias circulares
- Documentación estructurada de componentes personalizados
Una arquitectura de dependencia limpia asegura instalaciones predecibles y mantenibilidad a largo plazo en proyectos de Odoo.
Conclusión
El "Error de Dependencia de Módulo" de Odoo ocurre cuando faltan módulos requeridos, están mal declarados o entran en conflicto durante la instalación o actualización. Si bien el sistema informa claramente las dependencias no satisfechas, el problema más profundo a menudo radica en una mala estructuración de los módulos.
Al revisar cuidadosamente los archivos de manifiesto, mantener jerarquías de módulos limpias y validar las dependencias antes de la implementación, los desarrolladores pueden prevenir conflictos de instalación recurrentes. Una arquitectura de módulo disciplinada es esencial para entornos de Odoo estables y escalables.