Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Einleitung

Das Plugin IntoSymbioConnector stellt eine Schnittstelle zwischen SymbioCommerce rund

Shopware 6.5 bereit und deckt die folgenden Bereiche ab:

Kategorien

InitialanlageInitial Anlage, neue Kategorien, Änderungen (inhaltlich und Baumstruktur), Entfernung

Produkte

  • InitialanlageInitial Anlage, neue Artikel, Änderungen, Entfernung

  • Einzel- und Variantenartikel

  • Einschliesslich Produkt-Media-Dateien

Lagerbestand

Aktualisierung des Lagerbestands aus SymbioSymbioCommerce

Kunden

Übertragung neu angelegter Kunden inklusive Adressbuch sowie aller folgender Änderungen

Bestellungen

Übertragung neuer Bestellungen

Versandinformationen

Import der Versandinformationen per CSV-Datei und automatische Bestimmung des Bestellstatus (teilweise oder vollständig ausgeliefert) in Shopware.

Table of Contents

Installation und Konfiguration

Installation

Das Plugin wird über die Shopware-Admin (Erweiterungen -> Meine Erweiterungen)

installiert. Über die Funktion "Erweiterung hochladen" ist die gelieferte zip-Datei

hochzuladen. Anschliessend ist das Plugin zu installieren und zu aktivieren.

Image RemovedImage Added

Konfiguration

Für die Konfiguration sind die folgenden Einstellungen vorzunehmen:

Symbio Zugangsdaten

Ihre Zugangsdaten für das SymbioSYMBIOCommerce-API erhalten Sie von SymbioSymbionet. Alle Felder sind

auszufüllen.

auszufüllen.

  • Symbio-API URL: Die URL für das produktive SYMBIOCommerce-System wird von Symbionet vergeben.

  • Client-id: Name des gewünschten Clients wird von Symbionet vergeben.

  • Username: Ein gültiger Benutzer des Accounts für den der SYMBIOShop aufgesetzt wurde.

    • Legen sie auf SYMBIOCommerce in der Benutzerverwaltung ihres Geschäftskontos einen dezidierten Benutzer für den SYMBIOConnector an.

    • Vergeben sie ihm Administratorrechte. Somit wird verhindert, dass das Passwort ungewollt verändert wird und die Verbindung zu SYMBIOCommerce fehlschlägt.

  • Client-Secret: Das Client-Secret des Clients, wird von Symbionet vergeben.

  • Die id des Sales-Group-Channels: Für SYMBIOShop wird die Id 3 verwendet.

  • Land (ISO-2): Das Land des Kataloges, welchen wir anbinden wollen.

  • Währung (ISO-3): Die Währung des Kataloges, welchen wir anbinden wollen.

Image AddedImage Added

Symbio Konfiguration

  • Hauptkategorie für Symbio-Kategoriebaum - wählen : Wählen Sie eine Kategorie aus der Auswahlliste. Welche dies ist, hängt vom Setup Ihres Shops bzw. der verwendeten Verkaufskanäle ab.

  • Medien-Ordner für Produktbilder - wählen : Wählen Sie einen Medienordner aus, in dem die aus Symbio SYMBIOCommerce importierten Produktbilder abgelegt werden.

  • Produkt-Sichtbarkeit - Sales-Channel - wählen : Wählen Sie einen Verkaufskanal aus, dem die SymbioSYMBIOCommerce-Produkte zugeordnet werden.

  • Standard-Steuersatz - wählen : Wählen Sie einen Steuersatz aus, der den Produkten beim Import zugeordnet wird.

  • Liste der Statuscodes Bestell- und Zahlungsstatuscodes zur Übertragung - wählen : Wählen Sie einen oder mehrere Statuscodes aus, bei deren Auftreten die Übertragung einer Bestellung zu Symbio SYMBIOCommerce ausgelöst wird. Wird dieses Feld nicht gefüllt, erfolgt die Übertragung an Symbio unmittelbar nach der Anlage der Bestellung durch den KundenEinige Statuscodes sind mehrfach vorhanden, stehen aber nicht für das Selbe. Wählen sie am Besten alle von diesen aus.

  • Bestellexport

    • Datum, ab wann die Bestellungen übertragen werden sollen.

    • Verzögerung der Bestellübertragung

Shopware Scheduled-Tasks

Die einzelnen Import- und Export-Funktionen der Schnittstelle werden über Scheduled-Tasks gesteuert. Die dabei bei Plugin-Installation Ausführungsintervalle sind in dieser Tabelle zusammengefasst:

Beschreibung

Technischer Name

Standard-Intervall

