dotkernel/dot-mail-outlook

Dotkernel Dot-Mail Outlook ESMTP service.

Maintainers

👁 dotkernel

Package info

github.com/dotkernel/dot-mail-outlook

pkg:composer/dotkernel/dot-mail-outlook

Statistics

Installs: 502

Dependents: 0

Suggesters: 0

Stars: 5

Open Issues: 1

0.3 2025-11-03 16:14 UTC

Requires

Suggests

None

Provides

None

Conflicts

None

Replaces

None

MIT 4984a8eb7d72047f38b25cbb77d59332dd42ec2e

  • Dotkernel Team <team.woop@dotkernel.com>

symfonymicrosoftoutlookOffice365dotkernelsymfony-maileresmtpxoauth2dot-mail

This package is auto-updated.

Last update: 2026-05-31 00:19:18 UTC


README

Dotkernel's Microsoft Outlook ESMTP email service, implementing the client credentials grant_type.

dot-mail-outlook is a wrapper on top of dotkernel/dot-mail

Badges

👁 OSS Lifecycle
👁 PHP from Packagist (specify version)

👁 GitHub issues
👁 GitHub forks
👁 GitHub stars
👁 GitHub license

👁 Build Static
👁 codecov
👁 PHPStan

Installation

Install dotkernel/dot-mail-outlook by executing the following Composer command:

composer require dotkernel/dot-mail-outlook

Register src/ConfigProvider.php in config/config.php by adding the following line:

\Dot\MailOutlook\ConfigProvider::class,

Configuration

Copy the dot-mail-outlook.local file to your autoload folder (or copy its contents to mail.global.php) and fill in the relevant information.

<?php

declare(strict_types=1);

$tenant = '';

return [
 'xoauth2_outlook' => [
 "tokenCacheFile" => '',
 "tenant" => $tenant,
 "access_code_url" => "https://login.microsoftonline.com/{$tenant}/oauth2/v2.0/token",
 "client_id" => '',
 "client_secret" => '',
 "scope" => 'https://outlook.office.com/.default',
 "grant_type" => 'client_credentials',
 ],
];

The dotkernel/dot-mail config file should be updated to make sure the necessary options are set:

  • transport MUST be set to under the dot_mail.default.transport key.
  • port MUST be set to 587 under the dot_mail.default.smtp_options.port key.
  • tls MUST be set to STARTTLS under the dot_mail.default.smtp_options.tls key.
  • host MUST be one of smtp-mail.outlook.com or smtp.office365.com under the dot_mail.default.smtp_options.host key.

Additional info

dotkernel/dot-mail-outlook makes use of SASL XOAUTH2 mechanism for use with the SMTP AUTH command.

To allow generating the bearer token in the background, without a user input required, dot-mail-outlook implements the client credentials flow from Microsoft:

Make sure to set all relevant permissions, give relevant tenant administrator consent and register the necessary service principals, as described in Microsoft's flow.