it-swarm.com.de

Empfangen von Stripe Webhooks auf einer WordPress-Website

Ich habe eine auf GoDaddy gehostete WordPress-Website.

Ich bin ein fortgeschrittener Stripe-Benutzer und habe Stripe in viele Ruby on Rails-Apps sowie die Integration von Stripe-Webhooks in Rails integriert. Ich kenne mich auch gut mit der Arbeitsweise von Web-Hooks aus. Aber vor kurzem wurde ich Eigentümer einer auf GoDaddy gehosteten WordPress-Website und auf dieser Website soll ich einen Webhook mit fehlgeschlagener Streifenzahlung erhalten und dann eine E-Mail basierend auf diesem Webhook-Ereignis auslösen. Ich bin nicht in der Lage, über Online-Ressourcen viel mit WordPress und Stripe zu tun, und benötige Hilfe beim Empfangen von Stripe-Webhooks auf der WordPress-Website, z.

1
Sahil Dhankhar

Ich hatte vor kurzem das gleiche Problem und das Pippins-Stripe-Integrations-Plugin schien es zu beantworten, aber es enthielt eine Menge zusätzlichen Code, den ich nicht brauchte. Ich entfernte ihn und erstellte eine kompakte Version nur für die Webhook-Integration: WPStripeWebhook . README ist selbsterklärend. Nehmen Sie grundsätzlich Änderungen an der Datei includes/stripe_listener.php für Ihre Veranstaltungen vor. Fügen Sie hier auch die Readme-Datei gemäß den Richtlinien für den Stackoverflow hinzu:

Verwendung:

  1. Kopieren Sie den kompletten Ordner WPStripeWebhook in wp-content/plugins. Gehen Sie zur Website-Admin-Seite.

  2. Aktivieren Sie den Abschnitt WP Stripe-Webhook-Plugin für Plugins.

  3. Danach werden in den Einstellungen die Einstellungen für den Stripe-Webhook angezeigt. Klick es an. Füllen Sie auf der Seite die Stripe-Tasten aus und aktivieren Sie die Option Testmodus, wenn Sie das Plugin testen möchten.
  4. Nehmen Sie in WPStripeWebhook/includes/stripe_listener.php Änderungen für Ihren Ereignistyp und Ihre E-Mail-Adresse vor oder was auch immer Sie als Antwort darauf tun möchten
    ein Event. Derzeit wird eine E-Mail gesendet.

Wichtige Hinweise und Vorschläge Fügen Sie im Live-Modus einen Stripe-Webhook-Endpunkt hinzu (Stripe-Konto -> Einstellungen -> Kontoeinstellungen -> Webhook)

htps: //ihredomain.com? webhook-listener = stripe

Zum lokalen Testen auf Ihrem Computer können Sie Ultrahook verwenden. Es ist toll! Richten Sie Ihre Schlüssel und Ihren Benutzernamen ein und starten Sie ultrahook auf Ihrem Computer mit:

ultrahook -k your_ultrahook_key streifen 8888

Fügen Sie in Ihrem Stripe-Konto eine Webhook-Endpunkt-URL wie folgt hinzu:

http://stripe.your_ultrahook_username.ultrahook.com/your_wp_website_folder_name/stripe-listener.php? webhook-listener = stripe

Und es sollte für Sie arbeiten. Außerdem wird in der Ultrahook-Konsole möglicherweise 404 angezeigt. Ignoriere es einfach. Ich würde vorschlagen, auch das Debuggen einzurichten. Das hilft wirklich. Fügen Sie diese zum Debuggen zu Ihrer Datei wp_config.php hinzu

define('WP_DEBUG', true); 
define( 'WP_DEBUG_LOG', true ); 
define('WP_DEBUG_DISPLAY', false ); 
@ini_set( 'display_errors', 0 ); 
define('SCRIPT_DEBUG', true );

Danach sollten Sie eine debug.log-Datei in Ihrem wp-content-Ordner sehen, die Fehler und Warnungen anzeigt und alles, was Sie mit error_log () drucken.

2
AmrataB

Für alle Interessierten. Dies ist auch ohne Plugin relativ einfach möglich.

  1. Fügen Sie zuerst einen Endpunkt in Stripe hinzu. https://example.com/payment-failed
  2. Erstellen Sie eine neue WordPress-Seite mit dem Namen "Zahlung fehlgeschlagen" mit derselben URL.
  3. Erstellen Sie in Ihrem Themenordner eine neue PHP-Datei mit dem Namen page-payment-failed.php und schreiben Sie Ihren gesamten Webhook-Antwortcode hier ein. Diese Datei wird automatisch ausgeführt, wenn Stripe versucht, auf https://example.com/payment-failed zuzugreifen.
3
Yawnolly