# PayPal Reader (Zettle) Gateway

Das PayPal Reader Gateway ermöglicht die Annahme von Vor-Ort-Kartenzahlungen über ein **PayPal Reader (Zettle)** Kartenterminal direkt aus WCPOS. Der Browser überträgt den aktuellen Zahlungsstatus vom Lesegerät über eine sichere Verbindung zur Reader Connect API von Zettle, sodass der Kassierer jeden Schritt der Zahlung in Echtzeit verfolgen kann.

## Funktionen[​](#features "Direkter Link zu Funktionen")

#### Vor-Ort-Kartenzahlungen

Chip-, kontaktlose und Mobile-Wallet-Zahlungen an einem PayPal Reader (Zettle) Terminal akzeptieren

#### Live-Zahlungsstatus

Das POS zeigt den Echtzeit-Fortschritt — Verbindung wird hergestellt, Zahlung läuft, abgeschlossen oder storniert

#### Betrag serverseitig verifiziert

Der gemeldete Betrag wird immer mit der Bestellsumme abgeglichen, bevor die Bestellung aufgegeben wird

#### Einfache Kopplung

Ein Lesegerät über die Gateway-Einstellungen mit einem auf dem Gerät angezeigten Kopplungscode verbinden

## Voraussetzungen[​](#requirements "Direkter Link zu Voraussetzungen")

WCPOS

<!-- -->

: Pro-Version für den POS-Checkout erforderlich

WordPress

<!-- -->

: WordPress 5.2+ mit aktiviertem WooCommerce

PHP

<!-- -->

: PHP 7.4 oder höher

Zettle-Konto

<!-- -->

: Ein Zettle-Entwickler-Händlerkonto sowie eine Zettle Client-ID und Assertion (JWT) aus dem Zettle Developer Portal

Kompatible Hardware

<!-- -->

: Ein PayPal Reader (Zettle) Kartenterminal

Stabile Verbindung

<!-- -->

: Live-Zahlungen übertragen den Status über das Netzwerk an das Lesegerät und erfordern eine Internetverbindung

Unterstützte Hardware und Regionen

Die Verfügbarkeit von PayPal Reader / Zettle, unterstützte Lesegerätmodelle und unterstützte Länder werden durch Ihr **Zettle-Händlerkonto** bestimmt, nicht durch WCPOS. Vergewissern Sie sich vor dem Kauf bei PayPal/Zettle, dass Ihr Lesegerät und Ihre Region unterstützt werden.

## Installation[​](#installation "Direkter Link zu Installation")

1

#### PayPal Reader für WooCommerce installieren

