OCI-Schnittstelle einrichten: von der Aufrufstruktur bis zum Test

Praxisleitfaden für die Anbindung eines Lieferantenshops an SAP und andere Einkaufssysteme

Die OCI-Schnittstelle verbindet ein Einkaufssystem mit einem externen Webkatalog. Dieser Eintrag beschreibt, was vor der Einrichtung zu klären ist, wie die Aufrufstruktur aussieht, welche Felder abgestimmt werden müssen und woran Anbindungen in der Praxis scheitern.

Mehr erfahren
  • Checkliste vor der Einrichtung
  • Aufrufstruktur mit HOOK_URL
  • Feld-Mapping für Einheiten und Warengruppen
  • Testfälle und typische Fehler

Was ist eine OCI-Schnittstelle?

Die OCI-Schnittstelle ist die technische Verbindung zwischen einem Einkaufssystem und einem externen Webkatalog nach dem Open Catalog Interface von SAP. Sie besteht aus einem konfigurierten Katalogaufruf mit Parametern und einer Rückgabe, mit der der Katalog die ausgewählten Positionen an das Einkaufssystem übergibt.

Einordnung: Standard, Katalog und Schnittstelle

Im Sprachgebrauch werden drei Dinge oft vermischt. OCI ist der Standard, also die Regeln für Aufruf und Rückgabe. Der OCI-Katalog ist der Shop des Lieferanten, der diese Regeln beherrscht. Die OCI-Schnittstelle ist die konkrete, eingerichtete Verbindung zwischen Ihrem Einkaufssystem und genau einem solchen Katalog. Dieser Eintrag behandelt die Einrichtung; Ablauf und Feldliste des Standards finden Sie im Eintrag zu OCI.

Was vor der Einrichtung geklärt sein sollte

  • Aufrufendes System: Aus welcher Anwendung springen die Benutzer ab, zum Beispiel SAP SRM, SAP ERP, S/4HANA oder eine vorgelagerte Einkaufsplattform?
  • Zugangsdaten: Stellt der Lieferant einen technischen Benutzer je Kunde bereit oder werden einzelne Benutzer übergeben? Wie heißen die Anmeldeparameter des Shops?
  • Testumgebung: Gibt es einen Testshop, gegen den Sie aus Ihrem Entwicklungs- oder Qualitätssicherungssystem arbeiten können?
  • Feldumfang: Welche Rückgabefelder wertet Ihr System aus, und welche kann der Shop füllen?
  • Stammdaten: Welche Warengruppen, Mengeneinheiten und Lieferantennummern gelten in Ihrem System?
  • Darstellung: Öffnet der Katalog im selben Fenster, in einem neuen Fenster oder eingebettet in einen Rahmen?
  • Netzwerk: Der Shop muss vom Browser der Benutzer erreichbar sein, und die Rücksprungadresse Ihres Einkaufssystems ebenso. Eine direkte Verbindung zwischen den Servern ist für die Standardrückgabe nicht nötig.

Die Aufrufstruktur einrichten

Im Einkaufssystem wird der Katalog als externer Webdienst mit einer Aufrufstruktur hinterlegt. In SAP SRM geschieht das im Customizing bei der Definition externer Web-Services; SAP ERP und S/4HANA kennen vergleichbare Einstellungen für Kataloge in der Bestellanforderung. Jede Zeile der Aufrufstruktur hat einen Namen, einen Inhalt und einen Typ.

Beispielhafte Aufrufstruktur. Die Namen der Anmeldeparameter gibt der Shop vor.
ParameternameTypInhalt
(ohne Namen)URLAdresse des Katalogs, zum Beispiel https://shop.lieferant.example/oci
USERNAMEFestwertTechnischer Benutzer, den der Lieferant für Sie eingerichtet hat
PASSWORDFestwertZugehöriges Kennwort
LANGUAGESAP-FeldSystemfeld für die Anmeldesprache, damit der Shop in der richtigen Sprache startet
HOOK_URLRückgabe-URLBleibt leer; das System setzt zur Laufzeit die Rücksprungadresse ein
~OkCodeFestwertADDI
~targetFestwert_top
~callerFestwertCTLG

