Mehrere Business-Events für "Bestellung ist eingegangen"

hallo zusammen

Ich hoffe ich beschreibe meine Problematik richtig… :slight_smile:
Obwohl es nicht so lustig ist, da ich mir daran die Zähne ausbeisse…

Folgende Situation:
ich verwende 2 Business-Events für „Bestellung ist eingegangen“:

  • Shopbetreiber erhält eine Mail mit der Bestellung (hierfür habe ich im Business-Event seine Mail-Adresse eingetragen)
  • Kunde erhält eine Mail mit der Bestellbestätigung

Nun hätte ich aber für den Kunden 3 mögliche Szenarien:

  • Mail-Bestätigung bei Online-Zahlung und Lieferung per Versand
  • Mail-Bestätigung bei Online-Zahlung und Selbstabholung
  • Mail-Bestätigung bei Barzahlung und Selbstabholung

Ich dachte mir nun, ich mache für jeden dieser Szenarien einen eigenen checkout.order.placed-Business-Event. Dabei habe ich auch jedem das eigene Mail-Template zugewiesen und eine eigene Regel.
Die Regeln sind:

  • Zahlungsart ist Barzahlung
  • Zahlungsart ist nicht Barzahlung und Lieferung ist Versand
  • Zahlungsart ist nicht Barzahlung und Lieferung ist Abholung

Nun passiert folgendes. Wenn ich eine Bestellung mache, erhält der Shopbetreiber seine Mail. Passt.
Der Kunde erhält aber gleich 3 Mails, also eigentlich pro erstellten checkout.order.placed-Business-Event.
Muss das so sein? Gibt es einen anderen Weg?

Herzlichen Dank für eure Hilfe.

Ach ja, ich benutze Shopware 6.3.5.4

Es gibt ja nur eine Bestellbestätigung, du müsstest dann eher eine Differenzierung von Zahlart und Versandart vornehmen und in deren Abhängigkeit die Texte tauschen. Hier in Pseudo Code

email header

if(payment = Online-Zahlung && shipping = Lieferung per Versand ){
    Template für Mail-Bestätigung bei Online-Zahlung und Lieferung per Versand Text
}

if(payment = Online-Zahlung && shipping = Selbstabholung ){
    Template für Mail-Bestätigung bei Online-Zahlung und Lieferung per Versand Text
}

if(payment = Barzahlung && shipping = Selbstabholung ){
    Template für Mail-Bestätigung bei Online-Zahlung und Lieferung per Versand Text
}
email footer

Danke für deine Antwort. Werde ich so versuchen.

Nur zum Verständnis… beim Business-Event „Zahlung erreicht Status bezahlt“ (state_enter.order_transaction.state.paid) konnte ich zwei Mal verwenden.
(Hier ist aber zu erwähnen, dass der eine Business-Event eine eigene Mail-Adresse erhalten hat).
Was ist denn der Unterschied zum Bestelleingang?