Zurück

VibeFox IntaSend for PrestaShop — Hilfe

Anforderungen

PrestaShop: 8.0 bis 9.x.

PHP: 8.0 oder neuer mit der cURL-Erweiterung. Das Modul lässt sich auf älteren PHP-Versionen oder ohne cURL nicht installieren.

HTTPS: IntaSend verlangt HTTPS für Live-Zahlungen und Webhooks. Die Einstellungsseite warnt Sie, wenn der Live-Modus aktiv ist und der Shop kein HTTPS verwendet.

IntaSend-Konto: Sie benötigen den öffentlichen Schlüssel (ISPubKey_...) und den geheimen Schlüssel (ISSecretKey_...) Ihres IntaSend-Kontos, für die Sandbox, für Live oder für beide, sowie einen Webhook mit Challenge-Phrase im IntaSend-Dashboard (siehe Konfiguration). Der öffentliche Schlüssel erstellt die Kasse. Der geheime Schlüssel wird nur auf Ihrem Server verwendet, um bei IntaSend den Zahlungsstatus abzufragen.

Shop-Währung: KES, USD, EUR, GBP, UGX, TZS, NGN, GHS, XAF oder XOF. Für andere Währungen wird die Zahlungsmethode ausgeblendet.

VibeFox-Lizenzschlüssel: erhältlich auf vibefox.net. Ein Schlüssel gilt 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.

2. Wenn der Upload abgeschlossen ist, klicken Sie auf Configure, oder suchen Sie VibeFox IntaSend Pay Gateway später in der Modulliste und klicken Sie dort auf Configure.

3. Geben 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. Fügen Sie Ihre IntaSend-Schlüssel für Sandbox und/oder Live ein, legen Sie den Webhook im IntaSend-Dashboard an und tragen Sie im Modul dieselbe Challenge ein (siehe Konfiguration).

5. Aktivieren Sie Enable/Disable und klicken Sie auf Save. Testen Sie eine Zahlung mit aktivem Test mode und deaktivieren Sie Test mode danach, um echte Zahlungen anzunehmen.

Bei der Installation legt das Modul den Bestellstatus IntaSend payment on hold an. PrestaShop bietet ein neues Zahlungsmodul für alle Währungen, Länder und Kundengruppen an. Sie können dies unter Payment > Preferences einschränken.

Konfiguration

Alle Einstellungen befinden sich auf der Modulseite: Modules > Module Manager > VibeFox IntaSend Pay Gateway > Configure. Jeder Abschnitt hat eine eigene Schaltfläche Save, die die gesamte Seite speichert. Über den Feldern zeigt ein Statusfeld Test mode: IntaSend sandbox, no real money is charged. oder Live mode: real payments are accepted. an. Es warnt außerdem, wenn die Schlüssel des aktuellen Modus fehlen oder falsch sind (die Zahlungsmethode wird dann in der Kasse ausgeblendet), wenn die Standardwährung des Shops nicht unterstützt wird, wenn keine Webhook-Challenge gesetzt ist und wenn der Live-Modus ohne HTTPS verwendet wird. Eingefügte Schlüssel werden beim Speichern um Leerzeichen bereinigt.

IntaSend

Enable/Disable: Enable IntaSend aktiviert oder deaktiviert die Zahlungsmethode. Standard: deaktiviert.

Title: der Name der Zahlungsmethode, den Kunden in der Kasse sehen. Er wird auch als Name der Zahlungsmethode in der Bestellung gespeichert. Standard: IntaSend (M-Pesa, card). Pflichtfeld.

Description: der Text, der in der Kasse unter der Zahlungsmethode angezeigt wird. Standard: You will be redirected to IntaSend to pay securely with M-Pesa, card or another available method.

API-Schlüssel

Die Schlüssel finden Sie im IntaSend-Dashboard unter Settings > API Keys, getrennt im Sandbox-Dashboard und im Live-Dashboard (der Bereich enthält Links zu beiden). Der Test mode verwendet die Sandbox-Schlüssel und die Sandbox-API, der Live-Modus die Live-Schlüssel und die Live-API. Das Modul prüft, ob der öffentliche Schlüssel mit ISPubKey_ beginnt, der geheime Schlüssel mit ISSecretKey_, und ob die Schlüssel zum aktuellen Modus gehören: Sandbox-Schlüssel enthalten _test, Live-Schlüssel enthalten _live. Ist das nicht der Fall, wird die Zahlungsmethode ausgeblendet, und das Statusfeld erklärt den Grund.

