MULTISMTP
Permet la configuration de comptes e-mails par utilisateurs.
- 01. PRÉSENTATION GÉNÉRALE
- 02. PRÉREQUIS ET INSTALLATION
- 03. CONFIGURATION DU MODULE
- 04. UTILISATION
- 05. ACTION AUTOMATIQUEMENT
- 06. ONGLET "SMTP2GO"
01. PRÉSENTATION GÉNÉRALE
MultiSmtp
Le module Multismtp permet à chaque utilisateur de Dolibarr d'envoyer et de recevoir ses e-mails avec sa propre adresse et ses propres identifiants, au lieu d'utiliser systématiquement le compte e-mail unique configuré au niveau de tout le logiciel.
Concrètement, le module ajoute deux fonctions indépendantes, que l'administrateur peut activer séparément :
- La fonction SMTP : qui permet à chaque utilisateur de configurer son propre compte d'envoi. Les e-mails partent alors avec l'adresse et le serveur de cet utilisateur, plutôt qu'avec l'adresse générique de la société.
- La fonction IMAP : qui permet de recopier automatiquement, dans la boîte aux lettres personnelle de l'utilisateur, une copie de chaque e-mail envoyé depuis Dolibarr. L'utilisateur retrouve ainsi ses envois Dolibarr dans le dossier « Envoyés » de sa messagerie habituelle, comme s'il les avait envoyés directement depuis son client mail.
Le module ajoute également, sur cette instance, un onglet complémentaire « SMTP2GO » dans sa page d'administration, qui permet de gérer directement depuis Dolibarr les comptes SMTP fournis par le service d'envoi SMTP2GO.
Principe de fonctionnement :
Le module ne modifie pas la façon dont Dolibarr envoie ses e-mails : il se contente de remplacer, juste avant chaque envoi, les identifiants globaux de connexion (serveur, port, identifiant, mot de passe) par ceux enregistrés pour l'utilisateur actuellement connecté. Si aucun identifiant n'a été renseigné pour un utilisateur, c'est la configuration générale de Dolibarr qui continue à s'appliquer pour lui.
Ce remplacement est totalement transparent pour l'utilisateur :
- Il compose et envoie ses e-mails de la même manière qu'avant, depuis les mêmes écrans de Dolibarr (fiche client, facture, devis, etc.).
- Il n'a besoin de se rendre que sur une seule page pour renseigner ses identifiants, une fois pour toutes : l'onglet « Email » de sa fiche utilisateur.
02. PRÉREQUIS ET INSTALLATION
Pré-requis avant activation
Avant d'activer le module, l'administrateur doit vérifier les points suivants :
- L'envoi d'e-mails ne doit pas être désactivé dans Dolibarr (paramètre « Envoi désactivé » dans Accueil > Configuration > E-Mails).
- Le mode d'envoi choisi dans Dolibarr doit être « SMTP/SMTPS socket library » et non la fonction native « mail() » de PHP. Sans ce réglage, la fonction SMTP du module ne peut pas s'appliquer, quelle que soit sa configuration. Ce réglage se trouve dans Accueil > Configuration > E-Mails.
- Pour la fonction IMAP : le serveur doit disposer soit de l'extension PHP « imap », soit de la bibliothèque PHP-IMAP (Webklex), activable dans la page de configuration du module. Sans l'une des deux, la fonction IMAP reste indisponible et l'interface l'indique clairement.
- Pour utiliser une connexion chiffrée (TLS ou STARTTLS) : l'extension PHP « openssl » doit être présente sur le serveur.
- Pour que le module fonctionne correctement : la constante système MAIN_ACTIVATE_UPDATESESSIONTRIGGER doit être activée. Elle est créée automatiquement lors de l'activation du module ; si un message d'avertissement apparaît malgré tout sur la page de configuration, cela signifie que cette constante a été supprimée ou désactivée par ailleurs.
03. CONFIGURATION DU MODULE
Configuration par l'administrateur
Accéder à la page de configuration
La configuration du module se fait depuis :
Accueil > Configuration > Modules > Multismtp > Configurer
Ou directement à l'adresse : /custom/multismtp/admin/setup.php. La page est organisée en plusieurs blocs, décrits ci-dessous.
Section SMTP
Cette section affiche d'abord deux avertissements possibles, à corriger avant toute activation :
- Un avertissement si l'envoi d'e-mails est complètement désactivé dans Dolibarr, avec un lien direct pour le réactiver.
- Un avertissement si le mode d'envoi n'est pas réglé sur « SMTP/SMTPS socket library », avec un lien direct vers la page de configuration générale des e-mails pour corriger ce point.
Une fois ces avertissements résolus, trois réglages sont disponibles, sous la forme d'un interrupteur cliquable (icône verte = activé, icône grise = désactivé) :
- « Activer la fonction SMTP » : active ou désactive entièrement la possibilité, pour les utilisateurs, de configurer leur propre compte d'envoi. Désactiver ce réglage supprime au passage tous les identifiants SMTP déjà enregistrés pour l'ensemble des utilisateurs.
- « Utiliser MultiSMTP seulement pour les envois depuis des formulaires email (pas pour des envois automatisés) » : lorsque ce réglage est activé, les identifiants personnels de l'utilisateur ne sont utilisés que lorsqu'il envoie lui-même un e-mail depuis un formulaire Dolibarr (par exemple en envoyant une facture par e-mail). Les envois automatiques du logiciel (notifications, relances programmées, etc.) continuent quant à eux d'utiliser le compte d'envoi général de la société.
- « Autoriser les utilisateurs à configurer un autre serveur e-mail » : par défaut, les utilisateurs ne peuvent renseigner que leur identifiant et leur mot de passe, mais doivent obligatoirement envoyer leurs e-mails par le même serveur que celui de la configuration générale, pour des raisons de sécurité. Activer ce réglage autorise chaque utilisateur à indiquer également son propre serveur, son port, le chiffrement TLS ou STARTTLS, la méthode d'authentification, et le cas échéant sa propre configuration OAuth2.
Section IMAP
Cette section commence par un réglage préalable :
- « MAIN_IMAP_USE_PHPIMAP » : active l'utilisation de la bibliothèque PHP-IMAP (Webklex) à la place de l'extension PHP native. Ce choix est obligatoire pour pouvoir utiliser l'authentification OAuth2 côté IMAP ; il n'est pas nécessaire si seule une authentification par mot de passe est prévue.
- « Activer la fonction IMAP » : rend disponible, pour les utilisateurs, la copie automatique de leurs e-mails envoyés vers leur propre boîte aux lettres. Si aucune des deux bibliothèques IMAP n'est disponible sur le serveur, ce réglage est grisé et un message « Non disponible » s'affiche à la place.
Lorsque la fonction IMAP est disponible, un bloc « Forcer la configuration du serveur IMAP » apparaît, avec les réglages suivants :
- « Ne pas valider le certificat SSL » : à activer uniquement si le serveur IMAP utilise un certificat auto-signé (non reconnu par une autorité de certification publique). Dans le cas contraire, laisser ce réglage désactivé pour conserver la vérification normale du certificat.
- Un champ « Hôte » et un champ « Port » : s'ils sont renseignés, tous les utilisateurs utilisent obligatoirement ce serveur et ce port pour leur IMAP, et ne peuvent plus les modifier depuis leur propre fiche. Ils n'auront alors plus qu'à renseigner leur identifiant, leur mot de passe et le dossier de destination des e-mails.
- « Utiliser le chiffrement SSL » : impose ou non le chiffrement SSL sur ce serveur IMAP commun.
- « Méthode d'authentification » : impose soit une authentification par mot de passe (« LOGIN »), soit une authentification OAuth2 (« XOAUTH2 », disponible uniquement si la bibliothèque PHP-IMAP est activée et si la version de Dolibarr le permet).
- « Service d'authentification OAUTH2 » : si la méthode d'authentification ci-dessus est réglée sur OAuth2, ce champ permet d'imposer à tous les utilisateurs le même service OAuth2 pré-enregistré dans Dolibarr (menu Administration > OAuth). Ce champ ne s'affiche que lorsque la méthode d'authentification OAuth2 est sélectionnée.
Section Cron / OAuth2
Cette section ne comporte qu'un seul réglage :
- « Nombre de jours après expiration pour rafraîchir les tokens OAuth2 » : cette valeur (30 jours par défaut) définit la marge de tolérance laissée à la tâche planifiée quotidienne avant qu'elle ne tente de renouveler automatiquement un jeton d'accès OAuth2 arrivé à expiration.
Adresse d'expédition
Un réglage supplémentaire, non présent sur la page de configuration ci-dessus et destiné à un usage avancé, peut être activé manuellement par l'administrateur depuis Accueil > Configuration > Autres, en créant la constante suivante :
MULTISMTP_REPLACE_MAIL_EMAIL_FROM = 1
Lorsque cette constante est activée, l'adresse d'expédition affichée dans les e-mails envoyés (le champ « De ») est elle aussi remplacée par l'identifiant SMTP personnel de l'utilisateur, au lieu de rester sur l'adresse générale configurée dans Dolibarr. À utiliser uniquement si l'identifiant SMTP de chaque utilisateur correspond bien à une adresse e-mail valide et destinée à être vue par les destinataires.
04. UTILISATION
Utilisation par chaque utilisateur
Accéder à son onglet Email
Chaque utilisateur retrouve sa configuration sur sa propre fiche, dans un nouvel onglet nommé « Email » :
Accueil > Utilisateurs > (sélectionner l'utilisateur concerné) > Email
Un utilisateur peut toujours consulter et modifier sa propre configuration, à condition de disposer du droit « Utilisateurs & groupes > Lire/Modifier ses informations personnelles ». Un administrateur, ou un utilisateur disposant du droit « Utilisateurs & groupes > Créer/modifier », peut modifier la configuration de n'importe quel autre utilisateur.
Si ni la fonction SMTP ni la fonction IMAP n'ont été activées par l'administrateur, l'onglet affiche uniquement un message d'avertissement invitant à vérifier la configuration du module, avec un lien direct vers la page d'administration pour les utilisateurs qui ont les droits nécessaires.
Configurer l'envoi SMTP avec un mot de passe
Dans le bloc « SMTP », l'utilisateur choisit l'option « Utiliser un mot de passe », puis renseigne :
- Son identifiant SMTP (généralement son adresse e-mail complète).
- Son mot de passe SMTP (un clic sur l'icône en forme d'œil permet d'afficher temporairement le mot de passe saisi, pour vérification).
Si l'administrateur a autorisé le changement de serveur (réglage « Autoriser les utilisateurs à configurer un autre serveur e-mail »), les champs serveur, port, TLS et STARTTLS deviennent également modifiables. Dans le cas contraire, ces champs restent figés sur les valeurs de la configuration générale de Dolibarr et ne sont pas modifiables depuis cet écran.
Configurer l'envoi SMTP avec OAuth2
Cette option n'est proposée que si l'administrateur a autorisé le changement de serveur et si la version de Dolibarr installée le permet (Dolibarr 18 ou supérieur).
L'utilisateur choisit l'option « Utiliser OAuth2 », puis a le choix entre deux façons de procéder :
- Sélectionner, dans la liste déroulante « Service d'authentification OAUTH2 », un service déjà préparé par l'administrateur dans le menu Administration > OAuth de Dolibarr. Dans ce cas, aucun autre champ n'est à renseigner : les paramètres techniques (identifiant, secret, portée d'accès) sont déjà connus de Dolibarr.
- Choisir l'option « Personnalisé » dans cette même liste, pour renseigner ses propres paramètres de connexion. Un formulaire complémentaire se déploie alors automatiquement en fonction du fournisseur sélectionné (Google, Microsoft, GitHub, ou un fournisseur générique) : identifiant client, secret, portée d'accès, et pour Microsoft, l'identifiant de tenant Azure/Office365.
Une fois ces réglages enregistrés, l'utilisateur doit encore autoriser l'accès auprès de son fournisseur de messagerie : voir le paragraphe « Gérer le jeton d'accès OAuth2 ». Tant qu'un jeton d'accès actif existe pour ce compte, les paramètres OAuth2 saisis ici ne sont plus modifiables : il faut d'abord supprimer le jeton existant avant de pouvoir en changer.
Configurer la copie IMAP des e-mails envoyés
Cette section n'apparaît que si l'administrateur a activé la fonction IMAP. Selon que l'administrateur a imposé ou non un serveur IMAP commun à tous les utilisateurs, certains des champs suivants peuvent déjà être remplis et non modifiables :
- Hôte IMAP et port IMAP.
- Chiffrement SSL/TLS (case oui/non).
- Méthode d'authentification : par mot de passe, ou par OAuth2 (l'option OAuth2 n'apparaît que si la bibliothèque PHP-IMAP a été activée par l'administrateur et si la version de Dolibarr le permet : Dolibarr 22 ou supérieur, ou la distribution Easya 2024 ou supérieure).
- Identifiant IMAP et, si l'authentification par mot de passe est choisie, mot de passe IMAP (l'icône en forme d'œil permet également de le vérifier avant enregistrement).
- Si l'authentification OAuth2 est choisie et que l'administrateur n'a pas imposé de service commun : service préenregistré, ou configuration personnalisée par fournisseur.
Une fois enregistrée, cette configuration ne prend effet que si la connexion au serveur IMAP a pu être vérifiée avec succès. En cas d'échec, un message d'avertissement s'affiche, avec le détail de l'erreur retournée par le serveur, ce qui permet de corriger la saisie (mauvais mot de passe, mauvais port, serveur inaccessible, etc.).
Choisir le dossier IMAP de destination
Une fois la connexion IMAP validée, l'utilisateur doit encore indiquer dans quel dossier de sa messagerie les e-mails envoyés depuis Dolibarr doivent être recopiés (habituellement un dossier nommé « Envoyés » ou « Sent »).
Pour cela, sur la ligne « Dossier de stockage des e-mails envoyés », il clique sur l'icône crayon, sélectionne le dossier voulu dans la liste déroulante (qui reprend l'ensemble des dossiers existants sur son compte de messagerie), puis clique sur « Modifier » pour valider ce choix. Cette sélection est indépendante du bouton « Modifier » général de l'onglet et peut être changée à tout moment, même sans repasser en mode édition complet.
Si la liste des dossiers ne peut pas être récupérée (identifiants IMAP incorrects, serveur temporairement inaccessible), un message d'avertissement « Impossible de récupérer la liste des boites mails » s'affiche à la place, accompagné du détail technique de l'erreur.
Gérer le jeton d'accès OAuth2
Cette section n'apparaît que pour les comptes configurés en authentification OAuth2 (SMTP ou IMAP), une fois la configuration enregistrée. Elle indique :
- Si un jeton d'accès a déjà été obtenu (« Oui »/« Non »), et si oui, la date d'obtention.
- Si un jeton de renouvellement (« refresh token ») est disponible, ce qui permet un renouvellement automatique sans nouvelle intervention de l'utilisateur.
- Si le jeton actuel est expiré ou non, et sa date d'expiration exacte (ou « Jamais » pour un jeton qui n'expire pas, ou « Inconnu » si le fournisseur ne communique pas cette information).
Trois actions sont proposées, selon la situation :
- « Obtenir l'accès » : redirige l'utilisateur vers la page d'autorisation du fournisseur choisi (Google, Microsoft, GitHub...), où il doit se connecter avec son compte personnel et accepter que Dolibarr accède à sa messagerie. Une fois l'autorisation donnée, l'utilisateur est automatiquement renvoyé sur sa fiche Dolibarr, jeton en main.
- « Supprimer l'accès » : révoque et supprime le jeton actuellement enregistré dans Dolibarr. Cette action est nécessaire avant de pouvoir modifier les paramètres OAuth2 (fournisseur, identifiant client, portée d'accès) d'un compte déjà configuré.
- Un lien vers la page du fournisseur permettant de vérifier, ou de révoquer soi-même côté fournisseur, les accès accordés aux applications tierces (utile en cas de doute sur les autorisations réellement en place).
05. ACTION AUTOMATIQUEMENT
Ce qui se passe automatiquement
- À chaque envoi d'e-mail depuis Dolibarr par un utilisateur dont la fonction SMTP est configurée, l'e-mail part avec son adresse et ses identifiants personnels, plutôt qu'avec le compte général de la société.
- Si la fonction IMAP est également configurée pour cet utilisateur, une copie de chaque e-mail envoyé (depuis une fiche société, facture, devis, commande, expédition, réception, fiche d'intervention, contact, contrat, ou tout autre document pouvant être envoyé par e-mail depuis Dolibarr) est automatiquement déposée dans le dossier IMAP.
- Chaque jour, une tâche planifiée (visible dans Accueil > Outils > Tâches planifiées, sous le nom « Rafraîchir les tokens OAuth2 expirés ») vérifie l'ensemble des jetons OAuth2 arrivés à expiration, qu'ils appartiennent à ce module ou à d'autres fonctions OAuth2 de Dolibarr, et les renouvelle automatiquement dès que le jeton de renouvellement associé est disponible. Cette tâche est désactivée par défaut à l'installation du module : c'est à l'administrateur de l'activer une fois le module en place.
Un utilisateur dont le jeton n'a pas pu être renouvelé automatiquement (jeton de renouvellement manquant, ou révoqué côté fournisseur) devra alors renouveler lui-même son accès via le bouton « Obtenir l'accès ».
06. ONGLET "SMTP2GO"
Gestion des comptes SMTP2GO
Cette fonctionnalité, spécifique à cette instance, permet de gérer les comptes du service d'envoi SMTP2GO directement depuis l'onglet « SMTP2GO » de la page de configuration du module, sans avoir à se connecter au site de SMTP2GO.
Renseigner la clé d'API
La première étape consiste à renseigner, dans le champ « Clé API SMTP2GO », la clé d'accès fournie par SMTP2GO pour le compte de la société (ou pour un sous-compte). Tant que cette clé n'est pas renseignée, le reste de l'onglet affiche uniquement un message d'avertissement invitant à la saisir.
Créer un utilisateur SMTP
Le bouton « + » situé au-dessus du tableau des utilisateurs SMTP ouvre un formulaire de création. Les champs principaux sont :
- Nom d'utilisateur (entre 5 et 100 caractères).
- Mot de passe : obligatoire à la création, car SMTP2GO ne renvoie jamais un mot de passe généré automatiquement ; il ne pourrait donc pas être enregistré ni réaffiché ensuite. Le bouton « Générer » propose un mot de passe conforme aux exigences de robustesse de SMTP2GO. Ces exigences imposent un minimum de types de caractères différents (minuscules, majuscules, chiffres, caractères spéciaux) ainsi qu'un niveau de complexité minimal, affiché en direct pendant la saisie.
- Description libre.
- Suivi des ouvertures, suivi des clics, archivage des e-mails : cases à cocher optionnelles.
- Limitation d'envoi personnalisée : permet de plafonner le nombre d'e-mails que ce compte SMTP peut envoyer sur une période donnée (par heure, par jour, par semaine ou par mois). Si cette option est laissée désactivée, le compte peut envoyer autant d'e-mails que le permet le forfait SMTP2GO souscrit par la société.
- Pool d'IP dédiées : identifiant numérique d'un pool d'adresses IP dédiées, si la société en a souscrit un chez SMTP2GO.
- Pied de page de désinscription : ajoute automatiquement un lien de désinscription aux e-mails envoyés par ce compte, avec un domaine, un contenu HTML et un contenu texte personnalisables.
- E-mail d'audit : adresse mise en copie cachée (BCC) sur tous les envois de ce compte, à titre de contrôle.
- Notifications de rebond : indique où doivent être renvoyés les e-mails en échec de livraison (à l'expéditeur, ignorés, ou vers une adresse dédiée).
- Lier l'utilisateur SMTP à un utilisateur Dolibarr : champ optionnel qui permet de rattacher ce compte SMTP2GO à la fiche d'un utilisateur Dolibarr précis. Lorsqu'un rattachement est choisi, l'identifiant et le mot de passe SMTP de cet utilisateur, visibles dans son propre onglet Email, sont automatiquement synchronisés et affichés en lecture seule sur sa fiche, avec un renvoi vers cet onglet SMTP2GO pour toute modification ultérieure.
Modifier ou supprimer un utilisateur SMTP
Chaque ligne du tableau des utilisateurs SMTP dispose d'une icône crayon (modifier) et d'une icône corbeille (supprimer) :
- La modification ouvre le même formulaire qu'à la création, déjà rempli avec les valeurs actuelles. Le champ mot de passe peut être laissé vide pour conserver le mot de passe actuel : dans ce cas, aucune modification n'est envoyée à SMTP2GO sur ce point.
- La suppression demande une confirmation explicite avant d'être exécutée, car cette action est irréversible : le compte SMTP2GO correspondant est définitivement supprimé, et le rattachement éventuel à un utilisateur Dolibarr est retiré.
Statistiques d'envoi
En bas de l'onglet, deux blocs affichent des informations en lecture seule, récupérées en direct depuis SMTP2GO :
- La consommation du cycle de facturation en cours (nombre d'e-mails envoyés sur le forfait, taux de rebond, taux de signalement en spam), avec la date de la prochaine réinitialisation du compteur.
- Un graphique d'activité (envois, ouvertures, clics, rebonds) sur un nombre de jours réglable via le champ « Nombre d'événements à récupérer pour les statistiques d'envoi ». Sur une période longue avec un volume d'e-mails important, un message signale que le graphique peut être incomplet pour les jours les plus anciens, l'API de SMTP2GO limitant le nombre d'événements renvoyés en une seule fois.