Produkt-Anbieter

Dokumentation zu Produkt-Anbietern / Verkäufern

Short Facts

  • Ermöglich Ihnen, alternative Verkäufer für Ihre Produkte direkt im Shop zu integrieren.
  • Anbieter legen ihre eigenen Preise und verfügbaren Mengen fest und können auf Wunsch nach Produkt-Zuständen gruppiert werden (z.B. neu/gebraucht)
  • Regionale Einschränkung des Verkaufsgebietes optional möglich.
  • Kunde kann zwischen allen verfügbaren Anbietern wählen und anbieterübergreifend bestellen.
  • Kundenbestellung lässt sich anschließend in anbieterspezifische Unterbestellungen aufteilen.

Anbieter & Ihre Produktpreise

  • Anbieter-Preise erweitern Ihre bestehenden Produkt-Stammdaten.
  • Pro Produkt und Zustand kann jeder Anbieter seine eigenen Preise (auch als Staffelpreise) und Bestände festlegen.
  • Datenerweiterung durch eigene Beschreibungstexte etc. sind möglich.
  • Shop-Produktdaten werden um Informationen zu Anbieter-Preisen erweitert (min/max-Preise, Anzahl verfügbarer Anbieter)
  • Verkaufsgebiete können pro Anbieter-Preis festgelegt werden.
  • Anbietern zugewiesene Kundenkonten ermöglichen z.B. die direkte Abrechnung direkt in der eCommerceSuite.

Verkaufsgebiete

  • Kombination aus Typ (z.B. "country", "zip", "street"), Code (z.B. "DE","20459") und Name legt ein Gebiet fest
  • Verkaufsgebiete können beliebig detailliert festgelegt werden (z.B. Europa, Deutschland, Hamburg...)
  • Durch Verschachtelung von Gebieten können Speicherung in Baumstruktur erlaubt Anbieter-Preis-Zuweisung auf jedem Level

Installation

Die Installation lässt sich einfach über das Backend des eCMS unter Administration > eCMS Plugins durchführen.

 

Konfiguration

Zur Konfiguration der Anbieter, Ihre Preise und zugehörigen Verkaufsgebiete lässt sich einfach über das Bachend der eCommerceSuite durchführen.

Anbieter

Im Menü Produkte > Anbieter des eCommerceSuite Backend können Sie Ihre Anbieter verwalten und neue anlegen oder importieren.

Legen Sie zuerst Kundenkonten für ihre Anbieter an, um diese direkt zuweisen zu können. Über dieses können Sie später z.B. eigene Abrechnungen für den Anbieter durchführen.

Legen Sie für jeden Anbieter mindestens das Feld Anbieter­name fest. Dies ist der öffentliche Name, unter dem er im Shop angezeigt wird.

Über das Flag Aktiv schalten Sie einen Anbieter für die Anzeige im Shop-Frontend frei.

Produkte & Preise der Anbieter

Im Menü Produkte > Anbieter > Anbieterpreise des eCommerceSuite Backend können Sie Ihre Anbieterpreise verwalten und neue anlegen oder importieren.

Die sowohl für ihren eigenen Shop als auch die verschiedenen Anbieter geltenden generellen Produktinformationen pflegen Sie wie gewohnt über die Produktdaten. Über die Anbieterpreise werden nur die besonderen Daten des konkreten Anbieter-Angebots ergänzt.

Wählen Sie mindestens den Anbieter und das Produktcode des Ausgangsproduktes aus.
Über den Zustand können Sie das konkrete Angebot weiter spezifizieren, falls Sie z.B. sowohl Neuware als auch gebrauchte Artikel anbieten möchten.

Legen Sie den Preis des Angebotes fest und geben Sie die Verfügbare Menge an. Falls Sie keine Menge angeben, wird ein unendlicher Bestand angenommen.
Über den Status geben Sie den konkreten Anbieterpreis für die Nutzung im Shop-Frontend frei.

Zustände

Die normierten Zustände werden zum Gruppieren der Anbieterpreise im Shop verwendet.
Über die Systemvariable PRICE_MERCHANT_CONDITIONS können Sie selbst festlegen, welche Sie anbieten möchten.

Im Menü Extra > Systemsteuerung des eCommerceSuite Backend können Sie diese unter dem Punkt Systemvariablen als Array konfigurieren.

Bsp.-Konfiguration

array (
  array (
    'value' => 'new',
    'name' => 'neu',
  ),
  array (
    'value' => 'used',
    'name' => 'gebraucht',
  ),
)

Gebiete

Über Verkaufsgebiete können Sie einschränken, wo ein Anbieterpreis verfügbar sein soll.

Im Menü Extra > Systemsteuerung des eCommerceSuite Backend können Sie diese unter dem Punkt Geltungsbereiche / Gebiete konfigurieren.

Im Anschluß können Sie diese dann den einzelnen Anbieterpreisen zuweisen.
Jedes Gebiet wird durch die Kombination Gebietstyp, Gebietscode und Gebietsname eindeutig festgelegt.

Beispiele:

Typ: country
Code: DE
Name: Deutschland

Typ: state
Code: HH
Name: Hamburg

