Zurück

VibeFox Xendit for WooCommerce — Hilfe

Anforderungen

WordPress: 6.0 oder neuer.

WooCommerce: 8.0 oder neuer, installiert und aktiv. Ohne WooCommerce lässt sich das Plugin nicht aktivieren.

PHP: 8.0 oder neuer.

Shopwährung: IDR, PHP, VND, THB, MYR, USD oder SGD. Für andere Währungen wird die Zahlungsart nicht angezeigt. Welche Zahlungskanäle und Währungen tatsächlich verfügbar sind, hängt von Ihrem Xendit-Konto ab.

Xendit-Konto: Sie benötigen einen geheimen API-Schlüssel mit Schreibberechtigung für Money-in (Rechnungen) für den Testmodus und einen weiteren für den Live-Modus sowie das Webhook-Verifizierungstoken jedes Modus (siehe Konfiguration). Verwendet werden nur die geheimen Schlüssel und die Verifizierungstoken. Ein öffentlicher Schlüssel wird nicht benötigt, da der Kunde auf der von Xendit gehosteten Rechnungsseite bezahlt.

VibeFox-Lizenzschlüssel: wird auf vibefox.net gekauft. Ein Schlüssel funktioniert für eine Domain.

Installation

1. Gehen Sie in WordPress zu Plugins > Add New > Upload Plugin, wählen Sie die ZIP-Datei des Plugins und klicken Sie auf Install Now. Sie können auch den Ordner wcp_xendit_payment_gateway per FTP nach /wp-content/plugins/ hochladen.

2. Klicken Sie auf Activate.

3. Öffnen Sie die Einstellungen: WooCommerce > Settings > Payments > Xendit > Manage, oder klicken Sie auf der Seite Plugins unter dem Namen des Plugins auf Settings.

4. Geben Sie Ihren VibeFox-Lizenzschlüssel im Lizenzblock oben auf der Seite ein und klicken Sie auf Activate.

5. Fügen Sie Ihre geheimen Xendit-Schlüssel ein, legen Sie die Webhook-URL im Xendit-Dashboard fest und fügen Sie die Verifizierungstoken ein (siehe Konfiguration).

6. Aktivieren Sie Enable/Disable. Geben Sie im Testmodus eine Testbestellung auf und deaktivieren Sie danach Test Mode, um echte Zahlungen anzunehmen.

Konfiguration

Alle Einstellungen befinden sich auf einer Seite: WooCommerce > Settings > Payments > Xendit. Oberhalb der Felder zeigt ein Banner den aktiven Modus an: TEST MODE (Rechnungen werden mit dem geheimen Testschlüssel erstellt, und es wird kein echtes Geld belastet) oder LIVE MODE (Rechnungen werden mit dem geheimen Live-Schlüssel erstellt, und Kunden werden belastet). Das Banner warnt, wenn der geheime Schlüssel des aktiven Modus fehlt oder das falsche Präfix hat (die Zahlungsart wird dann an der Kasse ausgeblendet), und wenn das Webhook-Verifizierungstoken des aktiven Modus leer ist (Xendit-Benachrichtigungen werden dann abgelehnt, sodass Bestellungen nur aktualisiert werden, wenn der Kunde in Ihren Shop zurückkehrt). In der Liste der Zahlungsarten ist Xendit als einrichtungsbedürftig markiert, bis der aktive Modus einen gültigen geheimen Schlüssel hat.

Allgemein

Enable/Disable: Enable Xendit aktiviert oder deaktiviert die Zahlungsart. Standard: aus.

Title: der Name der Zahlungsart, den Kunden an der Kasse sehen. Standard: Xendit.

Description: der Text unter der Zahlungsart an der Kasse. Standard: Pay with virtual accounts, e-wallets, QR codes, retail outlets or cards via Xendit.

API-Schlüssel

Erstellen Sie einen geheimen API-Schlüssel mit Schreibberechtigung für Money-in (Rechnungen) unter Xendit Dashboard > Settings > Developers > API keys, einmal im Testmodus und einmal im Live-Modus. Der Schlüssel bestimmt, wo die Rechnung erstellt wird. Beim Speichern wird ein Schlüssel, der nicht mit dem Präfix seines Feldes beginnt, nicht gespeichert, und die Seite zeigt zum Beispiel Test secret key was not saved: it must start with xnd_development_ an. Die übrigen Einstellungen werden gespeichert.