Die Reihenfolge der Zeilen bestimmt den Aufbau des Aufrufs. Weitere Parameter, etwa ein Mandantenkennzeichen oder eine Sichtsteuerung, vereinbaren Sie individuell mit dem Lieferanten. Wenn möglich, sollte der Aufruf per HTTP-POST statt per GET erfolgen, damit Zugangsdaten nicht in der Adresszeile und in Protokollen landen.

Feld-Mapping abstimmen

Der Standard gibt die Feldnamen vor, nicht aber die Werte. Die folgenden Punkte verursachen in Anbindungsprojekten die meisten Rückfragen.

ThemaWorauf es ankommt
MengeneinheitenNEW_ITEM-UNIT erwartet einen ISO-Code. Im Einkaufssystem muss zu jeder verwendeten internen Einheit ein ISO-Code gepflegt sein, sonst wird die Position abgewiesen.
WarengruppenNEW_ITEM-MATGROUP muss eine im System bekannte Warengruppe enthalten. Alternativ liefert der Shop eine Klassifikation in NEW_ITEM-EXT_SCHEMA_TYPE und NEW_ITEM-EXT_CATEGORY_ID, die im Einkaufssystem auf Warengruppen abgebildet wird.
LieferantNEW_ITEM-VENDOR enthält Ihre Lieferantennummer, nicht die Kundennummer aus Sicht des Lieferanten. Bei Katalogen eines einzelnen Lieferanten kann die Nummer auch fest im System hinterlegt sein.
Preis und PreiseinheitNEW_ITEM-PRICE bezieht sich auf NEW_ITEM-PRICEUNIT. Wird die Preiseinheit nicht übernommen, weicht der Positionswert um den entsprechenden Faktor ab.
KurztextNEW_ITEM-DESCRIPTION ist auf 40 Zeichen begrenzt. Der Shop sollte sinnvoll kürzen und den vollständigen Text als Langtext liefern.
ZeichensatzShop und Einkaufssystem müssen dieselbe Zeichenkodierung verwenden, sonst kommen Umlaute und Sonderzeichen verfälscht an.
ZahlenformatMengen und Preise werden mit Dezimalpunkt und ohne Tausendertrennzeichen übergeben.

Lässt sich eine Abweichung im Shop nicht lösen, bleibt die Anpassung bei der Übernahme im Einkaufssystem. In SAP SRM steht dafür das BAdI BBP_CATALOG_TRANSFER zur Verfügung.

Testfälle vor dem Produktivstart

  1. Anmeldung

    Der Absprung führt ohne Zwischenstopp in den Shop, mit dem richtigen Kunden, Sortiment und der richtigen Sprache.

  2. Eine Position

    Ein einzelner Artikel kommt mit Kurztext, Menge, Einheit, Preis, Währung und Lieferantenartikelnummer korrekt an.

  3. Mehrere Positionen

    Ein Warenkorb mit vielen Positionen wird vollständig und in der richtigen Reihenfolge übernommen.

  4. Sonderfälle bei Werten

    Artikel mit Preiseinheit ungleich 1, mit Dezimalmengen, mit Umlauten und mit langen Bezeichnungen.

  5. Abbruch und Zeitüberschreitung

    Der Benutzer kehrt ohne Auswahl zurück oder lässt die Sitzung ablaufen. Das Einkaufssystem bleibt in einem sauberen Zustand.

  6. Weiterverarbeitung

    Aus den übernommenen Positionen entstehen nach Kontierung und Freigabe eine Bestellanforderung und eine Bestellung, die der Lieferant verarbeiten kann.

Typische Fehler und ihre Ursachen