Test mode: nutzt die IntaSend-Sandbox, es wird kein echtes Geld belastet. Standard: aktiviert. Deaktivieren Sie ihn, um echte Zahlungen mit den Live-Schlüsseln anzunehmen. Solange der Test mode aktiv ist, zeigt die Kasse unter der Zahlungsmethode TEST MODE - IntaSend sandbox, no real money is charged. an.

Sandbox publishable key: beginnt mit ISPubKey_test. Er identifiziert Ihr Unternehmen, wenn eine Kasse erstellt wird.

Sandbox secret key: beginnt mit ISSecretKey_test. Wird nur auf Ihrem Server verwendet, um Zahlungen über die Payment Status API zu bestätigen.

Live publishable key: beginnt mit ISPubKey_live.

Live secret key: beginnt mit ISSecretKey_live. Wird nur auf Ihrem Server verwendet, um Zahlungen zu bestätigen.

Gespeicherte geheime Schlüssel und die Webhook-Challenge werden nie wieder angezeigt. Das Feld bleibt leer und zeigt Saved — leave empty to keep it. an. Geben Sie nur dann einen neuen Wert ein, wenn Sie ihn ändern möchten.

Webhook

Der Webhook informiert Ihren Shop darüber, dass eine Zahlung erfolgt ist, auch wenn der Kunde nicht zum Shop zurückkehrt (Browser geschlossen, M-Pesa erst später bestätigt). Öffnen Sie im IntaSend-Dashboard, in der Sandbox und in Live, den Punkt Webhooks und fügen Sie die URL hinzu, die in diesem Abschnitt unter Webhook URL angezeigt wird. Mit freundlichen URLs sieht sie etwa so aus: https://your-shop/module/wcp_intasend_pay/webhook, gegebenenfalls mit einem Sprachcode wie /en/. Kopieren Sie die URL genau so, wie die Einstellungen sie anzeigen. Tragen Sie dort eine Challenge-Phrase ein und dieselbe Phrase im Modul. Verwenden Sie eine Challenge für Sandbox und Live.

Webhook challenge: dieselbe Challenge wie im IntaSend-Dashboard. Webhooks mit einer anderen Challenge werden abgelehnt. Solange dieses Feld leer ist, werden Webhooks nicht verarbeitet, und Zahlungen werden nur bestätigt, wenn der Kunde zum Shop zurückkehrt. Solche Webhooks werden mit Ignored beantwortet, nicht mit einem Fehler, damit IntaSend den Webhook nicht deaktiviert, bevor Sie die Challenge eingeben.

Gespeicherte Geheimnisse löschen: aktivieren Sie Sandbox secret key, Live secret key oder Webhook challenge und klicken Sie auf Save, um es zu entfernen. Ein leeres Feld behält den gespeicherten Wert.

Das Modul reagiert auf diese von IntaSend gemeldeten Zahlungsstatus. Jedes Mal fragt es vor einer Änderung über die Payment Status API den tatsächlichen Status ab:

COMPLETE: die Zahlung wurde geleistet. Die Bestellung wird nach der Prüfung von Betrag und Währung angelegt.
FAILED or CANCELED: die Zahlung ist fehlgeschlagen. Der letzte Zahlungsversuch des Warenkorbs wird mit dem Grund von IntaSend als fehlgeschlagen markiert. Es wird keine Bestellung angelegt, und der Warenkorb bleibt erhalten.
PARTIAL: die Rechnung wurde teilweise bezahlt. Die Bestellung wird in IntaSend payment on hold angelegt.
PENDING, PROCESSING or RETRY: die Zahlung läuft noch. Bis zum endgültigen Status wird nichts geändert.

Benachrichtigungen, die keine Kassenzahlungen dieses Shops sind, zum Beispiel Zahlungslinks oder Geldtransfers desselben IntaSend-Kontos, werden mit Ignored beantwortet, damit IntaSend den Webhook nicht deaktiviert.

