Payment-Gateways für Website-Ersteller
Diese Seite richtet sich an Website-Ersteller, die einen Shop mit einem Zahlungsanbieter verbinden. In Exponential ist ein Payment-Gateway ein Workflow-Ereignis an der Kasse: Wenn der Kunde zur Kasse geht, schickt das Ereignis ihn zum Anbieter (oder belastet direkt) und markiert die Bestellung als bezahlt, wenn der Anbieter bestätigt.
Inhalt
- Wie sich die Zahlung in die Kasse einfügt
- Die Gateways, die Sie verwenden können
- PayPal einrichten
- Testen
- Ein eigenes Gateway
Wie sich die Zahlung in die Kasse einfügt
settings/paymentgateways.ini [GatewaysSettings] AvailableGateways[]listet die aktiven Gateways auf;GatewaysDirectories[], wo ihre Klassen liegen (kernel/shop/paymentgatewaysund Erweiterungen).- Ein Workflow mit dem Ereignis für das Payment-Gateway wird mit dem Trigger
shop_checkout(davor) verbunden (Workflows). - An der Kasse läuft das Ereignis. Ein Weiterleitungs-Gateway schickt den Kunden zum Anbieter; der Anbieter ruft die Website zur Bestätigung zurück; die Bestellung erhält ihren Status „bezahlt“.
Die Zahlungsklassen des Kernels sind in doc/eng-us/shop/ dokumentiert (Gateway, Weiterleitungs-Gateway,
Zahlungsobjekt, Callback-Prüfer und ein PayPal-Beispiel).
Die Gateways, die Sie verwenden können
| Erweiterung | Anbieter | Lesen |
|---|---|---|
ezpaypal | PayPal (Weiterleitung, NVP-API, Notify-URL /paypal/notify_url) | ezpaypal |
ezauthorize | Authorize.Net | die eigene Dokumentation in extension/ezauthorize/ |
PayPal einrichten
Aus ezpaypal:
- Aktivieren Sie die Erweiterung.
- Legen Sie
settings/override/paypal.ini.append.phpan und setzen Sie mindestens[PaypalSettings] Business(Ihr PayPal-Geschäftskonto). - Testen Sie mit dem Sandbox-Server von PayPal in
[ServerSettings] ServerName, bevor Sie live gehen. - Fügen Sie das PayPal-Workflow-Ereignis dem Kassen-Workflow hinzu.
[OrderSettings] PaymentMadeOrderStatusID(1000) ist der Status, der gesetzt wird, wenn die Zahlung erfolgt ist.
Die Notify-URL muss aus dem Internet erreichbar sein und darf keine Anmeldung verlangen.
Testen
- To do: Eine Zahlung im Testmodus des Anbieters wird abgeschlossen, und die Bestellung wird bezahlt.
- To do: Eine abgebrochene Zahlung lässt die Bestellung unbezahlt, und der Kunde kann es erneut versuchen.
- To do: Der Callback funktioniert über HTTPS und durch jeden Proxy (prüfen Sie die vertrauenswürdigen Proxys Ihrer Umgebung).
- To do: Das Shop-Dashboard meldet nicht mehr, dass es an der Kasse keinen Zahlungsschritt gibt.
Ein eigenes Gateway
Ein Gateway ist eine Klasse, die die Gateway-Klassen des Kernels erweitert (eZPaymentGateway oder eZRedirectGateway
für Anbieter mit Weiterleitung), registriert in paymentgateways.ini einer Erweiterung, plus eine Modulansicht für den
Callback des Anbieters. Die Seiten in doc/eng-us/shop/examples/paypal/ gehen eines Schritt für Schritt durch. Das ist
Arbeit für Anwendungsentwickler: siehe
Einen Workflow-Ereignistyp schreiben.
Setup > RAD (/setup/handlerextension/paymentgateway, oder paymentgatewaydirect für ein Gateway, das die
Zahlung ohne Verlassen der Website annimmt) schreibt das Gerüst. Prüfen Sie, dass die erzeugte Klasse unter
extension/<name>/paymentgateways/<alias>/classes/<alias>gateway.php liegt: Der Kernel lädt für jeden Namen in
AvailableGateways[] nur <GatewaysDirectories>/<gateway>/classes/<gateway>gateway.php. Frühere Versionen des
Werkzeugs schrieben paymentgateways/<alias>gateway.php, das nie geladen wird.
Verwandte Seiten
- Einen Shop betreiben: Überblick
- Warenkorb, Kasse und Bestellungen
- Sicherheit für Anwendungen
- Freie Dokumentation: Diese Seite darf unter der GNU FDL 1.3 frei kopiert, übersetzt und verbessert werden.
Werden Sie Exponential-Partner
Partner teilen ihre Informationen, stellen Mittel bereit, geben Beiträge zurück und entwickeln die Produkte mit uns, und so wächst Exponential. Eine Partner-Website und ein Dashboard sind für Mitte 2027 geplant: Werden Sie noch heute Partner, damit wir schneller wachsen und neue Funktionen früher liefern.