Warum ein Staffelpreis nicht greift
Elf Stück kosten 8.800, zwölf kosten 9.000. Die Staffel gilt ab der Schwelle für alle Stück — nicht nur für die darüber. Wer das verwechselt, rechnet falsch.
Staffelpreise sind schnell angelegt und erstaunlich oft falsch verstanden. Wir haben nicht nachgelesen, wie sie funktionieren, sondern einen Warenkorb gebaut und die Zahlen abgelesen.
Die Messung
Demoprodukt mit zwei Staffeln, über die Store-API in verschiedenen Mengen in den Warenkorb gelegt:
| Menge | Stückpreis | Warenkorbsumme |
|---|---|---|
| 1 | 800 | 800 |
| 10 | 800 | 8.000 |
| 11 | 800 | 8.800 |
| 12 | 750 | 9.000 |
| 13 | 750 | 9.750 |
| 50 | 750 | 37.500 |
Die hinterlegten Staffeln in der Datenbank:
ab 1 bis 11: 800,00 brutto
ab 12 ohne Ende: 750,00 brutto
Der Punkt, an dem sich viele verrechnen
Bei zwölf Stück kostet jedes Stück 750 — auch das erste. Nicht elf Stück zu 800 plus eines zu 750.
Das ist die sogenannte Blockstaffel, und sie ist bei Shopware die Voreinstellung und die einzige Variante. Eine gleitende Berechnung, bei der nur die Einheiten oberhalb der Schwelle günstiger werden, gibt es nicht.
Die praktische Folge: Zwölf Stück kosten in Summe mehr als elf — 9.000 gegen 8.800 — obwohl der Stückpreis fällt. Das ist richtig gerechnet und für einen Kunden trotzdem irritierend, wenn er die Staffel kennt und einen Rabatt erwartet.
Wer das vermeiden will, legt die Schwelle so, dass der Sprung sich rechnet: Bei 800 auf 750 müsste die Staffel bei 12 statt bei 11 beginnen — was sie hier tut — oder der Abstand müsste größer sein.
Warum eine Staffel manchmal gar nicht greift
Jeder Staffelpreis in Shopware hängt an einer Regel. In der Demoinstallation ist das „Alle Kunden der Standard-Kundengruppe" mit Priorität 1.
Trifft die Regel nicht zu, wird der Staffelpreis nicht angewendet — und es gibt keinen Hinweis darauf. Kein Fehler, keine Warnung, der Kunde sieht schlicht den normalen Preis.
Die häufigsten Gründe, aus denen eine Regel nicht zutrifft:
| Ursache | wie man sie erkennt |
|---|---|
| Kunde gehört zu einer anderen Kundengruppe | Regelbedingung prüfen, Kundengruppe des Testkunden prüfen |
| Regel gilt nur für einen Verkaufskanal | Regelbedingung „Verkaufskanal" prüfen |
| Regel gilt nur ab einem Warenkorbwert | Bedingung auf den Warenkorb, nicht auf das Produkt |
| Regel ist inaktiv oder hat keine Bedingung | Regel öffnen und nachsehen |
Die Prüfung, die zwei Minuten dauert
Die Produktverwaltung zeigt, was hinterlegt ist. Der Warenkorb zeigt, was gilt. Das ist nicht dasselbe, und der Unterschied ist genau die Regel.
Der schnellste Test ohne Hilfsmittel: Produkt in den Warenkorb legen, Menge auf eins unter der Schwelle setzen, Preis notieren, Menge auf die Schwelle erhöhen, Preis erneut notieren. Ändert sich nichts, greift die Regel nicht.
Wer es programmatisch braucht, liest denselben Wert aus der Store-API:
POST /store-api/checkout/cart/line-item
{ "items": [ { "type": "product", "referencedId": "…", "quantity": 12 } ] }
→ lineItems[0].price.unitPrice
Das ist derselbe Wert, den die Storefront anzeigt — und er kommt aus derselben Berechnung.
Grenzen dieser Messung
Gemessen ist eine Staffel mit einer Regel. Was passiert, wenn zwei Regeln gleichzeitig zutreffen und beide einen Preis für dasselbe Produkt mitbringen, ist hier nicht gemessen — dafür entscheidet die Priorität der Regeln, und das ist eine eigene Frage.
Ebenfalls nicht gemessen wurde das Zusammenspiel mit Aktionen und Gutscheinen. Ein Rabatt kann auf den Staffelpreis aufsetzen oder ihn ersetzen; welches von beidem gilt, hängt an der Aktionskonfiguration und steht hier nicht zur Diskussion.
Häufige Fragen
- Gilt der Staffelpreis für alle Stück oder nur für die über der Schwelle?
- Für alle. Gemessen: Bei einer Staffel ab 12 Stück kosten zwölf Stück je 750 statt 800 — also 9.000 statt 9.600, nicht 11 mal 800 plus einmal 750.
- Warum greift meine Staffel nicht?
- Der häufigste Grund ist die Regel dahinter. Jeder Staffelpreis hängt an einer Regel, und wenn die für den aktuellen Kunden, seine Kundengruppe oder seinen Verkaufskanal nicht zutrifft, wird der Staffelpreis schlicht nicht angewendet — ohne Fehlermeldung.
- Wo sehe ich, welcher Preis wirklich gilt?
- Im Warenkorb. Die Store-API liefert den berechneten unitPrice je Position; in der Storefront steht derselbe Wert. Die Produktverwaltung zeigt nur, was hinterlegt ist.
- Kann ein höherer Gesamtpreis bei mehr Stück entstehen?
- Ja, an der Schwelle. Wenn die Staffel nur wenig günstiger ist, kostet eine Einheit mehr in Summe mehr — 11 mal 800 sind 8.800, 12 mal 750 sind 9.000. Das ist korrekt gerechnet und für Kunden trotzdem überraschend.
