Der Rechenweg

Zu jeder Bestellung schreibt das Plugin auf, wie es gerechnet hat: welche Sätze zur Wahl standen, welcher gewonnen hat und warum. Dieses Kapitel liest das Protokoll Zeile für Zeile und beschreibt jede Verzweigung, die es nehmen kann.

Das Protokoll

Wo es steht

An zwei Stellen, beide mit demselben Inhalt. Der Text steht in einem Feld zum Kopieren, damit du ihn in eine Rückfrage einfügen kannst.

In der Partnerakte
Statistiken → Bestellungen → Kontextmenü der Zeile → Protokoll anzeigen
An der Bestellung
Bestellung öffnen → Reiter Provisionen
Voraussetzung
Die Einstellung Berechnung der Provision für jede Bestellung protokollieren, ab Werk aktiv
Überschrift
Protokoll zur Berechnung der Provision

Ein vollständiges Beispiel

Bestellung 10024 aus dem Demoshop, 235,21 € Umsatz, Ergebnis 11,76 €. Der Partner hat einen Satz von 10 Prozent, bekommt aber 5. Warum, steht im Protokoll.

calculation commission for order - id: 01a06496e4087167a5d076249c9abfc7 - number: 10024 - tax status: gross - level: 1
-- reading if order is subsequent order
-- -- looking for previous commissioned order for customer
-- -- previous order with redeemable commission found - order number: 10013 - is subsequent order: true
-- is subsequent order: true
-- firing commission calculator pre-calculation event
-- switching by commission type - affiliate commission type: percental
-- -- individual commission disabled by configuration - configuration individualProductCommissionStatus: false
-- -- calculating commission rate
-- -- -- calculating static commission rate - customer commission: null - product commission: null - category commission: null - product stream commission: null - subsequent commission: 5 - affiliate commission: 10 - configuration commissionPriority: default
-- -- -- sorted and filtered rates: Array ( [0] => 5 [1] => 10 )
-- -- -- selecting default/first rate by priority - rate: 5
-- -- commission rate calculated - rate: 5
-- -- calculating commission - order amount: 235.21
-- -- commission calculated - commission: 11.76
-- commission calculated by commission calculator - calculated commission: 11.76
-- firing commission calculator event
-- commission possibly re-calculated due to fired event - calculated commission: 11.76
-- calculated commission: 11.76

Die Einrückung mit Strichen zeigt die Verschachtelung: je tiefer, desto weiter innen im Ablauf. Die oberste Ebene sind die Schritte, die zweite ihre Teilschritte.

Der Ablauf, Schritt für Schritt

Zeile 1: Was überhaupt gerechnet wird

calculation commission for order - id: … - number: 10024 - tax status: gross - level: 1

number
Die Bestellnummer, damit das Protokoll ohne Kontext zuzuordnen ist
tax status
Brutto oder Netto der Bestellung. Bestimmt, auf welchen Betrag gerechnet wird
level
Die Ebene. Ohne das MLM-Zusatz-Plugin immer 1, mit ihm 1 bis 5

Abbruch 1: die eigene Bestellung

Sind Besteller und Partner derselbe Kunde und ist Provision für eigene Bestellungen abgeschaltet, endet die Berechnung sofort mit null. Im Protokoll steht dann self commission disabled by configuration und darunter calculated commission: 0.0.

Einstellung
Partner erhalten Provision für eigene Bestellungen
Ab Werk
aktiv, die eigene Bestellung zählt also mit
Achtung
Der Vergleich läuft über das Kundenkonto. Bestellt ein Partner als Gast, greift diese Bremse nicht

Schritt 2: Ist es eine Folgebestellung?

Das Plugin sucht für denselben Kunden nach einer früheren Bestellung mit einlösbarer Provision. Wird es fündig, notiert es die Bestellnummer und setzt den Fall auf wahr.

Gefunden
previous order with redeemable commission found - order number: 10013
Nicht gefunden
no previous order with redeemable commission found - is subsequent order: false
Gastkonto
customer is guest account - is subsequent order: false. Für Gäste gibt es keine Folgebestellung

Abbruch 2: Folgebestellungen abgeschaltet

Ist die Bestellung eine Folgebestellung und sind Folgebestellungen nicht provisionsfähig, endet die Berechnung hier mit null. Das ist die Einstellung, mit der aus der Provision eine einmalige Prämie je gewonnenem Kunden wird.

