Chaque mois, votre équipe comptable passe des heures à traiter les factures fournisseurs : ouvrir les emails, télécharger les PDF, extraire les montants, les saisir dans votre ERP ou tableur.
Et si ce processus était entièrement automatisé ? Dans ce guide, nous allons construire un "contrôleur de gestion automatique" avec n8n qui traite vos factures en temps réel, 24/7.
Ce que nous allons construire
À la fin de ce tutoriel, vous aurez un workflow n8n qui :
- Surveille une boîte email ([email protected]) en temps réel
- Détecte les factures dans les pièces jointes (PDF, images)
- Extrait automatiquement les données clés : fournisseur, montant HT, TVA, date, numéro de facture
- Classe et archive les factures dans Google Drive ou votre stockage
- Alimente un tableau de suivi (Google Sheets, Airtable, ou votre ERP)
- Alerte votre équipe pour les factures qui nécessitent une validation manuelle
Prérequis
- • Une instance n8n (cloud ou self-hosted)
- • Un compte email dédié aux factures (Gmail, Outlook, ou IMAP)
- • Un compte Google (pour Drive et Sheets) ou équivalent
- • Optionnel : Une clé API OpenAI ou Claude pour l'extraction IA
Besoin d'aide pour implémenter ce workflow ?
Nous pouvons déployer ce système chez vous en moins de 2 semaines, adapté à vos outils.
Demander un devis →Architecture du workflow
Voici le schéma du workflow complet :
┌─────────────┐ ┌──────────────┐ ┌─────────────────┐
│ Email │───▶│ Filtrage │───▶│ Extraction │
│ (Trigger) │ │ Factures │ │ Pièces Jointes│
└─────────────┘ └──────────────┘ └─────────────────┘
│
▼
┌─────────────┐ ┌──────────────┐ ┌─────────────────┐
│ Alerte │◀───│ Validation │◀───│ OCR / IA │
│ Slack │ │ Données │ │ Extraction │
└─────────────┘ └──────────────┘ └─────────────────┘
│
▼
┌──────────────────────┐
│ Stockage & Export │
│ (Drive + Sheets) │
└──────────────────────┘
Étape 1 : Configurer le trigger email
Commencez par créer un nouveau workflow dans n8n et ajoutez un nœud Email Trigger (IMAP) ou Gmail Trigger selon votre fournisseur.
Configuration Gmail
Paramètres du nœud Gmail Trigger :
- Poll Times : Every 5 minutes (ou webhook pour temps réel)
- Filters :
has:attachment filename:pdf - Options : Download Attachments = true
Astuce Pro : Créez une adresse email dédiée (facturation@...) et demandez à vos fournisseurs d'y envoyer leurs factures. Cela simplifie le filtrage.
Étape 2 : Filtrer les emails contenant des factures
Tous les emails avec PDF ne sont pas des factures. Ajoutez un nœud IF pour filtrer :
// Condition du nœud IF
{{ $json.subject.toLowerCase().includes('facture')
|| $json.subject.toLowerCase().includes('invoice')
|| $json.from.email.includes('comptabilite')
|| $json.from.email.includes('billing') }}
Cette condition laisse passer les emails dont le sujet contient "facture" ou "invoice", ou provenant d'adresses comptabilité.
Étape 3 : Extraire les données avec l'IA
C'est la partie magique. Nous allons utiliser l'IA (GPT-4 ou Claude) pour extraire les informations structurées de la facture.
Option A : Extraction via OpenAI Vision
Si vos factures sont des images ou des PDF scannés, utilisez GPT-4 Vision :
// Nœud OpenAI - Paramètres
Model: gpt-4-vision-preview
Message:
"Analyse cette facture et extrais les informations suivantes en JSON :
- nom_fournisseur
- numero_facture
- date_facture (format YYYY-MM-DD)
- montant_ht
- tva
- montant_ttc
- devise
Réponds UNIQUEMENT avec le JSON, sans commentaire."
Option B : Extraction via Claude (Anthropic)
Claude est excellent pour l'extraction structurée. Utilisez le nœud HTTP Request :
// HTTP Request vers Claude API
POST https://api.anthropic.com/v1/messages
Headers:
x-api-key: YOUR_API_KEY
anthropic-version: 2023-06-01
Body:
{
"model": "claude-3-5-sonnet-20241022",
"max_tokens": 1024,
"messages": [{
"role": "user",
"content": [
{"type": "image", "source": {"type": "base64", "data": "{{$binary.data}}"}},
{"type": "text", "text": "Extrais les données de cette facture en JSON..."}
]
}]
}
Étape 4 : Valider et nettoyer les données
L'IA peut parfois se tromper. Ajoutez un nœud Code pour valider :
// Nœud Code - Validation des données extraites
const data = $input.first().json;
// Parse le JSON de l'IA
let facture;
try {
facture = JSON.parse(data.content);
} catch (e) {
return { error: "JSON invalide", raw: data.content };
}
// Validation
const isValid =
facture.montant_ttc > 0 &&
facture.date_facture.match(/\d{4}-\d{2}-\d{2}/) &&
facture.nom_fournisseur.length > 2;
return {
...facture,
validation_status: isValid ? "OK" : "REVIEW_NEEDED",
processed_at: new Date().toISOString()
};
Étape 5 : Archiver dans Google Drive
Créez une structure de dossiers organisée par année/mois/fournisseur :
Structure de dossiers :
Factures/
├── 2026/
│ ├── 01-Janvier/
│ │ ├── Amazon/
│ │ ├── OVH/
│ │ └── ...
│ ├── 02-Février/
│ └── ...
└── A_VALIDER/
Utilisez le nœud Google Drive avec ces paramètres :
// Nœud Google Drive - Upload
Operation: Upload
File Name: {{ $json.numero_facture }}_{{ $json.nom_fournisseur }}.pdf
Parent Folder:
{{ $json.validation_status === "OK"
? "Factures/" + $now.format('YYYY') + "/" + $now.format('MM-MMMM') + "/" + $json.nom_fournisseur
: "Factures/A_VALIDER" }}
Étape 6 : Alimenter le tableau de suivi
Ajoutez chaque facture dans Google Sheets ou Airtable pour le suivi :
Colonnes du tableau :
| A | Date réception |
| B | Fournisseur |
| C | N° Facture |
| D | Date facture |
| E | Montant HT |
| F | TVA |
| G | Montant TTC |
| H | Statut |
| I | Lien Drive |
Étape 7 : Alerter pour validation manuelle
Pour les factures qui nécessitent une vérification, envoyez une alerte Slack ou email :
// Nœud Slack - Message d'alerte
Channel: #comptabilite
Message:
"⚠️ Nouvelle facture à valider
Fournisseur: {{ $json.nom_fournisseur }}
Montant: {{ $json.montant_ttc }} {{ $json.devise }}
Date: {{ $json.date_facture }}
👉 Voir dans Drive: {{ $json.drive_link }}
Répondre avec ✅ pour valider ou ❌ pour rejeter."
Résultats attendus
Temps de traitement des factures
Traitement continu, même la nuit
Factures perdues ou oubliées
Pour aller plus loin
Ce workflow de base peut être étendu avec :
- Intégration ERP : Envoi automatique vers Sage, Odoo, ou Pennylane
- Détection de doublons : Vérification si la facture existe déjà
- Rapprochement bancaire : Lien avec les transactions bancaires
- Reporting automatique : Dashboard mensuel des dépenses par fournisseur
- Approbation workflow : Circuit de validation multi-niveaux
Conclusion
Avec n8n et l'IA, vous pouvez transformer la gestion des factures fournisseurs d'une corvée manuelle en un processus entièrement automatisé. Le "contrôleur de gestion automatique" ne dort jamais, ne fait pas d'erreurs de saisie, et vous alerte uniquement quand c'est nécessaire.
C'est ça, l'automatisation intelligente au service des PME.
Vous voulez ce workflow chez vous ?
Nous déployons des automatisations n8n sur mesure pour les PME. Discutons de votre cas.