Test Mode: Enable test mode erstellt Rechnungen mit dem geheimen Testschlüssel, sodass kein echtes Geld belastet wird. Standard: ein. Deaktivieren Sie die Option, um echte Zahlungen mit dem geheimen Live-Schlüssel anzunehmen.

Test Secret Key: der geheime Schlüssel des Xendit-Testmodus. Er beginnt mit xnd_development_.

Live Secret Key: der geheime Schlüssel des Xendit-Live-Modus. Er beginnt mit xnd_production_.

Webhooks

Der Webhook teilt Ihrem Shop mit, dass eine Rechnung bezahlt wurde. Legen Sie im Xendit Dashboard > Settings > Developers > Webhooks die URL, die in diesem Abschnitt der Einstellungen angezeigt wird, für Invoices > Invoice paid fest, im Testmodus und im Live-Modus. Optional können Sie sie auch für Invoice expired festlegen. Die URL sieht so aus: https://your-site/wc-api/xendit_p_callback/. Kopieren Sie sie genau so, wie die Einstellungen sie anzeigen.

Invoice paid: der Kunde hat die Rechnung bezahlt. Die Bestellung wird nach der unten beschriebenen Prüfung als bezahlt markiert.
Invoice expired: die Rechnung ist ohne Zahlung abgelaufen. Wartete die Bestellung noch auf diese Rechnung, wechselt sie in den Status „Fehlgeschlagen“.

Kopieren Sie danach das Webhook verification token jedes Modus aus dem Xendit-Dashboard in das passende Feld. Xendit sendet es im Header x-callback-token. Benachrichtigungen ohne das Token des Modus, in dem die Rechnung erstellt wurde, werden abgelehnt. Das Token belegt nur, dass die Benachrichtigung von Xendit stammt: Rechnungsstatus, Betrag und Währung werden immer mit dem geheimen Schlüssel dieses Modus erneut über die Xendit-API abgefragt. Ohne Webhook wird eine Bestellung erst bestätigt, wenn der Kunde nach der Zahlung in den Shop zurückkehrt.

Test Webhook Verification Token: das Webhook-Verifizierungstoken des Xendit-Testmodus.

Live Webhook Verification Token: das Webhook-Verifizierungstoken des Xendit-Live-Modus.

Zahlung

Invoice Description: die Beschreibung, die auf der Xendit-Rechnung angezeigt wird. Sie können die Platzhalter {order_id}, {order_number} und {site_name} verwenden. HTML wird entfernt, und der Text wird auf 255 Zeichen gekürzt. Standard: Order #{order_id}.

Order Status After Payment: der Bestellstatus, der gesetzt wird, nachdem Xendit die Zahlung bestätigt. Der Status wird sofort in einem einzigen Statuswechsel gesetzt.

Processing: der WooCommerce-Standard (Standard). Bestellungen mit nur virtuellen, herunterladbaren Produkten werden auf Abgeschlossen gesetzt.
Completed: jede bezahlte Bestellung wird auf Abgeschlossen gesetzt.

Erweitert

Debug Log: Log API requests and webhooks schreibt Anfragen, Webhooks und Statusänderungen in WooCommerce > Status > Logs, Quelle wcp_xendit_payment_gateway. Fehler und Warnungen werden immer protokolliert, auch wenn diese Option aus ist. API-Schlüssel, Token und Kundendaten werden nicht protokolliert. Standard: aus.

Delete Data on Uninstall: Delete the plugin settings and logs when the plugin is deleted. Das Deaktivieren des Plugins löscht nie etwas. Bestelldaten (Rechnungs-IDs in Bestellungen) bleiben immer erhalten. Standard: aus.

Kasse

Die Zahlungsart wird angezeigt, wenn die Shopwährung IDR, PHP, VND, THB, MYR, USD oder SGD ist. Auf der Seite Pay for order zählt die Bestellwährung. Der Kunde wählt die Zahlungsart (standardmäßig Xendit) und gibt die Bestellung auf. Das Plugin erstellt eine Xendit-Rechnung über den Bestellbetrag in der Bestellwährung und leitet den Kunden zur Xendit-Rechnungsseite weiter. Beträge in IDR und VND werden auf ganze Zahlen gerundet, weil Xendit für diese Währungen keine Dezimalstellen akzeptiert. Die E-Mail-Adresse für die Rechnung des Kunden wird an Xendit übergeben. Auf der Rechnungsseite zahlt der Kunde mit einem der Zahlungskanäle, die in Ihrem Xendit-Konto für diese Währung aktiviert sind, zum Beispiel einem virtuellen Konto, einer E-Wallet, einem QR-Code, einer Einzelhandelsfiliale oder einer Karte.