Erweitert

Debug log: protokolliert Kassen-, Rückkehr- und Webhook-Ereignisse in logs/intasend_p_debug.log.php im Modulordner. Die Datei kann nicht über das Web geöffnet werden. Fehler und Warnungen werden immer protokolliert. API-Schlüssel und Kundendaten werden nie protokolliert. Standard: deaktiviert.

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 aktiviert, entfernt die Deinstallation des Moduls die Gateway-Einstellungen und das Protokoll. Die für Bestellungen gespeicherten IntaSend-Referenzen sind Zahlungshistorie und bleiben immer erhalten. Standard: deaktiviert.

Kasse

Im Zahlungsschritt wählt der Kunde die Zahlungsmethode (standardmäßig IntaSend (M-Pesa, card)) und bestätigt. Das Modul erstellt eine IntaSend-Kasse für den Warenkorbbetrag in der Warenkorbwährung und leitet den Kunden zur von IntaSend gehosteten Kasse weiter. Dort bezahlt der Kunde mit M-Pesa, Karte oder einer anderen in Ihrem IntaSend-Konto aktivierten Methode. Die E-Mail-Adresse des Kunden sowie Name, Adresse, Telefon und Land der Rechnungsadresse werden an IntaSend übermittelt, sofern sie den Feldregeln von IntaSend entsprechen. Leere oder ungeeignete Felder werden weggelassen. Zu diesem Zeitpunkt existiert noch keine Bestellung.

Nach der Zahlung kehrt der Kunde zu Ihrem Shop zurück. Die Bestellung wird erst als bezahlt markiert, wenn IntaSend die Zahlung bestätigt: Das Modul fragt die Payment Status API ab, wenn der Kunde zurückkehrt und wenn der Webhook eintrifft. Danach wird die Bestellung angelegt, und der Kunde sieht die Standard-Bestellbestätigungsseite. Wurde die Bestellung in Wartestellung gesetzt, zeigt die Seite Your payment was received and your order is being reviewed. We will contact you if anything is needed. Ist die Zahlung noch nicht bestätigt oder IntaSend in diesem Moment nicht erreichbar, zeigt eine Seite Payment confirmation den Hinweis Your payment is being confirmed by IntaSend (M-Pesa confirmations can take a minute). You will receive an e-mail as soon as it is confirmed. mit den Schaltflächen Check again und Back to checkout. Der Webhook legt die Bestellung an, sobald IntaSend die Zahlung bestätigt.

Ist die Zahlung fehlgeschlagen, kehrt der Kunde zur Kasse zurück und sieht The payment was not successful. Please try again or choose another payment method. (mit dem Grund von IntaSend, falls angegeben). Ist der Kunde ohne Zahlung zurückgekehrt, lautet die Meldung The payment was not completed. Please try again or choose another payment method. Der Warenkorb bleibt erhalten, und der Kunde kann erneut bezahlen. Jeder Versuch erhält eine eigene IntaSend-Referenz.

Kann IntaSend die Zahlung nicht starten, bleibt der Kunde in der Kasse mit IntaSend could not start the payment: und dem Grund von IntaSend oder mit IntaSend is temporarily unavailable. Please try again in a moment or choose another payment method. Die Details werden ins Protokoll geschrieben. Ein Warenkorb mit dem Gesamtbetrag null kann nicht mit IntaSend bezahlt werden.

Der Webhook funktioniert auch, wenn der Shop im Wartungsmodus ist, und wird nicht durch die Ländereinschränkung Ihres Shops blockiert. Sind freundliche URLs deaktiviert, kehrt der Kunde über die Startseite des Shops zurück, weil IntaSend einige Zeichen in der Rücksprung-Adresse nicht akzeptiert.

Das Modul nimmt nur einmalige Zahlungen an. Erstattungen werden vom Shop aus nicht an IntaSend übermittelt, und es gibt keine gespeicherten Karten, keine Abonnements und kein eingebettetes (Pop-up-)Zahlungsformular. Ältere Kassenlinks desselben Warenkorbs können bei IntaSend nicht storniert werden.

Bestellungen

Bestellstatus

