Verschiedene Basispreise für Kundengruppen in Magento 1.7

Viele Händler haben den Wunsch, ihre Kunden in Kundengruppen einzuteilen und für diese Gruppen verschiedene Preise festzulegen. Die demnächst erscheinende Version Magento 1.7 bietet hier eine neue Funktion: es kann für jede Gruppe ein eigener Basispreis definiert werden.

Der bisherige Weg mit Magento 1.6 und älter

Wer bereits mit Magento arbeitet, fragt sich vielleicht: was soll da neu sein? Magento bietet bereits lange die Möglichkeit, Staffelpreise für Kundengruppen festzulegen. Da man einen Staffelpreis bereits für 1 Stück eingeben kann, kann man diese Funktion „missbrauchen“, um unterschiedliche Basispreise für verschiedene Kundengruppen einzupflegen.

Gehen wir im Beispiel von der folgenden Preisgestaltung aus (über den ökonomischen Sinn wollen wir hier nicht diskutieren ;)):

  • Nicht angemeldete Kunden zahlen € 9,99 pro Stück.
  • Angemeldete Kunden zahlen € 8,99 pro Stück.
  • Einzelhändler zahlen € 6,79 pro Stück.
  • Großhändler zahlen € 6,49 pro Stück.
  • Einzelhändler zahlen ab 10 Stück nur noch € 6,59 pro Stück.
  • Großhändler zahlen ab 10 Stück nur noch € 6,39 pro Stück.
  • Großhändler zahlen ab 50 Stück gar nur noch € 6,19 pro Stück.
  • Wenn irgend jemand tatsächlich mindestens 500 Stück bestellt, kommt er mit € 5,99 pro Stück davon.

In der Eingabemaske des Webshop-Backends sieht das so aus:

Jetzt wechseln wir in den Webshop und begutachten das Produkt als nicht angemeldeter Kunde.

Das Problem fällt schnell auf: der Basispreis des Produkts beträgt € 14,99. Ich bin in der Kundengruppe „NOT LOGGED IN“ und muss für 1 Stück nur € 9,99 zahlen. Auf der Kategorieseite und an der auffälligsten Stelle der Produktseite wird jedoch nur der Basispreis € 14,99 angezeigt. Dass mich das Produkt nur € 9,99 kostet, fällt nur bei genauem Hinsehen auf.

Um diese Darstellung zu korrigieren und den Einzelpreis für die Kundengruppe auffälliger zu gestalten, muss in die Logik von Magento eingegriffen werden. Damit entsteht eine Erweiterung, die bei der Installation von Aktualisierungen und anderen Erweiterungen getestet und gewartet werden muss.

Basispreise in Magento 1.7

An dieser Stelle kommt die neue Magento-Version ins Spiel. Hier können neben dem Basispreis und den Staffelpreisen weitere Basispreise für Kundengruppen hinterlegt werden.

Wir nehmen dieselben Preisregeln wie im vorigen Beispiel an und werfen einen Blick auf das Backend in Magento 1.7:

Die Kundengruppen-Basispreise werden im neuen Punkt „Group Price“ definiert.

Jetzt wechseln wir wieder in den Webshop und sehen uns die Anzeige für einen nicht angemeldeten Kunden an:

Die Darstellung gefällt uns schon besser. Man sieht sowohl auf der Kategorie- als auch auf der Produktseite, welchen Preis man als nicht angemeldeter Kunde erhält. Der Gruppenpreis wird sogar als Aktionspreis ausgelobt. Ob man das in seinen Shop haben will oder nicht, ist Geschmackssache. Eeinerseits handelt es sich dabei um einen Kaufanreiz, andererseits wird so mancher jeder Kundengruppe nur den eigenen Preis anzeigen wollen.

Basispreis, Gruppenpreis und Aktionspreis

Damit noch nicht genug der Preise: in Magento kann man zusätzlich zum Basispreis einen (zeitlich begrenzten oder dauerhaften) Aktionspreis angeben. Da wir gerade beobachtet haben, dass der Gruppenpreis als Aktionspreis gekennzeichnet wird, ist es interessant zu wissen, wo der Aktionspreis seinen Platz zwischen Basispreis und Gruppenpreis findet.

