PunchOut über OCI Gateway

Der Gateway-Modus ermöglicht den direkten Einkauf innerhalb Ihrer E-Commerce-Anwendung ohne, dass diese sich auf einer technischen Ebene mit dem OCI-Protokoll auseinandersetzen muss.

Verwaltung von Kunden

Die initiale Anlage und die spätere Aktualisierung von Kunden erfolgt durch Sie über die PunchCommerce-Weboberfläche. Für jeden Kunden sind durch Sie die nachfolgenden Parameter zu pflegen:

Parameter Beschreibung
Feldmapping Für den Kunden zu verwendendes Feldmapping
Einsprungadresse Adresse zu der der Kunde nach erfolgreicher Authentifizierung weitergeleitet wird
Kundenkennung Wert der zur Identifizierung des Kunden an die Einsprungadresse übergeben wird

Unterstütze OCI-Funktionalität

PunchCommerce unterstützt den PunchOut in einem iFrame innerhalb des aufrufenden Systems und den PunchOut in einem separaten Browser.

Die funktionalen Erweiterungen des OCI-Standards die durch die Version 5.0 des OCI-Protkolls ergänzt wurden, werden derzeit für den Gateway-Betrieb nicht unterstützt. Siehe hierzu auch Die SAP OCI 5.0 Spezifikation ist abrufbar unter https://wiki.scn.sap.com/wiki/download/attachments/395284636/OCI_50_EN20130121.pdf

Authentifizierung und Weiterleitung in Lieferanten-System

Die Authentifizierung am Gateway erfolgt wie üblich durch Aufruf der PunchCommerce Einsprungadresse und Übergabe der nachfolgenden Parameter.

Parameter Wert
username Kunden-Benutzername aus der PunchCommerce-Oberfläche
password Kunden-Passwort aus der PunchCommerce-Oberfläche
HOOK_URL Rücksprungadresse in das ERP-System, Standard ist "SAPEVENT:POST"

Nach der erfolgreichen Authentifizierung des Kunden erfolgt die Weiterleitung an die in der Kundenkonfiguration (siehe Verwaltung von Kunden) definierte Einsprungadresse.

Die Einsprungadresse wird hierbei um die Parameter sID (Session-Identifier) und uID (Kundenkennung) erweitert, so dass die endgültige URL nach dem nachfolgenden Schema aufgebaut ist:

    https://{hostname}.{domain}.{tld}?sID={UUID}&uID={customer.identifier}

Die Authentifizierung im Lieferantensystem obliegt dem Lieferanten.

Übermittlung des Warenkorbes (PunchOut)

Nachdem der Kunde seinen Einkaufsprozess abgeschlossen hat, muss die E-Commerce-Anwendung des Lieferanten den Warenkorb als JSON-Objekt gemeinsam mit dem Session-Identifer (sID) zurück an unsere Gateway-Lösung übermitteln.

Hier ist ein http-POST-Request auf die Adresse https://www.punchcommerce.de/gateway/v1/oci/punchout?sID={UUID} auszuführen der Request-Body sollte den Warenkorb analog der nachfolgenden Struktur enthalten.

{
  "basket":[
        {
            "product_ordernumber": "10001",
            "product_name": "Klettergerüst",
            "quantity": 1.50,
            "item_price": 100,
            "price": 178.50,
            "price_net": 150,
            "tax_rate": 19,
            "product": {
                "id": "42",
                "ordernumber": "10001",
                "brand": "Netzdirektion",
                "brand_ordernumber": "999999",
                "customer_ordernumber": "2342343295649586"
                "title": "Klettergerüst",
                "category": "Kinderspielgeräte",
                "description": "Ein pädagogisch wertvolles Klettergerüst.",
                "description_long": "Nullam quis risus eget urna mollis ornare vel eu leo. Donec ullamcorper nulla non metus auctor fringilla. Duis mollis, est non commodo luctus, nisi erat porttitor ligula, eget lacinia odio sem nec elit. Vestibulum id ligula porta felis euismod semper. Donec id elit non mi porta gravida at eget metus.",
                "image_url": "",
                "price": 2623,
                "tax_rate": 19,
                "purchase_unit": null,
                "reference_unit": null,
                "unit": null,
                "unit_name": null,
                "packaging_unit": "Palette",
                "weight": 230,
                "shipping_time": 23,
                "classification_type": "ECLASS",
                "classification": "90909090",
                "custom_field1": "0.19",
                "custom_field2": "BX",
                ...
                "custom_field10": null
            }
        }
    ]
}

PunchCommerce wendet die für Ihren Kunden definierte Feldzuordnung auf den Warenkorb an und übermittelt den Warenkorb an das aufrufende ERP-System über das OCI-Protokoll.

OpenApi 3.0.1

Die jeweils aktuelle API-Spezifikation finden Sie unter: https://www.punchcommerce.de/openapi.json

© 2020 bis 2021 netzdirektion | Gesellschaft für digitale Wertarbeit mbH