No order yet: der Kunde wurde zu IntaSend weitergeleitet und hat noch nicht bezahlt, oder IntaSend hat die Zahlung noch nicht bestätigt. Es existiert nur der Warenkorb.

Payment accepted: die Zahlung wurde bestätigt. Sie wird mit der IntaSend-Rechnungs-ID als Transaktions-ID erfasst. Eine Notiz zeigt die Rechnung, die Zahlungsmethode bei IntaSend, den Betrag, den Modus (Sandbox oder Live) und wie die Zahlung bestätigt wurde (Webhook oder Rückkehr des Kunden).

IntaSend payment on hold: IntaSend hat einen anderen Betrag oder eine andere Währung als den Warenkorbbetrag gemeldet, eine Teilzahlung oder eine Zahlung, die eintraf, nachdem die Bestellung storniert worden war. Die Notiz erklärt dies, und der von IntaSend eingezogene Betrag wird als Zahlung erfasst, wenn er in der Bestellwährung vorliegt. Prüfen Sie die Zahlung im IntaSend-Dashboard und bearbeiten Sie die Bestellung oder erstatten Sie die Zahlung. Trifft später die richtige Zahlung ein, wechselt die Bestellung zu Payment accepted.

Geht für eine bereits bezahlte Bestellung eine zweite Zahlung ein, bleibt die Bestellung unverändert. Eine Notiz fordert Sie auf, sie im IntaSend-Dashboard zu erstatten, wenn es sich um ein Duplikat handelt. Eine Zahlung zu einer erstatteten Bestellung fügt eine Notiz hinzu und öffnet die Bestellung nicht erneut.

IntaSend-Zahlungsblock

Die Bestellseite zeigt einen Block IntaSend payment mit jedem Kassenversuch des Warenkorbs der Bestellung (Datum, Referenz, IntaSend-Kasse, Umgebung, Betrag, Rechnung und Ergebnis, mit dem Fehlergrund) und die Invoices processed (Rechnung, IntaSend-Status, Betrag und Ergebnis). Der Block ist nur lesbar.

Erstattungen

Erstattungen werden vom Shop aus nicht an IntaSend übermittelt. Erstatten Sie die Zahlung im IntaSend-Dashboard und erfassen Sie die Erstattung manuell in PrestaShop.

Lizenzschlüssel

Das Modul arbeitet mit einem VibeFox-Lizenzschlüssel von vibefox.net. Der Lizenzblock License — VibeFox IntaSend Pay Gateway ist der erste Block unter Modules > Module Manager > VibeFox IntaSend 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 maskierten Schlüssel, den Status (zum Beispiel das Datum, bis zu dem die Lizenz gültig ist, und Ihre Domain) sowie die Schaltflächen Check now, um den Status erneut zu prüfen, Change key, um einen anderen Schlüssel einzugeben, und Remove key, um den Schlüssel aus diesem Shop zu entfernen. Darunter stehen die Zeile Product: presta-payment-intasend 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. Nachdem sich die Shop-Adresse geändert hat 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 gilt für eine Domain: die Domain des Hauptshops, auch in einem Multistore-Setup. Das Entfernen des Schlüssels aus dem Shop gibt dessen Domain-Platz nicht frei. Geben Sie den Platz in Ihrem vibefox.net-Konto frei.

Ohne aktiven Schlüssel wird IntaSend Kunden in der Kasse 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 in der Kasse nicht testen. Ein Hinweis erscheint unter Modules > Module Manager auf dem Tab Alerts. Bestehende Bestellungen sind nicht betroffen: Bereits gestartete Zahlungen werden weiterhin bestätigt.

Läuft eine Lizenz ab, arbeitet das Modul weiter, aber Updates und Support erfordern eine Verlängerung. Der Status wird während Ihrer Arbeit im Back Office automatisch erneut geprüft: einmal täglich in den ersten 14 Tagen nach Eingabe des Schlüssels, danach einmal pro Woche. Ein Cronjob ist nicht nötig. Das Deinstallieren oder Zurücksetzen des Moduls entfernt immer den Lizenzschlüssel und den Lizenzstatus.

Fehlerbehebung

