Saltar al contenido principal
Licencias · OPL-1, LGPL y AGPL

Qué significa la licencia OPL-1 de Odoo cuando compras un módulo: lo que permite, lo que prohíbe y cómo convive con LGPL y AGPL

La OPL-1 son cinco párrafos que escribió Odoo S.A. Te dejan usar, leer y modificar el módulo que has comprado, y te prohíben publicarlo o pasárselo a otra empresa. Igual de importante es lo que no dicen: versiones, bases de datos y dependencias con la OCA.

Catálogo de módulos de FlexigoTech para Odoo con las versiones compatibles, el precio de pago único y el enlace a la Odoo App Store

OPL-1 aparece en la ficha de muchos módulos de pago de la App Store de Odoo, y casi nadie lee lo que hay detrás: cinco párrafos cortos que Odoo S.A. publica en su documentación. Aquí los leemos desde el lado de quien paga: qué permiten, qué prohíben, qué callan y cómo conviven con LGPL y AGPL. Es la lectura de ingenieros que publican módulos, no asesoramiento jurídico.

Qué dice la OPL-1, párrafo a párrafo

La Odoo Proprietary License v1.0 dice cinco cosas. Solo se puede usar el módulo —ejecutarlo, modificarlo y ejecutarlo modificado— con una licencia comprada a sus autores, «normalmente a través de Odoo Apps», o con un acuerdo escrito. Puedes escribir módulos que dependan de él sin copiar su código. Está prohibido publicar, distribuir, sublicenciar o vender copias, modificadas o no. El aviso de copyright acompaña a todas las copias. Y se entrega «tal cual», sin garantía. En la práctica:

Quieres…¿Se puede?El matiz
Usarlo en el Odoo de tu empresaCon licencia comprada o acuerdo escrito con el autor.
Modificarlo para tus procesosTu versión modificada sigue siendo OPL-1.
Leer y auditar el códigoLlega legible: la App Store retira el código ofuscado o cifrado.
Escribir un módulo que dependa de élSin copiar su código y con licencia compatible.
Subirlo a un GitHub públicoNoEs publicar. En Odoo.sh, con repositorio privado.
Instalar una compra en varios clientesNoEs distribuir. Cada cliente compra la suya.
Revenderlo o meterlo en tu productoNoNi gratis ni modificado.

Lo que la OPL-1 no dice, y dónde está la respuesta

La licencia no habla de usuarios, bases de datos, actualizaciones ni versiones. Eso lo fija quien vende. En la App Store, sus condiciones de venta: desde Odoo 13 cada versión se vende aparte, así que comprarlo para Odoo 18 no te da el de Odoo 19; los módulos de terceros no se instalan en Odoo Online; y hay dos meses para reclamar si no instala en la versión anunciada o le falta una función que promete la ficha. Comprar la versión equivocada no da derecho a reembolso. Si compras directamente al autor, manda su acuerdo: el nuestro fija una instancia de producción y hasta dos de pruebas, con doce meses de soporte.

Por qué los módulos de pago llevan OPL-1

Porque con una licencia libre la venta por copia no se sostiene. Se puede vender un módulo LGPL-3 o AGPL-3, pero el comprador recibe el derecho a redistribuirlo y podría publicarlo gratis, legalmente. La OPL-1 es la licencia que Odoo S.A. escribió para ese hueco, y la App Store la reconoce con el valor OPL-1 del manifiesto. Lo que sorprende: la protección es contractual, no técnica. El módulo te llega en Python legible, como uno de la OCA.

OPL-1, LGPL-3 y AGPL-3 en la misma base de datos

El núcleo de Odoo Community es LGPL-3, que deja que otros módulos lo usen sin heredar sus condiciones; por eso encima caben módulos OPL-1. Los de la OCA suelen ser AGPL-3. Tenerlos instalados juntos para uso propio no crea conflicto: la AGPL obliga al distribuir o al ofrecer por red una versión modificada, por ejemplo en un portal de clientes. El choque aparece cuando un módulo depende de otro. Así lo resume la App Store:

