Abverkauf - Cache Problem

Hallo zusammen,

wir haben in einen unserer Shops das Problem, dass Artikel einen negativen Warenbestand erhalten bzw. zu oft gekauft werden.

Die Artikel stehen auf Lagerbestand X und der Haken beim Abverkauf ist gesetzt.
Zusätzlich ist eingestellt, das Produkte die <= 0 sind nicht angezeigt werden.

Nun hatten wir das Problem, dass der Artikel im Backend nicht mehr verfügbar war, dieser aber im Frontend noch angezeigt wurde.
Nach leeren des Caches verschwand dieser dort auch…

Irgendwer eine Idee wie wir das umgehen können?

Gerade wieder das Problem gehabt.

Die Logs liefern nichts interesanntes

Hi,

was ist denn genau das Problem? Aus den gecachten Seiten verschwindet der Artikel natürlich auch nur, wenn der Cache invalidiert wird. Manuell oder nach Ablauf des Intervalls.

So habe ich das auf jeden Fall gerade im Kopf.

Also in der Liste im Frontend verschwindet der Artikel dann automatisch. Nur halt nicht unmittelbar.

Wenn die Daten praktisch live kommen sollen, müsstest du praktisch den Cache deaktivieren 

Sebastian

@SebastianKlöpper schrieb:

Hi,

was ist denn genau das Problem? Aus den gecachten Seiten verschwindet der Artikel natürlich auch nur, wenn der Cache invalidiert wird. Manuell oder nach Ablauf des Intervalls.

So habe ich das auf jeden Fall gerade im Kopf.

Also in der Liste im Frontend verschwindet der Artikel dann automatisch. Nur halt nicht unmittelbar.

Wenn die Daten praktisch live kommen sollen, müsstest du praktisch den Cache deaktivieren 

Sebastian

Wird der Cache beim Artikelabgang oder Zugang nicht invalidiert?

Spätestens im Warenkorb müsste der Kauf verhindert werden. 

Hi,

kaufen etc. kann man den natürlich nicht. Ich meine aber, dass er in der Kategorie noch sichtbar sein kann.

Müsste ich mir sonst nochmal im Detail ansehen.

Kaufen/Warenkorb wird ja allgemein durch Abverkauf unterbunden 

Sebastian

Der verkauf geht leider doch…

wir haben deswegen negative Lagerbestände

Dann hast du ein anderes Problem. 
Der Warenkorb ist immer Live - das hat nix mit dem Cache zu tun.

@Moritz Naczenski schrieb:

Dann hast du ein anderes Problem. 
Der Warenkorb ist immer Live - das hat nix mit dem Cache zu tun.

 Danke für den hinweis!
Wir nutzen den „oder direkt zu PayPal“-Button.
Eventuell liegt es an dem Plugin?

Wir aktualisieren gerade nach und nach alle Plugins und behalten es dann mal im Auge.

Ist denn hier noch etwas herausgekommen? Wir haben auch das Problem mit Überverkäufen trotz aktivem „Abverkauf“. Nach nochmaligem Speichern des jeweiligen Artikels scheinen die möglichen Überverkäufe behoben.

Den Haken setzen wir nicht unbedingt manuell an jedem Artikel, sondern auch mal per „Mehrfachänderung“. Das scheint zumindest schon mal den Cache nicht zu invalidieren. Überverkäufe sind offensichtlich ebenfalls möglich. Und bei den Produktexporten tauchen auch teilweise Artikel auf, die eigentlich nicht da sein dürften. (Es werden Produkte ausgeflitert, deren Warenbestand 0 oder kleiner ist und auf „Abverkauf“ stehen.)

Gibt es denn eine Möglichkeit nach einer Mehrfachänderung alle betroffenen Artikel „noch mal zu speichern“?

(Shopware Version 5.4.6)

Wir haben dasselbe Problem. Trotz Abverkauf können Kunden über Bestand bestellen. Gibt es hier schon was neues?

(Shopware 5.4.6)

Auch wir können das Problem bestätigen. Ebenfalls in einem Shop der Version 5.4.6. Zahlungen sind in dem betroffenen Shop nur über PayPal (Plus) möglich, aber ein Zusammenhang konnte noch nicht ermittelt werden.

Auch in unserem Shop ist das ein großes Problem. Heute war ein Aktions-Tag und leider wurde viel mehr gekauft als vorhanden ist. Weitere Verkäufe konnten nur verhindert werden indem die Artikel deaktiviert wurden. Das ist echt blöd, denn solche Aktionstage, in denen ein Produkt in wenigen Minuten ausverkauft ist wird es oft geben… 

 

Ich habe gerade nochmal alle möglichen Szenarien getestet. In jedem einzelnen Fall war der Artikel, sobald der Bestand auf 0 gefallen war, nicht mehr bestellbar.

Entweder ist der Abverkauf also nicht korrekt gesetzt in eurem Shop - das könnte ich mir ggf. vorstellen. Oder aber eine andere Funktion / Erweiterung greift da in das Caching etc. ein.

Wie Moritz auch schon korrekt geschrieben hat, ist der Warenkorb immer live und bedient sich nicht aus dem Cache.

Könnt ihr das Verhalten bei euch denn selber nachstellen? Also im Backend einen (Test-) Artikel anlegen und mit Abverkauf versehen und speichern und dann im Frontend versuchen, mehr als auf Lager zu bestellen?!

VG
Sebastian

