# SAP SRM und S/4HANA (OCI)

So tragen Sie einen punchout.dev-Shop in SAP SRM oder SAP S/4HANA als OCI-Katalog ein, testen ihn und beheben einen abgewiesenen Launch.

URL: https://punchout.dev/de/docs/buyer-systems/sap-oci/

Diese Seite zeigt SAP-Administratoren, wie sie einen punchout.dev-Shop in SAP SRM oder SAP S/4HANA als OCI-Katalog eintragen. Bis auf die SAP-Begriffe gilt sie für jedes Einkaufssystem, das OCI unterstützt.

## Was Sie vom Shop-Betreiber brauchen

| Angabe | Beispiel | Wo der Shop-Betreiber sie findet |
| --- | --- | --- |
| OCI-Launch-URL | `https://api.punchout.dev/v1/oci/launch/pob_live_…` | Tab Einbindung, **Launch-URLs für das Einkaufssystem**, **OCI-Launch** |
| Benutzername | `SAP-SRM-01` | Tab Einkäufer, Kennung des Einkäufer-Zugangs |
| Passwort | (einmal angezeigt) | Tab Einkäufer, beim Anlegen oder Erneuern des Zugangs |

Schränkt der Shop-Betreiber die Rücksprung-Adressen unter **Erlaubte Rücksprung-Hosts** ein, nennen Sie ihm den Hostnamen der Rücksprung-Adresse Ihres SAP-Systems.

## Was Sie in SAP eintragen

In SAP legen Sie einen OCI-Katalog üblicherweise als Web-Service an: in SAP SRM und im On-Premise-S/4HANA im Customizing, in S/4HANA Cloud in der App „Settings for Web Services“. Masken und Menüpfade hängen vom Release ab; die SAP-Dokumentation zu Ihrem Release zeigt sie. Der Katalogaufruf braucht diese Einträge:

| Parameter | Typischer Typ | Wert |
| --- | --- | --- |
| Aufruf-URL | URL | `https://api.punchout.dev/v1/oci/launch/<shop id>` |
| `USERNAME` | Fester Wert | Der Benutzername vom Shop-Betreiber |
| `PASSWORD` | Fester Wert | Das Passwort vom Shop-Betreiber |
| `HOOK_URL` | Rücksprung-URL | Kein Wert: SAP setzt die Rücksprung-Adresse zur Laufzeit selbst ein |
| `FUNCTION` | (keiner) | Weglassen oder leer lassen |

Verwenden Sie POST, dann erscheint das Passwort weder in der Adresszeile noch im Verlauf des Browsers. GET funktioniert ebenfalls. Bei POST gehören alle Parameter in die Aufrufstruktur und keiner in die Aufruf-URL.

punchout.dev unterstützt nur den klassischen Katalogaufruf. Aktivieren Sie für diesen Katalog deshalb keine Katalogfunktionen wie Validierung oder Hintergrundsuche.

Braucht Ihr Katalogaufruf andere Parameternamen als `USERNAME` und `PASSWORD`, kann der Shop-Betreiber sie im Portal im Tab Allgemein unter **Erweiterte Einstellungen** anpassen.

Alternativ kann der Katalog mit den OCI-Parametern direkt auf den Shop zeigen, dann allerdings nur per GET. Besser ist die gehostete URL oben, denn nur sie prüft die Anmeldung, bevor sich der Shop öffnet.

## Den Katalog testen

1. Legen Sie in SAP einen Einkaufswagen an und öffnen Sie daraus den neuen Katalog.
2. Legen Sie zwei oder drei Artikel in den Warenkorb des Shops und öffnen Sie die Warenkorbseite.
3. Prüfen Sie die Positionen, die das Panel anzeigt, und klicken Sie auf **An Einkaufssystem übergeben**.
4. Öffnen Sie den Katalog erneut und klicken Sie auf **Zurück zum Einkaufssystem**.

## So sieht ein erfolgreicher Test aus

- Der Shop öffnet sich mit dem Punchout-Panel, das „Punchout aktiv“ anzeigt.
- Auf der Warenkorbseite zeigt das Panel die Positionen mit Menge und Preis.
- Nach der Übergabe stehen die Positionen mit Bezeichnung, Menge, Einheit, Preis und Währung im SAP-Einkaufswagen.
- Nach **Zurück zum Einkaufssystem** kehrt SAP ohne neue Positionen zum Einkaufswagen zurück.

Hat der Shop-Betreiber für Ihren Zugang [Auto-Login](https://punchout.dev/de/docs/plugins/auto-login/) eingerichtet, ist der Benutzer im Shop gleich mit dem zugeordneten Shop-Konto angemeldet und sieht dessen Preise.

punchout.dev übergibt die Preise so, wie SAP sie erwartet. Ob sie brutto oder netto ankommen, legt der Shop-Betreiber im Portal fest. Brauchen Sie die andere Variante, bitten Sie ihn, im Tab Allgemein die **Preisangabe** umzustellen.

## Wenn der Test fehlschlägt

| Was Sie sehen | Ursache | Was zu tun ist |
| --- | --- | --- |
| Eine Seite „Zugang verweigert / Access denied“ | Benutzername oder Passwort stimmen nicht, oder der Zugang ist deaktiviert | Gleichen Sie beides mit dem Shop-Betreiber ab oder lassen Sie sich ein neues Passwort geben |
| Dieselbe Seite | Der Shop lässt die Rücksprung-Adresse Ihres SAP-Systems nicht zu | Nennen Sie dem Shop-Betreiber Ihren Hostnamen; er trägt ihn unter **Erlaubte Rücksprung-Hosts** ein |
| Dieselbe Seite | Die Aufruf-URL enthält eine falsche Shop-ID, `FUNCTION` ist gesetzt, oder die Rücksprung-Adresse fehlt | Prüfen Sie den Katalogaufruf anhand der Tabelle oben |
| Eine Seite „Punchout nicht freigeschaltet / Punchout not enabled“ | Der Shop ist noch in der Sandbox | Bei Ihnen ist nichts zu tun. Siehe [Pläne und Sandbox](https://punchout.dev/de/docs/account/plans-and-sandbox/) |
| Der Shop öffnet sich ohne Punchout-Panel | Der Shop leitet den Browser auf eine Adresse um, die nicht für punchout.dev eingetragen ist, zum Beispiel mit oder ohne `www.` | Der Shop-Betreiber trägt diese Adresse im Tab Allgemein unter **Erlaubte Origins** ein |
| Die Schaltfläche **An Einkaufssystem übergeben** reagiert nicht | Die Content-Security-Policy des Shops blockiert Ihren Rücksprung-Host | Der Shop-Betreiber gibt Ihren Host in dieser Policy frei |
| Die Übergabe schlägt nach einer längeren Pause fehl | Ein Punchout ist vier Stunden gültig | Öffnen Sie den Katalog neu |

Die Seite „Zugang verweigert“ sieht bei jeder Ursache gleich aus. Das ist Absicht: Sie soll nichts über den Shop oder den Zugang verraten. Gehen Sie die Ursachen deshalb der Reihe nach durch.