Si tu módulo es…Puede depender de…No puede depender de…
AGPL-3AGPL-3, GPL-3 y LGPL-3OPL-1, OEEL-1 (Enterprise), otras OSI ni propietarias
LGPL-3LGPL-3, OPL-1, OEEL-1, otras OSI y propietariasAGPL-3 ni GPL-3
OPL-1LGPL-3, OPL-1, OEEL-1, otras OSI y propietariasAGPL-3 ni GPL-3

Traducido: un módulo OPL-1 no puede depender de uno AGPL-3 de la OCA, ni al revés, y una pieza que importe los dos no cabe con ninguna licencia. Si el módulo OPL-1 depende de Enterprise, necesitas la suscripción; si solo depende del núcleo, funciona en Community. Más detalle en la guía de licencias.

Sin clave license en el manifiesto, Odoo carga el módulo como LGPL-3 con un aviso en el log, y la App Store lo trata como «Other proprietary». Mismo módulo, dos respuestas: es lo primero que hay que corregir.

Antes de comprar: cinco comprobaciones

  • El manifiesto. Mira license y depends en __manifest__.py. Un módulo OPL-1 que depende de la OCA merece una pregunta al autor.
  • La versión. Compra la de tu Odoo y, si vas a migrar, pregunta por la siguiente.
  • El alojamiento. Odoo.sh o servidor propio, sí; Odoo Online, no.
  • El repositorio. Si el módulo va a Git, privado.
  • El titular. Si lo instala tu partner, que la compra quede a nombre de tu empresa.

Cuándo no te hace falta un módulo OPL-1

Si la OCA tiene un módulo mantenido para tu versión que hace lo que necesitas, empieza por ahí; en módulo nativo o de la OCA explicamos cómo decidirlo. Un módulo de pago tiene sentido cuando no hay alternativa libre madura o prefieres que el mantenimiento entre versiones lo lleve quien lo escribió. Nuestros módulos de pago van con OPL-1: el de VeriFactu, por ejemplo, funciona en Odoo 17, 18 y 19, y son 49 € de pago único en la App Store de Odoo, con el código fuente incluido. Y si lo que necesitas no existe, ya no es cuestión de licencias: es desarrollo a medida.

Preguntas frecuentes

¿Puedo usar un módulo OPL-1 en varias bases de datos?

El texto de la OPL-1 no lo dice: lo fija quien vende. En nuestros módulos, una instancia de producción y hasta dos de pruebas de la misma empresa, tal como recoge el EULA. Lo que ninguna condición permite es llevar la misma compra al Odoo de otra empresa: eso es distribuir.

¿Puedo modificar un módulo OPL-1?

Sí. El texto permite expresamente modificarlo y ejecutarlo modificado. Lo que no puedes es publicar esa versión ni entregarla a terceros. Si el cambio le sirve a más gente, pídeselo al autor: te ahorras mantener una copia propia en cada actualización.

¿La OPL-1 es la misma licencia que la de Odoo Enterprise?

No. Los módulos de Odoo Enterprise usan la OEEL-1, que exige una suscripción Enterprise válida. La OPL-1 es para módulos de terceros y solo exige haber comprado el módulo; si depende únicamente del núcleo, funciona también en Community.

Enlaces útiles dentro de FlexigoTech

Guía de licencias de OdooOPL-1, AGPL-3, LGPL-3 y Enterprise, con tabla comparativaEULA de los módulos FlexigoTechInstancias, soporte y restricciones de nuestros módulos OPL-1Publicar un módulo en la Odoo App StoreLa licencia vista desde el lado de quien vende

¿Dudas con la licencia de un módulo antes de instalarlo?

Mándanos el nombre del módulo o su manifiesto y la versión de tu Odoo. Te decimos qué licencia tiene de verdad, de qué depende y si choca con lo que ya tienes instalado. Si la respuesta es que te basta uno de la OCA, también te lo decimos. Escribe a comercial@flexigobe.com o agenda una llamada.

Hablar con un ingeniero