Shopware Produktpreise - Leistungsfähige Funktionen und entscheidende Überlegungen
Shopware bietet von Haus aus ein sehr mächtiges und durchdachtes System, um Produktpreise abzubilden. Angefangen von der Beziehung zwischen Brutto und Nettopreisen und dem zugehörigen Steuersatz, einfachen Streichpreisen, Vererbung der Preise vom Hauptprodukt an die Varianten bis hin zu komplexen Regelbasierten erweiterten Preisen. Es gibt viele Möglichkeiten und damit auch eine gewisse Komplexität.
In diesem Blogpost möchte ich auf die Möglichkeiten, angefangen von einem einfachen Produkt bis hin zu Preisstrategien für mehrere Verkaufskanäle von Shopware beleuchten.
Durch die Entwicklung unserer QPC-App hatten wir sehr viel Zeit uns mit den Preisen in Shopware auseinanderzusetzen 🙂
Ressourcen
Shopware Dokumentation
- Preise: Shopware 6 - Kataloge - Produkte anlegen
- Erweiterte Preise: Shopware 6 - Kataloge - Produkte anlegen
- Rule Builder: Shopware 6 - Einstellungen - Rule Builder
Preise für ein einfaches Produkt pflegen
Jedes Produkt hat im Reiter Allgemein eine Preise "Karte". Es lässt sich der Steuersatz, der Brutto und Nettopreis, Einkaufspreis, Streichpreis sowie der Günstigste Preis der letzten 30 Tage für die Standardwährung pflegen.
ℹ️ Die Standardwährung des Shopsystems wir bei der Installation gesetzt und bleibt dann dauerhaft die gleiche. Alle weiteren Währungen können unter dem Link "Währungsabhängige Preise" eingesehen und gepflegt werden, auf diese gehe ich später im Detail ein.
Der Steuersatz, der für die Berechnung verwendet wird, ist der, den Sie unter Einstellungen > Steuern als Standard ausgewählt haben. Der Steuersatz kann für den Kunden später je nach dem Lieferland ein anderer sein als der, den Sie im Admin sehen.
Verbindung zwischen Brutto und Netto
Hier ist das Schlosssymbol zwischen Brutto und Netto ein wichtiger Punkt, wenn Sie B2B und B2C Kunden haben. Ist diese Verbindung gelöst, dann erfolgt die Berechnung für den Endkunden weiterhin aufgrund des Steuersatzes und dieser sieht im Warenkorb die korrekte Berechnung.
Wenn Sie eine Kundengruppe haben, für die die Preise in Netto dargestellt werden, z.B. Händler, dann sehen diese Kunden folgenden Warenkorb.
Wenn wir nun die Verbindung zwischen Brutto und Netto lösen, bleibt für den ersten Kunden alles gleich, der Händler sieht jedoch den veränderten Preis und die Steuerberechnung erfolgt anhand des geänderten Nettopreises, jedoch weiterhin bezogen auf den ausgewählten Steuersatz.
Hier erkennen wir nun, dass der Nettopreis fix bleibt und die Berechnung der Steuern basierend auf den 120 € erfolgt.
Streichpreis
Der Streichpreis ist selbsterklärend und stellt, wie der Name schon sagt, den Preis vor der Reduzierung dar. Dieser wird dann im Shop dem Kunden mit einem prozentualen Ersparnis visualisiert.
Günstigster Preis (letzten 30 Tage, Brutto)
In diesem Feld kann die nach der EU-Richtlinien vorgeschriebene günstigste Preis der letzten 30 Tage festgehalten und dem Kunden im Shop dargestellt werden. Der Preis muss manuell gepflegt werden. Hier ist die Stellungnahme von Shopware zu finden, warum die Priese nicht automatisch gepflegt werden: https://www.shopware.com/de/news/shopware-6-release-news-das-ist-neu-im-april-2022/
Damit wären die wichtigsten Punkte für das Pflegen der Priese von einfachen Produkten erläutert, im nächsten Abschnitt gehe ich als Erstes auf die Währungsabhängigen Preise ein.
Währungsabhängige Preise
Abhängig von den aktivierten Währungen unter Einstellungen > Währungen können sie unter dem Punkt Währungsabhängige Preise auf der Preise "Karte" die unterschiedlichen Währungspreise pflegen.
Die Preise erben standardmäßig von dem Hauptpreis und werden mit dem Faktor, der bei der jeweiligen Währung hinterlegt ist, berechnet.
Je Währung sind nun die gleichen Elemente (Preis, Streichpreis, Günstigster Preis), bis auf Einkaufspreis und Steuersatz, aus der Preise Karte vorhanden. Damit kann durch das Brechen der Vererbung ein abweichender Preis gepflegt werden. In dem oberen Bild haben wir die Vererbung bei der norwegischen Krone aufgelöst und können für dieses Produkt den Preis unabhängig von dem Faktor und "Grundpreis" ändern.
Wünschenswert wäre es hier, wenn Shopware es zulassen würde, die Währungsabhängigen Preise als eine eigene Karte statt einem Modal unter der Standard Preise Karte darzustellen. Das würde bei der Arbeit mit mehreren Währungen zur besseren Übersicht führen und spart den Usern viele Klicks.
Sobald Sie auf einem Ihrer Verkaufskanäle mehreren Währungen konfigurieren, erscheint im Shop eine Währungsauswahl und der Kunde kann die Währung des Shops ändern.
Erweiterte Preise
Mit den erweiterten Preisen gibt Shopware den Shop Betreibern ein mächtiges Tool an die Hand, um Staffelpreise und regelbasierte Preise abzubilden.
Staffelpreise
Um Staffelpreise anzulegen, wechseln Sie in den Tab Erweiterte Preise und fügen eine neue Preisregel hinzu. Als Preisregel sollte eine allgemeingültige Regel, idealerweise nutzen Sie diese für alle Staffelpreise, z.B. Always valid (Default), verwendet werden. Dann können Sie Ihre Staffel eingeben.
Wir erkennen in dieser Komponente sofort die gleichen Daten wie bei der allgemeinen Preise Karte, Preis, Streichpreis und den günstigsten Preis, je Staffel. Zusätzlich sind die währungsabhängigen Preise horizontal je Kolumne abgebildet und können modifiziert werden.
Im Shop sieht der Kunden folgende Darstellung im Listing (Kategorie-Seite), hier ist darauf zu achten, dass es je nach Land, in dem Sie verkaufen, die Darstellung des günstigsten Preises rechtlich vorgeschrieben ist (Preisangabenverordnung (PAngV)). Hier ist zu klären, ob der ab Preis für eine Einheit oder für wie bei Shopware der günstigste Preis sein soll.
Auf der Produktdetailseite sieht der Kunde dann die Staffelung und Shopware berücksichtigt die Preisberechnung abhängig von der Menge, die der Kunde in seinen Warenkorb legt.
Regelbasierte Preise
Wenn Sie z.B. am Wochenende einen anderen Preis anbieten möchten, lässt sich das über eine entsprechende Regel und erweiterten Preisen abbilden. Der Vorteil ist, dass Sie hier die Regel und Konfiguration einmalig vornehmen und die Preise jedes Wochenende automatisch geändert sind.
Nachdem wir die neue Preisregel hinzugefügt haben, setzen wir einen neuen Preis und einen Streichpreis, wenn gewünscht.
Sobald unser Kunde nun am Samstag oder Sonntag auf das Produkt navigiert, sieht er den neuen Preis. Beachten Sie, dass die Regel mit der höheren Priorität den Vorrang hat. Wenn sich die Preise nicht sofort ändern, kann das auch daran liegen, dass die Priese noch aus dem Cache kommen, sie können unter Einstellungen > Caches & Indizes den Cache leeren.
Mit erweiterten (regelbasierten) Preisen lassen sich sehr viele Preisszenarien und Use Cases abbilden, sowohl für Marketing als auch für kundengruppenbasierte Preise. Ein Szenario für den Einsatz von erweiterten Preisen sind unterschiedliche Produktpreise je Verkaufskanal, den ich weiter unten beschreiben werde. Sie sollten jedoch beachten, dass die Pflege der Preise aufwändiger wird, auch kann sich der massive Einsatz der erweiterten Preise auf die Performance des Shops auswirken.
Das folgende Diagramm soll die Beziehung der Preise bei einem Produkt darstellen.
Use Cases
Eine Sales-Kategorie automatisch erstellen
Wenn die Produkte einen Streichpreis haben, können diese in einer dynamischen Produktgruppe zusammengefasst werden. Dafür erstellt man sich eine dynamische Produktgruppe und nutzt die Bedingung "Prozentuales Verhältnis Preis/Streichpreis". Es können selbstverständliche noch weitere Bedingungen, je nach Ihrem Use Case gesetzt werden.
Nun kann einer Kategorie diese dynamische Produktgruppe zugewiesen werden und alle reduzierten Produkte tauchen dort automatische auf. Das nimmt einem die Pflege ab und man muss nie wieder daran denken, die reduzierten Produkte einer Sales-Kategorie zuzuweisen.
Unterschiedliche Produktpreise für mehrere Verkaufskanäle pflegen
Wenn Sie zwei oder mehrere Verkaufskanäle pflegen, auf denen Sie gleiche Produkte zu unterschiedlichen Preisen anbieten möchten, haben Sie in Shopware aktuell eine Möglichkeit das über erweiterte Preise zu pflegen oder mit etwas Mehraufwand durch Währungsabhängige Preise.
Mit erweiterten Preisen
Wenn Sie eine eigene Kundengruppe je Verkaufskanal konfigurieren, können Sie je nachdem wie viele Verkaufskanäle Sie pflegen möchten, Regeln erstellen, die die jeweilige Kundengruppe anspricht. Dann können Sie bei Produkten, die unterschiedliche Preise abhängig von dem Verkaufskanal haben sollten, weitere Preisregel je abweichender Verkaufskanal pflegen.
In meinem Beispiel möchte ich, dass die Preise für meinen Verkaufskanal A, aus der Allgemein-Preis-Kachel verwendet werden und für den Verkaufskanal B die Preisregel "Kunden Verkaufskanal B" verwendet wird.
Damit erhält nun der Kunde im Verkaufskanal B den Preis von 140 €, die untere Tabelle stellt das nochmal kurz zusammen.
Verkaufskanal | Kundengruppe | Preis-Regel | Preis |
---|---|---|---|
Verkaufskanal A | Standard-Kundengruppe | keine | 200 € |
Verkaufskanal B | Kundengruppe Shop B | Kunde Verkaufskanal B | 140 € |
Achtung, dieser Ansatz hat leider auch einen unerwünschten Effekt, der nicht sehr offensichtlich ist und gerne zur Verzweiflung bei der Fehlersuche bringen kann. Wenn Sie für beide Verkaufskanäle nun wie vorher beschrieben eine dynamische Produktgruppe erstellen, die, die Bedingung "Prozentuales Verhältnis Preis/Streichpreis" dafür nutzt.
Wenn wir nun hingehen und beim oberen Produkt unter Allgemein einen Streichpreis setzen ist die Erwartungshaltung, dass dieses Produkt in der Sale-Kategorie vom den Verkaufskanal A erscheint, jedoch nicht im Verkaufskanal B, da wir die erweiterten Preise nicht geändert haben.
Jedoch ist das Produkt auch auf dem Verkaufskanal B in der Sale-Kategorie, aber ohne Streichpreis, da wir diesen nicht gesetzt haben. Problem ist, dass die Bedingung von Shopware diesen Umstand nicht berücksichtigt. Setzen wir den Streichpreis nur für den Verkaufskanal B bei unserer Preisregel, funktioniert alles wir erwartet.
Eine Lösung, die jedoch langfristig zu Mehraufwand, ist für jeden Verkaufskanal eine Preisregel anzulegen und die Preise in der Allgemeinen-Preise-Kachel nicht zu nutzen. Damit erreichen wir den gewünschten Effekt.
Mit Währungsabhängigen Preisen
Meine Idee: die Währungsabhängige Preise könnte man auch dazu verwenden, um bei mehreren Shops unterschiedliche Preise zu pflegen. Der Vorteil, den ich gesehen habe, ist, dass diese einfacher zu pflegen wären und haben sicherlich einen guten Impact auf die Performance. Dazu habe ich eine weitere Währung erstellt. Jedoch stellte ich bereits hier die erste Einschränkung fest, der ISO-Code muss einmalig sein, was selbstverständlich korrekt ist, jedoch als Workaround für mich in Ordnung wäre.
Das zweite sehr unschöne Effekt für meinen Workaround ist, dass Shopware einen Twig Filter currency Shopware's twig functions | Shopware Documentation verwendet, der Abhängig vom ISO-Code die Darstellung im Fronend steuert. Was dazu führt, dass dieser Ansatz nur mit zusätzlicher individueller Entwicklung zum gewünschten Erfolg führen würde.
Im zweiten Verkaufskanal, dem ich die neue Währung als Standardwährung zugewiesen habe, stellt nun leider nicht wie gewünscht Euro oder das Eurosymbol dar, sondern macht einen Fallback auf den unbekannten ISO-Code. Damit ist dieser Workaround leider nicht so einfach umzusetzen, aber ich denke, dass die Resultate für den einen oder anderen da draußen hilfreich sein könnten und etwas Zeit für eigene Tests sparen.
Sie haben Fragen oder Feedback zum Artikel oder wollen sich zu Shopware Preisen austauschen? Ich freue mich über Ihre Kontaktaufnahme per Mail oder LinkedIn!
Über ditegra GmbH
Ihr strategischer Partner für E-Commerce Lösungen
Als zertifizierte Shopware-Agentur spezialisieren wir uns auf die Entwicklung, Gestaltung und Migration von Online-Shops mithilfe von Shopware 6, beginnend mit dem allerersten Veröffentlichungsdatum. Wir bieten ein umfassendes Spektrum an Dienstleistungen für Ihren Online-Shop – kein Projekt ist uns zu klein oder zu groß.
Als Shopware Silver Partner garantieren wir einen Rundum-Service, der die Planung und Realisierung neuer Shops, Shop-Migrationen, sowie die Entwicklung von Plugins und Templates umfasst. Darüber hinaus unterstützen wir Sie mit regelmäßigen Shop-Updates. Wir legen großen Wert auf eine ausführliche Beratung und sind stets Ihr erster Ansprechpartner.
Zusätzlich sind wir als akkreditiertes Beratungsunternehmen im Rahmen des „go-digital“ Förderprogramms des Bundesministeriums für Wirtschaft und Energie sowie „Handel 2030“ des Handelsverbandes tätig. Für kleine und mittlere Unternehmen bieten wir einen rückzahlungsfreien Digitalisierungszuschuss von 50 bis 60%.