Nach der Zahlung kehrt der Kunde zur Seite „Bestellung eingegangen“ Ihres Shops zurück. Die Bestellung wird erst als bezahlt markiert, wenn Xendit die Zahlung bestätigt: über den Webhook oder über eine serverseitige Anfrage an die Xendit-API, sobald der Kunde auf dieser Seite landet. Bis dahin bleibt die Bestellung auf Zahlung ausstehend.

Schlägt die Rechnung fehl oder läuft sie ab, schickt Xendit den Kunden zurück. Eine an der Kasse aufgegebene Bestellung wird dann auf die übliche WooCommerce-Weise storniert, und ihre Rechnung läuft ab. Eine über die Seite Pay for order bezahlte Bestellung (zum Beispiel eine Bestellung, die Sie für den Kunden angelegt haben) kehrt zu ihrer Zahlungsseite zurück, mit der Meldung The Xendit payment was not completed. You can try again or choose another payment method., und bleibt zahlbar.

Ein Kunde kann eine unbezahlte Bestellung erneut bezahlen. Wenn Bestellbetrag, Währung und Modus unverändert sind und die offene Rechnung noch gültig ist, wird der Kunde zu derselben Rechnung geschickt. Andernfalls läuft die alte Rechnung zuerst ab und eine neue wird erstellt, sodass es für eine Bestellung nie zwei offene Rechnungen gibt. War die alte Rechnung bereits bezahlt, wird die Bestellung stattdessen auf Abgeschlossen gesetzt, und es erfolgt keine neue Zahlung.

Kann Xendit die Zahlung nicht starten, sieht der Kunde eine kurze Meldung und kann eine andere Zahlungsart wählen, zum Beispiel Xendit is temporarily unavailable. Please try again in a few minutes or choose another payment method., eine Meldung, dass die Währung für Ihr Konto nicht akzeptiert wird, oder dass der Bestellbetrag außerhalb der Xendit-Betragsgrenzen liegt. Der technische Grund wird ins Protokoll geschrieben. Eine Bestellung mit einem Gesamtbetrag von null kann nicht mit Xendit bezahlt werden.

Die Zahlungsart funktioniert an der klassischen Kasse, im Kassen-Block und auf der Seite Pay for order. Im Testmodus zeigt der Kassen-Block unter der Zahlungsart Test mode: no real money is charged. an. Das Plugin ist mit WooCommerce High-Performance Order Storage (HPOS) kompatibel.

Die Zahlung erfolgt immer auf der Xendit-Seite. Das Plugin bietet keine Erstattungen aus WooCommerce, keine gespeicherten Karten, Abonnements oder wiederkehrenden Zahlungen, keine Karten- oder E-Wallet-Felder an der Kasse, keine getrennte Autorisierung und Erfassung, keine xenPlatform-Unterkonten, keine individuelle Ablaufzeit für Rechnungen und keine Zahlungsgebühren.

Bestellungen

Bestellstatus

Pending payment: die Rechnung wurde erstellt, und der Kunde hat noch nicht bezahlt, oder Xendit hat die Zahlung noch nicht bestätigt. Die Bestellnotiz zeigt die Rechnungs-ID, den Betrag, die Währung und den Modus.

Processing or Completed: die Zahlung wurde bestätigt. Der Status folgt Order Status After Payment. Die Bestellnotiz zeigt die Rechnungs-ID, den bezahlten Betrag, den Zahlungskanal und den Modus. Die Transaktions-ID ist die Xendit-Rechnungs-ID.

On hold: die bezahlte Rechnung stimmte nicht mit dem Bestellbetrag oder der Währung überein, oder es wurde weniger als der Gesamtbetrag gezahlt (zum Beispiel wurde die Bestellung bearbeitet, nachdem die Rechnung erstellt wurde). Die Bestellnotiz erklärt das, auch wenn die Bestellung bereits wartend war. Prüfen Sie die Zahlung im Xendit-Dashboard und führen Sie danach die Bestellung aus oder erstatten Sie die Zahlung.

