VibeFox Adyen for OpenCart — Hilfe
Anforderungen
OpenCart: 3.0.x (getestet mit 3.0.5.0) oder 4.0.2 und neuer (getestet mit 4.1.0.3).
PHP: 8.0 oder neuer.
Adyen-Konto: Sie benötigen Ihren Adyen-Händlerkontonamen, einen API-Schlüssel und einen HMAC-Schlüssel für jede Umgebung, die Sie verwenden (Test und Live), sowie für Live-Zahlungen das Live-URL-Präfix. Der API-Schlüssel gehört zu einer API-Zugangsdatensammlung mit den Rollen Checkout webservice und Merchant PAL webservice. Der HMAC-Schlüssel wird für den Standard-Webhook erzeugt (siehe Konfiguration). Der Test-Customer-Area ist ca-test.adyen.com, der Live-Customer-Area ca-live.adyen.com. Test- und Live-Schlüssel sind getrennt. Ein Client-Schlüssel wird nicht benötigt, da die Zahlungsseite von Adyen gehostet wird.
VibeFox-Lizenzschlüssel: wird auf vibefox.net gekauft. Ein Schlüssel funktioniert für eine Domain.
Installation
Der Download ist eine einzige ZIP-Datei mit den Paketen für beide OpenCart-Versionen. Entpacken Sie sie auf Ihrem Computer. Sie enthält README.txt, das Paket für OpenCart 3 wcp_adyen_gateway-oc3-(version).ocmod.zip und das Paket für OpenCart 4 wcp_adyen_gateway.ocmod.zip. Installieren Sie nur das Paket für Ihre OpenCart-Version. Der Lizenzschlüssel ist für beide Versionen gleich.
OpenCart 3
1. Gehen Sie im Admin-Bereich zu Extensions > Installer, klicken Sie auf Upload und wählen Sie die Datei wcp_adyen_gateway-oc3-(version).ocmod.zip. Die Erweiterung enthält keine OCMOD-Modifikationen, daher muss Extensions > Modifications nicht aktualisiert werden. Statt des Installers können Sie auch den Inhalt des Ordners upload aus dem Archiv in das Stammverzeichnis Ihres Shops kopieren.
2. Gehen Sie zu Extensions > Extensions und wählen Sie den Typ Payments. Suchen Sie VibeFox Adyen Gateway und klicken Sie auf Install (der grüne +-Button). Ihr Admin-Benutzer benötigt das Recht, die Liste der Zahlungserweiterungen zu ändern.
3. Klicken Sie auf Edit (der Stift-Button), um die Einstellungsseite zu öffnen. Fügen Sie Ihren VibeFox-Lizenzschlüssel in License key im Lizenzblock oben auf der Seite ein und klicken Sie auf Activate (siehe License key).
4. Geben Sie Ihr Händlerkonto, den Test-API-Schlüssel und den Test-HMAC-Schlüssel ein, später dann den Live-API-Schlüssel, den Live-HMAC-Schlüssel und das Live-URL-Präfix.
5. Fügen Sie im Adyen-Customer-Area (Test und Live) einen Standard-Webhook mit der URL hinzu, die im Abschnitt Webhook der Einstellungen angezeigt wird (siehe Konfiguration).
6. Aktivieren Sie Enable/Disable und klicken Sie auf Save. Testen Sie eine Zahlung bei eingeschaltetem Test mode und schalten Sie ihn danach aus.
OpenCart 4
1. Gehen Sie im Admin-Bereich zu Extensions > Installer, klicken Sie auf Upload und wählen Sie die Datei wcp_adyen_gateway.ocmod.zip. Benennen Sie die Datei nicht um: OpenCart 4 entnimmt den Code der Erweiterung dem Dateinamen, und ein umbenanntes Paket funktioniert nicht.
2. Das Paket erscheint auf derselben Seite in der Liste der installierten Erweiterungen. Klicken Sie daneben auf Install (der grüne +-Button).
3. Gehen Sie zu Extensions > Extensions und wählen Sie den Erweiterungstyp Payments. Suchen Sie VibeFox Adyen Gateway, klicken Sie auf Install (der grüne +-Button) und danach auf Edit (der Stift-Button).
4. Geben Sie den Lizenzschlüssel und die Einstellungen ein wie in den Schritten 3 bis 6 für OpenCart 3. Die Einstellungsseite und ihre Felder sind in beiden Versionen gleich. Nur die Webhook-URL ist anders (siehe Webhook).
Eine neue Installation startet mit deaktivierter Zahlungsart und eingeschaltetem Testmodus.
Konfiguration
Alle Einstellungen befinden sich auf der Seite der Erweiterung: Extensions > Extensions > Payments > VibeFox Adyen Gateway > Edit. Die Abschnitte sind links aufgelistet; der Button Save unter der Liste speichert die gesamte Seite. Solange die Einstellungen des aktuellen Modus unvollständig sind, zeigt die Seite Adyen is hidden at checkout until the test settings are complete (bzw. die Live-Einstellungen) und listet auf, was fehlt: Merchant account, der API-Schlüssel, der HMAC-Schlüssel und im Live-Modus Live URL prefix. Solange der Testmodus eingeschaltet ist, zeigt die Seite Test mode is on: payment links and refunds go to the Adyen test environment, no real money. Ohne das Recht, die Erweiterung zu ändern, zeigt die Seite die Einstellungen an, kann sie aber nicht speichern.
Beim Speichern muss Title 1 bis 128 Zeichen haben, Sort Order eine ganze Zahl sein und Total eine Zahl von 0 oder mehr; außerdem müssen die Geo Zone und die Bestellstatus existieren. Andernfalls wird nichts gespeichert und die Seite nennt das betreffende Feld. Ein HMAC-Schlüssel, der nicht hexadezimal ist, oder ein Live-URL-Präfix mit anderen Zeichen als Buchstaben, Ziffern und Bindestrichen wird nicht gespeichert: Eine Warnung nennt das Feld, der bisherige Wert bleibt erhalten, und die übrigen Einstellungen werden gespeichert.
Adyen
Enable/Disable: Enable Adyen payment gateway schaltet die Zahlungsart ein oder aus. Standard: aus.
Title: der Name der Zahlungsart, den Kunden auf der Kasse sehen. Er wird auch als Zahlungsart in der Bestellung gespeichert. Standard: Adyen. Pflichtfeld, bis zu 128 Zeichen.
Description: der Text, der dem Kunden im Schritt Confirm Order oberhalb des Bestätigungsbuttons angezeigt wird. Standard: Pay securely via Adyen.
Sort Order: die Position von Adyen unter den Zahlungsarten auf der Kasse. Lassen Sie das Feld leer oder geben Sie eine ganze Zahl ein.
Geo Zone: bietet Adyen nur für Zahlungsadressen in der gewählten Geo Zone an. Standard: All zones. Geo Zones werden unter System > Localisation > Geo Zones eingerichtet.
Total: der Kassenbetrag in der Standardwährung des Shops, den eine Bestellung erreichen muss, bevor Adyen angeboten wird. Lassen Sie das Feld leer, um Adyen bei jedem Betrag anzubieten.
Adyen-Konto
API-Schlüssel werden im Adyen-Customer-Area unter Developers > API credentials erstellt (der Abschnitt verlinkt auf den Test- und den Live-Customer-Area). Füllen Sie beide Schlüsselsätze aus; der Schalter Test mode legt fest, welcher verwendet wird.
Test mode: nutzt die Testumgebung von Adyen (kein echtes Geld). Ist sie eingeschaltet, werden Zahlungslinks und Erstattungen mit dem Test-API-Schlüssel an checkout-test.adyen.com gesendet. Standard: an. Schalten Sie ihn aus, um echte Zahlungen anzunehmen. Solange er an ist, sehen Kunden im Schritt Confirm Order Test mode: no real payment is taken.
Merchant account: Ihr Adyen-Händlerkontoname (nicht das Firmenkonto), zum Beispiel MyShopECOM. Er ist im Test- und im Live-Customer-Area in der Regel gleich.
Testzugangsdaten
Werden verwendet, solange Test mode aktiviert ist.
Test API key: aus dem Test-Customer-Area: Developers > API credentials > Ihre Zugangsdaten > API key.
Test HMAC key: aus dem Test-Customer-Area: Developers > Webhooks > Ihr Standard-Webhook > HMAC key (hexadezimal). Pflichtfeld: Webhooks ohne gültige Signatur werden abgelehnt.
Live-Zugangsdaten
Werden verwendet, wenn Test mode deaktiviert ist.
Live API key: aus dem Live-Customer-Area: Developers > API credentials > Ihre Zugangsdaten > API key.
Live HMAC key: aus dem Live-Customer-Area: Developers > Webhooks > Ihr Standard-Webhook > HMAC key (hexadezimal).
Live URL prefix: aus dem Live-Customer-Area: Developers > API URLs, zum Beispiel 1797a841fbb37ca7-AdyenDemo aus https://1797a841fbb37ca7-AdyenDemo-checkout-live.adyenpayments.com. Sie können die ganze URL einfügen; das Präfix wird beim Speichern daraus übernommen.
Gespeicherte API-Schlüssel und HMAC-Schlüssel werden nie wieder angezeigt. Das Feld bleibt leer und zeigt Saved — leave empty to keep it. Geben Sie nur dann einen neuen Wert ein, wenn Sie ihn ändern möchten. Um einen gespeicherten Schlüssel zu entfernen, aktivieren Sie unter dem Feld Clear the saved value on save und klicken Sie auf Save.
Webhook
Bestellungen werden nur durch Adyen-Webhooks als bezahlt markiert. Gehen Sie im Customer-Area (Test und Live) zu Developers > Webhooks und fügen Sie einen Standard webhook mit der URL hinzu, die in diesem Abschnitt unter Webhook URL angezeigt wird. Unter OpenCart 3 sieht sie etwa so aus: https://your-store/index.php?route=extension/payment/wcp_adyen_gateway/webhook, unter OpenCart 4 so: https://your-store/index.php?route=extension/wcp_adyen_gateway/payment/wcp_adyen_gateway.webhook. Sie wird aus der Storefront-Adresse Ihrer OpenCart-Installation gebildet. Kopieren Sie die URL genau so, wie die Einstellungen sie anzeigen, denn Adyen folgt keinen Weiterleitungen. Wählen Sie die Methode JSON, aktivieren Sie Generate HMAC key und kopieren Sie den Schlüssel in Test HMAC key oder Live HMAC key.
Die Umgebung jeder Benachrichtigung wählt den HMAC-Schlüssel aus, und eine Benachrichtigung wird nur auf einen Zahlungslink angewendet, der in derselben Umgebung und mit demselben Händlerkonto erstellt wurde. Eine Testbenachrichtigung bestätigt nie eine Live-Zahlung. Webhooks ohne gültige Signatur werden mit HTTP 401 abgelehnt, und Adyen versucht sie später erneut. Ohne den Webhook erhält keine Bestellung einen Status.
Die Erweiterung verarbeitet diese Ereignisse (sie sind ebenfalls in diesem Abschnitt aufgeführt):
Andere Ereignisse werden den Bestellnotizen hinzugefügt. Benachrichtigungen für eine Bestellung ohne Status werden ignoriert, außer AUTHORISATION. Benachrichtigungen, die nicht zu einer Bestellung dieses Shops gehören, zum Beispiel der Testbutton im Customer-Area, werden akzeptiert und ignoriert. Der Webhook funktioniert auch, während der Shop im Wartungsmodus ist, weil OpenCart Anfragen von Zahlungserweiterungen durchlässt. Bei OpenCart 4 legt die Erweiterung dafür eine Startup-Aktion (startup action) an.
Bestellungen
OpenCart legt die Bestellung im Schritt Confirm Order ohne Status an (eine fehlende Bestellung). Sie erhält einen Status erst dann, wenn Adyen die Zahlung mit dem signierten AUTHORISATION-Webhook bestätigt und Betrag und Währung mit der Bestellung übereinstimmen. Die Rückkehr des Kunden ändert die Bestellung nie. Jedes der folgenden Felder listet Ihre OpenCart-Bestellstatus auf.
Order status after payment: der Status, den ein erfolgreicher, signierter AUTHORISATION-Webhook setzt. Standard: In Bearbeitung.
On hold (review) status: eine Abweichung von Betrag oder Währung, eine fehlgeschlagene Erfassung einer bezahlten Bestellung oder eine Zahlung, die einging, nachdem der Bestellstatus bereits geändert worden war (zum Beispiel storniert). Eine Notiz erklärt den Grund. Standard: Ausstehend, da OpenCart keinen Status „On hold“ hat. Sie können unter System > Localisation > Order Statuses einen eigenen Status anlegen und hier auswählen.
Cancelled status: wird gesetzt, wenn Adyen die Zahlung der Bestellung storniert (CANCELLATION). Standard: Storniert.
Refunded status: wird gesetzt, nachdem die Zahlung von der Bestellseite aus vollständig erstattet wurde. Meldet Adyen danach, dass diese Erstattung fehlgeschlagen ist, wechselt die Bestellung mit einer Notiz in den Prüfstatus. Standard: Erstattet.
Erweitert
Debug log: schreibt API-Aufrufe und Webhook-Ereignisse in adyg_debug.log.php im Logs-Ordner von OpenCart (storage/logs). Die Datei kann nicht über das Web geöffnet werden, und bei 5 MB wird sie nach adyg_debug.old.log.php verschoben. Fehler werden immer protokolliert, auch wenn der Schalter aus ist. Protokolle enthalten nie API- oder HMAC-Schlüssel oder personenbezogene Daten der Käufer. Standard: aus.
Log: zeigt die Größe und die neuesten Einträge des Protokolls. Klicken Sie auf Clear log, um es zu leeren.
Delete data on uninstall: Ist die Option eingeschaltet, werden beim Deinstallieren der Erweiterung die Gateway-Einstellungen und das Protokoll entfernt. Die Adyen-Zahlungsdatensätze (PSP-Referenzen, Webhook-Ereignisse, Erstattungen) bleiben immer erhalten, sodass alte Bestellungen weiterhin erstattet werden können. Standard: aus.
Import / Export
Export: Download JSON speichert die Einstellungen als JSON-Datei. API- und HMAC-Schlüssel werden nicht exportiert.
Import: Fügen Sie zuvor exportiertes JSON ein und klicken Sie auf Import, um die Einstellungen wiederherzustellen. Gespeicherte Schlüssel bleiben erhalten.
Kasse
Im Schritt Payment Method wählt der Kunde die Zahlungsart (standardmäßig Adyen). Im Schritt Confirm Order sieht der Kunde Ihre Beschreibung und den Hinweis You will be redirected to Adyen to complete the payment securely. OpenCart legt die Bestellung in diesem Schritt an, noch ohne Status. Wenn der Kunde auf Confirm Order klickt, erstellt die Erweiterung einen Adyen-Zahlungslink für die Bestellsumme in der Bestellwährung und leitet den Kunden auf die Zahlungsseite von Adyen weiter. Dort zahlt der Kunde mit jeder Methode, die in Ihrem Adyen-Konto aktiviert ist. Die E-Mail-Adresse, der Name und das Rechnungsland des Kunden (oder das Land des Shops) sowie die Sprache des Shops werden an Adyen übermittelt, und die Zahlung wird als Order # mit der Bestellnummer angezeigt.
Nach der Zahlung kehrt der Kunde in Ihren Shop zurück. Die Rückkehr selbst bezahlt keine Bestellung: Die Bestellung wird erst dann als bezahlt markiert, wenn Adyen die Zahlung mit dem signierten AUTHORISATION-Webhook bestätigt und Betrag und Währung mit der Bestellung übereinstimmen. Danach erhält die Bestellung ihren Status auf die übliche OpenCart-Weise, mit den üblichen Bestell-E-Mails und der Bestandsaktualisierung. Ist der Webhook bereits eingegangen, sieht der Kunde die OpenCart-Erfolgsseite mit Your payment with Adyen has been received. (oder Your payment with Adyen has been received and is being reviewed by the store. bei einer Bestellung in Prüfung). Hat Adyen die Zahlung vorher storniert, zeigt die Seite Your Adyen payment was not completed. Please contact us about this order. Ist der Webhook noch nicht eingegangen, zeigt eine Seite Payment confirmation Your payment is being confirmed by Adyen. Your order will be confirmed as soon as Adyen confirms the payment, and you will receive an e-mail. mit den Buttons Check again und Back to checkout, für einen Kunden, der die Zahlung nicht abgeschlossen hat.
Wird die Zahlung abgelehnt, bleibt die Bestellung ohne Status, und der Kunde kann denselben Link erneut bezahlen oder zurück zur Kasse gehen. Jeder neue Versuch (OpenCart 3 erstellt jedes Mal eine neue Bestellung, wenn der Schritt Confirm Order angezeigt wird, OpenCart 4 aktualisiert die Bestellung der Kasse) macht die bisherigen Zahlungslinks der Bestellung und des Warenkorbs ungültig, sodass auch sie nicht mehr bezahlt werden können. Hat die Bestellung bereits einen Status, gelangt der Kunde auf die Erfolgsseite, statt eine neue Zahlung zu starten.
Bei OpenCart 4 wählt der Kunde die Zahlungsart mit dem Button Choose im Block der Zahlungsarten, im Fenster Payment method options, und klickt unten auf der Kassenseite auf Confirm Order. Die Zahlungsadresse ist bei OpenCart 4 optional: Fehlt sie, wird der Name des Kunden als Name des Zahlers übergeben und das Land der Lieferadresse (oder das Land des Shops) als Land. OpenCart 4 behält eine Bestellung für die Kasse und aktualisiert sie: Back to checkout und ein erneutes Confirm Order erstellen einen neuen Zahlungslink für dieselbe Bestellung und lassen den vorherigen verfallen. Wurde diese Bestellung inzwischen ohne Zahlung geschlossen (zum Beispiel weil Adyen die Zahlung storniert hat oder Sie die Bestellung storniert haben), wird der Kunde mit Your previous order was cancelled without a payment. Please confirm the order again to pay with a new order. oberhalb der Kassenseite zurück zur Kasse geschickt, und das nächste Confirm Order bezahlt eine neue Bestellung. Wurde die Bestellung der Kasse bereits für einen anderen Warenkorb bezahlt, wird der Kunde zur Kasse zurückgeschickt und bezahlt eine neue Bestellung. Jede Änderung des Warenkorbs, auch eine neue Menge, gilt als neuer Warenkorb, der eine eigene Zahlung braucht.
Kann der Zahlungslink nicht erstellt werden, bleibt der Kunde im Schritt Confirm Order mit Payment could not be initiated. Please try again or choose another payment method. Der Grund wird in das Protokoll geschrieben. Sind die Einstellungen unvollständig, lautet die Meldung Payment gateway is not configured properly. Please contact the store administrator.
Die Erweiterung bietet keine Abonnements oder wiederkehrenden Zahlungen, keine gespeicherten Karten, keine Kartenfelder im Shop selbst (Drop-in oder Components), keine Schaltflächen zum Erfassen oder Stornieren in OpenCart und keine Basisauthentifizierung für Webhooks.
Bestellungen und Erstattungen
Bestellstatus
No status (missing order): Der Kunde wurde zu Adyen weitergeleitet und hat nicht bezahlt, die Zahlung wurde abgelehnt, oder Adyen hat die Zahlung noch nicht bestätigt. Unter Sales > Orders werden solche Bestellungen nur mit dem Filter Order Status auf Missing Orders angezeigt.
Order status after payment (default Processing): die Zahlung wurde autorisiert. Eine Notiz zeigt den Betrag, die PSP-Referenz und die Zahlungsmethode.
On hold (review) status (default Pending): Adyen hat einen anderen Betrag oder eine andere Währung als die Bestellsumme bestätigt, eine Erfassung ist fehlgeschlagen, eine vollständige Erstattung ist fehlgeschlagen, oder die Zahlung ist eingegangen, nachdem der Bestellstatus bereits geändert worden war, zum Beispiel auf storniert. Die Notiz erklärt es. Prüfen Sie die Zahlung im Customer-Area und bearbeiten Sie danach die Bestellung oder erstatten Sie die Zahlung. Eine korrekte Zahlung für eine Bestellung in Prüfung nach einer Abweichung markiert sie als bezahlt.
Cancelled status (default Canceled): die Zahlung dieser Bestellung wurde in Adyen storniert.
Refunded status (default Refunded): die Zahlung wurde über die Erweiterung vollständig erstattet. Der Status wird gesetzt, wenn die Erstattung gesendet wird; meldet Adyen später, dass diese Erstattung fehlgeschlagen ist, wechselt die Bestellung in den Prüfstatus.
Kommt für eine bereits bezahlte Bestellung eine zweite erfolgreiche Zahlung an, zum Beispiel über einen alten Zahlungslink, bleibt die Bestellung unverändert. Eine Notiz bittet Sie, im Customer-Area nach einer doppelten Belastung zu sehen und sie dort bei Bedarf zu erstatten. Dasselbe gilt für einen Warenkorb: Sobald eine Bestellung des Warenkorbs bezahlt ist, wird für eine andere Bestellung desselben Warenkorbs kein neuer Zahlungslink erstellt, und eine Zahlung, die noch für eine solche Bestellung eingeht, vergibt ihr keinen Status; die bezahlte Bestellung erhält die Notiz.
Bei OpenCart 4 kann eine unbezahlte Bestellung der Kasse den Status Voided erhalten, den OpenCart 4 setzt, wenn der Kunde zum Schritt Confirm Order zurückkehrt. Die Erweiterung behandelt eine solche Bestellung wie eine Bestellung ohne Status, und eine spätere Zahlung bestätigt sie weiterhin.
Notizen sind Einträge im History der Bestellung, die der Kunde nicht sieht.
Registerkarte VibeFox Adyen Gateway
Öffnen Sie unter Sales > Orders eine mit Adyen bezahlte Bestellung. Unten auf der Bestellseite, neben History und Additional, zeigt die Registerkarte VibeFox Adyen Gateway die PSP reference mit dem Hinweis Test mode bei Testzahlungen, den Payment link, das Merchant account, den Zahlungs-Status, die Beträge Paid / refunded, das Erstattungsformular, den Erstattungsverlauf und die Adyen notes der Bestellung. Die Registerkarte wird Benutzern angezeigt, die Zugriff auf die Erweiterung haben.
Erstattungen
Geben Sie auf der Registerkarte VibeFox Adyen Gateway den Amount ein (der noch nicht erstattete Betrag ist vorausgefüllt), optional einen Reason (optional), und klicken Sie auf Refund via Adyen. Bestätigen Sie die Frage Refund this amount through Adyen? This cannot be undone. Vollständige und teilweise Erstattungen werden unterstützt. Sie benötigen das Recht, die Erweiterung zu ändern (festgelegt unter System > Users > User Groups). Erstattungen erfolgen in dem Betrag und in der Währung, die Adyen autorisiert hat; nach einer Abweichung von Betrag oder Währung können Sie also bis zu dem erstatten, was der Kunde tatsächlich bezahlt hat, nicht die Bestellsumme. Die Erstattung wird an die Umgebung und das Händlerkonto gesendet, mit denen die Zahlung erfolgte, daher muss der API-Schlüssel dieser Umgebung gesetzt sein. Pro Bestellung läuft jeweils nur eine Erstattung. Akzeptiert Adyen die Anfrage nicht, zeigt die Registerkarte den Fehler an, und es wird keine Erstattung erfasst. Erstattungen sind verfügbar, sobald Adyen die Zahlung autorisiert hat.
Adyen verarbeitet Erstattungen asynchron: Die Anfrage wird mit dem Status received in den Erstattungsverlauf und die Notizen aufgenommen, und das endgültige Ergebnis kommt über den Webhook REFUND oder REFUND_FAILED. Eine fehlgeschlagene Erstattung zählt nicht mehr als erstattet. Erreichen die gesendeten Erstattungen den bezahlten Betrag, wird die Bestellung auf den Refunded status gesetzt, ohne den Kunden zu benachrichtigen und ohne Produkte wieder auf Lager zu buchen, wie bei einer manuellen Statusänderung. Eine Teilerstattung ändert den Status nicht. Bei manueller Erfassung in Adyen können nur erfasste Zahlungen erstattet werden.
Produktrücksendungen unter Sales > Returns überweisen über Adyen kein Geld zurück. Erstattungen, die im Adyen-Customer-Area vorgenommen werden, kommen per Webhook an und werden den Notizen hinzugefügt. Der Bestellstatus wird dabei nicht automatisch geändert.
Lizenzschlüssel
Die Erweiterung funktioniert mit einem VibeFox-Lizenzschlüssel von vibefox.net. Der Lizenzblock License — VibeFox Adyen Gateway ist der erste Block unter Extensions > Extensions > Payments > VibeFox Adyen Gateway > Edit, oberhalb der Einstellungen. Fügen Sie den Schlüssel in License key ein und klicken Sie auf Activate. Danach zeigt der Block den maskierten Schlüssel, den Status (zum Beispiel das Datum, bis zu dem die Lizenz aktiv ist, und Ihre Domain) sowie die Buttons Check now zur erneuten Statusprüfung, Change key zur Eingabe eines anderen Schlüssels und Remove key zum Entfernen des Schlüssels aus diesem Shop. Darunter stehen die Zeile Product: opencart-payment-adyen und der Link Manage licenses and domains in your account, der Ihr vibefox.net-Konto öffnet. Nur Admin-Benutzer mit der Berechtigung Modify für die Erweiterung können den Schlüssel ändern. Die Texte des Blocks folgen der Admin-Sprache (Englisch und Russisch sind enthalten).
Wird der Schlüssel nicht akzeptiert, nennt der Block den Grund, zum Beispiel Key not found, This key belongs to another product, Domain limit reached oder License expired on mit einem Datum. Nach einer Änderung der Shop-Adresse oder nachdem Sie in Ihrem Konto einen Domain-Platz freigegeben haben, klicken Sie auf Check now. Ist der Lizenzserver nicht erreichbar, arbeitet die Erweiterung mit dem zuletzt bekannten Status weiter.
Ein Schlüssel funktioniert für eine Domain: die Shop-Adresse aus der OpenCart-Konfiguration. Das Entfernen des Schlüssels aus dem Shop gibt seinen Domain-Platz nicht frei. Geben Sie den Platz in Ihrem vibefox.net-Konto frei.
Ohne aktiven Schlüssel wird Adyen Kunden auf der Kasse nicht angezeigt. Wird trotzdem eine Zahlung gestartet, sieht der Kunde This payment method is not available. Please choose another one. Ein Admin-Benutzer, der im Admin-Bereich im selben Browser angemeldet ist, sieht die Zahlungsart im Shop weiterhin, markiert mit (unlicensed — visible to admins only), damit Sie die Erweiterung einrichten und testen können, bevor Sie einen Schlüssel kaufen. Bei OpenCart 4 ist diese Vorschau nicht verfügbar: Der Shop sieht die Anmeldung im Admin-Bereich nicht, daher ist die Zahlungsart ohne aktiven Schlüssel für alle ausgeblendet. Nachdem Sie die Seite Edit einmal geöffnet haben, erscheint ein Hinweis auf dem Dashboard des Admin-Bereichs. Schließen Sie ihn mit ×, um ihn 7 Tage lang auszublenden. Bestehende Bestellungen sind nicht betroffen: Bereits gestartete Zahlungen werden weiterhin bestätigt, und Erstattungen funktionieren.
Läuft eine Lizenz ab, arbeitet die Erweiterung weiter, Updates und Support erfordern jedoch eine Verlängerung. Der Status wird automatisch erneut geprüft, wenn Sie das Dashboard oder die Seite Edit im Admin-Bereich öffnen: an den ersten 14 Tagen nach Eingabe des Schlüssels einmal täglich, danach einmal pro Woche. Ein Cronjob ist nicht nötig. Das Deinstallieren der Erweiterung entfernt immer den Lizenzschlüssel und den Lizenzstatus.
Fehlerbehebung
Adyen erscheint nicht auf der Kasse: Prüfen Sie, ob die Lizenz aktiv ist, Enable/Disable eingeschaltet ist und die Einstellungen des aktuellen Modus vollständig sind: Merchant account, der API-Schlüssel und der HMAC-Schlüssel dieses Modus sowie im Live-Modus Live URL prefix. Die Einstellungsseite listet auf, was fehlt. Prüfen Sie außerdem, ob die Zahlungsadresse in der gewählten Geo Zone liegt und die Bestellung die in den Einstellungen festgelegte Total erreicht.
Die Zahlung ist erfolgt, aber die Bestellung bleibt ohne Status: Der Webhook funktioniert nicht. Prüfen Sie im Customer-Area der verwendeten Umgebung (Test oder Live), ob der Standard-Webhook existiert, ob seine URL genau der unter Webhook URL angezeigten entspricht und ob die Methode JSON ist. Prüfen Sie, ob der HMAC-Schlüssel dieses Webhooks im passenden Feld steht (Test HMAC key oder Live HMAC key). Bei einem ungültigen oder fehlenden HMAC-Schlüssel antwortet die Erweiterung mit HTTP 401, und Adyen versucht die Zustellung später erneut, sodass die Bestellung ihren Status automatisch erhält, sobald der Schlüssel korrigiert ist. Das Protokoll zeigt, dass die HMAC-Signatur ungültig ist oder der HMAC-Schlüssel nicht konfiguriert wurde.
Der Webhook antwortet [rejected] HMAC key not configured: Der HMAC-Schlüssel der Umgebung der Benachrichtigung ist leer. Fügen Sie ihn in die Einstellungen ein.
Der Webhook antwortet [rejected] invalid HMAC signature: Der HMAC-Schlüssel gehört zu einem anderen Webhook oder einer anderen Umgebung. Hat ein Element eines Stapels eine falsche Signatur, wird der ganze Stapel abgelehnt.
Der Webhook antwortet [rejected] busy, retry later: Die Bestellung wurde im selben Moment von einer anderen Zustellung verarbeitet, oder die Verarbeitung ist fehlgeschlagen. Adyen versucht den Webhook automatisch erneut. Der Grund steht im Protokoll.
Die Webhook-URL zeigt im Browser [rejected] POST required: Das ist normal. Die URL akzeptiert nur Benachrichtigungen von Adyen.
Die HMAC-Schlüssel-Warnung beim Speichern: Das Feld muss den hexadezimalen HMAC-Schlüssel aus dem Customer-Area enthalten. Der bisherige Wert wurde beibehalten.
Der Kunde sieht Payment could not be initiated: Sehen Sie im Feld Log auf der Seite der Erweiterung nach (Fehler werden immer protokolliert). Prüfen Sie den API-Schlüssel, das Händlerkonto und im Live-Modus das Live-URL-Präfix.
Der Kunde sieht This payment method is not available. Please reload the checkout page.: Die Kassensitzung passt nicht mehr zur Bestellung, oder die Zahlungsart wurde inzwischen deaktiviert. Der Kunde lädt die Kasse neu.
Die Bestellung ist nach der Zahlung im Prüfstatus: Lesen Sie die Notizen auf der Registerkarte VibeFox Adyen Gateway. Der von Adyen bestätigte Betrag oder die Währung stimmte nicht mit der Bestellung überein, eine Erfassung ist fehlgeschlagen, oder die Zahlung kam, nachdem der Bestellstatus bereits geändert worden war.
Kein Erstattungsformular auf der Registerkarte: Die Registerkarte nennt den Grund: Adyen hat die Zahlung noch nicht autorisiert, sie ist vollständig erstattet, Ihrer Benutzergruppe fehlt das Recht, die Erweiterung zu ändern, oder die Zugangsdaten der Umgebung, in der die Zahlung erfolgte, sind nicht konfiguriert.
Die Erstattung schlägt fehl: Die Registerkarte zeigt die Meldung von Adyen. Bei manueller Erfassung können nur erfasste Zahlungen erstattet werden. Läuft gerade eine andere Erstattung der Bestellung, warten Sie einen Moment und versuchen Sie es erneut.
Für Entwickler: Bevor der Zahlungslink erstellt wird, löst die Erweiterung das OpenCart-Ereignis adyg_payment_link_request mit den Anfragedaten und der Bestellung aus.
Deinstallation
Gehen Sie zu Extensions > Extensions, wählen Sie den Typ Payments und klicken Sie neben VibeFox Adyen Gateway auf Uninstall (der rote −-Button). Der Lizenzschlüssel und der Lizenzstatus dieser Erweiterung werden immer entfernt. OpenCart entfernt immer die eigenen Einstellungen der Erweiterung: Enable/Disable, Sort Order, Geo Zone, Total und die Bestellstatus im Abschnitt Orders, die bei einer erneuten Installation auf ihre Standardwerte zurückgesetzt werden. Auch das OpenCart-Ereignis der Erweiterung wird entfernt (bei OpenCart 4 dessen Ereignisse und dessen Startup-Aktion, die den Webhook im Wartungsmodus durchlässt). Ist Delete data on uninstall eingeschaltet, werden die übrigen Gateway-Einstellungen (Titel, Beschreibung, Testmodus, Händlerkonto, Schlüssel, Live-URL-Präfix, Protokollierung) und das Protokoll entfernt. Ist die Option ausgeschaltet, bleiben sie für eine spätere erneute Installation erhalten. Die Adyen-Zahlungsdatensätze (PSP-Referenzen, Webhook-Ereignisse, Erstattungen) bleiben immer erhalten, sodass vorher bezahlte Bestellungen auch nach einer erneuten Installation noch erstattet werden können. Bestehende Bestellungen behalten ihre Zahlungsnotizen.
Bei OpenCart 4 entfernen Sie außerdem die Dateien der Erweiterung: Gehen Sie nach der Deinstallation zu Extensions > Installer, klicken Sie in der Liste der installierten Erweiterungen neben VibeFox Adyen Gateway auf Uninstall (der orangefarbene −-Button) und danach auf Delete (der rote Papierkorb-Button), um das hochgeladene Paket zu entfernen.
Adyen ist eine Marke ihres jeweiligen Inhabers. Diese Erweiterung ist nicht mit Adyen verbunden und wird von Adyen nicht empfohlen.