Kategorieupdate

into.symbio_connector.category_sync

7.200 sec

Produktupdate

into.symbio_connector.product_sync

3.600 sec

Bestellungen übertragen

into.symbio_connector.order_downstream

300 sec

Bestandsupdate

into.symbio_connector.stock_sync

300 sec

Versandmeldungen

into.symbio_connector.delivery_import

300 sec

Eine Änderung der Intervalle oder eine Deaktivierung der Tasks ist zur Zeit nur über die

Bearbeitung der Tabelle scheduled_task in der Shopware-Datenbank möglich.

Empfohlen wird aber das gratis Plugin Tools von Friends Of Shopware.

https://store.shopware.com/frosh12599847132f/tools.html

Der Export der Kunden- und Bestelldaten Kundendaten aus Shopware zu Symbio SYMBIOCommerce erfolgt ereignisgesteuert in Echtzeit.


Image Modified

Administration

Kategoriebaum

Eine aus

Symbio

SYMBIOCommerce übernommene Kategorie erkennen Sie in der Administration an den in der Karte Symbio-Daten angezeigten Feldern.

Im Feld

In der Karte Symbio-Daten finden sie die Felder:

  • Symbio-CategoryId finden Sie die zugehörige CategoryId aus

Symbio
  • SYMBIOCommerce.

Die Felder Erzeugt und Aktualisiert enthalten die
  • Erzeugt zeigt den Zeitstempel der ersten Übertragung

bzw
  • .

  • Aktualisiert zeigt den Zeitstempel der letzten Aktualisierung.

Eine Aktualisierung erfolgt automatisch, wenn die Daten in Symbio aktualisiert werden.
Das Feld
  • Prüfsumme enthält die Prüfsumme der

von Symbio übernommenen Daten. Um eine erneute Aktualisierung der Daten in Shopware zu erzwingen, können Sie diese Prüfsumme löschen und die Kategorie speichern. Die Daten werden dann bei der nächsten Synchronisation aktualisiert
  • zuletzt an SymbioCommerce übermittelten Daten.

Image Modified

Produkte und Artikel

Einen aus

Symbio

SymbioCommerce übernommenen Artikel (in Shopware als Produkt bezeichnet) erkennen Sie in der Administration an den in der Karte Symbio-Daten angezeigten Feldern und dienen der Identifikation der Produkte und Varianten.

In

den Feldern SymbioProductId, SymbioArticleId und SymbioArticleSKU
finden Sie die Daten, durch die Sie das Produkt in Symbio
identifizieren können

der Karte Symbio-Daten finden sie die Felder:

  • SymbioProductId zeigt die ProductId aus SymbioCommerce - ist bei Varianten leer.

  • SymbioArticleId zeigt die ArticleId aus SymbioCommerce - ist bei Produkten leer.

  • SymbioArticleSKU zeigt die SKU des Artikels aus SymbioCommerce - ist bei Produkten leer.

Handelt es sich um ein Einzelprodukt (d.h. das Produkt hat keine Varianten), sind alle diese drei Felder gefüllt. Wenn es sich um die Kopfdarstellung eines Variantenprodukts handelt, ist

nur das Feld SymbioProductId gefüllt.

Handelt es sich um eine Produktvariante, sind dagegen nur die Felder SymbioArticleId und SymbioArticleSKU gefüllt.

Die Felder Erzeugt und Aktualisiert enthalten die
  • Erzeugt zeigt den Zeitstempel der ersten Übertragung

bzw
  • .

  • Aktualisiert zeigt den Zeitstempel der letzten

Aktualisierung. Eine
  • Aktualisierung

erfolgt automatisch, wenn die Daten in Symbio aktualisiert werden
  • .

Das Feld
  • Prüfsumme enthält die Prüfsumme der

von Symbio übernommenen Daten. Um eine erneute Aktualisierung der Daten in Shopware zu erzwingen, können Sie diese

Prüfsumme löschen und die Kategorie speichern. Die Daten werden dann bei der nächsten Synchronisation aktualisiert. Bitte beachten Sie, dass eine Aktualisierung eines Variantenprodukts immer für die Gesamtheit aller Varianten erfolgt.

Verpackungseinheiten

Falls Artikel im Shop in anderen Verpackungseinheiten als in Symbio verkauft werden sollen, muss die Menge der Artikel in einer Verpackungseinheit im Custom-Field «sy_vpe» des entsprechenden Artikels gesetzt werden. Beim Abgleich des Lagerbestands, der Übermittlung von Bestellungen und dem Import der Versandmeldungen erfolgt dann jeweils eine entsprechende Mengenumrechnung
  • zuletzt an SymbioCommerce übermittelten Daten.