Nachtrag : Achtung, wenn ihr Abverkauf über die Datenbank, Schnitstelle oder Mehrfachänderung/Übersicht ändert, wird der Cache nicht zwingend invalidiert! Das Frontend weiß dann nicht, dass “Abverkauf” aktiviert wurde, da gewisse Basiseinstellungen gecacht werden. Der Artikel muss dann getrennt vom Cache invalidiert werden (geht über die API, durch Speichern des Artikels im Backend oder auch generell durch Cache leeren) - Das sollte beachtet werden und ist u.U. hier sogar das Problem gewesen.

Das passiert mir nie, da ich Abverkauf und E-Mail Benachrichtigung angeklickt habe. Unter Grundeinstellung/Storefront/Warenkorb//Artikeldetails muß man "Warenkorb bei E-Mail-Benachrichtigung ausblenden auf “Ja” setzen. Sobald der Artikel Warenbestand 0 erreicht hat, blendet der Warenkorbbutton aus und die E-Mail-Benachrichtigung erscheint. Somit passieren keine Überverkäufe.   Wink Anders ist das sonst nicht möglich und es können Artikel bei 0 Warenbestand gekauft werden!!

Problem ist auch hier bekannt.

Synchronisation läuft über cateno.

Erst wenn der betreffende Artikel im Backend aufgerufen wurde und OHNE Änderungen auf Speichern geklickt wird. Dann funktioniert es :wink:

Erst wenn der betreffende Artikel im Backend aufgerufen wurde und OHNE Änderungen auf Speichern geklickt wird. Dann funktioniert es :wink:

Korrekt. Genau das von mir geschilderte Verhalten. Da müsste man klären, ob über die Schnittstelle die Invalidierung mit angestoßen werden kann. Sonst müsste man immer manuell die Cache leeren bzw. die Inavlidierung anstoßen.

 

@SebastianKlöpper schrieb:

Ich habe gerade nochmal alle möglichen Szenarien getestet. In jedem einzelnen Fall war der Artikel, sobald der Bestand auf 0 gefallen war, nicht mehr bestellbar.

Entweder ist der Abverkauf also nicht korrekt gesetzt in eurem Shop - das könnte ich mir ggf. vorstellen. Oder aber eine andere Funktion / Erweiterung greift da in das Caching etc. ein.

Wie Moritz auch schon korrekt geschrieben hat, ist der Warenkorb immer live und bedient sich nicht aus dem Cache.

Könnt ihr das Verhalten bei euch denn selber nachstellen? Also im Backend einen (Test-) Artikel anlegen und mit Abverkauf versehen und speichern und dann im Frontend versuchen, mehr als auf Lager zu bestellen?!

VG
Sebastian

Nachtrag : Achtung, wenn ihr Abverkauf über die Datenbank, Schnitstelle oder Mehrfachänderung/Übersicht ändert, wird der Cache nicht zwingend invalidiert! Das Frontend weiß dann nicht, dass „Abverkauf“ aktiviert wurde, da gewisse Basiseinstellungen gecacht werden. Der Artikel muss dann getrennt vom Cache invalidiert werden (geht über die API, durch Speichern des Artikels im Backend oder auch generell durch Cache leeren) - Das sollte beachtet werden und ist u.U. hier sogar das Problem gewesen

Ich kann es so im Test im normalen Shop leider auch nicht reproduzieren. Artikel, die im Abverkauf aktiviert sind sind unter Lagerbestand eigentlich nicht verkäuflich. Aber heute Mittag, als die begehrten Dinge live gingen und es einige Tausend Refreshes und Seitenaufrufe gab, weil jeder was vom Kuchen abbekommen wollte, sah das leider anders aus und wir verstehen wirklich nicht warum. Der Lagerbestand liegt nun in manchen Produkten bei -37. Das sollte nicht sein.

Wir dachten an ein Caching-Problem? Die Produkte, die heute in den Shop kamen waren vorher nie aktiv und wurden erst um 12:00 aktiviert. Innerhalb kürzester Zeit gab es so viele Reloads und Seitenzugriffe, dass die Seite kurzzeitig zusammenbrach (das ist aber ein anderes Problem). Kann der Überverkauf also vielleicht doch auch mit dem Caching zusammenhängen?

Wenn das eventuell sein kann werden wir am nächsten Aktions-Tag (Montag) die Produkte lieber vorher schon aktiveren, cachen und um die angekündigte Uhrzeit nur noch den Lagerbestand ändern. Ob das klappt? 

Sind die meisten Verkäufe über Amazon Pay oder PayPal bezahlt worden? Ist es evtl möglich aus der Artikeldetailansicht den Checkout mit diesen Zahlungsarten einzuleiten ohne, dass Bestand vorhanden ist?

Wir blenden die Buttons von PayPal und Amazon (bei Artikeln mit gesperrtem Überverkauf und ohne Bestand) extra aus. (Den Fehler gab/gibt es tatsächlich bei den Express-Buttons.) Allerdings kommt es trotzdem zu Überverkäufen. Bei uns wahrscheinlich bei allen Artikeln, bei denen es über Mehrfachänderung gesetzt wurde.

Oh, spannend! Nahezu alle Bestellungen gingen bei uns per Vorkasse oder PayPal Classic (Verhältnis etwa 50/50) ein. Aber eigentlich denke ich nicht, dass es möglich sein kann (mit welcher Zahlungsart auch immer) mehr als vorhanden zu bestellen…?