Bestellbestätigung und Statusmails werden nicht versendet

Hallo,

mein Shop versendet keine Bestellbestätigungen oder Bestellstatus-Mails. Alle anderen Mails werden (Kundenregistrierung, etc.) korrekt versendet.

Shopware-Version: 6.4.7

Es gab dazu schonmal einen Thread:

Dort hat es für manche funktioniert, wenn man in den Business-Events den Verkaufskanal für alle Kunden hinzufügt. Das ändert bei mir allerdings auch nichts.

Wenn ich die Bestellbestätigung in den Templates als Test versende, kommt sie an.
Wenn ich den Inhalt der Bestellbestätigung auf ein einfaches Wort ohne Twig Code (Text, sowie HTML) ändere, wird die Mail auch nicht versendet. Es liegt also auch nicht an fehlerhaften Twig Code.

Vielen Dank für Eure Hilfe!

Bist du sicher, dass deine Kunden unter die Regel All Customers fallen?

Du hast Recht. Dort war meine Kundengruppe nicht hinzugefügt. Leider funktioniert es aber auch damit nicht. Muss man diese Business-Event eigentlich aktivieren? Es ist ja standardmäßig deaktiviert

Muss dieses Business-Event denn aktiviert sein? Es ist ja standardmäßig deaktiviert und trotzdem verschickt Shopware auf Default-Einstellungen ja die Bestellbestätigungen. Etwas unintuitiv für mich

Ja, diese muss man aktivieren, wenn sie ausgeführt werden sollen.

Diese sind in 6.4.7.0 deaktiviert, da sie durch den Flow Builder ersetzt wurden.

Halo zusammen,
habt ihr hier schon eine Lösung?
Bei uns das gleiche SW 6.4.7.0
Testmails über SMTP gehen, Bestätigung der Bestellung aus dem Shop nicht.
Alles über den Flowbuilder eingerichtet.
Danke.
Gruß
Sascha

Sind entsprechende, frühere Business-Events auch noch vorhanden? Falls ja, könntest du diese testweise einmal versuchen zu aktivieren.

Also ich habe nochmal rumgebastelt.

  1. nun geht es.
  2. Buisness-Events sind nicht mehr nötig, nicht aktivieren, geht alles über Flow
    Allerdings hat er bei dem Update das etwas anders eingetragen. Habe den Flow dann nochmals angepasst. Siehe Screenshot
  3. Scheinbar sind bei Fehlern der Template Twigs nur die LIVE Mails betroffen das die dann nicht rausgehen. Testmails haben bei mir trotzdem funktioniert. Was ich gemacht habe: ich habe den TWIG HTML und TEXT Code aus einer Neuinstallation von SW 6.4.7.0 kopiert und eingefügt. Da hat es wohl in den Variablen für Zahlungsarten und Adresse eine Änderung gegeben die das Update eventuell nicht ersetzt hat.

PS: Abonnent ist bei uns der Shopbesteller also der Kunde

Hallo Sascha,

letztendlich hat folgendes bei mir geholfen. Das Business Event für die Bestellbestätigung aktivieren. Dazu musst du den passenden Verkaufskanal und alle Kunden hinzufügen. Schau mal bei der vordefinierten Regel „All Customers“ ob auch wirklich alle Kunden damit erfasst sind.

Wichtig war bei mir auch, dass der Shop im Produktiv-Modus ist, also das Flag „prod“ in der .env-Datei setzen. Im dev-Modus werden keine Mails versendet!

Danach hat es für mich funktioniert. Allerdings wurde die Bestellbestätigungsmail jetzt doppelt an den Kunden versendet! Wenn du nun das Business-Event wieder deaktivierst, klappt es!

Vorsicht! Es kann auch sein, dass du einen Fehler im Mail-Template deiner Bestellbestätigung hast. Auch in diesem Fall, steht im Log, dass eine Mail versendet wurde, obwohl das nicht der Fall ist. Also hier einmal das bisherige Template in Notepad speichern und einfach nur „Test“ in das Template einfügen, sodass du sicherstellst, dass der Mailversand nicht an Template-Fehlern scheitert.

Das ganze hat mich Stunden an Trial-and-Error gekostet! Vor allem, dass keine Mails im Entwicklungsmodus versendet werden!! Was ist da los, Shopware!?

Hallo!

Schon gelöst? Hast du Leerzeichen oder Sonderzeichen in deinem Sales Channel Namen? Das war bei mir nämlich das Problem.
Als ich die Leerzeichen mit einem - oder _ ersetzt habe, wurden plötzlich alle Mails geschickt. Hört sich für mich nach einem BUG in Shopware an.

