Zum Inhalt springen

Auto-Login

Auto-Login meldet einen Punchout-Einkäufer gleich beim Start in seinem Kundenkonto in Ihrem Shop an. So sieht er seine eigenen Preise und sein Sortiment statt der Gastpreise.

Ein Einkaufssystem meldet sich mit seinem Einkäufer-Zugang bei punchout.dev an, nicht in Ihrem Shop. Ohne Auto-Login landet der Einkäufer als Gast in Ihrem Shop. Zeigt Ihr Shop kundenspezifische Preise, Vertragssortimente oder Preise erst nach dem Login, trägt der Gast-Warenkorb die falschen Preise in die Bedarfsanforderung.

Mit Auto-Login weiß punchout.dev, für welchen Shop-Kunden jeder Einkäufer-Zugang steht. Beim Launch schickt es den Browser mit einem kurzlebigen, signierten Token statt eines Passworts an den Login-Endpunkt Ihres Shops. Das Shop-Plugin prüft das Token und meldet diesen Kunden an.

Baustein Wo
Ein Login-Endpunkt im Shop Eines der Shop-Plugins oder Ihr eigener
Auto-Login eingeschaltet, mit Adapter, Login-Pfad und Kundenreferenz Portal, Tab Auto-Login des Shops
Die Public-Key-Zeile im Plugin Portal, Tab Auto-Login, Abschnitt Öffentliche Schlüssel
Ein Shop-Kunde je Einkäufer-Zugang Portal, Tab Einkäufer, Feld Shop-Kundenreferenz
Ein gehosteter Launch Das Einkaufssystem nutzt den OCI-Launch, den cXML PunchOutSetupRequest oder die IDS Connect Roundtrip-URL aus dem Tab Einbindung
Feld Bedeutung
Auto-Login aktivieren Schaltet die Weiterleitung an den Login-Endpunkt Ihres Shops ein.
Adapter Shopware, Magento, WooCommerce oder Eigener Adapter. Er hält fest, welchen Endpunkt Sie betreiben, und ändert nichts am Token. Bei WooCommerce und Magento zeigt der Tab dann den Pfad dieses Plugins und was jede Kundenreferenz dort bedeutet.
Login-Pfad Der Pfad des Endpunkts in Ihrem Shop, beginnend mit /. Die Weiterleitung geht an den ersten Eintrag unter Erlaubte Origins im Tab Allgemein, gefolgt von diesem Pfad.
Kundenreferenz Wie jede Shop-Kundenreferenz dieses Shops gelesen wird: Kunden-ID, Kundennummer oder E-Mail-Adresse.

Was jede Art je Plattform bedeutet:

Kundenreferenz Shopware WooCommerce Magento
Kunden-ID Die ID des Kunden Die numerische WordPress-Benutzer-ID Die Kunden-Entity-ID
Kundennummer Die Kundennummer Der WordPress-Anmeldename Nicht unterstützt, der Einkäufer landet als Gast
E-Mail-Adresse Die E-Mail-Adresse des Kunden Die E-Mail-Adresse des Benutzers Die E-Mail-Adresse des Kunden auf der aktuellen Website

Der Abschnitt Öffentliche Schlüssel im selben Tab zeigt die Public-Key-Zeile, zum Beispiel k1=…. Fügen Sie sie in die Plugin-Einstellung Public-Key-Zeilen ein. Damit prüft das Plugin die Signatur. Es ist ein öffentlicher Schlüssel: Er kann Tokens prüfen, aber nie eines erzeugen.

Sagt der Abschnitt „Es ist kein Signaturschlüssel hinterlegt. Ohne ihn landet jeder Punchout auf der normalen Landing-Seite.“, gibt es keinen Schlüssel zum Einfügen, und Auto-Login lässt sich nicht einrichten.

Zeigt der Abschnitt mehr als eine Zeile, fügen Sie alle ein.

Öffnen Sie im Tab Einkäufer einen Zugang und füllen Sie Shop-Kundenreferenz aus („Auf welches Shop-Konto der Auto-Login diesen Einkäufer anmeldet.“): die Kunden-ID, die Kundennummer oder die E-Mail-Adresse des Shop-Kontos, passend zu der Art, die im Tab Auto-Login gewählt ist. Ein Zugang ohne diesen Eintrag landet weiter als Gast, auch wenn Auto-Login an ist.

  1. Launch. Das Einkaufssystem startet einen gehosteten Launch, und punchout.dev prüft den Einkäufer-Zugang.
  2. Token. Ist Auto-Login an und hat der Zugang eine Shop-Kundenreferenz, stellt punchout.dev ein signiertes Login-Token aus. Es ist 120 Sekunden gültig, nur einmal und nur in Ihrem Shop verwendbar. Es nennt den Kunden und Ihren Landing-Pfad.
  3. Weiterleitung. Der Browser geht mit dem Token an den Login-Pfad Ihres Shops, zum Beispiel https://shop.example/punchout-dev/login?token=….
  4. Anmeldung. Das Plugin prüft das Token, sucht genau einen passenden Kunden und meldet ihn an.
  5. Warenkorbseite. Das Plugin leitet auf Ihre Landing-Seite weiter. Dort läuft der Punchout weiter, und der Einkäufer kauft angemeldet ein.

