SMTP Mailversand (Office365)

Hallo,

mich würde interessieren, was ich noch einstellen muss, damit der Mailversand via SMTP über Office365 funktioniert:
https://www.michaelkoehne.de/uploads/smtp_office365_config.png

Ich bekomme keine Fehlermeldung beim speichern - und auch keine Fehlermeldung beim Request von Passwort reset im Frontend - und im Log steht nur:

customer.recovery.request
Debug (100)
{ „source“: „core“, „environment“: „prod“, „additionalData“: }

Aber eine Mail kommt nicht an.

Ich habe auf den selben Server via PHPMailer die grundsätzlichen Daten und Versand überprüft - was auch funktioniert:

require_once('PHPMailer.php');
require_once('SMTP.php');

$mail = new PHPMailer();

$body = file_get_contents('contents.html');

$mail->IsSMTP();
$mail->SMTPDebug = 1;
$mail->SMTPAuth = true; 
$mail->SMTPSecure = "tls";
$mail->Host = "smtp.office365.com";
$mail->Port = 587;
$mail->Username = "XXX@XXXXXXX.de";
$mail->Password = "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX";

$mail->SetFrom('XXX@XXXXXXX.de', 'XXXXX');

$mail->Subject = "PHPMailer Test";

$mail->AltBody = "To view the message, please use an HTML compatible email viewer!"; // optional, comment out and test

$mail->MsgHTML($body);

$mail->AddAddress("XXX@XXXXXXX.de", "XXXXX");

//$mail->AddAttachment("images/phpmailer.gif"); // attachment
//$mail->AddAttachment("images/phpmailer_mini.gif"); // attachment

if(!$mail->Send()) {
  echo "Mailer Error: " . $mail->ErrorInfo;
} else {
  echo "Message sent!";
}

Was habe ich vergessen?

Vielen Dank und mit freundlichen Grüßen,
mkos

Connector bei Office 365 eingerichtet? 

 

Erstmal vielen Dank für die schnelle Antwort.
Aber ich kann nicht ganz folgen. Was genau ist mit „Connector bei Office 365“ gemeint?

https://docs.microsoft.com/de-de/exchange/mail-flow-best-practices/use-connectors-to-configure-mail-flow/set-up-connectors-to-route-mail

1 „Gefällt mir“

Vielen Dank für den Link. Ich werde mir das anschauen und Feedback geben.

Hallo,

Du benötigst ein App Password (nicht das normale Kennwort des Postfachs) - kannst Du wie folgt generieren:

Auch muss die SMTP Authentication für das Postfach aktiviert sein:

https://docs.microsoft.com/en-us/exchange/clients-and-mobile-in-exchange-online/authenticated-client-smtp-submission

Viele Grüße

Hallo,

also, ich habe noch einmal überall durchgeschaut, eingelesen und getestet:

SMTP-Authentication ist für das Postfach aktiviert. Multi-Faktor-Authentication ist nicht aktiviert, somit benötige ich auch kein Apppasswort.

Einen Connector zum weiterleiten von Emails zwischen Mail-Servern wird ja faktisch nicht benötigt, da es sich ja hier um einfachen Mailversand auf SMTP-Basis handelt.

Der richtige Link wäre folgender mit Option 3 (Konfigurieren eines Connectors zum Senden von E-Mails mit Microsoft 365 oder Office 365 SMTP-Relay):
Einrichten eines Multifunktionsgeräts oder einer Anwendung zum Senden von E-Mails mit Microsoft 365 oder Office 365 | Microsoft Docs

Wir haben den Connector eingerichtet und ebenfalls gestestet. In Shopware werden keine Emails versendet. Mit dem Testscript (PHPMailer) oben funktioniert auch dieses eindwandfrei.

Also muss es ja an Shopware selbst liegen?

Mit freundlichen Grüßen,
mkos
 

 

Hallo,

probiere erstmal, ob Du mit einem SMTP email Client mit den entsprechenden Einstellungen per SMTP emails senden kannst - so kannst Du das dann besser eingrenzen. Also z.B. für den Test Thunderbird oder ähnliches verwenden.

Viele Grüße

Also ich habe keine direkte Lösung für Dich, aber bei uns war die Einrichtung eines Connectors nötig, dann lief alles (fast) einwandfrei mit Office 365. Die IP des Webserver muss im Connector sozusagen gewhitlistet werden. 

Mittlerweile haben wir so viele Transaktionsmails, dass Outlook damit etwas überfordert war. Zudem nervt es extrem, dass jede versendete Mail im “Gesendete Elemente” Ordner landet. Daher haben wir auf einen externen Dienstleister gewechselt der auf sowas spezalisiert ist. In unserem Fall https://www.mailgun.com/ aber es gibt auch zahlreiche andere. 

1 „Gefällt mir“

Abgesehen davon kann ich vom Office 365 Connector auch nur abraten - dieser ist extrem langsam - es dauert 1-2 Sekunden bei jeder email, bis diese rausgeht - das sieht im Shop bei der Bestellung/Registrierung für den Kunden gut und gerne danach aus, als würde der Shop hängen.

Dazu findest Du auch diverse Hinweise im Google Index:
office 365 smtp slow - Google Search

Viele Grüße

1 „Gefällt mir“

Hallo zusammen,

gibt es hierzu eine Lösung?

Danke und viele Grüße Katja

Hallo,

schau’ mal hier:

Das funktioniert auch so - Du benötigst für den Versand mind. eine Office 365 Basic Lizenz für die email Adresse, mit welcher Du aus dem Shop heraus senden möchtest und in den Benutzer-Einstellungen dieses Postfachs muss „Authentifiziertes SMTP“ aktiviert werden.

Viele Grüße

Super, danke für den Tipp. Schaut gut aus :slight_smile: