Salta al contingut principal
Odoo 20 · Guia tècnica

Odoo 20 ja és aquí: què canvia per a les teves integracions i connectors

Odoo 20.0 FINAL ja està publicat. Quatre coses trenquen connectors de tercers (una d'elles, fins al 31 d'octubre, sense donar cap error) i així les hem comprovat amb el codi real abans de portar els nostres.

Codi font d'Odoo 20 revisat línia a línia abans de portar els connectors

Odoo 20.0 FINAL va sortir després de l'Odoo Experience de Brussel·les (24–26 de setembre de 2026) i ja està publicat a l'App Store. Abans de portar res, vam llegir el codi font real (no un changelog ni un blog de tercers) per saber què trenca un connector que avui funciona a Odoo 19. Això és el que hem trobat, amb el fitxer i la línia on ho hem comprovat.

Mètode: cada fila de la taula surt d'executar ls, grep o git log contra /srv/odoo-fuente/odoo-20.0 i /srv/odoo-fuente/enterprise-20.0 (commits 17ff827a1 i e5186134, 26 i 27 de setembre de 2026), no de llegir sobre Odoo 20 en un altre lloc.

Els quatre trencaments que hem verificat

Què desapareixQuè passa si el teu mòdul ho fa servirVerificat amb
base_vat i base_ibanEl mòdul no s'instal·la si en depèn: la validació de NIF/IBAN s'ha mogut al nucli.addons/ del codi font d'Odoo 20.0 FINAL
ir.model.access i ir.ruleEs fonen en un model nou, ir.access. Els CSV de permisos en el format antic no es llegeixen.odoo/addons/base/models/ir_access.py + odoo/upgrade_code/19.4-00-ir-access.py
odoo.osv (el paquet sencer)from odoo.osv import expression dona ModuleNotFoundError i el mòdul no carrega.odoo/osv/ absent al codi font d'Odoo 20.0 FINAL
El camp datas als adjuntsir.attachment.create({'datas': ...}) llança AssertionError des del 31 d'octubre de 2026. Fins aleshores creava l'adjunt amb mida 0, sense cap error, i el PDF signat sortia buit.odoo/addons/base/models/ir_attachment.py:502 al codi font d'Odoo 20.0 del 2 de novembre de 2026 (abans, la línia 535)

Actualització del 6 de novembre de 2026: fins al 31 d'octubre, la més perillosa era la dels adjunts, perquè no llançava cap excepció: un connector de signatura electrònica que continués escrivint 'datas': base64... s'instal·lava net, passava el smoke test i desava el PDF signat amb mida 0. Des del commit c06a07264bdb d'Odoo («[FIX] base: remove fallback for datas»), aquest create llança AssertionError: _check_contents should handle that. L'arranjament no canvia: 'raw' amb els bytes sense codificar, que val a Odoo 17, 18, 19 i 20.

Què revisar abans de migrar un connector propi

  1. grep -rn base_vat\|base_iban __manifest__.py en tots els teus mòduls: si apareix a depends, no s'instal·la.
  2. grep -rn 'from odoo.osv import' al codi Python: cada aparició s'ha de canviar a from odoo.fields import Domain.
  3. Fitxers ir.model.access.csv: executar odoo-bin upgrade_code --script 19.4-00-ir-access, que converteix el format, actualitza el manifest i esborra el CSV vell (el guió de la mateixa Odoo).
  4. Qualsevol 'datas': base64.b64encode(...) escrit a un adjunt: canviar-lo a 'raw': ..., que funciona igual a Odoo 17, 18, 19 i 20 : no cal esperar a portar per arreglar-ho.

Com ho hem provat nosaltres

Cada connector nostre que arriba a Odoo 20 passa primer per un Odoo 20.0 FINAL real amb Enterprise: s'instal·la de debò, s'executa tota la seva bateria de tests (amb almenys una prova i cap d'omesa) i només si tot surt en verd es publica. Instal·lar sense errors no n'hi ha prou: el trencament dels adjunts, per exemple, només el veu un test que crea el document (fins al 31 d'octubre, un que a més l'obria), mai un log d'instal·lació net.

Amb aquest criteri ja tenim 9 connectors publicats a Odoo 20 (el detall és a aquest article) i la resta del catàleg va arribant mòdul a mòdul, a mesura que va passant la bateria completa, no de cop.

Preguntes freqüents

Ja es pot instal·lar Odoo 20 en producció?

Odoo 20.0 FINAL està publicat i disponible a l'App Store. Abans de migrar un desplegament amb connectors personalitzats, revisa si depenen de base_vat, base_iban o odoo.osv, i si escriuen adjunts amb 'datas'.

Per què un connector que s'instal·la bé pot fallar igualment a Odoo 20?

Perquè instal·lar només comprova que el manifest i les vistes carreguen. El canvi als adjunts (camp datas) no salta en instal·lar: des del 31 d'octubre de 2026 dona AssertionError en crear el registre i, fins a aquesta data, no donava cap error i el document es desava buit. Només el detecta un test que passa per aquest codi.

Enllaços útils dins de FlexigoTech

Els nostres connectors ja a Odoo 20La llista viva, amb enllaç a cada fitxaMigrar a Odoo 20: checklistPer a empreses amb integracions activesCatàleg de mòdulsPreu i versions de cadascun

El que fem sobre això

Integracions a midaQuè fa, captures, versions i preu.

El teu connector depèn de nosaltres? T'expliquem si Odoo 20 el trenca

Escriu-nos amb el nom del mòdul i et diem, amb el codi real, si t'afecta algun d'aquests quatre trencaments. Escriu a comercial@flexigobe.com o truca al +34 616 809 504.

Parlar amb un enginyer