🛠️Webhook Configuration

Webhooks allow Stripe to send messages back to your WordPress site. Setting up webhooks is required for some delayed-notification payment methods such as SEPA and also refund feature.

What is a webhook?

Webhooks allow Stripe to send notifications to your website when certain events occur. For example, if a payment is refunded in Stripe, Stripe can automatically send a notification to your webhook to let your website know.

How to setup a webhook?

  1. In your Stripe dashboard, click Developer -> Webhooks, then click the Add endpoint button.

  1. To get the endpoint URL, go back to the Setting tab in your WordPress dashboard and you should see a field labeled Webhook URL. Copy the URL or click the copy icon.

  1. Paste the endpoint URL into the dialog box in your Stripe dashboard.

  1. Add the below events to listener

charge.succeeded
charge.failed
charge.captured
charge.refunded
charge.refund.updated
checkout.session.completed
checkout.session.async_payment_succeeded
checkout.session.async_payment_failed
checkout.session.expired
payment_intent.payment_failed
payment_intent.succeeded
payment_intent.amount_capturable_updated
payment_intent.requires_action

Generating a signature for the webhook can greatly protect your endpoint from being abused by external parties.

In your Stripe dashboard, go to the webhook settings and click the Signing secret button to generate a signature.

Go back to plugin settings and paste to the webhook secret field in the Settings tab

Webhook Connection Test

First of all, let's do some payments with our plugin under test mode, then go to the webhook URL and find any events such as a payment_intent.succeeded. Now click the `Resend` button to trigger the event again.

If the response is 200 (OK), our plugin will process the event and display a connected status in the Webhook URL field.

Last updated