Guides de migration · ERP

Remplacer wkhtmltopdf par pdfkiln dans Odoo

Odoo imprime rapports, factures, devis et bons de livraison avec le wkhtmltopdf qu’il trouve dans le PATH. Le paquet Debian y met celui de pdfkiln, à la place du paquet wkhtmltox : rien à configurer dans Odoo.

1. Installer pdfkiln

Sous Debian et Ubuntu, amd64 et arm64 : le dépôt APT signé installe /usr/bin/wkhtmltopdf, à la place du paquet wkhtmltox, et apporte les correctifs de Chromium avec apt upgrade.

curl -fsS https://apt.pdfkiln.org/pdfkiln-archive-keyring.asc | sudo tee /usr/share/keyrings/pdfkiln-archive-keyring.asc > /dev/null
printf 'Types: deb\nURIs: https://apt.pdfkiln.org\nSuites: stable\nComponents: main\nSigned-By: /usr/share/keyrings/pdfkiln-archive-keyring.asc\n' \
  | sudo tee /etc/apt/sources.list.d/pdfkiln.sources
sudo apt update && sudo apt install pdfkiln

Ailleurs : l’image Docker, les archives et le programme d’installation pour Windows.

2. Brancher Odoo sur pdfkiln

Redémarrez Odoo : il lit la version du programme au démarrage. Puis imprimez un rapport.

3. Vérifier

wkhtmltopdf --version
# wkhtmltopdf 0.12.6 (with patched qt), pdfkiln 1.0.3, Chromium 156.0.8078.73

La réponse commence comme celle de wkhtmltopdf 0.12.6 : les bibliothèques qui lisent la version continuent de fonctionner.

Ce qu’attend Odoo, et ce que fait pdfkiln

  • Odoo prend la version dans la première suite de chiffres et de points de wkhtmltopdf --version : pdfkiln répond wkhtmltopdf 0.12.6 (with patched qt), pdfkiln …, donc Odoo voit 0.12.6.
  • Odoo attend 1 000 ms de JavaScript avant d’imprimer. wkhtmltopdf attend toujours tout ce délai ; pdfkiln s’arrête dès que plus rien ne peut changer la page : 0,99 s de moins sur la facture Odoo de deux pages, sous Ubuntu (intégration continue, 24 octobre 2026).
  • Les en-têtes et pieds de page (--header-html, --footer-html) sont mis en page comme par wkhtmltopdf, marges calculées de la même façon ; les polices web d’une autre origine se chargent dans une page ouverte depuis un fichier, comme avec wkhtmltopdf.

Testé

Les rapports Odoo 17 du corpus de 32 modèles gardent leur nombre de pages face à wkhtmltopdf 0.12.6, et 99,1 % des mots du corpus restent sur la même page (Linux).

Un rendu diffère ? Ouvrez un ticket avec le HTML et les deux PDF : github.com/Jamalofski/pdfkiln/issues. Les différences connues sont listées dans le README.