Intégration des services de messagerie Microsoft 365 dans ioi
Mise à jour le 18 septembre 2026·
Introduction #
Ce tutoriel détaille comment configurer l’intégration entre les services de messagerie Microsoft 365 (Outlook) et le système de messagerie Frappe.
L’authentification est gérée via le standard OAuth 2.0.
Prérequis #
- Version de Frappe : Assurez-vous que votre instance Frappe est mise à jour à la version 15 au minimum.
- Accès à un site HTTPS : Vous devez avoir accès à un site Silicon ioi utilisant le protocole HTTPS.
- Compte Administrateur Global Microsoft 365 : Un compte Microsoft 365 avec des privilèges d’administrateur global est requis.
Compatibilité #
Cette méthodologie a été testée et validée avec la version 15 de Frappe en date du 30 août 2024.
Guide étape par étape #
Suivez les étapes détaillées sur le forum Frappe via ce lien ou référez-vous aux instructions.
→ Consultez également les points de configuration supplémentaires décrits dans la section Configurations Additionnelles.
Portail d’administration Azure #
Dans Azure AD, créez un enregistrement d’application et configurez les permissions, secrets, etc.
Attention
Gardez à l’esprit que cette configuration pourrait avoir un impact sur la sécurité des données.
Enregistrement de l’application #
-
Accédez au portail d’administration Azure.
-
Enregistrements d’applications.
- Créez un nouvel enregistrement.
Info
Ignorez l’URI de redirection pour l’instant ; elle sera configurée plus tard dans ce document.
- Permissions.
Mode SMTP Standard : Ajoutez les permissions à l’application.
Exemple
Permissions requises :
- Microsoft Graph : IMAP.AccessAsUser.All et SMTP.Send
- Office365 Exchange Online : IMAP.AccessAsApp
Mode MS Graph :
Exemple
Après avoir configuré les permissions, sélectionnez-les et accordez le consentement administrateur.
- Entrez l’ID client de l’application dans Silicon ioi.
- Créez vos clés d’authentification (secrets).
Attention
Sauvegardez la valeur du secret (et non l’ID du secret). Elle ne sera plus affichée après cette étape, alors assurez-vous de la conserver pour une utilisation ultérieure.
- Obtenez l’URL de configuration OpenID, qui sera nécessaire dans les étapes suivantes.
Dans Silicon ioi #
Attention
Ouvrir une fenêtre de navigation privée, mode incognito ou InPrivate.
- Créez une application connectée.
- Copiez la valeur de configuration OpenID obtenue plus tôt (.7) et utilisez le bouton
Fetch OpenID Configurationpour récupérer les URLs des points d’accès. Ensuite, renseignez l’ID client (.5) et la valeur du secret (.6).

- Scopes de l’application connectée.
Mode SMTP / IMAP : Ajoutez les scopes suivants :
- https://outlook.office365.com/.default
- offline_access

Mode MS Graph : Ajoutez les scopes suivants :
- https://graph.microsoft.com/.default
- offline_access
- URI de redirection

- Utilisez la valeur de l’URI de redirection (.4) et retournez à l’enregistrement de l’application M365 pour ajouter cette URL sous authentification.
- Connexion de l’application dans Silicon ioi :
→ Merci de bien vérifier que vous êtes dans une fenêtre privée avant de continuer.
→ Dans la nouvelle application connectée, cliquez sur Connect to XXXX.

Attention
Vous devez vous connecter en utilisant le compte administrateur du domaine 365, généralement le même compte utilisé pour configurer Azure Portal.
- Créez un compte email et attribuez le à “l’utilisateur final”.
Attention
Fermez tous les navigateurs ouverts, puis rouvrez la page en navigation privée.\nConnectez-vous ensuite avec l’utilisateur ioi, en utilisant l’adresse e-mail qui sera configurée ici.
Créez le compte avec les informations suivantes :
Mode SMTP-IMAP :
Créez un domaine de messagerie, puis configurez le compte email.

Configuration du compte de messagerie
(Mode SMTP – IMAP)

(Mode MS Graph)
Créez le compte uniquement avec ces informations.
Exemple
Après l’enregistrement du document, vous devriez voir un changement dans les titres des sections Entrant et Sortant, avec la mention “(MS Graph)”.
Attention
Utilisez le bouton “Authorize API Access” après vous être connecté à Frappe avec l’utilisateur final, celui lié à ce compte (et non l’admin). L’authentification de l’utilisateur 365 associé sera également requise.
Mode MS Graph :
Le mode MS Graph a été intégré dans le module standard de messagerie de Frappe, permettant l’envoi et la réception des emails.
Pour la réception des emails, les modes “ALL” et “UNSEEN” sont pris en charge :
ALL → Importe tous les emails (jusqu’à la limite du nombre d’e-mails initialement synchronisés).
Une nouvelle entrée est créée pour chaque compte dans le doctype ioi Email Pull Request, avec la dernière date de synchronisation (correspondant à la date du dernier email reçu).
Info
Un contrôle supplémentaire est également en place pour éviter les doublons en utilisant l’identifiant unique de l’email.
UNSEEN → Importe uniquement les emails non lus, en les marquant comme lus une fois importés. Si un email est à nouveau marqué comme non lu, il sera réimporté.
Chaque email reçu génère un document dans le doctype “Communication”.
Info
Spécifiez le dossier email à scanner dans le tableau “IMAP Folder”. Si le champ “Append To” est laissé vide, seul un document “Communication” sera créé. Vous pouvez assigner un autre doctype pour créer à la fois une Communication et un type de document spécifique.
Configurations Additionnelles #
Ajout d’une API autorisée : SMTP.SendAsApp #
- Accédez à Azure Active Directory.
- Ajoutez une nouvelle autorisation.
- Sélectionnez
API utilisées par mon organisation. - Recherchez “Office 365 Exchange Online”.
- Sélectionnez
Application Permission. - Choisissez la permission SMTP.SendAsApp.

Désactivation du protocole “Turn off AUTH SMTP” #
→ Dans Microsoft 365 : https://admin.exchange.microsoft.com/#/settings

→ Dans Frappe :

Gestion des erreurs #
Si vous rencontrez une erreur 500 lors de la connexion à https://outlook.office365.com, suivez ces étapes :

Astuce
Soit, regardez cette vidéo.
Ou suivez ces étapes :
- Accédez à Azure Active Directory.
- Sélectionnez l’utilisateur administrateur de votre application.
- Ne conservez que le rôle “Administrateur Global”.
- Actualisez la page https://outlook.office365.com.

Configuration Multi-Adresses #
Vous pouvez lier plusieurs adresses email à un utilisateur unique. Toutefois, une seule instance de connexion Microsoft 365 est autorisée par session utilisateur.
Info
Il n’est donc pas possible de visualiser simultanément le flux de messagerie de deux adresses différentes en raison des conflits de cache de jetons.
Pièces jointes #
Les pièces jointes sont prises en charge pour l’envoi et la réception des emails. Il est possible de définir une taille maximale acceptable pour les pièces jointes reçues.