web-dev-qa-db-fra.com

Réception de Stripe Webhook sur un site web wordpress

J'ai un site web wordpress hébergé sur GoDaddy.

Je suis un utilisateur avancé de la bande et j'ai intégré la bande avec de nombreuses applications Ruby on Rails, ainsi que l'intégration de stripe-webhook avec Rails. De plus, je connais bien le fonctionnement des crochets Web. Mais récemment, je suis devenu propriétaire d'un site Web wordpress hébergé sur GoDaddy. Sur ce site, je suis censé recevoir un paiement en bande échoué Webhook, puis un courrier électronique en fonction de cet événement. Je ne suis pas en mesure de faire beaucoup de liens avec Wordpress et stripe à partir de ressources en ligne et j'ai besoin d'aide pour savoir comment recevoir stripe-webhooks sur un site web wordpress, c'est-à-dire où mettre du code pour que cela se produise, etc.

1
Sahil Dhankhar

J'ai eu récemment le même problème et le plugin d'intégration de stripes pippins a semblé y répondre, mais il contenait beaucoup de code supplémentaire dont je n'avais pas besoin. Je l'ai donc supprimé et en ai fait une version concise uniquement pour l'intégration de Webhook: WPStripeWebhook . README est explicite. En gros, apportez des modifications à includes/stripe_listener.php pour vos événements. Vous pouvez également joindre le fichier readme ici, conformément aux instructions de stackoverflow:

Utilisation:

  1. Copiez le dossier complet WPStripeWebhook dans wp-content/plugins. Aller à la page d'administration du site.

  2. Activez le plug-in WP Stripe webhook pour les plug-ins.

  3. Après cela, les paramètres commenceront à afficher la section des paramètres de Stripe Webhook. Clique dessus. Dans la page, remplissez les touches de bande et cochez l'option du mode test si vous souhaitez tester le plug-in.
  4. Dans WPStripeWebhook/includes/stripe_listener.php, apportez des modifications à votre type d'événement et à votre courrier électronique ou à ce que vous souhaitez faire en réponse à
    un évènement. Il envoie actuellement un email.

Notes et suggestions importantes Pour le mode en direct, ajoutez un point d'extrémité Stripe Webhook (compte Stripe -> Paramètres -> Paramètres du compte -> Webhook), comme ceci

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

Pour tester localement sur votre machine, vous pouvez utiliser Ultrahook . C'est génial! Configurez vos clés et votre nom d’utilisateur et démarrez ultrahook sur votre machine en utilisant:

ultrahook -k votre_ultrahook_key stripe 8888

Ajoutez une URL de point de terminaison Webhook dans votre compte stripe, similaire à ceci:

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

Et cela devrait commencer à fonctionner pour vous. En outre, vous pourriez voir 404 dans la console ultrahook. N'y faites pas attention. Je suggère également la mise en place du débogage. Ça aide vraiment. Pour le débogage, ajoutez-les à votre wp_config.php

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

Après cela, vous devriez voir un fichier debug.log dans votre dossier wp-content et il affichera les erreurs, les avertissements et tout ce que vous imprimez en utilisant error_log ()

2
AmrataB

Pour toute personne intéressée. Cela peut aussi être fait assez facilement sans plugin.

  1. Ajoutez d’abord un noeud final en bande. https://example.com/payment-failed
  2. Créez une nouvelle page wordpress appelée Échec du paiement avec la même URL.
  3. Dans votre dossier de thèmes, créez un nouveau fichier php appelé page-payment-failed.php et écrivez ici tout votre code de réponse webhook. Ce fichier sera automatiquement exécuté lorsque Stripe essaiera d'accéder à https://example.com/payment-failed .
3
Yawnolly