Vous branchez la boîte info@ sur Odoo pour que les réponses de vos clients arrivent dans les devis. Le lendemain, la personne qui lit cette même boîte dans Gmail ne s’y retrouve plus : tous les e-mails sont marqués comme lus, newsletters et messages personnels compris. Voici pourquoi Odoo fait ça, pourquoi la solution évidente est un piège, et le module gratuit que nous avons publié pour garder les deux.
💡 En bref
Avec Fetchmail Keep Unread, Odoo ne marque comme lus que les e-mails qu’il classe réellement sur un document. Tout le reste reste non lu dans Gmail, Outlook ou votre serveur IMAP. Gratuit, pour Odoo 18, 19 et 20, Community et Enterprise.
1. Odoo lit tout, y compris ce qui ne le concerne pas
Toutes les cinq minutes, Odoo relève les serveurs de messagerie entrants que vous avez configurés. Pour chaque e-mail non lu, il cherche à quel document il appartient : une réponse à un devis, un message pour une piste, un ticket. Puis il le marque comme lu dans la boîte, qu’il l’ait classé ou non.
Pour une boîte dédiée à Odoo, c’est sans conséquence. Pour une boîte partagée, c’est un vrai problème : l’accueil, le gérant ou les bénévoles d’une association qui lisent info@ dans leur messagerie voient la newsletter du fournisseur, l’invitation d’un partenaire ou la facture du fournisseur d’accès passer en « lu » sans les avoir ouvertes. Ce qui n’est pas dans Odoo n’est plus vu par personne.
💡 Le dilemme habituel
Soit Odoo ne relève pas la boîte partagée, et les réponses des clients n’arrivent jamais dans le chatter. Soit on la relève, et la boîte ne se lit plus qu’à travers Odoo. La plupart des équipes choisissent la première option, et perdent le suivi des échanges.
2. La solution évidente, et pourquoi elle casse
L’idée qui vient tout de suite : ne marquer comme lu que ce qu’Odoo a classé, et laisser le reste. C’est ce que nous avons fait dans une première version, et c’est là qu’apparaît le piège. En Odoo 19 et 20, la relève standard reprend tous les non-lus, du plus ancien au plus récent, par lots de 50. Si les e-mails ignorés restent non lus, ils sont relus à chaque passage.
Un calcul tiré du code d’Odoo, sur une boîte qui garde 60 newsletters non lues :
- 288 passages par jour (un toutes les cinq minutes) ;
- à chaque passage, les 50 plus anciens non-lus sont téléchargés et analysés à nouveau, soit 14 400 téléchargements par jour pour les mêmes e-mails ;
- et surtout, la réponse d’un client arrivée après ces 50 n’est jamais atteinte : elle n’entre pas dans Odoo tant que quelqu’un ne vide pas la boîte.
En Odoo 18, il n’y a pas de lot : tous les non-lus sont repris à chaque passage. Les réponses passent, mais les 60 newsletters sont téléchargées 288 fois par jour.
💡 À lire comme un calcul, pas comme une mesure
Ces chiffres découlent de la fréquence et de la taille de lot du standard (5 minutes, 50 e-mails), vérifiées dans le code d’Odoo 18, 19 et 20. Le volume réel dépend de votre boîte ; le mécanisme, lui, est toujours le même.
3. Le module : chaque e-mail examiné une seule fois
Fetchmail Keep Unread s’active serveur par serveur, avec un interrupteur dans la fiche du serveur entrant, sous Actions à effectuer à l’arrivée des e-mails. Une fois activé :
- un e-mail n’est marqué comme lu que si Odoo a créé ou mis à jour un enregistrement avec lui ;
- tous les autres restent non lus, comme si Odoo n’était pas passé ;
- Odoo retient le dernier e-mail examiné (son numéro IMAP, l’UID) : un e-mail ignoré n’est plus jamais téléchargé, et une réponse récente ne reste jamais bloquée derrière lui ;
- le contenu est lu sans poser le drapeau « lu », et les e-mails classés sont marqués en une seule commande par passage.
Il fonctionne avec Gmail, Outlook et tout serveur IMAP. Les serveurs sans l’option gardent le comportement standard d’Odoo. Le module est testé sur Odoo 18, 19 et 20, avec un faux serveur IMAP et le vrai routage d’Odoo : une réponse à un document est classée et marquée lue, une newsletter et un doublon restent non lus.
💡 À retenir
Les 60 newsletters de l’exemple sont téléchargées une fois, pas 14 400 fois par jour. Et la boîte partagée se lit à nouveau normalement, avec Odoo en arrière-plan.
4. Les compromis, assumés
Trois choix méritent d’être connus avant d’installer :
- Au premier passage, seuls les non-lus des deux derniers jours sont examinés. Les plus anciens restent tels quels, non lus. C’est voulu : brancher Odoo sur une boîte qui contient des années de non-lus ne doit pas les faire entrer d’un coup.
- Un e-mail dont le traitement échoue n’est pas réessayé. Il reste non lu dans la boîte et l’erreur est journalisée ; il ne bloque jamais les suivants.
- Odoo télécharge toujours chaque nouvel e-mail une fois, pour savoir s’il appartient à un document. Le module ne change pas ce qu’Odoo voit, seulement ce qu’il marque comme lu. Les serveurs POP, qui n’ont pas de drapeau « lu », ne sont pas concernés.
💡 Le vrai sujet derrière ce module
Le paramétrage de la messagerie décide de ce que vos équipes voient, dans Odoo comme dans leur boîte. C’est un point que nous passons en revue lors d’un audit de votre Odoo, au même titre que les alias et les règles de routage.
⚔️ Le Match : Odoo standard vs module Kameos
| Critère | Odoo standard | Fetchmail Keep Unread |
|---|---|---|
| Newsletter, e-mail personnel | Marqué comme lu | Reste non lu |
| Réponse à un devis, nouvelle piste | Classée, marquée lue | Classée, marquée lue |
| E-mail ignoré, au passage suivant | Marqué lu, donc plus relu | Non lu, et jamais relu |
| Boîte lue aussi hors d’Odoo | Inutilisable | Normale |
| Serveurs concernés | Tous | Ceux où vous l’activez |
Comportements vérifiés dans le code d’Odoo 18, 19 et 20 et par les tests automatiques du module.
🛒 Sur l’App Store Odoo
Fetchmail Keep Unread est gratuit, sous licence LGPL-3, traduit en français, néerlandais, espagnol et allemand : voir le module sur l’Odoo Apps Store ou sa présentation sur notre site.
Le Verdict : Odoo dans la boîte partagée, sans prendre la boîte en otage
Une boîte partagée peut alimenter Odoo et rester lisible pour ceux qui la consultent ailleurs : il suffit
qu’Odoo ne marque comme lu que ce qu’il classe, et qu’il n’examine chaque e-mail qu’une fois.
Votre équipe, ou vos bénévoles, travaillent sur une même adresse ? Nous vous aidons à la brancher sur Odoo
proprement, et à
former vos utilisateurs
à travailler depuis le chatter. Pour les associations, voir aussi notre accompagnement
Odoo pour les ASBL.
Vous branchez la boîte info@ sur Odoo pour que les réponses de vos clients arrivent dans les devis. Le lendemain, la personne qui lit cette même boîte dans Gmail ne s’y retrouve plus : tous les e-mails sont marqués comme lus, newsletters et messages personnels compris. Voici pourquoi Odoo fait ça, pourquoi la solution évidente est un piège, et le module gratuit que nous avons publié pour garder les deux.
💡 En bref
Avec Fetchmail Keep Unread, Odoo ne marque comme lus que les e-mails qu’il classe réellement sur un document. Tout le reste reste non lu dans Gmail, Outlook ou votre serveur IMAP. Gratuit, pour Odoo 18, 19 et 20, Community et Enterprise.
1. Odoo lit tout, y compris ce qui ne le concerne pas
Toutes les cinq minutes, Odoo relève les serveurs de messagerie entrants que vous avez configurés. Pour chaque e-mail non lu, il cherche à quel document il appartient : une réponse à un devis, un message pour une piste, un ticket. Puis il le marque comme lu dans la boîte, qu’il l’ait classé ou non.
Pour une boîte dédiée à Odoo, c’est sans conséquence. Pour une boîte partagée, c’est un vrai problème : l’accueil, le gérant ou les bénévoles d’une association qui lisent info@ dans leur messagerie voient la newsletter du fournisseur, l’invitation d’un partenaire ou la facture du fournisseur d’accès passer en « lu » sans les avoir ouvertes. Ce qui n’est pas dans Odoo n’est plus vu par personne.
💡 Le dilemme habituel
Soit Odoo ne relève pas la boîte partagée, et les réponses des clients n’arrivent jamais dans le chatter. Soit on la relève, et la boîte ne se lit plus qu’à travers Odoo. La plupart des équipes choisissent la première option, et perdent le suivi des échanges.
2. La solution évidente, et pourquoi elle casse
L’idée qui vient tout de suite : ne marquer comme lu que ce qu’Odoo a classé, et laisser le reste. C’est ce que nous avons fait dans une première version, et c’est là qu’apparaît le piège. En Odoo 19 et 20, la relève standard reprend tous les non-lus, du plus ancien au plus récent, par lots de 50. Si les e-mails ignorés restent non lus, ils sont relus à chaque passage.
Un calcul tiré du code d’Odoo, sur une boîte qui garde 60 newsletters non lues :
- 288 passages par jour (un toutes les cinq minutes) ;
- à chaque passage, les 50 plus anciens non-lus sont téléchargés et analysés à nouveau, soit 14 400 téléchargements par jour pour les mêmes e-mails ;
- et surtout, la réponse d’un client arrivée après ces 50 n’est jamais atteinte : elle n’entre pas dans Odoo tant que quelqu’un ne vide pas la boîte.
En Odoo 18, il n’y a pas de lot : tous les non-lus sont repris à chaque passage. Les réponses passent, mais les 60 newsletters sont téléchargées 288 fois par jour.
💡 À lire comme un calcul, pas comme une mesure
Ces chiffres découlent de la fréquence et de la taille de lot du standard (5 minutes, 50 e-mails), vérifiées dans le code d’Odoo 18, 19 et 20. Le volume réel dépend de votre boîte ; le mécanisme, lui, est toujours le même.
3. Le module : chaque e-mail examiné une seule fois
Fetchmail Keep Unread s’active serveur par serveur, avec un interrupteur dans la fiche du serveur entrant, sous Actions à effectuer à l’arrivée des e-mails. Une fois activé :
- un e-mail n’est marqué comme lu que si Odoo a créé ou mis à jour un enregistrement avec lui ;
- tous les autres restent non lus, comme si Odoo n’était pas passé ;
- Odoo retient le dernier e-mail examiné (son numéro IMAP, l’UID) : un e-mail ignoré n’est plus jamais téléchargé, et une réponse récente ne reste jamais bloquée derrière lui ;
- le contenu est lu sans poser le drapeau « lu », et les e-mails classés sont marqués en une seule commande par passage.
Il fonctionne avec Gmail, Outlook et tout serveur IMAP. Les serveurs sans l’option gardent le comportement standard d’Odoo. Le module est testé sur Odoo 18, 19 et 20, avec un faux serveur IMAP et le vrai routage d’Odoo : une réponse à un document est classée et marquée lue, une newsletter et un doublon restent non lus.
💡 À retenir
Les 60 newsletters de l’exemple sont téléchargées une fois, pas 14 400 fois par jour. Et la boîte partagée se lit à nouveau normalement, avec Odoo en arrière-plan.
4. Les compromis, assumés
Trois choix méritent d’être connus avant d’installer :
- Au premier passage, seuls les non-lus des deux derniers jours sont examinés. Les plus anciens restent tels quels, non lus. C’est voulu : brancher Odoo sur une boîte qui contient des années de non-lus ne doit pas les faire entrer d’un coup.
- Un e-mail dont le traitement échoue n’est pas réessayé. Il reste non lu dans la boîte et l’erreur est journalisée ; il ne bloque jamais les suivants.
- Odoo télécharge toujours chaque nouvel e-mail une fois, pour savoir s’il appartient à un document. Le module ne change pas ce qu’Odoo voit, seulement ce qu’il marque comme lu. Les serveurs POP, qui n’ont pas de drapeau « lu », ne sont pas concernés.
💡 Le vrai sujet derrière ce module
Le paramétrage de la messagerie décide de ce que vos équipes voient, dans Odoo comme dans leur boîte. C’est un point que nous passons en revue lors d’un audit de votre Odoo, au même titre que les alias et les règles de routage.
⚔️ Le Match : Odoo standard vs module Kameos
| Critère | Odoo standard | Fetchmail Keep Unread |
|---|---|---|
| Newsletter, e-mail personnel | Marqué comme lu | Reste non lu |
| Réponse à un devis, nouvelle piste | Classée, marquée lue | Classée, marquée lue |
| E-mail ignoré, au passage suivant | Marqué lu, donc plus relu | Non lu, et jamais relu |
| Boîte lue aussi hors d’Odoo | Inutilisable | Normale |
| Serveurs concernés | Tous | Ceux où vous l’activez |
Comportements vérifiés dans le code d’Odoo 18, 19 et 20 et par les tests automatiques du module.
🛒 Sur l’App Store Odoo
Fetchmail Keep Unread est gratuit, sous licence LGPL-3, traduit en français, néerlandais, espagnol et allemand : voir le module sur l’Odoo Apps Store ou sa présentation sur notre site.
Le Verdict : Odoo dans la boîte partagée, sans prendre la boîte en otage
Une boîte partagée peut alimenter Odoo et rester lisible pour ceux qui la consultent ailleurs : il suffit
qu’Odoo ne marque comme lu que ce qu’il classe, et qu’il n’examine chaque e-mail qu’une fois.
Votre équipe, ou vos bénévoles, travaillent sur une même adresse ? Nous vous aidons à la brancher sur Odoo
proprement, et à
former vos utilisateurs
à travailler depuis le chatter. Pour les associations, voir aussi notre accompagnement
Odoo pour les ASBL.