Hier drei verschiedene Fälle und die daraus resultierende Anzeige:

Fall 1:

  • Preis: € 14,99
  • Aktionspreis: € 11,99
  • Gruppenpreis: € 9,99

Anzeige:

  • Regulärer Preis: € 14,99
  • Aktionspreis: € 9,99
Fall 2:

  • Preis: € 6,99
  • Aktionspreis: € 11,99
  • Gruppenpreis: € 9,99

Anzeige:

  • Preis: € 6,99
Fall 3:

  • Preis: € 14,99
  • Aktionspreiss: € 6,99
  • Gruppenpreis: € 9,99

Anzeige:

  • Regulärer Preis: € 14,99
  • Aktionspreis: € 6,99

Fazit

Mit den Gruppenpreisen bringt die Version 1.7 eine nützliche, wenn auch nicht bahnbrechende neue Funktion. Bisher musste man selbst Hand anlegen, um die Grundpreise für verschiedene Kundengruppen vernünftig anzuzeigen. Das ist nun nicht mehr nötig.

24 Antworten

  1. Alfons sagt:

    Hallo Matthias,
    danke für Deinen Blog. Er ist hilfreich und wenn ich mir es leisten kann, werd ich gerne auch kommerziell mit LimeSoda kooperieren. Ihr wurdet mehrfach empfohlen, unter anderem vom Daniel Lang/Linz.
    Ich starte mit Retailing und hab die Gruppenpreise angelegt. Diese werden im Warenkorb allerding nicht angezeigt. Was ist falsch bzw. was muss ich noch einstellen?

    • Hallo Alfons,

      das ist ohne detaillierte Informationen schwer zu sagen. Wenn das Theme die Gruppenpreise unterstützt, sie richtig angelegt sind, man sich als Webshopkunde in der Kundengruppe befindet für die der Preis gilt und (sicherheitshalber) auch noch die Caches geleert sind sollten die Preise angezeigt werden.

  2. juhulian sagt:

    Hey,
    Danke für dein guten Beitrag, aber wenn ich Gruppenpreise hab und im Backend die Option ‚Automatische Zuordnung zu Kundengruppen aktivieren‘ aktiviert ist, dann funktionieren die Gruppenpreise im Warenkorb nicht mehr!

    Hast du irgend ein Idee wie man das Problem lösen könnte??

    Laut Bug-Trucker (http://www.magentocommerce.com/bug-tracking/issue/?issue=14208) hilft es die \app\code\core\Mage\Sales\Model\Observer.php entsprechend anzupassen, aber irgendwie funktioniert das bei mir nicht. Muss man auf was bestimmtes achten, wenn man Dateien unter app/code/core/ verändert? Außer das man somit die Update-Fähigkeit kaputt macht?

    Viele Grüße

    • Hallo,

      zum eigentlichen Problem habe ich im Bug-Tracker geantwortet (auch, warum es bei dir vielleicht nicht funktioniert).
      Zur Frage, wie man am besten die Observer-Methode anpasst, habe ich einen eigenen Beitrag geschrieben – das wäre für den Kommentar etwas lang geworden. 😉

      Matthias

  3. FAScholz sagt:

    Hallo Matthias,

    ich hätte so folgendem Example mal eine Frage:

    Kundengruppe 1 (Standard): regulärer Preis
    Kundengruppe 2 (Au Pair): vergünstigt – kann % sein, oder selbsteingetragen
    Kundengruppe 3 (Austausch): vergünstigt – kann ebenfalls entweder in % sein oder selbsteingetragen

    Wie würde man hier am besten vorgehen? Au Pair und Austausch haben jeweils eine eigene Kategorie in der Navi.

    Vielen Dank schonmal 😉

    • So ganz verstehe ich die Frage nicht, fürchte ich. Aber falls jede Kundengruppe eigene Kategorien und Preise hat, könnte man fast über getrennte Websites nachdenken.

  4. Soud sagt:

    Hallo Matthias,

    Kann die Community Edition diese Kundengruppeneinteilung / Staffelpreise unterstützen oder muss man dafür die Enterprise Edition nehmen??

    2. Frage: Was kostet die Enterprise Edition? Kann man die auch mieten?

  5. Dirk sagt:

    Gibt es auch eine Möglichkeit feste Rabatte für Kundengruppen zu geben? Auf die beschriebene Weise müsste ich jedem Artikel einen Gruppenpreis geben. Ich würde das aber lieber pauschal angehen, d.h. z.B. Kundengruppe Großhandel erhält 20%
    Gibt es da auch was?

  6. Eva sagt:

    Wir haben das über Magmi gelöst. Funktioniert einwandfrei.
    lg
    eva

  7. Manuel Schäfer sagt:

    Die Group-Prices lassen sich leider noch nicht so einfach per CSV importieren. Oder gibt es da mittlerweile eine Möglichkeit?

  8. Eva sagt:

    Hallo!

    Wenn ich bei Preis einen kleineren Preis eingebe als nachher bei einem Gruppenpreis wird nur der geringere Preis angezeigt, nicht der Gruppenpreis.

    Muss das aber leider so einstellen, da für einen Inhousemonitor natürlich der selbe Shop verwendet werden soll, diese Preise aber höher als die Preise im „normalen“ Webshop sind.

    Bitte, bitte um Hilfe!!!!

  9. Patrick S. sagt:

    Die Funktion der Kundengruppenpreise finde ich sehr gut. Allerdings möchte ich auch nur diesen Preis anzeigen und nicht mehr den regulären. Wäre dankbar für jede Realisationshilfe.

    Vielen Dank und mit freundlichem Gruß
    Patrick S.

    • Eine einfache Lösung ist mir dafür leider nicht bekannt.

      Wenn es nur um die Anzeige geht, kann man die Datei app/design/frontend/base/default/template/catalog/product/price.phtml in das eigene Theme kopieren und die entsprechenden Zeilen bearbeiten. Mit den Standardeinstellungen ist der else-Zweig ab ca. Zeile 332 betroffen. Allerdings beeinflusst das auch die Darstellung anderer Aktionspreise. Zudem müssen andere Stellen angepasst werden, wenn gruppierte Produkte zum Einsatz kommen oder anderen Einstellung bzgl. der Anzeige von Steuern etc. vorgenommen werden.

      Je nach Anforderung des Shops kann es nötig sein, die Preisfindung entsprechend anzupassen, so dass der normale eingegebene Preis überhaupt nicht mehr berücksichtigt wird. Das macht die Umsetzung aber noch komplexer.

  10. Daniel Sasse sagt:

    Ein sehr schöner Beitrag der den bisherigen wie auch neuen Workflow bei der Preispflege anhand eines praxisrelevanten Beispiels veranschaulicht. Danke dafür!

    Mein persönliches Highlight unter Magento 1.7 ist die neue Backupmöglichkeit. (wahlweise nur DB wie bisher, DB + media Ordner oder eben kompletter Snapshot des ganzen Shops) – man hat über den Connect Manager, im Adminbereich über System->Tools und über System->Configuration darauf zugriff. In letzteren Bereich kann man die Backups per CronJob automatisiert einleiten.

    Ich freue mich auf Magento 1.7 schon jetzt, zumindest dann wenn die Features aus den Vorschauversionen dann noch Bestandteil der Community Version sind.

    Nice Weekend! 🙂

    Daniel

    • Gern geschehen!
      Die Backupmöglichkeit finde ich auch ziemlich gelungen. Dazu möchte ich auch noch etwas schreiben. Bisher kam ich nur zu den Screenshots. 🙂
      Dir ebenfalls ein schönes Wochenende!

  1. 15.03.2012

    […] von Magento 1.7 vorgestellt: da hatten wir die automatische Generierung von Gutschein-Codes, verschiedene Basispreise für Kundengruppen, eine erweiterte Backup- und neue Rollback-Funktionalität, die automatische Überprüfung der UID […]

  2. 12.02.2013

    […] Am 12. Februar 2013 von Matthias Zeis/* Dirk fragte in den Kommentaren zu meinem Artikel “Verschiedene Basispreise für Kundengruppen in Magento 1.7“:Gibt es auch eine Möglichkeit feste Rabatte für Kundengruppen zu geben? Auf die […]

  3. 30.08.2013

    […] juhulian hat gestern in den Kommentaren gefragt: […]