SalesRepresentative 1.3.0 Help

SalesRepresentative

Das Leoparden SalesRepresentative Plugin (Vertretererweiterung) macht aus einem Kunden einen Vertreter für andere Kunden: Der Vertreter sieht die ihm zugeordneten Kunden und deren Bestellungen im Storefront-Konto, pflegt ein eigenes Profil samt Bild, bestellt im Checkout im Namen seiner Kunden und kann deren Liefer- und Rechnungsadressen verwenden. Die Zuordnung erfolgt manuell, per E-Mail-Einladung oder automatisch über einen AffiliateCode in der URL.

Auf einen Blick

Bereich

Kurzbeschreibung

Datenmodell

leoparden_sales_representative (Profil, 1:1 zum Kunden) mit den Aggregaten _affiliate_code, _customers (Junction Kunde ↔ AffiliateCode) und _order_extra (warenkorb-token-bezogene Checkout-Daten)

Zuordnung

Custom-Field leoparden_sales_representative_field (Mehrfach-Auswahl von Kunden) plus AffiliateCodes; automatische Zuordnung über URL-Parameter und E-Mail-Einladung

Kontext

SalesChannelContextSubscriber hängt bei jedem Context-Aufbau Vertreter, aktiven AffiliateCode und Order-Extra als Extensions an den Kunden — inklusive Firmen-Auflösung (leoparden_current_company)

Store-API

Sechs Store-API-Routes (Vertreter, Kunden, AffiliateCodes, Order-Extra, Zusatzadressen, Zuordnung) im 6.7-Caching-Modell (_entity + _httpCache + CacheInvalidator)

Checkout

„Als Kunde bestellen", Übernahme der Kundenadresse als Liefer-/Rechnungsadresse, Kundenadress-Dropdown

Administration

Eigenes Vertretermodul + „Vertreter"-Tab am Kunden; Vertreter sind in der Suche als eigener Typ auffindbar

Integrationen

Erweiterungen für Gläserner Auftrag (BusinessTransactions) und BusinessCustomProducts über eigene CMS-Elemente

Mails

Mail-Template-Type sales_representative_mail + Flow-Event CustomerInviteEvent für die Einladungs-Mail

Begriffe

Vertreter (SalesRepresentative)

Ein Kunde, zu dem ein leoparden_sales_representative-Eintrag existiert. Der Eintrag hält die Profil- und Kontaktdaten, eine Vertreteradresse und das Profilbild (media). 1:1 zum Kunden über customer_id.

Zuordnung

Verknüpfung „Kunde gehört zu Vertreter". Technisch über das Custom-Field leoparden_sales_representative_field (Mehrfach-Auswahl von Kunden) bzw. über die Junction-Tabelle leoparden_sales_representative_customers, die einen Kunden an einen AffiliateCode eines Vertreters bindet.

AffiliateCode

Ein vom Vertreter geführter Code (leoparden_sales_representative_affiliate_code). Über einen URL-Parameter oder eine Einladung wird ein Kunde an einen AffiliateCode — und damit an den Vertreter — gebunden. Ein Vertreter kann mehrere Codes besitzen.

Order-Extra

Pro Warenkorb-token geführter Datensatz (leoparden_sales_representative_order_extra) mit den im Checkout gewählten Liefer-/Rechnungsadressen und dem aktiven AffiliateCode. Trägt den Zustand für „Als Kunde bestellen".

Als Kunde bestellen

Cart-State leoparden_sales_representative_orders_as_customer. Ist er gesetzt, wird die Bestellung dem Kunden statt dem Vertreter zugeschrieben. Steuerbar nur, wenn der Vertreter administrativ dafür freigeschaltet ist.

Firma (leoparden_current_company)

Optionale Integration mit dem Firmen-Plugin: Ist ein Kunde Teil einer Firma, gilt die Firma als „effektiver" Vertreter/Kunde. Das Plugin löst durchgängig über getExtension('leoparden_current_company')?.getCompany() ?? customer auf.

Inhalt

  • Installation — Plugin installieren, Custom-Fields, Medienordner und Mail-Template

  • Administration — Vertretermodul, Kunden-Tab, Berechtigungs-Felder und Konfiguration

  • Frontend — Konto-Bereich, Vertreterprofil, Einladung, Kundenansicht und Checkout

  • Entwickler-Übersicht — Datenmodell, Store-API-Caching, Subscriber und Erweiterungspunkte

Voraussetzungen

  • Shopware 6.7 (composer.json pinnt ~6.7)

  • PHP 8.2+

  • leoparden/plugin-license-manager (Runtime) — wird vom Plugin-Loader aufgelöst

  • Optional: Gläserner Auftrag (BusinessTransactions) und BusinessCustomProducts für die zugehörigen CMS-Elemente; optional ein Firmen-Plugin für die leoparden_current_company-Auflösung

Lizenz und Vertrieb

Proprietär · Die Leoparden GmbH · leoparden.net

Last modified: 10 August 2026