# Mollie Terminal-Gateway

Das Mollie Terminal-Gateway ermöglicht es Ihnen, Vor-Ort-Zahlungen mit [Mollie Terminal](https://www.mollie.com/products/point-of-sale)-Hardware direkt in WCPOS anzunehmen. Eine Zahlung wird von WooCommerce aus gestartet und am Terminal abgeschlossen; die Bestätigung von Mollie wird in die Bestellung zurückgeschrieben.

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

#### Hardware-Integration

Zahlungen an die in Ihrem Mollie-Konto registrierten Mollie-Terminals senden und Kartenzahlungen vor Ort entgegennehmen

#### Keine manuelle Kopplung

Terminals werden live aus Ihrem Mollie-Konto abgerufen – wählen Sie eines aus einer Dropdown-Liste aus, ohne eine Geräte-ID einfügen zu müssen

#### Zuverlässiger Abschluss

Zahlungen werden durch Abfragen bei Mollie bestätigt, und nach der Bestätigung durch das Terminal wird im POS automatisch zum Beleg weitergeleitet

#### Sichere Transaktionen

PCI-konforme Verarbeitung von Kartenzahlungen auf Mollie-Hardware

#### Rückerstattungen unterstützt

Rückerstattung über die WooCommerce-Bestellübersicht, mit Mollie abgeglichen, damit Rückerstattungen nie doppelt erfolgen

## So funktioniert es[​](#how-it-works "Direkter Link zu So funktioniert es")

Mollie Terminal verwendet Mollies **serverseitige `pointofsale` Zahlungen**. Beim Starten einer Zahlung erstellt WooCommerce eine Mollie-Zahlung für die Bestellung, und Mollie übermittelt sie an das ausgewählte Terminal. Der Kunde zahlt am Gerät, und **Mollie ist die maßgebliche Quelle** für den Zahlungs- und Rückerstattungsstatus — die lokalen WooCommerce-Bestellmetadaten dienen nur als Cache.

**So wird eine Zahlung bestätigt.** Während die Zahlung ausgeführt wird, fragt das POS Mollie ab (standardmäßig alle 2 Sekunden) und leitet bei Bestätigung durch das Terminal direkt zur Dankeseite weiter. Mollie-Webhooks werden ebenfalls verwendet, um dies zu beschleunigen — und die Webhook-URL wird bei jeder Zahlung automatisch festgelegt, sodass im Mollie-Dashboard **nichts konfiguriert werden muss**.

Das Terminal muss in demselben Mollie-Konto wie das Plugin registriert und aktiv sein.

## Einrichtung[​](#setup "Direkter Link zu Einrichtung")

1

#### Mollie Terminal für WooCommerce installieren

Installation über `WP Admin > POS > Einstellungen > Erweiterungen` oder Download des neuesten **Plugin-ZIP-Assets** (nicht der GitHub-Quellcode-ZIP-Datei oder des Tarballs) von der [GitHub-Release-Seite](https://github.com/wcpos/mollie-terminal-for-woocommerce/releases) und Upload über `Plugins > Neu hinzufügen > Plugin hochladen`.

2

#### Mollie-Zugangsdaten konfigurieren

1. `WP Admin > WooCommerce > Einstellungen > Zahlungen` öffnen und **Mollie Terminal** auswählen
2. Setzen Sie **Modus** für eine simulierte Testterminal-Zahlung auf `Test` oder für ein echtes Terminal auf `Live`
3. Setzen Sie **API-Schlüsselquelle**, um den Schlüssel aus dem offiziellen Mollie-Plugin wiederzuverwenden oder den auf dieser Seite eingegebenen Schlüssel zu verwenden
4. Wenn Sie den Schlüssel hier eingeben, fügen Sie den Test- oder Live-API-Schlüssel, der dem ausgewählten Modus entspricht, in **Mollie API-Schlüssel** ein
5. Speichern

Vor dem Live-Betrieb testen

Mollie stellt ein simuliertes Terminal für Testzahlungen über `pointofsale` bereit. Verwenden Sie den Modus `Live` erst, wenn Zahlungen an ein physisches oder iOS-/Android-Terminal gesendet werden sollen. Informationen zum aktuellen Testablauf finden Sie unter [Umfang und Einschränkungen](#scope-and-limitations).

Keine Profil-ID erforderlich

Für Zahlungen über `pointofsale` ist keine Mollie-**Profil-ID** erforderlich. Terminals werden für das gesamte Konto aufgelistet, daher muss nichts weiter eingefügt werden.

3

#### Terminals auswählen

1. Wählen Sie im Dropdown-Menü ein **Standardterminal** aus. Die Liste wird aus der ausgewählten Mollie-Umgebung abgerufen. Inaktive Terminals werden ausgeblendet, da Mollie sie nicht reaktivieren kann.
2. *(Optional)* Beschränken Sie **Aktivierte Terminals** auf die tatsächlich verwendeten Geräte. Die gespeicherte Standardauswahl bleibt verfügbar, auch wenn sie hier nicht ausgewählt ist; lassen Sie die Einstellung leer, um alle aktiven Terminals zuzulassen. Um ein Terminal außer Betrieb zu nehmen, ändern oder leeren Sie außerdem **Standardterminal**.
3. *(Optional)* Aktivieren Sie **Terminauswahl sperren**, damit Kassenmitarbeitende das Terminal beim Kassiervorgang nicht ändern können — das Standardterminal wird immer verwendet, und dies wird auch auf dem Server erzwungen.
4. Speichern

4

#### In WCPOS aktivieren

1. Gehen Sie zu `WP Admin > POS > Einstellungen > Kasse`
2. Suchen Sie das Zahlungsgateway **Mollie Terminal** und aktivieren Sie es im POS
3. Speichern Sie die Einstellungen

Hinweis

Das Kontrollkästchen **Aktivieren/Deaktivieren** auf der WooCommerce-Einstellungsseite steuert nur den Checkout des *Onlineshops*. WCPOS verwendet dieses Zahlungsgateway, sobald es konfiguriert wurde, unabhängig davon, ob dieses Kontrollkästchen aktiviert ist.

## Referenz der Einstellungen[​](#settings "Direkter Link zu Referenz der Einstellungen")

| Einstellung                   | Beschreibung                                                                                                                                                                                                                                                            |
| ----------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Aktivieren/deaktivieren**   | Aktiviert das Gateway für den Checkout des Onlineshops (für POS nicht erforderlich)                                                                                                                                                                                     |
| **Titel** / **Beschreibung**  | Bezeichnung und Text, die dem Kunden beim Checkout angezeigt werden                                                                                                                                                                                                     |
| **Modus**                     | `Test` verwendet Mollies simuliertes Testterminal; `Live` sendet Zahlungen an ein echtes Terminal                                                                                                                                                                       |
| **API-Schlüsselquelle**       | Verwendet den unten eingegebenen Schlüssel oder den passenden Test-/Live-Schlüssel aus dem offiziellen Plugin Mollie Payments for WooCommerce. Wenn der gemeinsam genutzte Schlüssel nicht verfügbar ist, verwendet das Plugin den untenstehenden Schlüssel             |
| **Mollie-API-Schlüssel**      | Der Test- oder Live-API-Schlüssel für den ausgewählten Modus. Wird verwendet, wenn **API-Schlüsselquelle** auf den hier eingegebenen Schlüssel gesetzt ist, und als Fallback bei einem fehlenden gemeinsam genutzten Schlüssel                                          |
| **Standardterminal**          | Das standardmäßig beim Checkout verwendete Terminal, ausgewählt aus einer Dropdown-Liste aktiver Terminals in der ausgewählten Mollie-Umgebung                                                                                                                          |
| **Aktivierte Terminals**      | Beschränkt die Checkout-Liste auf ausgewählte Terminals. Leer = alle aktiven Terminals. Das gespeicherte Standardterminal ist immer verfügbar; daher beim Ausmustern eines Terminals auch ändern oder löschen                                                           |
| **Terminalauswahl sperren**   | Erzwingt beim Checkout das Standardterminal, sodass Kassierer es nicht ändern können (erfordert ein Standardterminal)                                                                                                                                                   |
| **Checkout-Debug-Protokolle** | Zeigt die Werkzeuge **Protokolle anzeigen**, **Kopieren** und **Löschen** im Zahlungsbereich des Checkouts an. Nur aktivieren, wenn Protokolle für den Support erfasst werden; Zahlungsaktivitäten werden immer unter `WooCommerce > Status > Protokolle` aufgezeichnet |

Die Webhook-URL wird bei jeder Zahlung automatisch angewendet. Daher gibt es kein auszufüllendes Webhook-Feld und keine erforderliche Konfiguration im Mollie-Dashboard.

## Verwendung[​](#usage "Direkter Link zu Verwendung")

### Zahlungen verarbeiten[​](#processing-payments "Direkter Link zu Zahlungen verarbeiten")

1. **Artikel hinzufügen**: Produkte im POS zum Warenkorb hinzufügen
2. **Gateway auswählen**: „Mollie Terminal“ als Zahlungsmethode auswählen
3. **Terminal auswählen**: Ein Terminal aus der Auswahlliste auswählen (standardmäßig das konfigurierte Terminal; ausgeblendet, wenn die Terminalauswahl gesperrt ist)
4. **Terminalzahlung starten**: Auf **Terminalzahlung starten** klicken — Mollie sendet die Zahlung an das Gerät
5. **Kundenzahlung**: Kund
   <!-- -->
   :innen
   <!-- -->
   halten, stecken oder ziehen ihre Karte am Terminal durch. Der Status wird live aktualisiert — `Sending to terminal…` → `Waiting for terminal…`
6. **Automatischer Abschluss**: Sobald das Terminal bestätigt, wird die Bestellung als bezahlt markiert und das POS leitet automatisch zum Beleg weiter

### Zahlungssteuerung[​](#payment-controls "Direkter Link zu Zahlungssteuerung")

* **Terminalzahlung starten**: Eine neue Zahlungsanfrage an das ausgewählte Terminal senden
* **Zahlung stornieren**: Eine noch offene Zahlung stornieren. Sobald die Zahlung das Terminal erreicht hat, meldet Mollie sie als nicht mehr stornierbar, und das Kassenpersonal storniert sie direkt am Gerät

### Bestellverwaltung[​](#order-management "Direkter Link zu Bestellverwaltung")

* **Verifizierter Abschluss**: Jeder Webhook, jede Abfrage, Stornierung und jeder Wiederholungsversuch ruft den maßgeblichen Mollie-Status ab, bevor eine Bestellung geändert wird. Bestellungen werden daher nur bei bestätigtem Mollie-Status als bezahlt markiert
* **Zahlungsverfolgung**: Zahlungsversuche werden als nur ergänzbarer Verlauf in der Bestellung erfasst
* **Belegerstellung**: Standard-POS-Belege werden nach erfolgreichen Zahlungen erstellt

## Rückerstattungen[​](#refunds "Direkter Link zu Rückerstattungen")

Rückerstattungen werden unterstützt. Eine Bestellung kann über die normale WooCommerce-Bestellübersicht erstattet werden; die Rückerstattung wird dann an Mollie gesendet. Da Mollie die maßgebliche Quelle ist, werden Wiederholungen von Rückerstattungen anhand der Rückerstattungs-IDs und Metadaten von Mollie abgeglichen, **bevor** eine weitere Rückerstattung erstellt wird, sodass eine Rückerstattung niemals versehentlich zweimal ausgeführt wird.

## Bereinigung veralteter Zahlungen[​](#stale-payment-cleanup "Direkter Link zu Bereinigung veralteter Zahlungen")

Eine Mollie-`pointofsale`-Zahlung kann auf der Seite von Mollie als „open“ verbleiben, wenn ein Checkout abgebrochen wird. Das Plugin storniert diese offenen Zahlungen automatisch, wenn:

* die automatische Abfrage das Zeitlimit überschreitet (standardmäßig 5 Minuten) — die Stornierung wird gesendet, statt die Zahlung offen zu lassen
* die Bestellung mit einer **anderen** Zahlungsmethode abgeschlossen wird (wenn beispielsweise stattdessen bar bezahlt wird) oder die Bestellung in WooCommerce storniert wird
* die Checkout-Seite während der Zahlung geschlossen wird — beim Verlassen des Tabs wird nach Möglichkeit eine Stornierung ausgelöst
* ein WP-Cron-Durchlauf alle 10 Minuten ausgeführt wird und Zahlungen storniert oder auflöst, die nach Ablauf des Veraltungszeitraums (standardmäßig 10 Minuten) noch offen sind, auch wenn der Browser geschlossen oder die Netzwerkverbindung unterbrochen wird, bevor die anderen Bereinigungsvorgänge ausgeführt werden

Wenn die Zahlung das Terminal bereits erreicht hat, meldet Mollie, dass sie nicht stornierbar ist, und die Kassenkraft storniert sie direkt auf dem Gerät — diese Bereinigungen sind in diesem Fall sicher und haben keine Wirkung.

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

Mollie-Konto

<!-- -->

: Aktives Mollie-Konto mit einem API-Schlüssel für den ausgewählten Modus

Kompatible Hardware

<!-- -->

: Ein aktives Mollie-Terminal für Live-Zahlungen; das simulierte Testterminal von Mollie zum Testen

Währung

<!-- -->

: EUR — POS-Terminalzahlungen sind derzeit auf EUR beschränkt

WCPOS

<!-- -->

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

Stabile Verbindung

<!-- -->

: Zuverlässige Internetverbindung für die API-Kommunikation

## Umfang und Einschränkungen[​](#scope-and-limitations "Direkter Link zu Umfang und Einschränkungen")

Testmodus

Mollie unterstützt Testzahlungen über `pointofsale` ohne physisches Terminal. Aktivieren Sie Point of Sale in einem Mollie-Profil, um dessen Testterminal zu erstellen. Setzen Sie dieses Zahlungsgateway anschließend auf `Test`, verwenden Sie den passenden Test-API-Schlüssel und wählen Sie dieses Terminal aus. Mollie gibt eine `changePaymentState`-URL zurück, über die das simulierte Ergebnis ausgewählt wird.

Das Plugin kann die Testzahlung erstellen und abfragen, sein Checkout-Bereich zeigt diese URL derzeit jedoch nicht an. Suchen Sie in den Entwicklerwerkzeugen des Browsers nach der Netzwerkantwort `mtfwc_start_payment` und öffnen Sie `_links.changePaymentState.href`, um das Ergebnis festzulegen. Lassen Sie anschließend den POS die Zahlung abfragen und abgleichen. Siehe [Mollies Leitfaden zum Testen von Point-of-Sale-Zahlungen](https://docs.mollie.com/docs/in-person-payments-testing). Verwenden Sie den Modus `Live` für ein physisches oder iOS/Android-Terminal.

Währung

Zahlungen am POS-Terminal sind auf **EUR** beschränkt, bis eine umfassendere Währungsunterstützung für Mollie Terminal bestätigt ist.

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

### Häufige Probleme[​](#common-issues "Direkter Link zu Häufige Probleme")

Im Dropdown werden keine Terminals angezeigt

* Stellen Sie sicher, dass **Modus** und der verwendete API-Schlüssel dieselbe Mollie-Umgebung nutzen
* Aktivieren Sie im Testmodus Point of Sale in einem Mollie-Profil, damit Mollie sein simuliertes Testterminal erstellt
* Prüfen Sie im Modus Live, ob das Terminal in Ihrem Mollie-Konto registriert und **aktiv** ist; inaktive Terminals werden ausgeblendet, da Mollie sie nicht reaktivieren kann
* Stellen Sie sicher, dass Ihre Website Mollie erreichen kann — die Liste wird in Echtzeit über die API abgerufen

Zahlung startet nicht

* Sicherstellen, dass ein Terminal ausgewählt ist (oder ein **Standard-Terminal** festgelegt ist, wenn die Auswahl gesperrt ist)
* Prüfen, ob das Terminal eingeschaltet, online und im selben Mollie-Konto aktiv ist
* Überprüfen, ob die Bestellwährung **EUR** ist

Beim Terminal ist eine Zeitüberschreitung aufgetreten oder die Zahlung blieb offen

* Das Plugin versucht, offene Zahlungen bei einer Zeitüberschreitung automatisch zu stornieren (standardmäßig nach 5 Minuten)
* Wenn die Zahlung das Terminal bereits erreicht hat und nicht automatisch storniert werden kann, ist sie direkt auf dem Gerät zu stornieren
* Anschließend kann eine neue Zahlung gestartet oder eine andere Zahlungsart verwendet werden

Bestellung wurde am Terminal abgeschlossen, wird aber nur langsam aktualisiert

* Das POS fragt Mollie alle 2 Sekunden ab und leitet weiter, sobald die Zahlung bestätigt ist; normalerweise bestätigt sie ein Webhook zuerst
* Da Mollie die maßgebliche Quelle ist, wird die Bestellung mit dem verbindlichen Mollie-Status abgeglichen — sie geht nicht verloren
* `WooCommerce > Status > Protokolle` auf Mollie-API-Meldungen prüfen

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

Für technischen Support:

* Rufen Sie das [GitHub-Repository](https://github.com/wcpos/mollie-terminal-for-woocommerce) auf, um Probleme zu melden
* Lesen Sie bei Fragen zur API den [Einrichtungsleitfaden für Mollie Terminal](https://docs.mollie.com/docs/setting-up-terminal) und die [Mollie API zum Erstellen von Zahlungen](https://docs.mollie.com/reference/create-payment)
* Wenden Sie sich bei Konto- und Hardwareproblemen an den Mollie-Support

## Screenshots[​](#screenshots "Direkter Link zu Screenshots")

In einem zukünftigen Update werden Screenshots hinzugefügt, die Folgendes zeigen:

* Der Bildschirm für die Einstellungen von Mollie Terminal — API-Schlüssel, Standardterminal und aktivierte Terminals
* Aktivierung des Zahlungsgateways in den WCPOS-Einstellungen
* Ablauf der Zahlungsabwicklung im Kassenvorgang des POS