Installieren Sie über `WP Admin > POS > Einstellungen > Erweiterungen`, oder laden Sie das neueste **Plugin-ZIP-Asset** (nicht das GitHub-Quellcode-ZIP oder -Tarball) von der [GitHub-Releases-Seite](https://github.com/wcpos/paypal-reader-for-woocommerce/releases) herunter und laden Sie es über `Plugins > Neu hinzufügen > Plugin hochladen` hoch. WooCommerce muss installiert und aktiviert sein.

2

#### Zahlungsgateway konfigurieren

1. Navigieren Sie zu `WP Admin > WooCommerce > Einstellungen > Zahlungen`
2. Suchen Sie **PayPal Reader** in der Liste der Zahlungsmethoden und öffnen Sie die zugehörigen Einstellungen
3. Lassen Sie **Testmodus aktivieren** eingeschaltet, während Sie die Einrichtung überprüfen. Verwenden Sie im Testmodus die Zugangsdaten Ihres Zettle-Entwickler-Händlerkontos; deaktivieren Sie den Testmodus später, um Live-Zahlungen entgegenzunehmen
4. Geben Sie Ihre **Zettle Client ID** ein — Ihre Zettle-OAuth-Client-ID aus dem Zettle Developer Portal
5. Geben Sie Ihre **Zettle Assertion** ein — Ihre Zettle-OAuth-Assertion (JWT). Diese wird als Geheimnis behandelt
6. Optional können **Titel** und **Beschreibung** festgelegt werden, die den Kunden angezeigt werden
7. **Speichern** Sie die Einstellungen

Hinweis

Das Kontrollkästchen **"PayPal Reader für Web-Checkout aktivieren"** gilt nur für den Checkout Ihres Onlineshops — es ist **nicht für das POS erforderlich**. Das Zahlungsgateway für das POS wird in einem späteren Schritt aktiviert.

3

#### Kartenleser koppeln

1. Scrollen Sie nach dem Speichern zum Abschnitt **Gekoppelte Kartenleser** am Ende des Einstellungsbildschirms (dieser wird angezeigt, sobald Ihre Client ID und Assertion gespeichert sind)
2. Öffnen Sie auf dem PayPal-Reader-Gerät **Einstellungen → Mit Entwickler verknüpfen**, um den Kopplungscode anzuzeigen
3. Geben Sie unter **Neuen Kartenleser koppeln** den **Kopplungscode** und optional einen **Kartenleser-Namen** ein (z. B. "Hauptkasse")
4. Klicken Sie auf **Kartenleser koppeln**. Der Kartenleser erscheint in der Liste der gekoppelten Geräte und ist bereit, Zahlungen entgegenzunehmen

Wichtig

Ein Lesegerät muss erfolgreich gekoppelt sein, bevor Zahlungen entgegengenommen werden können. Verwenden Sie **Entkoppeln** in der Liste der gekoppelten Geräte, um ein Lesegerät zu entfernen.

4

#### In WCPOS aktivieren

1. Navigieren Sie zu `WP Admin > POS > Einstellungen > Checkout`
2. Suchen Sie das **PayPal Reader**-Zahlungsgateway in der Liste
3. Aktivieren Sie es zur Verwendung im POS
4. Speichern Sie Ihre Einstellungen

## Zahlung durchführen[​](#taking-a-payment "Direkter Link zu Zahlung durchführen")

1. **Artikel hinzufügen** zum Warenkorb im POS und zur Kasse gehen
2. **PayPal Reader auswählen** als Zahlungsmethode
3. **Ein gekoppeltes Lesegerät auswählen** und die Zahlung starten. (Falls keines gekoppelt ist, werden Sie aufgefordert, den Filialadministrator zu bitten, eines unter `WooCommerce → Settings → Payments → PayPal Reader` zu koppeln.)
4. Das POS zeigt den Live-Status während der Verbindung an: *"Verbindung zum Lesegerät wird hergestellt…"*, *"Lesegerät bereit. Zahlung wird angefordert…"*, *"Zahlung wird durchgeführt…"*
5. Der Kunde tippt seine Karte an das Lesegerät oder steckt sie ein
6. Bei Erfolg wird der Betrag mit der Bestellsumme abgeglichen, die Transaktionsreferenz gespeichert und die Bestellung automatisch aufgegeben
7. Verwenden Sie **Zahlung abbrechen**, um die Anfrage am Lesegerät jederzeit abzubrechen

## Livebetrieb starten[​](#going-live "Direkter Link zu Livebetrieb starten")

Wenn Sie alles im Testmodus überprüft haben:

1. Deaktivieren Sie **Testmodus aktivieren**
2. Ersetzen Sie Ihre Zettle-Testanmeldedaten durch Ihre **Produktions**-Client-ID und Assertion
3. Speichern – die Endpunkte und der Ablauf sind identisch; nur das Händlerkonto unterscheidet sich

## Voraussetzungen und Einschränkungen[​](#limitations "Direkter Link zu Voraussetzungen und Einschränkungen")

* **Die Bestellung wird erst nach einem bestätigten Ergebnis des Lesegeräts abgeschlossen.** WCPOS gibt die Bestellung nur auf, wenn die Zahlung als abgeschlossen gemeldet wird.
* **Schutz bei Betragsabweichung.** Wenn der vom Lesegerät gemeldete Betrag nicht mit der Bestellsumme übereinstimmt, wird die Zahlung abgelehnt – vermeiden Sie daher Änderungen an der Warenkorbsumme während der Zahlung.
* **Konnektivität.** Live-Zahlungen erfordern, dass der Browser eine Sitzung zur Reader Connect API von Zettle aufrechterhält; eine stabile Internetverbindung ist erforderlich.

## Fehlerbehebung[​](#troubleshooting "Direkter Link zu Fehlerbehebung")

Der Abschnitt „Gekoppelte Lesegeräte" wird nicht angezeigt

Speichern Sie zuerst Ihre **Zettle Client ID** und **Assertion**. Das Kopplungsfeld wird erst angezeigt, wenn beide Anmeldedaten gespeichert sind. Andernfalls wird die Meldung *„Speichern Sie oben Ihre Zettle Client ID und Assertion, bevor Sie einen Reader koppeln."* angezeigt.

Lesegerät lässt sich nicht koppeln

* Stellen Sie auf dem Lesegerät sicher, dass Sie **Einstellungen → Mit einem Entwickler verknüpfen** geöffnet haben, um einen neuen Kopplungscode zu erhalten
* Geben Sie den Code genau wie angezeigt ein, bevor er abläuft
* Bestätigen Sie, dass Ihre Zettle Client-ID und Assertion korrekt sind und gespeichert wurden
* Stellen Sie sicher, dass das Lesegerät und Ihr Netzwerk über eine stabile Internetverbindung verfügen

Zahlung wird mit einer Betragsabweichung abgelehnt

Das Plugin gleicht den vom Lesegerät gemeldeten Betrag mit der Bestellsumme ab und lehnt jede Abweichung ab. Der Warenkorb oder die Bestellsumme sollte nicht geändert werden, während eine Zahlung läuft — stattdessen die Zahlung abbrechen, den Warenkorb anpassen und dann eine neue Zahlung starten.

Es werden keine echten Zahlungen verarbeitet / eine Admin-Warnung über einen ‚Mock Reader' erscheint

Eine Entwicklungs-/CI-Konstante (`PRWC_USE_MOCK_READER`) wird in `wp-config.php` definiert. Diese Konstante muss vor der Annahme von Live-Zahlungen entfernt werden — solange sie gesetzt ist, werden keine echten Zahlungen verarbeitet.

### Hilfe erhalten[​](#getting-help "Direkter Link zu Hilfe erhalten")

* Gateway-Probleme können im [GitHub-Repository](https://github.com/wcpos/paypal-reader-for-woocommerce) gemeldet werden.
* Bei Fragen zu Konto, Kartenleser-Hardware und regionaler Verfügbarkeit wenden Sie sich an den PayPal-/Zettle-Support.
