Webhooks allow Stripe to send messages back to your WordPress site. Setting up webhooks is required for some functionalities such as sending emails, creating subscription schedule (installment) plans
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.
Which features require a webhook?
Subscription schedule plan (occurrences)
How to setup a webhook?
In your Stripe dashboard, click Developer -> Webhooks, then click the Add endpoint button.
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.
Paste the endpoint URL into the dialog box in your Stripe dashboard.
Add the below events to listener
Enable Webhook signatures (Strongly recommended)
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.