Typ: zip
Code: 20459
Name: Hamburg-Mitte

Gebiete können verschachtelt werden, Wenn ein Anbieterprodukt für ein Gebiet (z.B. Hamburg) freigeschaltet ist, steht es damit allen untergeordneten Gebieten (z.B. 20459 Hamburg-Mitte) zur Verfügung.

Developer

Gebietsauswahl

Wenn Sie mit Gebietseinschränkungen arbeiten möchten, empfiehlt es sich, den Kunden bereits frühzeitig eine Auswahl treffen zu lassen.
Hierfür steht Ihnen das Format ecs_merchant_territory_selectform zur Verfügung.

Alternativ können Sie auch eine eigene Auswahl erstellen und diese in der Session speichern.
Anschließend wird die gespeicherte Auswahl bei allen Selektionen von Anbieterpreisen automatisch berücksichtigt.

  1. // Auswahl aller verfügbaren PLZ
  2. $R = $this->eCMS->plugin_ecs->ecs_plugin_merchant->territory_getList(array(
  3.         'filter' => array(
  4.             'terr_type' => 'zip',
  5.         ),
  6.     ));
  1. // Auswahl aller Orte zu einer PLZ
  2. $R = $this->eCMS->plugin_ecs->ecs_plugin_merchant->territory_getList(array(
  3.         'filter' => array(
  4.             'terr_type' => 'zip',
  5.             'terr_code' => '20459',
  6.         ),
  7.     ));
  1. // Speicherung der Gebietsauswahl in der Session
  2. $R = $this->eCMS->plugin_ecs->ecs_plugin_merchant->setTerritory(array(
  3.         'terr_type' => 'zip',
  4.         'terr_code' => '20459',
  5.         'terr_name' => 'Hamburg-Mitte',
  6.     ));  
  1. // Abrufen der aktuell gespeicherten Gebietsauswahl aus der Session
  2. $R = $this->eCMS->plugin_ecs->ecs_plugin_merchant->getTerritory(); 

Anbieterpreise anzeigen

Um alle Angebote eines Anbieters oder für ein Produkt alle verfügbaren Angebote anzuzeigen, steht Ihen die Shop-optimierte Methode product_merchant_getList zur Verfügung.
Die Liste wird automatisch auf verfügbare Anbieterpreise eingeschränkt, weitere Filter auf z.B. ein Produkt, einen Anbieter oder einen Zustand können sie je nach Bedarf ergänzen.

  1. // Produkt "abc" von Anbieter "m23"
  2. $R = $this->eCMS->plugin_ecs->ecs_plugin_merchant_dsf->product_merchant_getList(array(
  3.         'filter' => array(
  4.             'pcode' => 'abc123',    // nur dieses Produkt
  5.             'mrch_code' => m23,        // nur für diesen Anbieter
  6.             ...
  7.         ),
  8.     ));
  1. // alle Basis-Produkte für das aktuelle Gebiet
  2. $R = $this->eCMS->plugin_ecs->ecs_plugin_merchant_dsf->product_merchant_getList(array(
  3.         'sql' => array('group' => 'master_pcode')
  4.     ));
  1. // alle Anbieter mit verfügbaren Produkten für das aktuelle Gebiet
  2. $R = $this->eCMS->plugin_ecs->ecs_plugin_merchant_dsf->product_merchant_getList(array(
  3.         'fields' => array('mrch_code','mrch_name'),
  4.         'sql' => array('group' => 'mrch_code')
  5.     ));

Sie können natürlich auch alle anderen Produktdatenfelder als Filter oder Gruppierungskriterium verwenden.
Diese können Sie wie reguläre Produktlisten anzeigen. Es stehen auch angepasste, um die Besonderheiten der Anbieterpreise angereicherte Ausgabeformate zur Verfügung.

Zusätzliche Information für Shop-Produkte

Die regulären Shopprodukte werden mit Informationen zu den Anbieterpreisen angereichert, die Ihnen in Produktlisten und auch im Einzelprodukt zur Verfügung stehen.
Sie finden dort die Min/Max-Preise der Anbieter und Anzahl verfügbarer Anbieter, insgesamt und auch zustandsgruppiert.

Anzeige im Bestellvorgang

Über den Textbaustein ecs_plugin_merchant.item_text_merchant_product können Sie die Anzeige der Anbieterpreise von Warenkorb bis Bestellung festlegen.
Dabei stehen Ihnen Platzhalter für Anbietername, Produktzustand und -beschreibung zur Verfügung.

Beispiel:

Verkauf durch: %mrch_name%<br>
Zustand: %prcmrch_condition%<br>
%prcmrch_description%

Anbieter-spezifische Unteraufträge generieren

Für einen im Shop erstellten Auftrag können für anbieterspezifische Posten Unteraufträge erzeugt werden.
Die Methode merchant_suborder_create erzeugt diese Unteraufträge gruppiert nach Anbieter.

  1. $R = $this->eCMS->plugin_ecs->ecs_plugin_merchant->merchant_suborder_create(array(
  2.         'filter' => array(
  3.             'oid' => 123
  4.         ),
  5.     ));