Media (Produktabbildungen)

Die Produktabbildungen werden bei der Übertragung der Produkte aus Symbio SymbioCommerce ebenfalls automatisch zu Shopware übertragen. Eine erfolgreich übertragene Produktabbildung erkennen Sie an den Feldern in der Karte Symbio-Daten. Das Feld

In der Karte Symbio-Daten finden sie die Felder:

  • SymbioMediaId identifiziert die Produktabbildung in Symbio.

Die Felder Erzeugt und Aktualisiert enthalten die
  • Erzeugt zeigt den Zeitstempel der ersten Übertragung

bzw
  • .

  • Aktualisiert zeigt den Zeitstempel der letzten Aktualisierung.

Eine Aktualisierung erfolgt automatisch, wenn die Daten in Symbio aktualisiert werden.

Wenn Sie eine Aktualisierung der Produktabbildung erzwingen wollen, können Sie diese in Shopware löschen. Bei der nächsten Aktualisierung des Produkts wird dann das aktuelle Produktabbild aus Symbio importiert.

  • Prüfsumme enthält die Prüfsumme der zuletzt an SymbioCommerce übermittelten Daten.

Kundendaten und Adressen

Kundendaten und Adressen werden nach ihrer Erfassung oder Aktualisierung in Shopware an Symbio SymbioCommerce übertragen. Eine erfolgreiche Übertragung erkennen Sie in der Administration an den in der Karte Symbio-Daten angezeigten Feldern.

In der Karte Symbio-Daten finden sie die Felder:

SymbioRecipientId identifiziert den Empfänger in SymbioCommerce.

SymbioRecipientIdentification identifiziert den Kunden in SymbioCommerce.

Erzeugt zeigen den Zeitstempel der ersten Übertragung.

Aktualisiert zeigen den Zeitstempel der letzten Aktualisierung.

Prüfsumme enthält die Prüfsumme der zuletzt an Symbio SymbioCommerce übermittelten Daten. Bei jeder Aktualisierung der Kundendaten in Shopware erfolgt eine automatische Übermittlung an Symbio. Wollen Sie eine Übermittlung erneut erzwingen, können Sie das Feld Prüfsumme einfach löschen und den Kunden speichern.

Bitte beachten Sie, dass eine Übertragung der Kundendaten immer in der Gesamtheit mit allen seiner Adressen erfolgt.

Die Zeitstempel werden mit der Zeitzone UTC angezeigt.

Bestellungen

In Shopware getätigte Bestellungen werden automatisch an Symbio dem konfigurierten Intervall entsprechend (Scheduled Task) an SymbioCommerce übertragen. Eine erfolgreich übertragene Bestellung erkennen Sie an den Feldern in der Karte Symbio-Daten.

Note

Nachträgliche Änderungen in einer Bestellung werden nicht übertragen.

In der Karte Symbio-Daten finden sie die Felder:

SymbioOrderId identifiziert die Bestellung im Symbio. Das Feld

SymbioOrderStatus zeigt den von Symbio SymbioCommerce vergebenen Order-Status an. Dieser sollte in der Regel "APPROVED" sein, wird hier ein anderer Wert gezeigt, so sollte die ordnungsgemässe Verarbeitung der Bestellung in Symbio SymbioCommerce überprüft werden.

SymbioZeitstempel gibt den Zeitpunkt der Übertragung an Symbio SymbioCommerce an.

Button 'Auftrag zurücksetzen'

Falls eine Bestellung nicht erfolgreich übertragen wurde, haben Sie die Möglichkeit, die Übertragung zu zurückzusetzen, indem Sie auf den Button 'Auftrag zurücksetzen' klicken. Dadurch wird sichergestellt, dass die Bestellung beim nächsten Übertragungsintervall erneut übermittelt wird.

Im Falle, dass die Bestellung zwar in SymbioCommerce erstellt wurde, jedoch die Rückmeldung an den SymbioShop unterbrochen wurde, entsteht bei einer erneuten erfolgreichen Übertragung keine doppelte Bestellung.

Image Removed

Rabatte

Für die korrekte Übermittlung der gewährten Rabatte an Symbio ist bei jedem Rabatt ein Konditionsschlüssel zu hinterlegen.Die zu verarbeitenden CSV-Dateien sind ohne Header und enthalten je Packstück eine Zeile mit den folgenden Feldern:

Beschreibung

Datentyp

Bemerkung

ERP-Auftragsnummer

int

ERP-Auftragsposition

int

Shop-Aufragsnummer