SymptomHäufige Ursache
Benutzer landet auf der Anmeldeseite des ShopsAnmeldeparameter falsch benannt oder nicht übergeben; Aufruf per GET statt POST oder umgekehrt
Warenkorb kommt leer anRückgabe geht nicht an die übergebene HOOK_URL, Feldnamen weichen vom Standard ab oder der Positionsindex beginnt nicht bei 1
Position wird wegen der Mengeneinheit abgelehntKein ISO-Code übergeben oder im Einkaufssystem keine Zuordnung zur internen Einheit gepflegt
Fehlermeldung zur WarengruppeWarengruppe im System unbekannt, Zuordnung der Klassifikation fehlt
Preis weicht um Faktor 10 oder 100 abPreiseinheit nicht übergeben oder nicht ausgewertet; Dezimalkomma statt Dezimalpunkt
Umlaute erscheinen als SonderzeichenUnterschiedliche Zeichenkodierung in Shop und Einkaufssystem
Sitzung geht bei der Rückkehr verlorenShop läuft eingebettet in einem Rahmen und der Browser blockiert Cookies von Drittanbietern; Ziel der Rückgabe passt nicht zur Fensterstruktur

Sicherheit und Datenschutz

Aufruf und Rückgabe sollten ausschließlich über HTTPS laufen. Technische Benutzer im Shop brauchen nur die Rechte, einen Warenkorb zu füllen und zu übergeben; eine Bestellung direkt im Shop sollte für diese Zugänge gesperrt sein. Übergeben Sie nur die Benutzerdaten, die der Shop wirklich benötigt. Oft reicht ein technischer Zugang je Kunde, ohne Namen oder E-Mail-Adressen einzelner Mitarbeitender.

Verwandte Begriffe und passende Ovenca-Seiten

OCI-Schnittstelle in vier Schritten

Von der Abstimmung mit dem Lieferanten bis zum Produktivstart

  • 1. Rahmen klären

    Aufrufendes System, Zugangsdaten, Testshop und Feldumfang werden mit dem Lieferanten abgestimmt, bevor jemand etwas konfiguriert.

    • Technischer Benutzer je Kunde
    • Testumgebung auf beiden Seiten
    • Liste der benötigten Felder
  • 2. Aufrufstruktur anlegen

    Katalog-URL, Anmeldeparameter und die Rückgabe-URL werden im Einkaufssystem als Webdienst hinterlegt.

    • HOOK_URL als Rückgabe-URL
    • Festwerte ~OkCode, ~target, ~caller
    • Aufruf per POST über HTTPS
  • 3. Felder abstimmen

    Mengeneinheiten, Warengruppen, Lieferantennummer und Preiseinheit müssen zu den Stammdaten des Einkaufssystems passen.

    • ISO-Codes für Einheiten
    • Warengruppen oder Klassifikation
    • Zeichensatz und Zahlenformat
  • 4. Testen und freigeben

    Testwarenkörbe decken Normalfall, Sonderfälle und Abbruch ab. Erst danach werden produktive Zugangsdaten eingetragen.

    • Einzel- und Sammelwarenkorb
    • Sonderzeichen und Preiseinheiten
    • Durchlauf bis zur Bestellung

Punchout-Schnittstellen zentral verwalten

Mit Ovenca pflegen Sie Punchout-Anbindungen an einer Stelle, statt jeden Lieferantenshop einzeln im ERP zu konfigurieren.

OCI-Parameter im Adminbereich
Die OCI-Parameter und Schnittstellen der angebundenen Lieferantenshops verwalten Sie direkt im Adminbereich von Ovenca.
Zugriff je Benutzer steuern
Über die Rechteverwaltung legen Sie fest, wer welche Punchout-Kataloge nutzen darf.
Ein Warenkorb, eine Freigabe
Positionen aus Punchout-Shops und importierten Katalogen laufen in einem Warenkorb zusammen und durchlaufen denselben mehrstufigen Freigabeprozess.
OCI und cXML
Ovenca unterstützt beide Punchout-Protokolle, sodass Lieferanten bei ihrer vorhandenen Anbindung bleiben können.
Übergabe an das ERP
Freigegebene Anforderungen und Bestellungen übergibt Ovenca per Schnittstelle an Ihr ERP.
Betriebsmodell nach Wahl
On-Premise, Private Cloud oder hybrid: Sie entscheiden, wo die Plattform läuft.

OCI-Schnittstelle: Fragen und Antworten

Weiterführende Seiten

OCI-Anbindungen ohne Einzelprojekte

Wir zeigen Ihnen, wie Sie Lieferantenshops zentral anbinden und die Positionen sauber an Ihr ERP übergeben.