Hat jemand eine Aktuelle Lösung des Problems?

Das gleiche Problem trat jetzt bei mit auf beim Update auf 6.5. Bestellbestätigung geht nicht an mich oder auch nicht an den Kunden raus. Einstellungen im Flowbilder sehen soweit korrekt aus. Testmails gehen auch …hat jemand eine Lösung ?

Habe bei einer Installation auch das gleiche Problem, gibts hierfür schon eine Lösung?

Hatte auch das Problem, aber die Antwort von [ratzinger] hat zumindest mir geholfen.
Im Flow-Builder war das Template nicht mehr enthalten/sichtbar.
Was habe ich getan.
Unter E-Mail-Templates > Einstellungen habe ich die Beschreibung des Templates Bestellbestätigung wieder geändert auf Shopware Basis Template.
Danach konnte ich es wieder im Flow-Builder sehen und auswählen.

Zuvor, hatte ich die Beschreibung einmal geändert. Das riecht tatsächlich nach einem Bug. In den Business-Events habe ich alle Events deaktiviert.

Bei mir hat es geholfen.

Hallo, ich muss leider das Thema wieder aktivieren. SW 6.5.0.0

Seit heute gehen bei uns wieder keine Bestellbestätigungen und auch keine Statusmails zu Bestellungen mehr raus. Und es betrifft sogar zwei Shops. Gab es da schon wieder eine Änderung von Shopware? Gestern ging noch alles.

Ich habe oben bereits alles nochmals geprüft. Die Einstellungen, die damals angepasst werden mussten, sind immer noch gültig und hinterlegt, aber es passiert einfach nix. Habe diese sogar zur Sicherheit nochmals neu angelegt. Trotzdem nix.

Hat noch wer aktuell wieder das Problem? Gibt es evtl. schon eine Lösung?

Hallo zusammen, ich habe den Fehler gefunden. Nach dem Update irgendwann auf 6.5 hat Shopware die Variable geändert. Das heißt, die Variable {{ billingAddress.phone }} in den E-Mail Templates bzw. im E-Mail Template der Bestellbestätigung im Bereich HTML darf diese Variable nicht mehr stehen. Diese kann ersetzt werden durch die Variable {{ customer.defaultBillingAddress.phoneNumber }}. Das wird das Problem lösen. Ich hoffe ich konnte euch helfen :slight_smile:

Und wenn man die Zeile gar nicht in seinen Templates hat?
{% set billingAddress = order.addresses.get(order.billingAddressId) %}
Rechnungsadresse:

{{ billingAddress.company }}

{{ billingAddress.firstName }} {{ billingAddress.lastName }}

{{ billingAddress.street }}

{{ billingAddress.zipcode }} {{ billingAddress.city }}

{{ billingAddress.country.translated.name }}


Hier dasselbe. Alle Mails gehen raus bis auf die Bestellbestätigung. Testversand klappt ebenfalls.
Business Events gibt es nicht mehr in SW 6.5.6.1?

Im Mail Archiv tauchen auch die Testmails alle auf. Bestelle ich etwas als Kunde, kommt keine Bestellbestätigung und laut Mail Archiv ging auch tatsächlich nichts raus.

Die Template-Variable {{ billingAddress.phone }} gibt es wie bei @DCP2018 ebenfalls nicht, weder im HTML noch im Plain Text.

Ergänzung - weil ich es gerade in einem anderen Thread gelesen und direkt getestet habe:
Es scheint nichts mit der gewählten Zahlungsart zu tun zu haben, habe mit Vorkasse und Paypal bestellt. Jeweils keine Bestellbestätigung, bei Paypal kamen dann aber direkt andere Statusmails (Neuer Zahlungsstatus: Unbestätigt, ein paar Sekunden danach „Deine Bestellung wurde komplett bezahlt“) aber KEINE Bestellbestätigung :confused:

Es muss doch einen Grund und eine Lösung geben? :face_exhaling: :thinking:

Update:
Ich habe ALLE Variablen aus dem Template der Bestellbestätigung entfernt (Plain und HTML) und siehe da - die Bestellbestätigung kommt nun!
Ich such dann mal die schuldige Variable…

Seit Shopware 6.4.19 müssen in der Bestellbestätigung alle „Delivery“ Abfragen mit einer „If-Condition“ gewrappt werden. Siehe Standard-Template. Das muss insbesondere bei migrierten Shops beachtet werden.

3 Likes