Das Token enthält kein Geheimnis. Weil es durch den Browser des Einkäufers reist, ist es kurzlebig, nur einmal verwendbar und auf einen Shop beschränkt, und es kann nur auf einen Pfad in Ihrem eigenen Shop führen, nie an ein anderes Ziel.

Auto-Login bricht nie einen Punchout ab.

Situation Was passiert
Auto-Login aus, keine Shop-Kundenreferenz am Zugang oder kein Signaturschlüssel Der Browser geht direkt auf die normale Landing-Seite, und der Einkäufer kauft als Gast ein.
Das Plugin lehnt das Token ab Das Plugin leitet ohne Anmeldung auf die Landing-Seite weiter. Der Punchout läuft als Gast weiter.
Der Login-Pfad ist falsch Der Browser landet auf dem, was Ihr Shop unter diesem Pfad ausliefert, meist auf seiner 404-Seite.
Auto-Login aktivieren, Shop-ID oder Public-Key-Zeilen ist im Plugin aus oder leer Das Plugin leitet ohne Anmeldung auf die Landing-Seite weiter. Der Punchout läuft als Gast weiter.

Jedes Plugin schreibt je abgelehntem Token eine Zeile mit einem Ablehnungsgrund ins eigene Log des Shops. Keines protokolliert das Token oder den Kunden.

Plattform Log
Shopware 6 Shopware-Log, Level Warning
Magento 2 var/log/system.log, Level Info
WooCommerce PHP-Fehlerlog, nur mit WP_DEBUG an

Diese Ablehnungsgründe sehen Sie am häufigsten. Eine vertippte oder abgeschnittene Schlüsselzeile überspringt das Plugin; sie zeigt sich deshalb als not_configured oder kid_unknown.

Grund Ursache Lösung
not_configured Shop-ID im Plugin leer, oder keine lesbare Zeile in Public-Key-Zeilen Füllen Sie beides aus
disabled Auto-Login aktivieren ist im Plugin aus Schalten Sie es ein
kid_unknown In Public-Key-Zeilen fehlt die aktuelle Zeile aus dem Portal, zum Beispiel wenn nur eine alte Zeile dort steht Fügen Sie die aktuelle Zeile aus dem Portal ein
signature_invalid Eine Zeile in Public-Key-Zeilen ist falsch oder veraltet Fügen Sie die aktuelle Zeile aus dem Portal ein
audience Die Shop-ID im Plugin weicht von dem Shop ab, der den Launch gestartet hat Kopieren Sie die Shop-ID aus dem Tab Einbindung
expired Das Token kam mehr als 120 Sekunden nach seiner Ausstellung an, oder die Uhr des Shops geht vor Starten Sie einen neuen Punchout. Passiert es jedes Mal, synchronisieren Sie die Serveruhr.
iat_future Die Uhr des Shops geht nach Synchronisieren Sie die Serveruhr
replay Das Token wurde schon verwendet (ein Neuladen, die Zurück-Taste), oder die Tabelle des Plugins für verwendete Tokens fehlt Starten Sie einen neuen Punchout. Passiert es jedes Mal, legen Sie die Tabelle neu an (siehe die Plattformseite).
customer_unresolved Kein aktiver Kunde passt zur Referenz, oder mehr als einer Prüfen Sie die Shop-Kundenreferenz und die Art der Kundenreferenz
administrator_refused WooCommerce: Der zugeordnete Benutzer ist ein Administrator Ordnen Sie ein gewöhnliches Kundenkonto zu
unsupported_ref_kind Magento: Die Kundenreferenz ist Kundennummer Nutzen Sie E-Mail-Adresse oder Kunden-ID

Das Token-Format, die Prüfungen in ihrer Reihenfolge und den Testvektor beschreibt die Spezifikation des Login-Tokens (auf Englisch). Die Seite Eigene Integration erklärt, was Sie für einen eigenen Endpunkt im Portal einstellen.