Configurer les e-mails avec Office 365 et OAuth2 dans Dolibarr


Pour configurer les e-mails avec Office 365 et OAuth2 dans Dolibarr, voici la procédure étape par étape à suivre depuis l’interface utilisateur.

Cette configuration se fait en quatre temps : la préparation sur le portail Azure, l’autorisation du service chez Microsoft, la configuration du module OAuth dans Dolibarr, et enfin le paramétrage des e-mails.

1 . Prérequis : Inscription de l’application sur le Portail Azure

Pour obtenir les identifiants nécessaires (Client ID, Client Secret, Tenant ID), vous devez créer une « Inscription d’application » dans le portail Azure (Microsoft Entra ID).

  1. Accéder au Portail Azure : Connectez-vous sur portal.azure.com (https://portal.azure.com/).
  2. Créer l’application : Cherchez « Inscriptions d’applications » > + Nouvelle inscription.
    • Nom : Dolibarr OAuth.
    • Types de comptes : « Comptes dans cet annuaire organisationnel uniquement ».
    • URI de redirection : Sélectionnez Web et laissez vide (nous le remplirons à l’étape 2).
  3. Récupérer les Identifiants : Dans la page « Vue d’ensemble », copiez l’ID d’application (client) et l’ID de l’annuaire (locataire).
  4. Créer le Secret Client : Menu « Certificats et secrets » > + Nouveau secret client. Copiez immédiatement la Valeur du secret (et non l’ID du secret).
  5. Configurer les Permissions (API) : Étape cruciale pour l’envoi.
    • Cliquez sur « Autorisations de l’API » > « + Ajouter une autorisation » > « Microsoft Graph » > « Autorisations déléguées ».
    • Cochez : SMTP.Send, IMAP.AccessAsUser.All, User.Read et offline_access (Indispensable pour permettre à Dolibarr de renouveler le token automatiquement).
    • IMPORTANT : Cliquez sur « Accorder un consentement d’administrateur pour… » et validez. Le statut doit passer au vert.

2. Prérequis : Activer le SMTP Authentifié (Admin Microsoft 365)

Microsoft désactive souvent le SMTP par défaut. Sans cette étape, l’authentification échouera (Erreur 535).

  1. Connectez-vous au Centre d’administration Microsoft 365 (admin.microsoft.com).
  2. Allez dans Utilisateurs > Utilisateurs actifs et sélectionnez le compte email concerné.
  3. Onglet Courrier > Gérer les applications de courrier.
  4. Cochez la case SMTP authentifié et enregistrez.

3. Configuration dans Dolibarr

A. Activer le module OAuth

  1. Allez dans Accueil > Configuration > Modules.
  2. Recherchez le module OAuth et activez-le.

B. Configurer le service OAuth (Microsoft)

  1. Allez dans Accueil > Configuration > OAuth > Onglet Services OAuth.
  2. Ajoutez une nouvelle entrée :
    • Fournisseur : Microsoft [outlook.office365].
    • ID Client / Secret / Locataire : Collez les valeurs copiées à l’étape 1.
    • Scopes (Etendues) : Assurez-vous d’inclure offline_access.
  3. URL de redirection : Copiez l’URL affichée par Dolibarr et retournez l’ajouter dans la section « Authentification » de votre application sur le portail Azure.

C. Générer le jeton (Token)

  1. Allez dans l’onglet Jeton d’accès.
  2. Cliquez sur Générer le jeton (ou « Grant access »). Connectez-vous avec le compte email de l’étape 2.
  3. Vérification : Une fois revenu dans Dolibarr, vérifiez le jeton. Le champ refreshToken ne doit pas être à null. S’il est à null, vérifiez que offline_access est bien présent dans Azure et dans les Scopes Dolibarr.

4. Paramétrage des E-mails

  1. Allez dans Accueil > Configuration > E-mails.
  2. Méthode d’envoi : Choisissez Swift Mailer (recommandé pour une meilleure gestion du TLS avec Office 365).
  3. Configuration SMTP :
    • Serveur : smtp.office365.com
    • Port : 587
    • ID SMTP (Login) : Votre adresse email complète.
    • Utiliser le chiffrement TLS (STARTTLS) : Oui.
  4. Utiliser OAuth (XOAUTH2) :
    • Cochez Oui / XOAUTH2.
    • Service OAuth : Sélectionnez le service créé à l’étape 3 (ex: Office365).
  5. Enregistrez.

Test

Sur la page de configuration des e-mails et utilisez la section Tester la disponibilité du serveur (en bas de page) pour envoyer un e-mail de test et confirmer que tout fonctionne.

Pour obtenir les identifiants nécessaires (Client ID, Client Secret, Tenant ID) depuis Office 365, vous devez créer une « Inscription d’application » dans le portail Azure (Microsoft Entra ID)