1.365
Bearbeitungen
MH (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
MH (Diskussion | Beiträge) |
||
| (8 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
| Zeile 1: | Zeile 1: | ||
<div class="mw-parser-output"> | |||
<div class="mw-parser-output"> | <div class="mw-parser-output"> | ||
== das OmniSeller Plugin für Zusatzfunktionen in Shopware6 == | == das OmniSeller Plugin für Zusatzfunktionen in Shopware6 == | ||
<div class="mw-parser-output"> | <div class="mw-parser-output"> | ||
=== Hintergründe === | === Hintergründe === | ||
<div>Uns erreichen zunehmend Anfragen zur Ausleitung von bestimmten Sage100/ERP Daten in Richtung Shopware, um dort zusätzliche Funktionen wie z.B. Kundenstamm-Import, kundenspezifische Preise oder Erstellungsmöglichkeiten von Verkaufsstatistiken abbilden zu können.</div> <div> </div> <div>Dieses Plugin soll ein paar dieser Punkte abbilden.</div> <div>Technisch erweitert dieses Plugin die von Shopware existierende REST-API.</div> <div>Es werden spezifische Endpunkte zur Verfügung gestellt, die dann angesprochen werden können.</div> <div>Eine Übersicht hierzu finden Sie unten.</div> <div> </div> </div> | <div>Uns erreichen zunehmend Anfragen zur Ausleitung von bestimmten Sage100/ERP Daten in Richtung Shopware, um dort zusätzliche Funktionen wie z.B. Kundenstamm-Import, kundenspezifische Preise oder Erstellungsmöglichkeiten von Verkaufsstatistiken abbilden zu können.</div> <div> </div> <div>Dieses Plugin soll ein paar dieser Punkte abbilden.</div> <div>Technisch erweitert dieses Plugin die von Shopware existierende REST-API.</div> <div>Es werden spezifische Endpunkte zur Verfügung gestellt, die dann angesprochen werden können.</div> <div>Eine Übersicht hierzu finden Sie unten.</div> <div> </div> </div> <div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"> | ||
<div class="mw-parser-output"><div class="mw-parser-output"> | |||
<div class="mw-parser-output"> | |||
<div class="mw-parser-output"><div class="mw-parser-output"> | |||
<div class="mw-parser-output"> | |||
<div class="mw-parser-output"> | |||
<div class="mw-parser-output"> | |||
=== Inhalte/API Endpunkte === | === Inhalte/API Endpunkte === | ||
| Zeile 56: | Zeile 49: | ||
| | ||
<div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"> | <div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"><div class="mw-parser-output"> | ||
<div class="mw-parser-output"> | |||
<div class="mw-parser-output"> | |||
==== B2BPreise ==== | ==== B2BPreise ==== | ||
einfacher Request für Versionserfragung und Test ob Plugin installiert/aktiv | |||
{{{!}} style="width: 500px;" border="1" cellspacing="1" cellpadding="1" | |||
{{!}}- | |||
{{!}} style="width: 102px;" {{!}} Route | |||
{{!}} style="width: 385px;" {{!}} /api/v3/omniseller/b2bpricesCheck | |||
{{!}}- | |||
{{!}} style="width: 102px;" {{!}} Request-Tpye | |||
{{!}} style="width: 385px;" {{!}} GET | |||
{{!}}- | |||
{{!}} style="width: 102px;" {{!}} Request-Json | |||
{{!}} style="width: 385px;" {{!}} | |||
{{!}}- | |||
{{!}} style="width: 102px;" {{!}} Response-Json | |||
{{!}} style="width: 385px;" {{!}} <div><div>{</div> | |||
<div> "Installation": "OK",</div> | |||
<div> "version": "1.0.2"</div> | |||
<div>}</div></div> | |||
{{!}}} | |||
| |||
Anlegen von B2B-Preise | Anlegen von B2B-Preise | ||
{ | {{{!}} style="width: 500px; height: 604px;" border="1" cellspacing="1" cellpadding="1" | ||
{{!}}- style="height: 28px;" | |||
{{!}} style="width: 103.271px; height: 28px;" {{!}} Route | |||
{{!}} style="width: 389.729px; height: 28px;" {{!}} /api/v3/omniseller/b2bprices | |||
{{!}}- style="height: 28px;" | |||
{{!}} style="width: 103.271px; height: 28px;" {{!}} Request-Tpye | |||
{{!}} style="width: 389.729px; height: 28px;" {{!}} POST | |||
{{!}}- style="height: 362px;" | |||
{{!}} style="width: 103.271px; height: 362px;" {{!}} Request-Json | |||
{{!}} style="width: 389.729px; height: 362px;" {{!}} <div>[</div> | |||
<div> {<br> "Company": "123",<br> "CustID": "D12345",</div> | |||
<div> "Email":"example@htk.de",<br> "Item": "08154711",<br> "Variation": "0",<br> "Ref": "",</div> | |||
<div> "AbMenge":"0",<br> "Price": "123,45",</div> | |||
<div> "Discount": "10,00",</div> | |||
<div> "IsBruttoPrice": true,</div> | |||
<div> "AllowDiscount": true,</div> | |||
<div> "UploadID": 1234657890<br> }</div> | |||
<div>]</div> | |||
{{!}}- style="height: 158px;" | |||
{{!}} style="width: 103.271px; height: 158px;" {{!}} Response-Json | |||
{{!}} style="width: 389.729px; height: 158px;" {{!}} <div>{</div> | |||
<div> "status": "FINISHED",</div> | |||
<div> "successful": 1,</div> | |||
<div> "inserts": 0,</div> | |||
<div> "updates": 1,</div> | |||
<div> "errors": 0</div> | |||
<div>}</div> | |||
{{!}}} | |||
| | ||
Ein Delete Request, der alle Einträge löscht, die | Ein Delete Request, der alle Einträge löscht, die eine alte UploadID haben. Bereinigt alte Einträge unmittelbar nach einer vollständigen B2BPrice Synchronisation | ||
{{{!}} style="width: 500px; height: 197px;" border="1" cellspacing="1" cellpadding="1" | |||
{{!}}- style="height: 28px;" | |||
{{!}} style="width: 103.271px; height: 28px;" {{!}} Route | |||
{{!}} style="width: 389.729px; height: 28px;" {{!}} /api/v3/omniseller/b2bpricesdeleteold | |||
{{!}}- style="height: 28px;" | |||
{{!}} style="width: 103.271px; height: 28px;" {{!}} Request-Tpye | |||
{{!}} style="width: 389.729px; height: 28px;" {{!}} POST | |||
{{!}}- style="height: 28px;" | |||
{{!}} style="width: 103.271px; height: 28px;" {{!}} Request-Body | |||
{{!}} style="width: 389.729px; height: 28px;" {{!}} "1234567890" | |||
{{!}}- style="height: 113px;" | |||
{{!}} style="width: 103.271px; height: 113px;" {{!}} Response-Json | |||
{{!}} style="width: 389.729px; height: 113px;" {{!}} <div><div>{</div> | |||
<div> "message":"Es wurden xx Einträge gelöscht",</div> | |||
<div> "success":true</div> | |||
<div>}</div></div> | |||
{{!}}} | |||
| | ||
Es können auch gezielt einzelne Preise gelöscht werden: | Es können auch gezielt einzelne Preise gelöscht werden: | ||
{ | {{{!}} style="width: 500px;" border="1" cellspacing="1" cellpadding="1" | ||
{{!}}- | |||
{{!}} style="width: 102px;" {{!}} Route | |||
{{!}} style="width: 385px;" {{!}} /api/v3/omniseller/b2bpricesDeleteSpecific | |||
{{!}}- | |||
{{!}} style="width: 102px;" {{!}} Request-Tpye | |||
{{!}} style="width: 385px;" {{!}} POST | |||
{{!}}- | |||
{{!}} style="width: 102px;" {{!}} Request-Json | |||
{{!}} style="width: 385px;" {{!}} <div>[ </div> | |||
<div> {<br> "Company": "123",<br> "CustID": "D12345",<br> "Item": "08154711",<br> "Variation": "0"<br> }</div> | |||
<div>]</div> | |||
{{!}}- | |||
{{!}} style="width: 102px;" {{!}} Response-Json | |||
{{!}} style="width: 385px;" {{!}} <div>{</div> | |||
<div> "status":"FINISHED",</div> | |||
<div> "successful":1,</div> | |||
<div> "errors":0,</div> | |||
<div> "deleted":1</div> | |||
<div>}</div> | |||
{{!}}- | |||
{{!}} style="width: 102px;" {{!}} | |||
{{!}} style="width: 385px;" {{!}} | |||
{{!}}} | |||
| | ||
<div class="mw-parser-output"> | <div class="mw-parser-output"> </div> | ||
==== Kundenimport ==== | ==== Kundenimport ==== | ||
| Zeile 143: | Zeile 176: | ||
| | ||
</div> | |||
<div class="mw-parser-output"> | |||
<div class="mw-parser-output"> | |||
<div class="mw-parser-output"> | |||
= Installation = | |||
<div>Da das Plugin in dieser Form (noch) nicht im Shopware Store existiert muss dieses manuell über das Shopware Backend installiert werden.</div> <div>Bei neuen Shopware6 Versionen (6.4+) gibt es links ein Feld "Erweiterungen". Dort kann dann unter "meine Erweiterungen" das Zip File hochgeladen werden. Anschließend über die 3 Punkte installieren und zuletzt aktivieren.</div> <div>Bei älteren Shopware6 Versionen ist das Prinzip das gleiche, nur ist die Plugin Seite links im Menü unter Einstellungen->System->Plugins zu finden.</div> </div></div> | |||