Skip to end of metadata
Go to start of metadata

You are viewing an old version of this content. View the current version.

Compare with Current View Version History

Version 1 Next »

Einleitung

Das Plugin IntoSymbioConnector stellt eine Schnittstelle zwischen SymbioCommerce rund

Shopware 6 bereit und deckt die folgenden Bereiche ab:

Kategorien

Initialanlage, neue Kategorien, Änderungen (inhaltlich und Baumstruktur), Entfernung

Produkte

  • Initialanlage, neue Artikel, Änderungen, Entfernung

  • Einzel- und Variantenartikel

  • Einschliesslich Produkt-Media-Dateien

Lagerbestand

Aktualisierung des Lagerbestands aus Symbio

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.

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.

Konfiguration

Für die Konfiguration sind die folgenden Einstellungen vorzunehmen:

Symbio Zugangsdaten

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

auszufüllen.

Symbio Konfiguration

  • Hauptkategorie für Symbio-Kategoriebaum - 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 Sie einen Medienordner aus, in dem die aus Symbio importierten Produktbilder abgelegt werden.

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

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

  • Liste der Statuscodes zur Übertragung - wählen Sie einen oder mehrere Statuscodes aus, bei deren Auftreten die Übertragung einer Bestellung zu Symbio ausgelöst wird. Wird dieses Feld nicht gefüllt, erfolgt die Übertragung an Symbio unmittelbar nach der Anlage der Bestellung durch den Kunden.

  • 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.

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


Administration

Kategoriebaum

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

Im Feld Symbio-CategoryId finden Sie die zugehörige CategoryId aus Symbio. Die Felder Erzeugt und Aktualisiert enthalten die Zeitstempel der ersten Übertragung bzw. 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.

Produkte und Artikel

Einen aus Symbio übernommenen Artikel (in Shopware als Produkt bezeichnet) erkennen Sie in der Administration an den in der Karte Symbio-Daten angezeigten Feldern.

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

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 Zeitstempel der ersten Übertragung bzw. 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.

Media (Produktabbildungen)

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

Die Felder Erzeugt und Aktualisiert enthalten die Zeitstempel der ersten Übertragung bzw. 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.

Kundendaten und Adressen

Kundendaten und Adressen werden nach ihrer Erfassung oder Aktualisierung in Shopware an Symbio ü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 ü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 übertragen. Eine erfolgreich übertragene Bestellung erkennen Sie an den Feldern in der Karte Symbio-Daten.

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 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 überprüft werden.

SymbioZeitstempel gibt den Zeitpunkt der Übertragung an Symbio an.

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.

Rabatte

Für die korrekte Übermittlung der gewährten Rabatte an Symbio ist bei jedem Rabatt ein Konditionsschlüssel zu hinterlegen.

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 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 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 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 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\",\"

  • No labels