Debitorenpreisfindung / Zeilenrabatte

Benötigte Lesezeit: 5 Minuten


Einleitung

Mit diesem Modul setzte man umfangreiche Preisfindungsregeln und Rabattregelungen im PepperShop um. Es wird ein PepperShop in der Enterprise Version benötigt.

Im Gegensatz zu den Zeilenrabattierungsregeln, die erst im Warenkorb angezeigt werden, läuft die Debitorenpreisfindung schon im Artikelkatalog und zeigt somit jedem angemeldeten Kunden oder deren Gruppen sofort ihren eigenen Preis.

Preisfindungsregeln sind sehr flexibel einsetzbar und werden pro Kunde, Debitorenpreisgruppe, Währung und Datum festgelegt.

Per Import kann man komplette Preisfindungsregelungen aus ERP-Systemen übernehmen und den Shop somit periodisch aktualisieren (CSV basiert).

Info 1: Zusätzlich zu diesem Debitorenpreisfindungsmodul gibt es ab Stufe PepperShop Professional auch noch das Modul Preisfindung1. Mit diesem Modul kann man auf Basis von programmierten Preisfindungsregeln weitere Steuerungsmechanismen umsetzen.

Info 2: Zusätzlich kann man mit dem Enterprise Modul Best Price Findung1 ein System im PepperShop in Betrieb nehmen, welches den jeweils besten Preis für den Kunden ausfindig macht (Aktion / Mengenrabatte / Gutscheinkampagnen / …)

Funktionsweise des Moduls

Beschreibung der Anwendung

Die Preisfindung ist ziemlich tief im Shopsystem verankert, so dass es neben dem Artikelkatalog auch für die Artikelsuche, die Produktportalexporte und den Bestell- und Bezahlprozess gültig ist.

Dieses Modul bietet den CSV-basierten Regelimport für Preisdefinitionen und Rabattdefinitionen. CSV Daten werden z.B. via Excel als Tabelle erfasst und als CSV-Datei exportiert gespeichert. Dabei referenziert man Artikel, Artikelrabattgruppen, Kunden (Debitoren) und Debitorenpreisgruppen oder Debitorenrabattgruppen.

Zuordnung der Daten

Die Zuordnung der Artikel und der Kunden erfolgt über die Zuweisung von sogenannten Gruppenfeldern oder der jeweiligen ID. Sobald das Modul installiert ist, erscheint in der Shop-Administration folgender Zusatz in den Masken:

Artikel:

  • Rabattgruppen

Kunde:

  • Debitorennummer
  • Debitorenpreisgruppe
  • Debitorenrabattgruppe

Auf diese Weise können Sie Ihr Sortiment in Rabattgruppen einteilen und Ihre Kunden in die Debitorenpreisgruppen oder - rabattgruppen (Bronze Silber, Gold und Standard -> keine Gruppe) einordnen.

Unterschied von Preisfindung und Rabattierung

Noch ein Absatz zum Unterschied zwischen Preisfindung und Rabattierung:

  • Mit Preisfindungsregeln sehen Personen nach ihrem Login sofort ihre eigenen Preise. Das ist sehr intuitiv, so dass ein Gold Member z.B. gleich sofort alle Artikelpreise angepasst sieht, nicht erst als Rabatt im Warenkorb.
  • Zeilenrabattregeln werden als Rabattierungen im Warenkorb ausgewiesen.

Anlieferung der Regeln

Die Regeln werden in einer CSV-Datei angeliefert. CSV-Dateien entsprechen Excel Tabellen, welche unter diesem Format gespeichert worden sind.

Pro Zeile wird eine Regel angeliefert. Dabei können Sie Preise pro Produkt, Währung, Zeitraum, Menge (Staffelung) definieren, die Sie dann an einen Kunden, eine Kundengruppe oder für alle freigeben. Je enger die Zielgruppe (Geltungsbereich der Regel), desto höher priorisiert ist die Regel.

Weiter wird pro Regel festgelegt, ob der Preis auch noch rabattiert werden darf (Zeilenrabattregel). Das System versucht auf Grund einer Best-Price Findung auch den gewünschten Preis anzuzeigen und verwirft sich kontradiktierende Regeln (Aktion günstiger als Gruppenpreis, …).

Preisfindung als Excel Datei definieren

Preisfindungsregeln werden unmittelbar angewendet und sind bereits im Artikelkatalog ab Stufe Artikelliste sichtbar.

Nun folgt die Beschreibung der Spalten einer Excel Datei die man als Preisfindung im CSV-Format an den Shop anliefern kann:

CSV-Spaltenname Datentyp Bemerkungen
Verkaufsart enum('Debitor', 'Debitorenpreisgruppe', 'Alle Debitoren') 1
Verkaufscode varchar(255) Debitorennummer bei Verkaufsart ‘Debitor’ Debitorenpreisgruppe bei Verkaufsart Debitorenpreisgruppe1
Artikel-Nr varchar(255) 1
Waehrung char(3) chf,usd,eur,…1
Mindestbestellmenge double
Preis double 1
Aktiv von datetime(jjjj-mm-tt hh:mm:ss) ..oder date(jjjj-mm-tt)
Aktiv bis datetime(jjjj-mm-tt hh:mm:ss) ..oder date(jjjj-mm-tt)
Zeilenrabatt erlaubt enum('true', 'false')