Protokoll
commission for subsequent order disabled by configuration
Ergebnis
calculated commission: 0.0
Ab Werk
Folgebestellungen zählen mit

Schritt 3: Nach Provisionsart verzweigen

switching by commission type - affiliate commission type: percental. Ab hier rechnet je nach Art ein anderer Rechner, und die Protokollzeilen darunter unterscheiden sich.

percental
Prozentual auf den Bestellbetrag
absolutePerOrder
Fester Betrag je Bestellung
absolutePerPiece
Fester Betrag je Stück, also mit der Menge multipliziert

Der Satz

Ein Schalter für vier Quellen

Die Sätze an Kunde, Produkt, Kategorie und dynamischer Produktgruppe hängen an einer einzigen Einstellung, nicht an vieren. Steht sie aus, überspringt die Berechnung alle vier und vermerkt das: individual commission disabled by configuration - configuration individualProductCommissionStatus: false.

Einstellung
Individuelle Provision für Kunden, Kategorien, Produkte und dynamische Produktgruppen aktivieren
Ab Werk
aus
Folge
Ohne sie bleiben nur Folgebestellungs- und Partnersatz übrig

Die feste Reihenfolge

Alle Kandidaten werden in einer im Code verdrahteten Reihenfolge gesammelt. Nicht gesetzte Sätze stehen als null im Protokoll und fallen dann heraus; die Reihenfolge der übrigen bleibt erhalten.

1. Kunde
Ein Satz für einen bestimmten geworbenen Kunden
2. Produkt
Ein Satz am einzelnen Artikel
3. Kategorie
Ein Satz an einer Kategorie
4. Dynamische Produktgruppe
Ein Satz an einer Produktgruppe
5. Folgebestellung
Der eigene Satz für Folgebestellungen dieses Partners
6. Partner
Der Grundsatz des Partners. Steht ganz hinten

Im Beispiel bleiben nach dem Filtern [0] => 5 und [1] => 10 stehen: der Folgebestellungssatz vor dem Partnersatz.

Die Priorität entscheidet

Erst jetzt wählt die Einstellung Priorität für mehrere Provisionssätze aus, welcher der übrigen Sätze gewinnt.

Höchste Priorität
Der erste Satz der Reihenfolge. Protokoll: selecting default/first rate by priority
Höchster Provisionssatz
Der größte Wert. Protokoll: selecting highest rate by priority
Niedrigster Provisionssatz
Der kleinste Wert. Protokoll: selecting lowest rate by priority
Ab Werk
Höchste Priorität

Die häufigste Verwechslung. „Höchste Priorität" meint die Position in der Reihenfolge, nicht die Höhe des Satzes. Genau deshalb bekommt der Partner im Beispiel 5 statt 10: Der Folgebestellungssatz steht vor dem Partnersatz. Wer wirklich immer den größten Wert will, wählt „Höchster Provisionssatz".

Zwei weitere Prioritäten, eine Ebene tiefer

Liegt ein Produkt in mehreren Kategorien oder in mehreren dynamischen Produktgruppen, gibt es innerhalb dieser Quelle mehrere Kandidaten. Zwei eigene Einstellungen lösen das auf, bevor der Wert in die große Reihenfolge eingeht.

Priorität für Provisionen von Kategorien
Niedrigste oder höchste Provision. Ab Werk höchste
Priorität für Provisionen von dynamischen Produktgruppen
Niedrigste oder höchste. Ab Werk höchste
Verhältnis
Sie wirken vor der Priorität für mehrere Provisionssätze, nicht statt ihrer

Der Betrag

Vom Satz zum Euro

calculating commission - order amount: 235.21 und darunter commission calculated - commission: 11.76. Der Bestellbetrag ist der Nettowarenwert ohne Versandkosten; der Steuerstatus aus der Kopfzeile bestimmt, wie er ermittelt wird.

Rechnung im Beispiel
5 % von 235,21 = 11,7605, gerundet 11,76
Fremdwährung
Wird auf die Standardwährung des Shops umgerechnet
Versand
Zählt nicht mit

Zwei Ereignisse für eigenen Code

Vor und nach der Berechnung feuert je ein Ereignis. Das Protokoll hält beide fest und weist den Wert danach noch einmal aus, damit sichtbar bleibt, ob ein Listener ihn verändert hat.