Failed: die aktuelle Rechnung ist ohne Zahlung abgelaufen. Der Kunde kann die Bestellung erneut bezahlen.

Cancelled: der Kunde ist von einer fehlgeschlagenen oder abgelaufenen Rechnung zurückgekehrt, oder die Bestellung wurde von Ihnen oder durch das WooCommerce-Zeitlimit für unbezahlte Bestellungen storniert. Die offene Rechnung läuft ab, sodass sie nicht mehr bezahlt werden kann. Akzeptiert Xendit dies nicht, fordert eine Notiz Sie auf, die Rechnung im Xendit-Dashboard ablaufen zu lassen.

Wird eine Rechnung für eine Bestellung bezahlt, die bereits bezahlt, storniert oder erstattet ist, bleibt die Bestellung unverändert. Eine Notiz fordert Sie auf, die Zahlung im Xendit-Dashboard zu erstatten oder die Bestellung manuell wiederherzustellen.

Erstattungen

Erstattungen werden nicht von WooCommerce an Xendit gesendet. Erstatten Sie die Zahlung im Xendit-Dashboard (die Bestellnotiz und die Transaktions-ID enthalten die Rechnungs-ID) und erfassen Sie die Erstattung manuell in WooCommerce.

Lizenzschlüssel

Das Plugin funktioniert mit einem VibeFox-Lizenzschlüssel von vibefox.net. Der Lizenzblock befindet sich oben unter WooCommerce > Settings > Payments > Xendit. Fügen Sie den Schlüssel in License key ein und klicken Sie auf Activate. Der Block zeigt den Status, zum Beispiel das Datum, bis zu dem die Lizenz aktiv ist, und Ihre Domain. Mit Check now prüfen Sie den Status erneut, mit Change key geben Sie einen anderen Schlüssel ein und mit Remove key entfernen Sie ihn von dieser Website. Der Link Manage licenses and domains in your account öffnet Ihr vibefox.net-Konto.

Ein Schlüssel funktioniert für eine Domain. Das Entfernen des Schlüssels von einer Website gibt deren Domain-Platz nicht frei. Geben Sie den Platz in Ihrem vibefox.net-Konto frei.

Ohne aktiven Schlüssel wird Xendit Kunden an der Kasse nicht angezeigt. Wird trotzdem eine Zahlung gestartet, sieht der Kunde This payment method is not available. Please choose another one. Angemeldete Shop-Manager sehen die Zahlungsart weiterhin, markiert mit (unlicensed — visible to admins only), damit Sie das Plugin einrichten und testen können, bevor Sie einen Schlüssel kaufen. Auf der Seite Plugins und auf WooCommerce-Seiten erscheint eine Erinnerung. Bestehende Bestellungen sind nicht betroffen: Bereits gestartete Zahlungen werden weiterhin bestätigt.

Läuft eine Lizenz ab, funktioniert das Plugin weiter, aber Updates und Support erfordern eine Verlängerung. Der Status wird im Hintergrund automatisch erneut geprüft.

Fehlerbehebung

Xendit erscheint nicht an der Kasse: prüfen Sie, ob die Lizenz aktiv ist, Enable/Disable eingeschaltet ist, der aktive Modus einen geheimen Schlüssel mit dem richtigen Präfix hat (Test Secret Key mit xnd_development_ im Testmodus, Live Secret Key mit xnd_production_ im Live-Modus) und die Shopwährung IDR, PHP, VND, THB, MYR, USD oder SGD ist. Das Banner in den Einstellungen zeigt eine Warnung, wenn der Schlüssel fehlt oder falsch ist.

Die Zahlung ging durch, aber die Bestellung bleibt auf Zahlung ausstehend: der Webhook funktioniert nicht. Prüfen Sie im Xendit-Dashboard des verwendeten Modus (Test oder Live), ob die in den Einstellungen angezeigte URL für Invoice paid hinterlegt ist und das Verifizierungstoken dieses Modus im passenden Feld gespeichert ist. Das Xendit-Dashboard zeigt für jeden Webhook die Antwort Ihres Shops. Die Bestellung wird auch bestätigt, wenn der Kunde auf die Seite „Bestellung eingegangen“ zurückkehrt.

