Liquid, JavaScript, Themes
Hallo Community,
ich lasse auf der Produktseite die Lieferzeit des jeweiligen Produktes anzeigen. Diese hängt von dem aktuellen Lagerbestand ab. Ich würde gerne zusätzlich diese Information auf der Bestellbestätigungsmail anzeigen lassen. Dies macht mir allerdings Probleme (es wird nicht immer die richtige Zeit angegeben)
Eine besondere Herausforderung ist ja meines Erachtens nach, dass man nach dem Kauf einen falschen Bestand hat. Ich habe im Code dann entsprechend den aktuellen Lagerbestand + die Bestellmenge als zu berückstichtigenden Lagerbestand genommen.
Trotzdem wird es teilweise falsch angezeigt. Aufgefallen ist es mir bei Produkten, deren Bestand "0" ist, die aber darüber hinaus weiterverkauft werden können. Die erhalten dann plötzlich die Lieferzeit als wäre das Produkt auf Lager.
Wobei es ja eigentlich so ist, dass wenn der Bestand "0" ist und 1 Stück verkauft wird, dann ist der Bestand -1 und wenn ich dann rechne -1+ Bestellmenge also +1 komme ich auf null und nicht auf einen positiven Bestand.
Gibt es hier jemanden, der dieses Problem bereits gelöst hat oder sich besser auskennt, was die Bestandsrechnung in Shopify angeht?
Vielen Dank für Eure Hilfe und viele Grüße,
Manuel
Wenn ich das richtig verstehe - du hast also Backorders aktiviert („continue selling“ = true). Kunde bestellt 1 Stück und nach dem Kauf: inventory_quantity = -1 und line_item.quantity = 1. Deine Berechnung: -1 + 1 = 0 - du denkst also Produkt ist verfügbar was nicht korrekt ist. Shopify zählt nicht auf „virtuellen Bestand“ – der korrekte Lagerstatus muss aus dem Zustand zum Kaufzeitpunkt stammen, nicht aus einem dynamisch berechneten Bestand nach dem Verkauf. Warum nicht bei jedem Produkt ein Metafeld - z. B. delivery_time_in_stock = "1–3 Werktage" und delivery_time_backorder = "Lieferzeit: ca. 7–10 Werktage" In der Bestellbestätigung greifst Du auf die Produkt-Metafelder zu, basierend auf dem zum Kaufzeitpunkt gültigen Lagerstatus. Aber in der kannst Du nicht dynamisch den Lagerbestand abrufen, weil das eine statische Mail ist, sprich, kein API-Zugriff.
Moin Manuel,
das kannst du mit etwas Hexerei und Magie beheben. 😉
In den Mails ist die Liquidlogik manchmal unlogisch. Du kannst im Detail anschauen, ob du mittels einer Schleife den Bestand abrufst und diesen dann korrekt setzt. So funktioniert es manchmal; das ist die technische Möglichkeit, um es einfach zu halten.
Ich habe nun festgestellt, dass Shopify als Bestand immer 0 ausgibt, wenn der Bestand < 1 ist. Also auch, wenn der Bestand eigentlich -3 ist, dann wird trotzdem 0 ausgegeben. Ich nutze {{line_item.variant.inventory_quantity}}. gibt es noch etwas anderes?
Mit dem Lernpfad der Shopify Academy und dem Verified Skills-Badge Expanding Your Sho...
By Shopify Feb 7, 2025Den Verkauf im Großhandel steigern: In der Shopify Academy lernst du, wie das geht, zum...
By Shopify Feb 3, 2025Teil 2 - Wie die Prinzipien des UX-Designs dir dabei helfen können einen großartigen Shop ...
By Kai Sep 16, 2024