string

Shopware Bestellnummer

Shop-Auftragsposition

int

Position in der Shopware-Bestellung

Menge

int

Carrier

string

Handling Unit

string

Tracking-URL

string

Import CSV-Versandmeldungen

Der Import der Versandmeldungen aus catuno dem Kunden ERP erfolgt per CSV-Import. Dabei werden zu jeder Bestellung die übermittelten Trackingcodes und die zugehörigen Lieferpositionen und -mengen importiert. Der Bestellstatus wird entsprechend angepasst auf "teilweise ausgeliefert" bzw. "vollständig ausgeliefert". Die übermittelten Tracking-URLs werden in der Bestellung abgelegt und damit auch dem Kunden in seiner Bestellübersicht angezeigt.

Die zu importierenden CSV-Dateien sind z.B. per FTP in diesem Verzeichnis abzulegen:

<shopware root>/files/plugins/into_symbio_connector/delivery

Es werden regelmässig alle in diesem Verzeichnis abgelegten Dateien mit der Dateiendung .csv verarbeitet. Nach erfolgreicher Verarbeitung werden die Dateien in das Verzeichnis

<shopware root>/files/plugins/into_symbio_connector/archive/delivery

verschoben.Die zu verarbeitenden CSV-Dateien sind ohne Header und enthalten je Packstück eine Zeile mit den folgenden Feldern:

Verwendete APIs

Connector / SymbioCommerce

  • GET https://{{Host}}/services/product/api/external/v1/categories

  • GET https://{{Host}}/services/product/api/external/v1/selling-products/channels/{shop-channelId}

  • POST https://{{Host}}/services/product/api/external/v1/resource-planning/article-availability

  • POST https://{{Host}}/services/recipient/api/external/v1/addresses/

  • POST https://{{Host}}/services/recipient/api/external/v1/recipients

  • PUT https://{{Host}}/services/recipient/api/external/v1/recipients

  • POST https://{{Host}}/services/order/api/external/v2/order-placement/submit/channel/{channelId}/countryIso/{countryIso}

Connector / andere Systemen

Troubleshooting

Abgebrochene Message-Verarbeitung

Sollte es bei der Verarbeitung der Messages (z.B. Neuanlage oder Aktualisierung eines Produkts, Übertragung von Bestellungen zu Symbio SymbioCommerce usw.) zu schwerwiegenden Fehlern kommen, werden diese Messages in die Shopware-Tabelle dead_messages verschoben. Zusätzlich wird in der Spalte exception_message die Fehlerursache beschrieben.

Bereits vorhandene Media-Dateien

Fehlermeldung:

An exception occurred while executing 'INSERT INTO

`into_symbio_connector_media_addons` (`id`, `media_id`,

`symbio_id`, `hash`, `created_at`) VALUES (' …

Dieser Fehler entsteht, wenn neue Media-Dateien aus Symbio SymbioCommerce mehrfach eingelesen werden, bevor sie in Shopware angelegt wurden. Dieser Fehler ist unkritisch und kann ignoriert werden.

Wenn dieser Fehler häufiger auftritt, sollten die Serverressourcen für die Abarbeitung der Message-Queue vergrössert werden.

Bereits vorhandene Produkte

Fehlermeldung:

Product with number "xxxxx" already exists.

Dieser Fehler entsteht, wenn neue Produkte aus Symbio SymbioCommerce mehrfach eingelesen werden, bevor sie in Shopware angelegt wurden. Dieser Fehler ist unkritisch und kann ignoriert werden.

Wenn dieser Fehler häufiger auftritt, sollten die Serverressourcen für die Abarbeitung der Message-Queue vergrössert werden.

http://availabilitiesmock.prelive.svc.cluster.local:8055/api/availabilities

Bestellungen

Bestellung wird nicht übertragen

"itemErrors\":{\"1\":{\"ITEM\":{\"orderPosition\":1,\"uid\":\"Mw.TUFOVUFMX0lOUFVU.YmwtYS1h\",\"articleSalesId\":196302,\"orderQuantity\":1,\"salesPriceAbs
olute\":10,\"remark\":\"\"},\"ERR_MSG\":\"Der Artikel kann nicht bestellt werden.\"}},\"headerErrors\":{\"9000\":{\"ERR_MSG\":\"Die Bestellung konnte wegen Validierungsfehlern nicht verarbeitet werden.\"}},\"id\":null,\"uuid\":null,\"ownerAccountId\":3,
\"recipientIdentification\":\"d181686a0e304788b29d3b1ed9bc2376\",\"recipientName\":\"Marty McFly\",\"