Des factures en PDF non cherchables, des contrats scannés quelque part dans un dossier, des notes papier empilement depuis des années — retrouver un document précis dans ce chaos prend du temps et finit souvent par échouer. Paperless-ngx, disponible sur GitHub avec plus de 24 000 étoiles, est la réponse open source à ce problème : un système de gestion documentaire self-hosted qui scanne, OCRise, indexe et archive tous vos documents en une archive consultable et cherchable. Vous y déposez un document, il fait le reste.
Ce que paperless-ngx fait automatiquement
Le principe central est simple : un dossier consume surveillé en permanence. Tout fichier que vous y déposez — PDF, image JPEG ou PNG, document Office — est automatiquement pris en charge par le pipeline. L'OCR (Tesseract) extrait le texte de chaque document, même les scans de mauvaise qualité, et l'intègre dans l'index de recherche. En quelques secondes à quelques minutes selon la taille, votre document est cherchable par son contenu complet.
Le système de classification automatique par machine learning est l'un des points les plus appréciés de la communauté. Paperless-ngx apprend de vos habitudes de classement : si vous assignez systématiquement le tag "facture" et le correspondant "EDF" aux factures d'électricité, il commence à le faire seul après quelques exemples. Il détecte et suggère automatiquement le correspondant (expéditeur), le type de document et la date. Plus vous l'utilisez, plus il devient précis.
L'architecture technique
Paperless-ngx est une application Python/Django avec un backend Redis pour la file de traitement et une base de données PostgreSQL (ou SQLite pour les petites installations). L'interface web moderne est en Angular. Le tout se déploie en une commande via Docker Compose — c'est la méthode recommandée et la plus simple.
Le moteur OCR est Tesseract, configurable en plusieurs langues simultanément — par défaut anglais, mais le français, l'allemand et d'autres langues s'ajoutent avec `tesseract-ocr-fra`. Pour les documents PDF natifs (non scannés), le texte est extrait directement sans passer par OCR. Apache Tika gère l'extraction de métadonnées des fichiers Office. La détection de codes-barres via `libzbar` permet de lire et d'assigner automatiquement des numéros d'archive sur les documents physiques.
Comment y faire entrer vos documents
Paperless-ngx supporte plusieurs modes d'entrée. Le plus élégant est le scanner réseau configuré pour envoyer directement dans le dossier consume via un partage Samba — vous posez le document sur le scanner, appuyez sur le bouton, et il apparaît dans votre archive quelques minutes plus tard. Pour les documents email, une intégration IMAP surveille une boîte mail dédiée et importe automatiquement les pièces jointes. L'upload manuel via l'interface web ou l'application mobile (des apps tierces iOS et Android sont disponibles) complète l'arsenal. Pour un import massif d'archives existantes, il suffit de copier les fichiers dans le dossier consume.
La recherche : le véritable superpouvoir
Une fois vos documents indexés, la recherche full-text fonctionne sur le contenu complet de chaque document — pas seulement le nom de fichier. Vous cherchez "loyer mars 2024" et vous obtenez tous les documents qui contiennent ces termes, qu'il s'agisse d'une quittance, d'un virement ou d'un contrat. La recherche supporte des filtres avancés : par correspondant, par type, par date, par tag, par contenu. Des requêtes ASN (Archive Serial Number) permettent de retrouver un document physique depuis son numéro de code-barre imprimé.
Paperless-ngx expose une API REST complète qui permet d'intégrer l'archive documentaire dans des workflows automatiques — avec Home Assistant, n8n, ou tout outil capable d'appeler une API.
Pourquoi le choisir plutôt qu'une solution cloud
La réponse courte : vos documents restent chez vous. Contrats, bulletins de paie, relevés bancaires, documents médicaux — ce sont précisément les types de fichiers que paperless-ngx gère, et précisément ceux qu'on ne veut pas sur des serveurs tiers. Pas d'abonnement mensuel, pas de limite de stockage, pas de dépendance à un service qui peut fermer ou changer ses conditions. Pour une installation minimale fonctionnelle sur un Raspberry Pi 4 (4 Go de RAM recommandés pour l'OCR) ou un NAS compatible Docker, le coût marginal est nul. Paperless-ngx est disponible sur GitHub, AGPLv3, avec une démo accessible sur demo.paperless-ngx.com (login : demo / demo).