OCI-Punchout - Übernahme von Warenkörben aus externen Systemen

Aktivierung

Um den OCI-Punchout nutzen zu können, muss das Modul OCI-Punchout aktiviert werden.

Der OciPunchout mit Artikeln, die in MATNR keine bei uns bekannte ArtikelId haben funktioniert nicht mit Modulen, die eine ArtikelId erwarten.

z.B. "HintForArticleCountInCart", "Schecknummernkreis" und "/wiki/spaces/PL/pages/22490796".

Diese bitte deaktivieren.


In den Shop Grundeinstellungen unter Shop → bearbeiten → Grundeinstellungen müssen folgende Einstellungen vorgenommen werden.

Damit Benutzer aus externen Systemen bei der Übertragung des Warenkorbs an Leadprint angemeldet werden können,
muss das Modul 'SSO-Schnittstelle Backend' aktiviert und konfiguriert werden.

Die Dokumentation der OCI-Schnittstelle 5.0 befindet sich hier:
https://wiki.scn.sap.com/wiki/display/SRM/OCI+Documentation?preview=/395284636/395444883/OCI_50_EN20130121.pdf


Im Backend kann ein Benutzer ausgewählt werden.
Dieser wird per SSO angemeldet wenn kein Benutzer aktuell im Leadprint angemeldet ist und keine UserId im POST übergeben wird.

Benutzerhierarchie beim POST
User angemeldet in Leadprint → wird als 1. verwendet
Dann UserId aus dem POST
Dann Benutzer aus der Backend Konfiguration 

Der Dienstleister wird verwendet für per POST übertragene Artikel die keine ArtikelId (matnr) haben.
Dieser Dienstleister erhält dann die Benachrichtigung über die Bestellung.

Das Modul funktioniert nur in Verbindung mit dem Modul 'Anmeldung via SSO (Externe Systeme)'.

Dort kann ein Dienstleister für die externen Artikel und der einzuloggende Benutzer ausgewählt werden.

es wird bei der Annahme des Warenkorbs geprüft, ob die Domain in ExternalSystems gleich der eigenen Domain ist.

Dies dient dazu, Warenkörbe von verschiedenen Domains annehmen zu können.


Übergabe eines Warenkorbs vom externen System

Die Übergabe erfolgt als HTTP POST an die Url '/shop/module/OciPunchout/Shop/punchoutOci'


FeldBeschreibung
USERIDID des zu verwendenden Leadprint Users
NEW_ITEM-PRICE[]*Preis der Bestellposition
NEW_ITEM-UNIT[]*Mengeneinheit der Bestellposition
NEW_ITEM-MATNR[]ArtikelId eines in Leadprint hinterlegten Artikels
NEW_ITEM-DESCRIPTION[]*

Artikelbezeichnung

NEW_ITEM-QUANTITY[]*Menge der Bestellposition
NEW_ITEM-CURRENCY[]*Währung der Bestellung/Bestellposition
NEW_ITEM-LEADTIME[]Lieferzeit des Artikels
NEW_ITEM-LONGTEXT_n:132[]Artikelbezeichnung lang.
NEW_ITEM-VENDORMAT[]

Artikelnummer

NEW_ITEM-VENDOR[]Lieferanten-Nr. des Artikel          
NEW_ITEM-PRICEUNIT[] 

Preiseinheit für die Bestellposition (Stück, Packung, ...)

NEW_ITEM-MANUFACTCODE[]Herstellernummer der Bestellposition
NEW_ITEM-MANUFACTMAT[]Teilnummer der Bestellposition
NEW_ITEM-MATGROUP[]Materialgruppe für die Bestellposition
NEW_ITEM-EXT_PRODUCT_ID[]Eindeutige ID des Produkts im externen System
NEW_ITEM-EXT_SCHEMA_TYPE[]Schema mit dem das Produkt im externen System veraltet/importiert wurde
NEW_ITEM-COST_CENTER[]Kostenstelle

*sind Pflichtfelder ohne die eine Übergabe und Bestellung des Warenkorbs nicht funktioniert 

Variablen im Dienstleister XML

Im DIenstleister XML können folgende Variablen verwendet werden:

{$ociPunchoutItemLineId}

{$ociPunchoutItemArticleId}

{$ociPunchoutItemSapNumber}

{$ociPunchoutItemArticleDescription}

{$ociPunchoutItemQuantity}

{$ociPunchoutItemOrderUnit}

{$ociPunchoutItemCurrency}

{$ociPunchoutItemAmount}

{$ociPunchoutItemTax}

{$ociPunchoutItemTaxAmount}

{$ociPunchoutItemExtProductId}

{$ociPunchoutItemManufactCode}

{$ociPunchoutItemManufactMat}

{$ociPunchoutItemMatGroup}

{$ociPunchoutItemInfo}

{$ociPunchoutItemCostcenter}