Would you like to integrate Stripe webhooks with your website’s forms? With the integration of Stripe webhooks into WPForms, your WordPress site will instantly know about any refunds or subscription changes made in Stripe.
This guide will show you how to easily connect Stripe webhooks with WPForms, ensuring your website stays in sync with your Stripe activities.
In This Article
Before you get started, be sure to install WPForms on your WordPress site. After that, connect your site to your Stripe account.
Understanding Webhooks
Webhooks act as automated messages sent between applications when certain events take place. By integrating Stripe’s webhooks with WPForms, your WordPress site becomes seamlessly synchronized with Stripe, allowing payment statuses to update in real time.
Once webhooks are integrated, your WordPress site not only stays informed of Stripe activities but also lets you manage refunds and subscription renewals directly, without needing to visit the Stripe dashboard.
Enabling Webhooks in WPForms
Note: Webhooks are automatically configured for WPForms version 1.8.4 or higher when you connect your Stripe account.
After you’ve connected your site to Stripe, the webhooks should configure automatically. If they don’t, you’ll need to create an endpoint in the Stripe dashboard and transfer the configuration keys to your WPForms settings manually.
To do so, go to WPForms » Settings in the left menu of your WordPress site. From there, click on the Payments tab.
Next, scroll down to the Stripe section. Here, toggle on the Enable Webhooks option.
Next, click the Save Settings button at the bottom of the page.
After saving your settings, the page will refresh. You should now see additional fields for further webhooks configuration.
To generate the information you need for these fields, you’ll need to use your Stripe account to create a new endpoint. This process doesn’t require any coding, and we’ll show you exactly what to do in the next step.
You’ll be coming back to WPForms’ settings page later, so for the next step, open a new tab or window in your browser.
Creating a Webhook Endpoint in Stripe
In the new tab or window you’ve opened, log in to your Stripe account and open your Stripe dashboard.
When you log in to your Stripe account, you’ll find a Test mode toggle button in the top-right corner of the page. Ensure this toggle aligns with your site’s mode: if your site is in Test Mode, set the toggle to ON, and if your site is in Live Mode, make sure it’s switched OFF.
Next, click on the Developers option located at the top-right corner of the page.
Once the Developers page has opened, click on the Webhooks tab next.
In the Webhooks tab, click on the Add an endpoint button to create a new webhook endpoint.
This opens a Listen to Stripe events page where you’ll need to enter details to configure your webhook.
First, navigate back to the WPForms settings in your WordPress site. Once there, you’ll need to copy the Webhooks Endpoint by clicking the copy icon.
Once you’ve copied the Webhooks Endpoint, switch over to your Stripe account and paste the Webhooks Endpoint into the Endpoint URL field.
Next, while the Description field is optional, we recommend entering WPForms to easily identify the webhook’s purpose.
Then, you’ll come across the Listen to and Version options. Leave them as is and click on the + Select events button.
In the overlay that opens, check the Select all events checkbox to ensure your Stripe account sends all events.
After checking the Select all events checkbox, click the Add events button to finalize your event selection.
Once done, click the Add endpoint button after scrolling down to the bottom of the page.
Once you’ve set up the webhook, Stripe will navigate you to its dedicated page. Here, you’ll be able to copy both the webhook’s ID and the Signing secret.
Find the webhook’s ID displayed on the top-right of the page. Simply click on it to copy.
After copying the webhook ID, return to your WPForms settings and paste it into the Webhooks Live ID field.
Next, head back to your Stripe account and, under the Signing secret heading, click on Reveal.
After revealing the Signing secret, copy its value and paste it into the Webhooks Live Secret field within your WPForms settings.
Once your keys are in place, click on the Save Settings button.
After setting up Stripe webhooks with WPForms, your payment statuses will sync in real time between WPForms and Stripe. This also allows you to manage refunds and renew subscriptions directly from WPForms, without frequently accessing the Stripe dashboard. If you wish to view specific events triggered by the webhook, visit the webhooks page in your Stripe dashboard.
For more details on refunds, renewals, and understanding payment statuses, refer to our guide on viewing and managing form payments.
That’s it! Now you know how to set up Stripe webhooks with WPForms.
Next, would you like to learn more about managing payments in WPForms? Check out our tutorial on creating payment forms in WPForms for further information.