IntaSend wird in der Kasse nicht angezeigt: prüfen Sie, ob die Lizenz aktiv ist, Enable/Disable eingeschaltet ist und die Schlüssel des aktuellen Modus ausgefüllt sind und zu diesem Modus gehören: Sandbox-Schlüssel (mit _test) im Test mode, Live-Schlüssel (mit _live) im Live-Modus. Die Warenkorbwährung muss unterstützt werden. Das Statusfeld oben auf der Einstellungsseite zeigt, was nicht stimmt. Prüfen Sie unter Payment > Preferences, ob das Modul für die Warenkorbwährung, das Land des Kunden und die Kundengruppe zugelassen ist.

Die Zahlung ist durchgegangen, aber es wurde keine Bestellung angelegt: M-Pesa-Bestätigungen können etwas dauern. Der Webhook legt die Bestellung an, wenn IntaSend den Endstatus meldet. Prüfen Sie, ob die Webhook-URL im IntaSend-Dashboard (Sandbox oder Live, je nachdem, welchen Modus Sie verwenden) genau der Adresse unter Webhook URL entspricht und ob die dortige Challenge mit Webhook challenge übereinstimmt. Die Bestellung wird auch angelegt, wenn der Kunde zum Shop zurückkehrt oder auf Check again klickt.

Der Webhook antwortet Ignored: webhook challenge not configured: Webhook challenge ist leer. Geben Sie die Challenge aus dem IntaSend-Dashboard ein.

Der Webhook antwortet Invalid challenge: die Challenge in IntaSend und im Modul stimmen nicht überein, oder der Webhook enthält keine Challenge.

Der Webhook antwortet Verification unavailable, retry later oder Busy, retry later: IntaSend war in diesem Moment nicht erreichbar, der Warenkorb wurde gerade von einer anderen Anfrage bestätigt, oder die Bestellung konnte nicht angelegt werden (zum Beispiel weil das Modul deaktiviert ist). IntaSend wiederholt den Webhook. Der Grund steht im Protokoll.

Der Webhook antwortet Invoice not verified oder Invoice does not match the reference: IntaSend hat nicht bestätigt, dass diese Rechnung zum Warenkorb gehört. Es wird nichts geändert.

Die Webhook-URL zeigt im Browser Method not allowed: das ist normal. Die URL akzeptiert nur Anfragen von IntaSend.

Die Bestellung ist IntaSend payment on hold: lesen Sie die Bestellnotizen. Der bezahlte Betrag oder die Währung wich vom Warenkorb ab, die Zahlung war teilweise, oder sie kam, nachdem die Bestellung storniert worden war. Prüfen Sie die Zahlung im IntaSend-Dashboard.

Der Kunde sieht bei der Auswahl von IntaSend einen Fehler: prüfen Sie das Feld Log auf der Modulseite (aktivieren Sie Debug log für mehr Details). Sind die Schlüssel des aktuellen Modus falsch, sieht der Kunde IntaSend is not available at the moment. Please choose another payment method or contact the store. Steht im Protokoll, dass die Rücksprung-URL Zeichen enthält, die IntaSend nicht akzeptiert, liegt die Ursache in der Shop-Adresse.

Der Kunde sieht We could not match this payment to an order: der Rücksprunglink wurde geändert oder gehört zu einem anderen Warenkorb. Hat der Kunde gezahlt, legt der Webhook die Bestellung trotzdem an.

Deinstallation

Gehen Sie zu Modules > Module Manager, öffnen Sie das Menü neben VibeFox IntaSend Pay Gateway und wählen Sie Uninstall. Der Lizenzschlüssel und der Lizenzstatus dieses Moduls werden immer entfernt. Ist Delete data on uninstall aktiviert, werden die Gateway-Einstellungen und das Protokoll entfernt. Ist die Option deaktiviert, bleiben alle Einstellungen für eine spätere Neuinstallation erhalten. Die IntaSend-Kassenversuche und Rechnungen von Bestellungen sowie der Bestellstatus IntaSend payment on hold bleiben immer erhalten. Bestehende Bestellungen behalten ihre Zahlungsnotizen und Transaktions-IDs.

IntaSend ist eine Marke des jeweiligen Inhabers. Dieses Modul ist nicht mit IntaSend verbunden und wird von IntaSend nicht unterstützt.