Über IDS (Integrierte Daten-Schnittstelle) besteht die Möglichkeit Warenwirtschafts-Software, die vor allem im Handwerk eingesetzt wird, schnell und einfach mit einem Onlineshop zu verbinden. Über die Schnittstelle erfolgt eine automatische Anmeldung des Handwerkers im Onlineshop. Im Shop kann er seine Waren zusammenstellen und mit Hilfe eines neuen Buttons auf der Bestellübersichtsseite (ws_place_order.htm) den Warenkorb zurück in sein System übermitteln, um z. B. ein Angebot zu erstellen.
Nachdem der Kunde des Handwerkers das Angebot angenommen hat, kann direkt aus der Handwerkersoftware über einen neuen Button die Bestellung der ausgewählten Ware im Onlineshop ausgelöst werden. Nach dem mit "zahlungspflichtig bestellen" die Bestellung im Shop ausgelöst wurde, werden die Bestelldaten dann wieder zum Handwerkersystem zurück übertragen.
Diese bidirektionale Übertragung eines Warenkorbs erspart die erneute und fehleranfällige Eingabe von Produkt- und Bestell-Daten.
Aktuell werden von WEBSALE die Systeme von TAIFUN (https://www.taifun-software.de) und LABELWIN (https://www.label-software.de) direkt unterstützt. Für eine Anpassung an andere Systeme, die IDS unterstützen, wenden Sie sich bitte an Ihren WEBSALE Ansprechpartner.
Inhalt
1 Funktionsweise
1.1 Automatische Anmeldung im Shop
1.2 Shop sendet Warenkorb zum Handwerkersystem
1.3 Handwerkersystem sendet Warenkorb zum Shop
2 Integration
1 Funktionsweise
Eine ausführlichere Funktionsbeschreibung und Beispiele der XML-Daten finden Sie in der technischen Schnittstellen-Dokumentation unter https://doku.websale.de/schnittstellen.
1.1 Automatische Anmeldung im Shop
Das Handwerkersystem fügt im Shop-Aufruf die Shop-Logindaten des Handwerkers hinzu.
Beispiel Shop-Aufruf mit E-Mail-Adresse und Kundennummer
https://www.shopdomain.de/?name_kunde=<E-Mail>&kndnr=<Kundennummer>&pw_kunde=<Passwort>
1.2 Shop sendet Warenkorb zum Handwerkersystem
Das Handwerkersystem ruft den Shop (zusätzlich zu den Parametern für die automatischen Anmeldung) mit dem Parameter action und dem Wert WKE (Warenkorb empfangen) und mit dem hookurl-Parameter auf.
Beispiel Shop-Aufruf mit action-Parameter WKE und Hook-URL
https://www.shopdomain.de/?name_kunde=<E-Mail>&pw_kunde=<Passwort>&action=WKE&hookurl=<Hook-URL>
Im Shop wählt der Handwerker ein oder mehrere Produkte aus und legt sie in seinen Warenkorb. Im Checkout-Prozess kann der Handwerker ggf. eine abweichende Lieferadresse angeben und die Zahlungs- und Versandart auswählen. Auf der Bestellübersichtsseite (ws_place_order.htm) wird neben dem Button "Zahlungspflichtig bestellen" ein weiterer Button "Warenkorb zum Handwerkersystem per IDS senden" angeboten. Beim Klick auf diesen Button wird der Warenkorb zum Handwerkersystem über die zuvor in der Shop-Aufruf-URL übergebene HOOK-URL gesendet.
1.3 Handwerkersystem sendet Warenkorb zum Shop
Ein im Handwerkersystem hinterlegter Warenkorb kann per POST an den Onlineshop gesendet und damit eine Bestellung ausgelöst werden.
Beispiel Shop-Aufruf mit action-Parameter WKS, Hook-URL und den Warenkorbdaten
https://www.shopdomain.de/?name_kunde=<E-Mail>&pw_kunde=<Passwort>&action=WKS&hookurl=<Hook-URL>&warenkorb=<XML-Warenkorbdaten>
Der Parameter hookurl muss in jedem Fall mitgesendet werden, da nur dann eine Rückübertragung möglich ist.
1.4 Artikel-Deep-Link auf ein Produkt
Das Handwerkersystem verlinkt auf ein Produkt im Shop. Die Login-Daten können mit übergeben werden.
Beispiel Shop-Aufruf mit action-Parameter ADL und Produktnummer
https://www.shopdomain.de/?name_kunde=<E-Mail>&pw_kunde=<Passwort>&action=ADL&ghnummer=<Produktnummer>
Integration
Schritt 1: Freischaltung/Aktivierung
Diese Funktion muss von WEBSALE AG technisch freigeschaltet werden. Bitte wenden Sie sich an Ihren WEBSALE Ansprechpartner.
Schritt 2: Neuen Abschnitt in der Shopkonfiguration shop.config anlegen
Legen Sie in Ihrer Shopkonfiguration shop.config einen neuen Abschnitt <IDSSchnittstelle> an und konfigurieren Sie die Parameter:
<IDSSchnittstelle>
SupplierName = # Firmenname des Shopbetreibers/Versenders
SupplierStreet = # Straße
SupplierPCode = # PLZ
SupplierCity = # Stadt
SupplierCountry = # Land
SupplierPhone = # Telefonnummer
SupplierEmail = # E-Mail
WriteToOrderFile = yes # [yes|no(Standard)], schreibt einen <IDS>-Bereich in die Bestelldaten
SendVatInPercent = yes # [yes|no(Standard)], übergibt die Umsatzsteuer an IDS in Prozent
RueckgabeKZ = yes # [yes|no(Standard)], übergibt den Parameter RueckgabeKZ an IDS, ob eine Bestellung erfolgt ist oder nicht
EncodeOrderInfo = no # [yes(Standard)|no], sendet die OrderInfo XML-kodiert an IDS
GenerateOrderInfoIfEmpty = yes # [yes|no(Standard)], nicht vorhandene Pflichtfelder der OrderInfo werden generiert (ModeOfShipment,Cur)
ResetStateAfterSend = yes # [yes|no(Standard)], Zurücksetzen des internen IDS-Status nach dem Senden des Warenkorbs
ClearBasket = yes # [yes|no(Standard)], bei jeder neuen IDS-Anfrage wird der vorherige Warenkorb gelöscht
SurchargeAsOrderItem = yes # [yes|no(Standard)], für den Mindermengenzuschlag wird ein OrderItem mit angelegt
</IDSSchnittstelle>
Hinweis: |
|
Für die Anbindung an LABELWIN ist, außer bei WriteToOrderFile und ResetStateAfterSend, der Nicht-Standard-Wert zwingend erforderlich. |
Referenz: Abschnitt IDSSchnittstelle
Schritt 3: Fehlermeldungen in der Shopkonfiguration shop.config ergänzen
Der Shop zeigt Fehlermeldungen an, falls unbekannte Produktnummern vom Handwerkersystem übergeben wurden oder die Parameter action, hook-url oder warenkorb im Shop-Aufruf fehlen. Das Einzel-Tag ~IDS-PRNumbers~ gibt alle Produktnummern aus, die im Shop nicht gefunden wurden.
Fügen Sie dazu im Abschnitt <NotifyMessages-Txt> folgende Fehlermeldungen ein:
<NotifyMessages-Txt>
...
IDSNoBasketInput = Bitte beachten Sie, dass nicht alle übergebenen Produkte in den Warenkorb übernommen werden konnten.
Folgende Produktnummern sind ungültig bzw. unbekannt: ~IDS-PRNumbers~
IDSParameterMissing = Fehlender Parameter! Der Aufruf dieser Seite ist nur möglich, wenn alle Parameter vorhanden sind!
...
</NotifyMessages-Txt>
Referenz: Abschnitt NotifyMessages-Txt
Referenz: IDS-PRNumbers
Schritt 4: Ausgabe der Fehlermeldungen
Platzieren Sie dazu das Tag ~MSG-IDS_Notify~ auf der Warenkorbseite (ws_basket.htm):
...
{MSG-IDS_Notify}
~MSG-IDS_Notify~
{/MSG-IDS_Notify}
...
Referenz: MSG-IDS_Notify
Schritt 5: Übergabe des Warenkorbes an das Handwerkersystem
Für die Übermittlung der Bestelldaten stehen 3 Möglichkeiten zur Verfügung.
a) Link oder Button in den <body>-Bereich einfügen
Ergänzen Sie auf der Bestellübersichtsseite (ws_place_order.htm) folgenden Code:
<html>
<head>
...
</head>
<body>
...
{ST-IDSSchnittstelle}
<a href='~WS-IDSSentBasketLink~'>Warenkorb zum Handwerkersystem per IDS senden</a>
{/ST-IDSSchnittstelle}
...
</body>
</html>
b) Automatische Weiterleitung im <head>-Bereich einrichten
Fügen Sie dazu folgenden Code in den <head>-Bereich der HTML-Bestelleingangsbestätigungsseite (ws_confirm.htm) ein.
<html>
<head>
...
{ST-IDSSchnittstelle}
<meta http-equiv="refresh" content="3; URL=~WS-IDSSentBasketLink~">
{/ST-IDSSchnittstelle}
....
</head>
<body>
....
</body>
</html>
Referenz: ST-IDSSchnittstelle
Referenz: WS-IDSSentBasketLink
c) Automatische Übermittlung der Bestellung
Dazu fügen Sie das Einzel-Tag ~WS-TriggerIDSSent~ in den <body>-Bereich der HTML-Bestelleingangsbestätigungsseite (ws_confirm.htm) ein.
{ST-IDSSchnittstelle}
~WS-TriggerIDSSent~
{/ST-IDSSchnittstelle}
Referenz: ST-IDSSchnittstelle
Referenz: WS-TriggerIDSSent
Hinweis: |
|
Der Shop muss mit dem Parameter action und den Werten WKE, WKS oder ADL in der URL aufgerufen werden, damit die Klammerung mit dem positiven Bereichs-Tag {ST-IDSSchnittstelle} zutrifft. Wird der Shop ohne den action-Parameter aufgerufen, dann werden Hinweis-Texte oder der Sende-Button nicht angezeigt. |
Optionale Ausgabe der Lieferdaten
Sie können die von der Handwerkersoftware übergebene Lieferadresse z. B. auf der Bestellübersichtsseite (ws_place_order.htm) ausgeben lassen. Diese werden nur informativ angezeigt und in den Bestellzusatzinformationen übergeben. Als gültige Lieferadresse wird die im Onlineshop hinterlegte Standardadresse verwendet.
Das Tag IDS-Delivery wird mit folgenden Suffixen verknüpft:
Name1, Name2, Name3, Name4, Street, PCode, City, Country, ILN, Contact, Phone, Fax, Email
(siehe IDS-Schnittstellenbeschreibung auf https://www.itek.de/beratung/ids-connect (Order/DeliveryPlaceInfo/Address/)
...
{IDS-Delivery}
{IDS-Delivery_name1}~IDS-Delivery_name1~{/IDS-Delivery_name1}
{IDS-Delivery_name2}~IDS-Delivery_name2~{/IDS-Delivery_name2}
{IDS-Delivery_name3}~IDS-Delivery_name3~{/IDS-Delivery_name3}
{IDS-Delivery_name4}~IDS-Delivery_name4~{/IDS-Delivery_name4}
{IDS-Delivery_Street}~IDS-Delivery_Street~{/IDS-Delivery_Street}
{IDS-Delivery_PCode}~IDS-Delivery_PCode~{/IDS-Delivery_PCode}
{IDS-Delivery_City}~IDS-Delivery_City~{/IDS-Delivery_City}
{IDS-Delivery_Country}~IDS-Delivery_Country~{/IDS-Delivery_Country}
{IDS-Delivery_ILN}~IDS-Delivery_ILN~{/IDS-Delivery_ILN}
{IDS-Delivery_Contact}~IDS-Delivery_Contact~{/IDS-Delivery_Contact}
{IDS-Delivery_Phone}~IDS-Delivery_Phone~{/IDS-Delivery_Phone}
{IDS-Delivery_Fax}~IDS-Delivery_Fax~{/IDS-Delivery_Fax}
{IDS-Delivery_Email}~IDS-Delivery_Email~{/IDS-Delivery_Email}
{/IDS-Delivery}
...
Referenz: IDS-Delivery