Die Datei wird in der Shop-Administration im Caller Navigator bei set_debitorenpreise angeliefert. Siehe auch Kapitel Preisdaten anliefern.

Zeilenrabatte als Excel Datei definieren

Zeilenrabatte werden erst im Warenkorb sichtbar.

CSV-Spaltenname Datentyp Bemerkungen
Verkaufsart enum('Debitor', 'Debitorenrabattgruppe', 'Alle Debitoren') 1
Verkaufscode varchar(255) Debitorennummer bei Verkaufsart Debitor Debitorenrabattgruppe bei Verkaufsart Debitorenrabattgruppe 1
Art enum('Artikel', 'Artikelrabattgruppe') 1
Code varchar(255) Artikel-Nr bei Art Artikel Artikelrabattgruppe bei Art Artikelrabattgruppe 1
Waehrung char(3) Währungs-Code chf,eur,usd,… leer für Rabatte unabhaengig von der Währung 1
Mindestbestellmenge double
Zeilenrabatt double Rabatt in % (0 bis 100)
Aktiv von datetime(jjjj-mm-tt hh:mm:ss) ..oder date(jjjj-mm-tt)
Aktiv bis datetime(jjjj-mm-tt hh:mm:ss) ..oder date(jjjj-mm-tt)
Rabattyp varchar(255) frei verwendbar

Die Datei wird in der Shop-Administration im Caller Navigator bei set_zeilenrabatte angeliefert. Siehe auch Kapitel Preisdaten anliefern.

Preisdaten anliefern

Import der erstellten CSV-Datei via Shop-Administration → Import/Export → Caller-Navigator.

Im folgenden Screenshot sieht man den relevanten Teil der Importmöglichkeiten:

Abbildung 1: Beispielanzeige für Import der Preisfindungsdaten (Excel Exporte)

Installation

Voraussetzungen

Um das Debitorenpreisfindung/Zeilenrabatte Modul einsetzen zu können, ist ein PepperShop Enterprise ab Version 6.0 erforderlich.

Dateien kopieren und hochladen

Das Modul besteht im Wesentlichen aus drei Dateien, die man in seinen installierten PepperShop kopieren muss (enthält das Standard PepperShop Preisfindungsmodul). Dazu entpackt man zuerst das mitgelieferte ZIP-Archiv. Es sind folgende Dateien enthalten, hier mit den Zielverzeichnissen dargestellt:

{shopdir}/shop/debitorenpreise.def.php
{shopdir}/shop/preisfindung.def.php
{shopdir}/shop/preisfindung_helper.def.php

Die Dateien lassen sich einfach via FTP oder SCP zum Webserver hochladen. Der Platzhalter {shopdir} steht dabei für das Shopverzeichnis auf dem Webserver, wo die Datei index.php zusammen mit README.txt zu finden ist.

Modulinstallation

Nach dem Kopieren der Dateien steht das Modul unmittelbar zur Anwendung bereit.

Aktivierung / Deaktivierung / Basiskonfiguration

Es gibt eine zentrale Konfigurationssteuerung für die Aktivierung und Deaktivierung dieses Moduls:

Datei: {shopdir}/shop/config.inc.php

PREISFINDUNG_VERWENDEN (default = false)
Wenn das Preisfindungs Modul installiert ist, kann man mit dieser Konstante steuern, ob eine spezielle Preisfindung für Artikelpreise durchgeführt werden soll

Wenn bei der Konstantendefinition von PREISFINDUNG_VERWENDEN ein false steht, ist das Modul deaktiviert und alle Programmierungen werden nicht verwendet. Steht dort ein true, ist das Modul aktiv.

Mit folgender Steuerungskonstante wird allenfalls die Preisfindung für die Artikelliste ausgeschaltet. Dies sollte man sich gut überlegen. Der Defaultwert ist = true (eingeschaltet). Man spart lediglich Performance.

PREISFINDUNG_AUF_ERSTER_STUFE_VERWENDEN (default = true)
Wenn das Preisfindungs Modul installiert und aktiviert ist, kann man mit dieser Konstante steuern, ob die Preisfindung bei aktivierter, zweistufiger Artikeldarstellung auch auf der ersten Artikelstufe (tabellarische Uebersichtsdarstellung aller Artikel einer Kategorie) angewendet werden soll. Wenn z.B. externe Calls in ERP-Systeme anfallen, moechte man hier ev. false verwenden - dann sieht der Kunde zwar erst bei der Detailansicht ‘seinen’ Preis, dafuer ist die Performance ok.

PepperShop Enterprise API Referenz

Dokumentation / API:

Bitte öffnen Sie diese Seite im Browser.

Öffnen Sie das PDF Dokument Datenaustausch API (Direktlink)

Gehen Sie hier zum Kapitel 11 auf Seite 14 / 15 / 16. Dort finden Sie die Beschreibung der beiden Calls:

  • set_debitorenpreise
  • set_zeilenrabatte (Rabattierungen)

🌶️
🔥
🌶️