VibeFox DPO for PrestaShop — Hilfe
Anforderungen
PrestaShop: 8.0 bis 9.x.
PHP: 8.0 oder neuer mit der Erweiterung SimpleXML. Das Modul lässt sich ohne sie nicht installieren.
DPO-Pay-Konto: Sie benötigen den Company Token und die Service Type ID Ihres DPO-Händlerkontos. DPO stellt sie bei der Eröffnung Ihres Kontos aus; fragen Sie Ihren DPO-Kundenbetreuer oder holen Sie sie unter dpogroup.com. DPO kann auch ein Testkonto mit eigenem Token und eigenem Service Type bereitstellen. Es gibt keinen separaten Testserver: DPO verwendet dieselbe API-Adresse für Test- und Live-Konten, und das Konto wird über das Token ausgewählt.
Währung: die Shop-Währung muss von Ihrem DPO-Konto unterstützt werden. DPO akzeptiert höchstens 2 Nachkommastellen, daher können Warenkorbsummen mit 3 Nachkommastellen (zum Beispiel KWD 12.345) nicht bezahlt werden.
Server-Cron: ein Cron-Job, der die Nachprüfungs-URL des Moduls alle 15 Minuten aufruft (siehe Konfiguration).
VibeFox-Lizenzschlüssel: wird auf vibefox.net gekauft. Ein Schlüssel funktioniert für eine Domain.
Installation
1. Gehen Sie im Back-Office zu Modules > Module Manager und klicken Sie auf Upload a module. Wählen Sie die ZIP-Datei des Moduls aus.
2. Wenn der Upload abgeschlossen ist, klicken Sie auf Configure oder suchen Sie VibeFox DPO Pay Gateway später in der Modulliste und klicken Sie auf Configure.
3. Fügen Sie Ihren VibeFox-Lizenzschlüssel in License key im Lizenzblock oben auf der Seite Configure ein und klicken Sie auf Activate (siehe Lizenzschlüssel).
4. Geben Sie den Test- und/oder Live-Company-Token und -Service-Type ein (siehe Konfiguration).
5. Senden Sie die auf der Seite Configure angezeigte Push-Benachrichtigungs-URL an den DPO-Support und bitten Sie darum, sie für Ihr Konto einzurichten. Fügen Sie die Cron-URL den Cron-Jobs Ihres Servers hinzu.
6. Aktivieren Sie Enable/Disable und klicken Sie auf Save. Legen Sie im Testmodus eine Testbestellung an und deaktivieren Sie danach Test mode, um echte Zahlungen anzunehmen.
Bei der Installation legt das Modul den Bestellstatus DPO payment on hold an. PrestaShop bietet ein neues Zahlungsmodul für alle Währungen, Länder und Kundengruppen an. Sie können diese unter Payment > Preferences einschränken.
Konfiguration
Alle Einstellungen befinden sich auf der Modulseite: Modules > Module Manager > VibeFox DPO Pay Gateway > Configure. Jeder Abschnitt hat seine eigene Schaltfläche Save, die die gesamte Seite speichert. Wenn das Modul aktiviert ist, aber der Company Token oder der Service Type des gewählten Modus leer ist, warnt Sie die Seite, dass die Zahlungsmethode im Bestellvorgang ausgeblendet ist, und beim Speichern erscheint dieselbe Warnung. Solange der Testmodus eingeschaltet ist, zeigt die Seite Test mode is on: payments are created with the test account credentials. an.
DPO Pay
Enable/Disable: Enable DPO Pay schaltet die Zahlungsmethode ein oder aus. Standard: aus.
Title: der Name der Zahlungsmethode, den Kunden im Bestellvorgang sehen. Er wird außerdem als Name der Zahlungsmethode in der Bestellung gespeichert. Standard: DPO Pay. Pflichtfeld.
Description: der Text, der im Bestellvorgang unter der Zahlungsmethode angezeigt wird. Standard: Pay securely by card or mobile money on the DPO Pay payment page.
API-Zugangsdaten
DPO stellt für Ihr Händlerkonto einen Company Token und eine Service Type ID aus sowie getrennte Werte für ein Testkonto. Holen Sie sie von Ihrem DPO-Kundenbetreuer oder unter dpogroup.com.
Test mode: wenn eingeschaltet, werden neue Zahlungen mit dem Test-Company-Token und dem Test-Service-Type erstellt. Standard: ein. Schalten Sie ihn aus, um echte Zahlungen mit den Live-Zugangsdaten anzunehmen. Statusprüfungen und Stornierungen bestehender Zahlungen verwenden immer das Konto, mit dem die Zahlung erstellt wurde.
Test Company Token: der Company Token Ihres DPO-Testkontos.
Test Service Type: die numerische Service Type ID Ihres DPO-Testkontos.
Live Company Token: der Company Token Ihres DPO-Live-Händlerkontos.
Live Service Type: die numerische Service Type ID Ihres DPO-Live-Händlerkontos.
Gespeicherte Company Tokens 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. Ein Service Type muss eine Zahl sein. Jeder andere Wert wird nicht gespeichert: Die Seite zeigt eine Warnung und behält den bisherigen Wert.
Clear saved Company Tokens: markieren Sie einen Token und klicken Sie auf Save, um ihn zu entfernen. Ein leeres Feld behält den gespeicherten Wert.
Zahlungsbenachrichtigungen
Push notification URL: die Push-Benachrichtigung teilt Ihrem Shop sofort mit, dass eine Zahlung erfolgt ist, auch wenn der Kunde den Browser nach der Zahlung schließt. Die URL wird nicht in einem Dashboard eingestellt: Bitten Sie den DPO-Support, diese URL für Ihr Konto festzulegen. Mit SEO-freundlichen URLs sieht sie so aus: https://your-shop/module/wcp_dpo_pay/notify, möglicherweise mit einem Sprachcode. Kopieren Sie sie genau so, wie die Seite sie anzeigt. Sie muss aus dem Internet erreichbar sein, ohne Wartungsmodus, Firewall oder Basisauthentifizierung davor.
DPO-Push-Benachrichtigungen sind nicht signiert, daher wird ihr Inhalt nie als vertrauenswürdig behandelt. Das Modul nutzt sie nur, um die Zahlung anhand ihres Transaktionstokens zu finden, und prüft das Ergebnis dann bei DPO selbst. Ein Token, das Ihr Shop nicht erstellt hat, wird ohne Anfrage an DPO abgelehnt.
Scheduled status re-check (cron): rufen Sie diese URL alle 15 Minuten über einen Server-Cron-Job auf, zum Beispiel mit curl. Unbestätigte Zahlungen werden 15 Minuten nach der Weiterleitung und erneut nach Ablauf der Zahlungsfrist bei DPO geprüft. Die URL enthält ein geheimes Token, halten Sie sie daher vertraulich. Ohne die Push-URL und den Cron wird eine Bestellung erst angelegt, wenn der Kunde nach der Zahlung in den Shop zurückkehrt.
Bestellungen
Successful payment status: der Bestellstatus nach einer verifizierten erfolgreichen Zahlung.
Betrags- oder Währungsabweichungen, nur autorisierte sowie über- oder unterbezahlte Transaktionen gehen immer in den Status DPO payment on hold.
Erweitert
Logging: schreibt API-Aufrufe und Benachrichtigungen in logs/dpo_p_debug.log.php im Modulordner. Die Datei kann nicht über das Web geöffnet werden. Fehler werden immer protokolliert. Tokens werden maskiert, Kundendaten werden nicht protokolliert. 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: wenn eingeschaltet, entfernt die Deinstallation des Moduls die Modul-Einstellungen und das Protokoll. Die für Bestellungen gespeicherten DPO-Daten und der Bestellstatus DPO payment on hold bleiben immer erhalten. Eine Deinstallation ohne diese Option löscht nie Daten. Standard: aus.
Bestellvorgang
Im Zahlungsschritt wählt der Kunde die Zahlungsmethode (standardmäßig DPO Pay) und sieht den Hinweis You will be redirected to the secure DPO Pay payment page. Nach der Bestätigung erstellt das Modul eine DPO-Transaktion für den Warenkorbbetrag in der Warenkorbwährung, mit der Warenkorbnummer und dem Namen Ihres Shops als Beschreibung, und leitet den Kunden zur DPO-Zahlungsseite weiter. Name, E-Mail, Telefon und Rechnungsadresse des Kunden werden übergeben, um die Seite vorauszufüllen. Dort zahlt der Kunde mit einer beliebigen in Ihrem DPO-Konto aktivierten Methode. Der Zahlungslink ist 5 Stunden gültig. Zu diesem Zeitpunkt existiert noch keine Bestellung.
Nach der Zahlung kehrt der Kunde in Ihren Shop zurück. Die Bestellung wird erst als bezahlt markiert, wenn DPO sie bestätigt: Das Modul fragt DPO nach dem Ergebnis der Transaktion, wenn der Kunde zurückkehrt, wenn eine Push-Benachrichtigung eingeht und bei den geplanten Nachprüfungen. Danach wird die Bestellung angelegt und der Kunde sieht die übliche Bestellbestätigungsseite.
Wenn die Zahlung nicht bestätigt wird, kehrt der Kunde mit einer dieser Meldungen zum Bestellvorgang zurück. Der Warenkorb bleibt erhalten.
Klickt der Kunde auf der DPO-Seite auf die Schaltfläche, um zum Shop zurückzukehren, wird die Transaktion zuerst geprüft. Wurde sie bezahlt, wird die Bestellung angelegt. Andernfalls wird sie bei DPO storniert und der Kunde kehrt mit dem Warenkorb zum Bestellvorgang zurück.
Zahlt der Kunde erneut für denselben Warenkorb, wird zuerst die vorherige DPO-Transaktion geprüft. Wurde sie bezahlt, wird die Bestellung ohne eine zweite Belastung angelegt. Wird sie noch verarbeitet, sieht der Kunde Your previous payment for this order is still being processed by DPO. Please wait a few minutes before trying again. Andernfalls wird die alte Transaktion bei DPO storniert und eine neue erstellt.
Wenn DPO die Zahlung nicht starten kann, bleibt der Kunde im Bestellvorgang mit einer kurzen Meldung, die anhand des DPO-Fehlercodes gewählt wird, zum Beispiel DPO Pay does not support the currency of this order. Please choose another payment method. oder The amount exceeds the limit allowed by DPO Pay. Please choose another payment method or contact us. Andere Fehler zeigen DPO Pay is temporarily unavailable. Please try again or choose another payment method. Der technische Grund wird im Protokoll gespeichert.
Die Push-Benachrichtigung und die Cron-URL funktionieren, während der Shop im Wartungsmodus ist, und werden nicht durch die Länderbeschränkung Ihres Shops blockiert.
Das Modul nimmt nur Einmalzahlungen auf der DPO-Seite an. Es gibt keine Erstattungen aus dem Shop, keine gespeicherten Karten, keine Abonnements oder wiederkehrenden Zahlungen, keine Kartenfelder auf Ihrer Website und keine Erfassung nur autorisierter Zahlungen.
Bestellungen
Bestellstatus
No order yet: der Kunde wurde zu DPO weitergeleitet und hat nicht bezahlt, die Zahlung wurde abgelehnt oder storniert, oder DPO hat die Zahlung noch nicht bestätigt. Nur der Warenkorb existiert.
Payment accepted, Delivered or DPO payment on hold: die Zahlung wurde verifiziert. Der Status richtet sich nach Successful payment status. Die Zahlung wird mit dem DPO-Transaktionstoken als Transaktions-ID erfasst. Eine private Notiz auf der Bestellseite zeigt den Betrag, die Währung, den Genehmigungscode und den Anfang des Tokens.
DPO payment on hold after payment: DPO hat eine Zahlung bestätigt, aber Betrag oder Währung weichen vom Warenkorb ab, die Zahlung ist nur autorisiert und nicht erfasst, die Transaktion wurde über- oder unterbezahlt, oder der Kunde hatte die Zahlung storniert oder die Bestellung war bereits storniert. Die private Notiz erklärt den Grund. Prüfen Sie die Transaktion im DPO-Portal. Erfassen oder stornieren Sie eine nur autorisierte Zahlung im DPO-Portal und aktualisieren Sie danach den Bestellstatus.
Cancelled: wenn Sie eine unbezahlte Bestellung des Moduls stornieren (zum Beispiel eine wegen einer nur autorisierten Zahlung wartende), wird deren offene DPO-Transaktion auch bei DPO storniert.
Ein späteres Ablehnungsergebnis ändert nie eine Bestellung, und Ergebnisse älterer Transaktionen lassen nie den aktuellen Versuch fehlschlagen. Bestätigt DPO eine zweite erfolgreiche Zahlung für eine bereits bezahlte Bestellung, wird die Bestellung nicht verändert und erhält eine Notiz über eine mögliche Doppelzahlung, damit Sie sie im DPO-Portal erstatten können. Eine bezahlte oder erstattete Bestellung wird nie wieder geöffnet.
Erstattungen
Erstattungen aus dem Shop sind in dieser Version nicht verfügbar. Erstatten Sie die Zahlung im DPO-Händlerportal und ändern Sie danach den Bestellstatus in PrestaShop.
Lizenzschlüssel
Das Modul arbeitet mit einem VibeFox-Lizenzschlüssel von vibefox.net. Der Lizenzblock License — VibeFox DPO Pay Gateway ist der erste Block auf Modules > Module Manager > VibeFox DPO Pay Gateway > Configure, oberhalb der Einstellungen. Fügen Sie den Schlüssel in License key ein und klicken Sie auf Activate. Danach zeigt der Block den Schlüssel maskiert, den Status (zum Beispiel das Datum, bis zu dem die Lizenz aktiv ist, und Ihre Domain) sowie die Schaltflächen Check now zum erneuten Prüfen des Status, Change key zum Eingeben eines anderen Schlüssels und Remove key zum Entfernen des Schlüssels aus diesem Shop. Darunter stehen die Zeile Product: presta-payment-dpo und der Link Manage licenses and domains in your account, der Ihr vibefox.net-Konto öffnet. Nur Mitarbeiter mit der Berechtigung Configure für das Modul können den Schlüssel ändern. Die Texte des Blocks folgen der Sprache des Back Office (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 das Modul mit dem zuletzt bekannten Status weiter.
Ein Schlüssel funktioniert auf einer Domain: der Domain des Haupt-Shops, auch bei einer Multistore-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 DPO Pay Kunden im Bestellvorgang nicht angezeigt. Wird trotzdem eine Zahlung gestartet, sieht der Kunde This payment method is not available. Please choose another one. Der PrestaShop-Storefront weiß nicht, dass Sie im Back Office angemeldet sind, daher wird die Zahlungsmethode auch für Sie ausgeblendet: Sie können das Modul vor dem Kauf eines Schlüssels einrichten, aber nicht im Bestellvorgang testen. Ein Hinweis erscheint unter Modules > Module Manager auf dem Reiter Alerts. Bestehende Bestellungen sind nicht betroffen: bereits begonnene Zahlungen werden weiterhin bestätigt.
Läuft eine Lizenz ab, arbeitet das Modul weiter, Updates und Support benötigen jedoch eine Verlängerung. Der Status wird automatisch erneut geprüft, während Sie im Back Office arbeiten: einmal täglich in den ersten 14 Tagen nach der Eingabe des Schlüssels, danach einmal pro Woche. Ein Cron-Job ist nicht nötig. Das Deinstallieren oder Zurücksetzen des Moduls entfernt immer den Lizenzschlüssel und den Lizenzstatus.
Fehlerbehebung
DPO Pay does not appear at checkout: prüfen Sie, ob die Lizenz aktiv ist, Enable/Disable eingeschaltet ist und der Company Token sowie der Service Type des gewählten Modus gesetzt sind: die Testfelder im Testmodus, sonst die Live-Felder. Die Einstellungsseite zeigt eine Warnung, wenn sie fehlen. Prüfen Sie unter Payment > Preferences, ob das Modul für die Warenkorbwährung, das Land des Kunden und die Kundengruppe zugelassen ist.
The payment went through, but no order was created: die Push-Benachrichtigungs-URL ist wahrscheinlich nicht für Ihr DPO-Konto eingerichtet, und der Kunde ist nicht in den Shop zurückgekehrt. Bitten Sie den DPO-Support, die in den Einstellungen angezeigte URL festzulegen, und prüfen Sie, ob der Cron die Nachprüfungs-URL alle 15 Minuten aufruft. Schalten Sie Logging ein und sehen Sie im Feld Log auf der Modulseite nach.
Push notification answers Unknown transaction: das Transaktionstoken gehört zu keiner DPO-Pay-Zahlung dieses Shops, zum Beispiel weil die Benachrichtigung von einem anderen Shop auf demselben DPO-Konto stammt.
Push notification answers Verification failed: DPO konnte zur Prüfung der Zahlung nicht erreicht werden, der Warenkorb wurde im selben Moment von einer anderen Anfrage verarbeitet, oder die Bestellung konnte nicht angelegt werden (zum Beispiel weil das Modul deaktiviert ist). DPO wiederholt die Benachrichtigung, und die geplante Nachprüfung bestätigt die Bestellung ebenfalls. Der Grund steht im Protokoll.
The push URL shows Method not allowed in the browser: das ist normal. Die URL akzeptiert nur Anfragen von DPO.
The cron URL answers Forbidden: das Token in der URL ist falsch. Kopieren Sie die URL erneut von der Seite Configure. Ein funktionierender Aufruf antwortet mit OK checked= und der Anzahl der geprüften Zahlungen.
The Service Type is not saved: er muss die numerische Service Type ID von DPO sein.
The customer sees DPO Pay is temporarily unavailable: DPO hat die Erstellung der Transaktion abgelehnt, zum Beispiel wegen eines falschen Company Token oder Service Type oder eines Tokens des anderen Modus. Der DPO-Ergebniscode steht im Protokoll.
The customer sees that DPO accepts at most 2 decimal places: die Warenkorbsumme hat 3 Nachkommastellen. DPO kann solche Beträge nicht abbuchen.
The customer sees This order has already been paid with DPO Pay: DPO hat eine zweite Zahlung für denselben Warenkorb abgelehnt. Prüfen Sie die Zahlung im DPO-Portal und die Bestellung in PrestaShop.
Order is DPO payment on hold after payment: lesen Sie die private Notiz auf der Bestellseite (siehe Bestellstatus) und prüfen Sie danach die Transaktion im DPO-Portal.
Entwickler können die an DPO übermittelten Kundendaten mit dem Hook actionWcpDpoPayCustomerData und die Zahlungsfrist mit actionWcpDpoPayPaymentTimeLimit ändern.
Deinstallation
Gehen Sie zu Modules > Module Manager, öffnen Sie das Menü neben VibeFox DPO Pay Gateway und wählen Sie Uninstall. Der Lizenzschlüssel und der Lizenzstatus dieses Moduls werden immer entfernt. Ist Delete data eingeschaltet, werden die Modul-Einstellungen und das Protokoll entfernt. Ist es ausgeschaltet, bleiben alle Einstellungen für eine spätere Neuinstallation erhalten. Die für Bestellungen gespeicherten DPO-Daten und der Bestellstatus DPO payment on hold bleiben immer erhalten, sodass verspätete Benachrichtigungen zu alten Zahlungen nach einer Neuinstallation weiterhin funktionieren. Bestehende Bestellungen behalten ihre Zahlungsnotizen und Transaktions-IDs.
DPO Pay ist eine Marke ihres jeweiligen Inhabers. Dieses Modul ist nicht mit DPO Pay verbunden und wird von DPO Pay nicht unterstützt.