Webhook-Antwort „Webhook verification token is not configured“: keines der beiden Verifizierungstoken ist gesetzt. Fügen Sie das Token in die Einstellungen ein.

Webhook-Antwort „Unauthorized“: das von Xendit gesendete Token stimmt mit keinem Token in den Einstellungen überein. Kopieren Sie das Token des richtigen Modus erneut.

Webhook-Antwort „Token does not match the mode of this invoice“: die Rechnung wurde im anderen Modus erstellt. Eine Testbenachrichtigung bestätigt nie eine Live-Bestellung und umgekehrt. Richten Sie den Webhook und das Token in dem Modus ein, in dem die Bestellung bezahlt wurde.

Webhook-Antwort „Ignored: not an invoice of this store“: die Rechnung wurde nicht von diesem Shop erstellt, zum Beispiel durch eine andere Integration auf demselben Xendit-Konto. Auch die Schaltfläche Test im Xendit-Dashboard erhält diese Antwort, was bestätigt, dass URL und Token funktionieren.

Webhook-Antwort „Temporary error“: die Xendit-API konnte zur Prüfung der Rechnung nicht erreicht werden, der geheime Schlüssel des Modus der Rechnung fehlt, oder die Bestellung wurde im selben Moment von einer anderen Anfrage aktualisiert. Xendit wiederholt den Webhook. Prüfen Sie, ob beide geheimen Schlüssel gesetzt sind, wenn Sie Bestellungen aus beiden Modi haben.

Ein Schlüssel wird nicht gespeichert: der Wert beginnt nicht mit dem Präfix seines Feldes. Testschlüssel beginnen mit xnd_development_, Live-Schlüssel mit xnd_production_.

Der Kunde sieht „This payment method is temporarily unavailable“: Xendit hat die Anfrage abgelehnt, zum Beispiel weil der geheime Schlüssel falsch ist oder die Schreibberechtigung für Money-in (Rechnungen) fehlt. Aktivieren Sie bei Bedarf Debug Log und prüfen Sie WooCommerce > Status > Logs, Quelle wcp_xendit_payment_gateway. Eine Meldung zu den Rechnungsdaten bedeutet, dass Xendit die Anfragedaten nicht akzeptiert hat, zum Beispiel die E-Mail-Adresse.

Der Kunde sieht „A payment for this order was already received by Xendit and is being reviewed“: eine frühere Rechnung dieser Bestellung wurde bezahlt, passte aber nicht zur Bestellung, daher ist die Bestellung wartend. Prüfen Sie die Zahlung im Xendit-Dashboard.

Die Bestellung ist nach der Zahlung auf On hold: lesen Sie die Bestellnotiz. Der bezahlte Betrag oder die Währung wich von der Bestellung ab. Führen Sie die Bestellung aus oder erstatten Sie die Zahlung im Xendit-Dashboard.

Der Lizenzblock zeigt einen Fehler: folgen Sie der Meldung im Block. Ist der Schlüssel zum Beispiel bereits auf einer anderen Domain verwendet, geben Sie in Ihrem vibefox.net-Konto einen Platz frei und klicken Sie auf Check now. Hat sich die Adresse der Website geändert, klicken Sie auf Check now, um den Schlüssel für die neue Domain zu aktivieren. Ist der Lizenzserver nicht erreichbar, arbeitet das Plugin mit dem zuletzt bekannten Status weiter.

Deinstallation

Das Deaktivieren des Plugins behält alle Daten. Zum Entfernen deaktivieren und löschen Sie es auf der Seite Plugins. Der Lizenzschlüssel und der Lizenzstatus dieses Plugins werden immer entfernt. Die Einstellungen des Gateways, die übrigen Optionen des Plugins, temporäre Daten und seine Protokolle (Protokolldateien einschließlich rotierter Dateien, Protokolleinträge in der Datenbank und der Protokollordner der Version 1.0) werden nur entfernt, wenn Delete Data on Uninstall aktiviert war. Andernfalls bleiben sie für eine spätere Neuinstallation erhalten. Bestehende Bestellungen behalten ihre Zahlungsnotizen, Rechnungs-IDs und Transaktions-IDs.

Xendit ist eine Marke ihres jeweiligen Inhabers. Dieses Plugin ist weder mit Xendit verbunden noch wird es von Xendit unterstützt.