# Shop-Plugins

Was die optionalen Plugins für Shopware, WooCommerce und Magento zum Script-Tag hinzufügen, wo Sie sie herunterladen und wie Sie sie aktualisieren.

URL: https://punchout.dev/de/docs/plugins/

Die Shop-Plugins von punchout.dev sind optionale Erweiterungen für Shopware 6, WooCommerce und Magento 2, die das Script-Tag ausgeben, den Warenkorb markieren und Einkäufer anmelden.

## Brauchen Sie ein Plugin?

Nein. Jeder Shop funktioniert allein mit dem Script-Tag, siehe [Das Tag einbinden](https://punchout.dev/de/docs/getting-started/install-the-tag/). Ein Plugin ergänzt zwei Dinge, die das Tag allein nicht kann, und eine Erleichterung:

| Funktion | Nur Script-Tag | Mit Plugin |
| --- | --- | --- |
| Warenkorb-Container | Einmal von der geführten [Warenkorb-Erkennung](https://punchout.dev/de/docs/getting-started/cart-detection/) gefunden und im Tab **Warenkorb** gespeichert | Im Warenkorb-Template mit `data-punchout-cart` markiert, nichts zu erkennen |
| Anmeldung des Einkäufers | Der Einkäufer kauft als Gast ein | [Auto-Login](https://punchout.dev/de/docs/plugins/auto-login/): Der Einkäufer landet angemeldet in seinem Kundenkonto |
| Script-Tag | Sie fügen es ins Layout-Template ein | Das Plugin gibt es aus seinen Einstellungen aus |

## Der Warenkorb-Marker

Jedes Plugin umschließt den Warenkorb auf der Warenkorbseite mit einem schlichten Element ohne Klasse, ID oder Style:

```html
<div data-punchout-cart>
  <!-- the cart's line items -->
</div>
```

Mit dem Marker liest punchout.dev nur den markierten Warenkorb. Der Marker hat immer Vorrang vor einem Warenkorb-Container, den die Warenkorb-Erkennung gefunden hat.

Ein erkannter Warenkorb-Container beschreibt das Theme, wie es heute ist. Verschiebt ein Theme-Update den Warenkorb, wird der Container nicht mehr gefunden. Der Marker dagegen sitzt im Warenkorb-Template und wandert mit. So übersteht ein Shop mit Plugin ein Redesign ohne neue Warenkorb-Erkennung.

:::tip
Führen Sie nach der Installation eines Plugins einmal den Setup-Selbsttest durch. Erzeugen Sie im Tab **Einrichtung** des Shops einen Setup-Link, öffnen Sie ihn auf der Warenkorbseite und klicken Sie auf **Warenkorb erkennen**. Das Panel meldet die Quelle **Shop-Plugin**. Mit Ihrer Bestätigung ist der Schritt **Warenkorb erkannt** im Portal erledigt.
:::

## Auto-Login

Ohne Anmeldung kauft ein Punchout-Einkäufer als Gast ein und sieht Gastpreise. Jedes Plugin bringt einen Login-Endpunkt mit. Ist Auto-Login eingerichtet, schickt der Launch den Browser des Einkäufers mit einem signierten Einmal-Token zuerst dorthin, und das Plugin meldet den zugeordneten Kunden an. Siehe [Auto-Login](https://punchout.dev/de/docs/plugins/auto-login/).

## Welches Plugin für welche Plattform

| Plattform | Plugin | Download-Datei | Login-Endpunkt | Anleitung |
| --- | --- | --- | --- | --- |
| Shopware 6.7 | `PunchoutDev` | `PunchoutDev-<version>.zip` | `/punchout-dev/login` | [Shopware 6](https://punchout.dev/de/docs/plugins/shopware/) |
| WordPress mit WooCommerce | `punchout-dev` | `punchout-dev-<version>.zip` | `/wp-json/punchout-dev/v1/login` | [WooCommerce](https://punchout.dev/de/docs/plugins/woocommerce/) |
| Magento 2.4 | Modul `PunchoutDev_Bridge` | `PunchoutDev-Bridge-<version>.zip` | `/punchout-dev/login` | [Magento 2](https://punchout.dev/de/docs/plugins/magento/) |

Jede Zip-Datei enthält einen Ordner auf oberster Ebene, wie ihn die Plattform erwartet: `PunchoutDev/` für Shopware, `punchout-dev/` für WordPress, `PunchoutDev/Bridge/` für Magentos `app/code`.

Auf jeder anderen Plattform markieren Sie den Warenkorb selbst und bauen den Login-Endpunkt, wenn Sie Auto-Login möchten. Siehe [Eigene Integration](https://punchout.dev/de/docs/plugins/custom/).

## Download

Die Plugins laden Sie im Portal herunter, immer in ihrer aktuellen Version. Einen öffentlichen Download-Link gibt es nicht.

1. Melden Sie sich unter [punchout.dev/login](https://punchout.dev/login) an und öffnen Sie den Shop.
2. Stellen Sie im Tab **Allgemein** das **Shopsystem** auf Shopware, WooCommerce oder Magento und speichern Sie.
3. Öffnen Sie den Tab **Einbindung**. Der Abschnitt **Shopware-Plugin**, **WooCommerce-Plugin** oder **Magento-Modul** enthält die Schaltfläche **Plugin herunterladen (Version …)**.

Steht das **Shopsystem** auf **Anderes**, zeigt der Tab Einbindung nur die Schritte für das Script-Tag.

## Einstellungen, die alle Plugins teilen

Die Plugins verwenden die Begriffe des Portals. So lässt sich jeder Wert Feld für Feld kopieren:

| Plugin-Einstellung | Wert | Kopieren aus |
| --- | --- | --- |
| Snippet einbinden (Embed the snippet) | Standardmäßig an | |
| Snippet-URL (Snippet URL) | `https://js.punchout.dev/pob.js` | Tab Einbindung, **Snippet-URL** |
| API-Basis-URL, optional (API base URL) | Leer lassen | |
| Auto-Login aktivieren (Enable auto-login) | Standardmäßig an | |
| Shop-ID (Shop ID) | `pob_live_…` | Tab Einbindung, **Shop-ID** |
| Public-Key-Zeilen (Public key lines) | Jede Zeile, die das Portal zeigt | Tab Auto-Login, **Öffentliche Schlüssel** |

Eine deutsche Shopware-Administration zeigt die deutschen Bezeichnungen. Die Einstellungsseiten von WooCommerce und Magento sind englisch; ihre Bezeichnungen stehen in der Tabelle in Klammern.

Die Shop-ID hat zwei Aufgaben. Das Plugin gibt sie als `data-shop-id` am Script-Tag aus, und es akzeptiert ein Login-Token nur, wenn das Token für diese Shop-ID ausgestellt wurde. Ohne Shop-ID oder Snippet-URL gibt das Plugin kein Script-Tag aus.

## Updates

Die Plugins aktualisieren sich nicht selbst.

1. Laden Sie die neue Zip-Datei aus dem Tab Einbindung herunter.
2. Ersetzen Sie damit das installierte Plugin. Die Schritte unterscheiden sich je Plattform und stehen auf der Seite der Plattform.

Die Einstellungen liegen in der Datenbank des Shops (Shopware-Systemkonfiguration, eine WordPress-Option, Magento-Konfiguration) und bleiben erhalten, wenn Sie die Plugin-Dateien ersetzen.

:::caution
Version 2.0.0 hat jeden technischen Bezeichner von `PunchoutNinja` / `punchout-ninja` in `PunchoutDev` / `punchout-dev` umbenannt. Für die Shop-Plattform ist das ein neues Plugin, kein Update. Entfernen Sie zuerst das Plugin 1.x und betreiben Sie nie beide, denn jedes gibt sein eigenes Script-Tag aus. Tragen Sie danach die Einstellungen neu ein und ändern Sie den **Login-Pfad** im Tab Auto-Login des Portals. Die Einzelheiten stehen auf den Plattformseiten.
:::

## Vollständige Plugin-Dokumentation

Die READMEs der Plugins sind unverändert und auf Englisch veröffentlicht:

- [README des Shopware-Plugins](https://punchout.dev/de/docs/plugins/shopware/readme/)
- [README des WooCommerce-Plugins](https://punchout.dev/de/docs/plugins/woocommerce/readme/)
- [README des Magento-Moduls](https://punchout.dev/de/docs/plugins/magento/readme/)
- [Spezifikation des Login-Tokens](https://punchout.dev/de/docs/plugins/custom/login-token/) für Ihren eigenen Endpunkt
