Skip to end of metadata
Go to start of metadata

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

Compare with Current View Page History

Version 1 Next »

Allgemeine Beschreibung

Die IDS-Connect-Schnittstelle der Firma ITEK ermöglicht es, Warenkörbe zwischen den Softwaresystemen des Handwerks und den Onlineshop-Systemen bidirektional zu übertragen.

Über die Schnittstelle erfolgt eine automatische Anmeldung des Handwerkers im Onlineshop. Danach kann dieser seine Waren im Shop zusammenstellen und 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 die Bestellung der ausgewählten Ware im Onlineshop ausgelöst werden. Die Bestelldaten werden dann wieder zum Handwerkersystem zurück übertragen.

Ein Handwerker kann

  • in seinem System Produkte im Shop ansehen
    (Handwerker → Shop)

  • aus dem Shop heraus Angebote in seinem System für seine Kunden erstellen
    (Warenkorb: Shop → Handwerker)

  • aus seinem System heraus Bestellungen im Shop ausführen
    (Warenkorb: Handwerker → Shop)

Ablaufdiagramm

Schnittstellenfunktionen

Folgende Funktionen werden vom Shop implementiert:

  • Automatische Anmeldung im Shop

  • Deep-Link zum Produkt

  • Shop sendet Warenkorb zum Handwerker

  • Handwerker sendet Warenkorb zum Shop

Automatische Anmeldung im Shop

Das Handwerkersystem fügt im Shop-Aufruf die Shop-Logindaten des Handwerkers hinzu (E-Mail-Adresse oder Kundennummer und das Passwort). Der Handwerker wird dann im Shop automatisch angemeldet.

Voraussetzung ist, dass der Handwerker bereits im Onlineshop über ein eigenes Kundenkonto verfügt und der Shop per SSL (https://...) aufgerufen wird, ansonsten wird die Anmeldung vom Shop abgelehnt.

Beispiel Shop-Aufruf mit E-Mail-Adresse

https://www.shopdomain.de/?name_kunde=<E-Mail>&pw_kunde=<Passwort>

Beispiel Shop-Aufruf mit Kundennummer

https://www.shopdomain.de/?kndnr=<Kundennummer>&pw_kunde=<Passwort>

Beispiel Shop-Aufruf mit E-Mail-Adresse und Kundennummer

https://www.shopdomain.de/?name_kunde=<E-Mail>&kndnr=<Kundennummer>&pw_kunde=<Passwort>

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>

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.

Folgende Daten werden per POST vom Shop an die Hook-URL gesendet:

<?xml version="1.0" encoding="ISO-8859-1"?>
<Warenkorb xmlns="http://www.itek.de/Shop-Anbindung/Warenkorb/"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://www.itek.de/Shop-Anbindung/Warenkorb/
  http://www.itek.de/Shop-Anbindung/Warenkorb/warenkorb_empfangen.xsd" ... >
  <WarenkorbInfo>
    <Date>2009-10-29</Date>                         <!-- Datum -->
    <Time>17:00:29</Time>                           <!-- Uhrzeit -->
    <Version>2.3</Version>                          <!-- Unterstützte IDS-Version -->           
  </WarenkorbInfo>
  <Order>
    <OrderInfo>
      <ModeOfShipment>Lieferung</ModeOfShipment>    <!-- Lieferung oder Abholung, abhängig von der gewählten Zustellung im Checkout-->
      <Cur>EUR</Cur>                                <!-- Währung -->
    </OrderInfo>
    <SupplierInfo>                                  <!-- Adressdaten vom Shopbeteiber -->
      <Address>
        <Name1>Firma & Co. KG</Name1>               <!-- Firma -->
        <Street>Musterweg 6</Street>                <!-- Strasse und Hausnummer -->
        <PCode>58706</PCode>                        <!-- PLZ -->
        <City>Menden</City>                         <!-- Ort -->
        <Country>Deutschland</Country>              <!-- Land -->
        <Phone>(0049) 02373-9296-0</Phone>          <!-- Telefon -->                           
        <Email>info@shopdomain.de</Email>           <!-- E-Mail -->
      </Address>
    </SupplierInfo>
    <CustomerInfo>                                  <!-- Rechnungsadresse -->
      <IDNo>12345</IDNo>                            <!-- Kundennummer -->
    </CustomerInfo>
    <DeliveryPlaceInfo>                             <!-- Lieferadresse, falls abweichend von der Rechnungsadresse -->
      <Address>
        <Name1>Musterfirma GmbH</Name1>             <!-- Firma -->
        <Name2></Name2>                             <!-- Firmenzusatz 1 -->
        <Name3></Name3>                             <!-- Firmenzusatz 2 -->
        <Street>Musterstrasse 1</Street>            <!-- Strasse mit Hausnummer -->
        <PCode>12345</PCode>                        <!-- PLZ -->
        <City>Musterhausen</City>                   <!-- Ort -->
        <Country>Deutschland</Country>              <!-- Land -->
      </Address>
    </DeliveryPlaceInfo>
    <OrderItem>                                     <!-- Warenkorbposition -->
      <EAN>1234567890128</EAN>                      <!-- EAN, falls vorhanden -->
      <ArtNo>4711</ArtNo>                           <!-- Produktnummer -->
      <Qty>5</Qty>                                  <!-- Bestellmenge als Integer -->
      <QU>PCE</QU>                                  <!-- Mengeneinheit, ist immer Stück "PCE" -->
      <Kurztext>...</Kurztext>                      <!-- Produktname -->
      <Langtext>...</Langtext>                      <!-- Produktbeschreibung (max. 1000 Zeichen) -->
      <OfferPrice>119.00</OfferPrice>               <!-- Brutto-Preis, bezogen auf die Bestellmenge -->
      <NetPrice>100.00</NetPrice>                   <!-- Netto-Preis, bezogen auf die Bestellmenge -->
      <PriceBasis>5</PriceBasis>                    <!-- Preis-Basis, bezogen auf die Bestellmenge -->
      <VAT>19.00</VAT>                              <!-- MwSt -->
    </OrderItem>
    <OrderItem>                                     <!-- Nächste Warenkorbposition -->
      ...                                                       
    </OrderItem>
    <OrderItem>                                     <!-- Nächste Warenkorbposition -->
      ...                                                       
    </OrderItem>
    ...
  </Order>
</Warenkorb>

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 mit gesendet werden, da nur dann eine Rückübertragung möglich ist.

Folgende XML-Warenkorbdaten werden vom Shop verarbeitet:

<?xml version="1.0" encoding="UTF-8"?>
<Warenkorb xmlns="http://www.itek.de/Shop-Anbindung/Warenkorb/"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://www.itek.de/Shop-Anbindung/Warenkorb/ 
  http://www.itek.de/Shop-Anbindung/Warenkorb/warenkorb_senden.xsd" ... >
  <Order>
    <OrderItem>                 <!-- Warenkorbposition -->
      <ArtNo>471211</ArtNo>     <!-- Produktnummer -->
      <Qty>1</Qty>              <!-- Bestellmenge, als Integer -->
    </OrderItem>
    <OrderItem>                 <!-- Nächste Warenkorbposition -->
      ...
    </OrderItem>
    <OrderItem>                 <!-- Nächste Warenkorbposition -->
      ...
    </OrderItem>
    ...
  </Order>
</Warenkorb>

  • No labels