Warenkorb - Überschneidung bei Bestellung ergibt 500-Fehler

Hallo zusammen,

wenn ich mit Kundenaccount A z.B. 2 Artikel in den Warenkorb lege und gleichzeitig mit Kundenaccount B eine Bestellung vornehme, mit dem ich einen Artikel abverkaufe (Bestand dann 0), dann bekommt Kunde A einen 500er Fehler im Warenkorb. D.h. dieser lädt nicht mehr. Daraus folgt:

Wie es ist:

  • Artikel hat im Warenkorb keine Schutz / wird nicht geblockt, sodass Kunde B diesen “wegkaufen” kann
  • Kunde A bekommt anstatt Hinweis das Artikel abverkauft ist, einen 500er Fehler (d.h. Kaufabbruch)

Wie es sein müsste:

  • Kunde A bekommt eine Meldung im Warenkorb, dass genau dieser Artikel ausverkauft ist und löscht diesen aus dem Warenkorb
    (ist bei Amazon z.B. so)

Kann jemand das Problem nachvollziehen?
(wäre es ziehmlich krasser Bug und müsste bei größeren Shops häufig auftreten)

Generell: einen 404 oder 500er Fehler oder einen anderen Fehlercode sollten Kunden/Besucher nie sehen. Im Shop sollte hier immer aussagekräftige Hinweise erscheinen. Ich weiß allerdings nicht wie es Shopware macht, aber ich vermute dass im Warenkorb die Abnahmemenge nicht reserviert wird, willst du das haben?

D.h. du möchtest nur mit der Abverkauf-Option arbeiten, also bei Bestand kleiner gleich 0 kein Kauf möglich? Das haben wir auch bei einigen Artikeln aber bisher noch keine Kunden/Besucher gemeldet dass es hier ein Problem gibt. Greift vielleicht hier irgendein Plugin ein?

Wie es sein müsste:

  • Kunde A bekommt eine Meldung im Warenkorb, dass genau dieser Artikel ausverkauft ist und löscht diesen aus dem Warenkorb
    (ist bei Amazon z.B. so)

  • keine Reservierung der Artikels im Warenkorb, wer zuerst abschließend kauft, bekommt den Artikel (aber eben mit Hinweis, dass dieser jetzt aus ist)

Der 500 Fehler kommt aber, keine Ahnung wieso, es gibt keine Fehlermeldung, daher die Frage, ob das jemand nachvollziehen kann?
(es ist ja schnell getestet)

Wir haben den Fehler gefunden:

  • in der Standart-Installation von Shopware funktioniert es, wie es soll: Falls ein Artikel im Warenkorb von Kunde A liegt und während des Bestellprozesses von Kunde B abverkauft wird, gibt Shopware im Warenkorb eine spezifische Meldung aus, das genau dieser Artikel nicht mehr verfügbar ist. (das ist wichtig, denn wenn z.B. 20 Artikel im Warenkorb liegen muss klar sein, welcher genau nicht mehr verfügbar ist)

  • bei uns hat das Plugin „Rabatte und Rabattaktionen - Basisplugin (SW5)“ der Dreischild GmbH den 500 Fehler im Warenkorb verursacht (Shopware Version 5.6.4. / Plugin Version: 1.1.8), sobald dieses aktiviert wird.
    Wir haben den Entwickler angeschrieben.