Vorher
firing commission calculator pre-calculation event
Nachher
firing commission calculator event
Kontrolle
commission possibly re-calculated due to fired event - calculated commission: …
Wofür
Eigene Regeln, ohne das Plugin zu ändern

Die Angaben auf dieser Seite entstehen unmittelbar aus der Konfiguration des Plugins. Ändert sich eine Einstellung im Plugin, ändert sich diese Seite mit.

← Zurück zum Handbuch

Häufige Fragen

Kann ich nachvollziehen, wie eine Provision zustande kam?

Ja, vollständig. Das Plugin schreibt zu jeder Bestellung ein Protokoll der Berechnung, Zeile für Zeile, mit jedem Zwischenwert. Du öffnest es in der Partnerakte unter Statistiken, Bestellungen über das Kontextmenü der Zeile mit "Protokoll anzeigen", und ebenso an der Bestellung selbst im Reiter Provisionen. Es beantwortet nicht nur wie viel, sondern warum.

In welcher Reihenfolge werden die Provisionssätze geprüft?

In einer festen, im Code verdrahteten Reihenfolge: Kunde, Produkt, Kategorie, dynamische Produktgruppe, Folgebestellung, Partner. Nicht gesetzte Sätze fallen heraus, die Reihenfolge der übrigen bleibt. Erst danach entscheidet die Einstellung Priorität, welcher davon gewinnt.

Was bedeutet die Priorität "Höchste Priorität"?

Sie meint die Position in der Reihenfolge, nicht die Höhe des Satzes. Es gewinnt der erste gesetzte Satz der festen Reihenfolge, also im Zweifel der Kundensatz und zuletzt der Partnersatz. Wer wirklich den höchsten Wert will, wählt "Höchster Provisionssatz". Diese Verwechslung ist die häufigste Fehlerquelle bei der Einrichtung.

Warum bekommt ein Partner weniger als seinen eigenen Satz?

Weil ein anderer Satz vorne stand. Steht ein Satz für Folgebestellungen auf 5 Prozent und der Partnersatz auf 10, gewinnt bei der Priorität "Höchste Priorität" die 5, sobald die Bestellung als Folgebestellung erkannt wurde. Das Protokoll zeigt genau diesen Schritt.

Wann gilt eine Bestellung als Folgebestellung?

Wenn für denselben Kunden bereits eine frühere Bestellung mit einlösbarer Provision existiert. Das Plugin sucht danach und schreibt die gefundene Bestellnummer ins Protokoll. Gastkonten sind ausgenommen: Für sie ist eine Bestellung nie eine Folgebestellung.

Wann ist die Provision null?

An zwei Stellen bricht die Berechnung sofort ab. Erstens, wenn Besteller und Partner derselbe Kunde sind und Provision für eigene Bestellungen abgeschaltet ist. Zweitens, wenn es sich um eine Folgebestellung handelt und Provision für Folgebestellungen abgeschaltet ist. Beide Abbrüche stehen mit ihrem Grund im Protokoll.

Sind die Sätze an Produkt und Kategorie ab Werk aktiv?

Nein. Ein einziger Schalter, "Individuelle Provision für Kunden, Kategorien, Produkte und dynamische Produktgruppen aktivieren", gibt alle vier gemeinsam frei und steht ab Werk auf aus. Ist er aus, überspringt die Berechnung diese vier Quellen vollständig und das Protokoll vermerkt das.

Was passiert, wenn ein Produkt in mehreren Kategorien liegt?

Dann greift eine zweite Priorität, getrennt für Kategorien und für dynamische Produktgruppen. Beide stehen ab Werk auf "Höchste Provision". Sie lösen den Konflikt innerhalb einer Quelle auf, bevor der so ermittelte Wert in die große Reihenfolge eingeht.

Kann ich in die Berechnung eingreifen?

Ja, über zwei Ereignisse. Eines feuert vor der Berechnung, eines danach; das Protokoll hält beide fest und weist den Wert nach dem zweiten Ereignis noch einmal aus. Eigener Code kann die Provision damit verändern, ohne das Plugin anzufassen.

Wo wird das Protokoll gespeichert?

An der Bestellung, sobald die Einstellung "Berechnung der Provision für jede Bestellung protokollieren" aktiv ist. Sie steht ab Werk auf an. Ohne sie bleibt bei einer Rückfrage nur Raten, deshalb sollte sie anbleiben.