WordPress Form Webhook: 5 Simple Steps to Any App

In short:
- A WordPress form webhook sends each new entry, as JSON, to an address you choose, the moment the form is submitted. It connects your forms to almost any app.
- Common destinations: Zapier, Make and n8n, which pass entries on to CRMs, chat tools and spreadsheets, or your own app.
- Setup takes five simple steps: get a webhook URL, turn on the webhook for the form, paste the URL, send a test, and build the rest in your tool.
- Reliability matters: save the entry first, retry failed deliveries, and keep a log so you can see what arrived.
- FillKite includes webhooks in the free plugin, with a Send test button, a retry and a delivery log.
A WordPress form webhook is the simplest way to connect a form to the rest of your tools. Instead of waiting for a special integration for every app you use, the form sends each entry to one address, and a tool such as Zapier, Make or n8n takes it from there: a new deal in your CRM, a message in Slack, a row in a spreadsheet, a task in your project tool.
This guide explains what a webhook is, what you can do with one, how to set up a WordPress form webhook in five simple steps, and how to make it reliable enough for real leads.
What is a WordPress form webhook?
A webhook is an automatic message from one app to another. When something happens, in this case a form being submitted, the first app sends a small package of data to an address, the webhook URL, that the second app is listening on. The data is usually JSON: a structured list of the form’s fields and answers, plus details such as the form’s name and the time.
Unlike an email notification, a webhook is meant for software, not people. It lets another tool act on the entry immediately, without anyone copying details by hand.
Why use a WordPress form webhook?
Every business uses a different mix of tools, and no form plugin can build a direct integration for all of them. A WordPress form webhook solves this once: the form speaks a common language, JSON over the web, and the thousands of apps that automation tools support can listen. You avoid installing a separate plugin for each service, and you can change tools later without touching your forms. If you move from one CRM to another, only the workflow changes; the WordPress form webhook stays exactly as it is.
Webhooks are also fast. The data leaves your site the moment the entry is saved, so a lead can be in your CRM, your chat and your task list before you have even opened the notification email.
What you can do with a WordPress form webhook
| Goal | Webhook goes to | Result |
|---|---|---|
| Add leads to a CRM | Zapier or Make | A new contact or deal for every enquiry |
| Notify the team in chat | Zapier, Make or n8n | A message in Slack or Teams with the key answers |
| Create a task | Zapier or Make | A card in Trello, Asana or ClickUp |
| Send a text message | A messaging service via a connector | An SMS to whoever is on call |
| Update your own system | Your app’s endpoint | Orders, bookings or tickets created automatically |
Because the WordPress form webhook is generic, the same setup works for all of these. You change the destination, not the form.
How to set up a WordPress form webhook in 5 simple steps
1. Get a webhook URL
In your automation tool, create a new workflow that starts with a webhook trigger. In Zapier it is called “Webhooks by Zapier: Catch Hook”; Make and n8n have a “Webhook” trigger. The tool gives you a unique URL. Copy it.
2. Turn on the webhook for the form
Open the form in the FillKite builder, go to the Settings tab and find Webhook. Turn on Send entries to a webhook.
3. Paste the URL
Paste the URL into Webhook URL and update the form.
4. Send a test
Press Send test. Your automation tool should show the incoming data, with each field and its answer. Most tools need a first sample to let you map fields in the next steps.
5. Build the rest of the workflow
In your tool, add the actions: create the CRM contact, post the chat message, add the task. Map each field from the webhook data to the right place. Turn the workflow on, then send a real entry through the form to check the whole chain.
Worked example: every enquiry into your CRM
Here is a common WordPress form webhook setup, step by step, using Zapier and a typical CRM:
- In Zapier, create a Zap with the trigger “Webhooks by Zapier: Catch Hook” and copy its URL.
- In FillKite, turn on the webhook for your quote form, paste the URL and press Send test.
- Back in Zapier, check the test data arrived with your fields: name, email, company, service, budget and message.
- Add an action in your CRM: “Find or create contact” using the email field, so repeat visitors do not become duplicates.
- Add a second action: “Create deal”, with the service as the deal name and the budget as its value.
- Turn the Zap on and send one real entry through the form. Check the contact and deal appear in the CRM.
From then on, every quote request becomes a CRM record within seconds, while the entry also stays in your FillKite inbox with its reply timer.
Worked example: alert the team about big leads
Not every lead needs an alert, but large ones deserve fast attention. With a WordPress form webhook to Make or Zapier, add a filter step: continue only when the budget answer is in your top range. Then post a message to your sales channel with the name, company, budget and a link to the entry. The team sees the most valuable enquiries the moment they arrive, and the rest follow the normal routine.
You can do the same without a webhook using FillKite’s own notification rules, which send an email only when the answers match. The webhook route is useful when the alert belongs in a chat tool rather than an inbox.
Make it reliable
A WordPress form webhook carries leads, so failures matter. Three safeguards make the difference:
- Save first. FillKite saves every entry in WordPress before sending the webhook. If the other tool is down, the lead is still safe in your inbox.
- Retry. If the URL does not answer, FillKite tries once more five minutes later.
- Log. Every attempt shows in the entry’s activity, and every email and webhook appears in FillKite → Settings → Log for 30 days, so you can see exactly what was sent and whether it worked.
Check the log after you set up a new workflow, and again whenever you change the destination.
What happens, in order
It helps to picture the sequence when a visitor sends a form with a webhook turned on. First, the form checks the answers in the browser. Then the server checks them again, runs spam checks and saves the entry. Next, notifications and the auto-reply go out. Then the WordPress form webhook sends the entry to your URL. If your tool answers, the delivery is marked as sent; if not, FillKite tries once more five minutes later, and records both attempts in the entry’s activity.
Because the webhook comes after saving, a slow or broken destination never delays the visitor or loses the lead. The visitor sees your thank-you message straight away, whatever happens downstream.
Security
- Treat the webhook URL like a password. Anyone with it can send data to your workflow. Do not share it publicly.
- Send only what you need. If the destination does not need every field, consider a separate, smaller form, or drop fields in your automation tool.
- Use HTTPS URLs, so data is encrypted on the way.
- Remember privacy. Each tool that receives entries is a processor of personal data. List them in your privacy policy. Our guide to the GDPR contact form covers this.
Keep spam out of your tools
A webhook that forwards every submission will forward spam too, filling your CRM with junk. Make sure the form filters spam before it sends anything on. FillKite’s honeypot, time check and spam score catch most spam and keep it in a separate Spam tab. Our guide to WordPress form spam covers the layers.
What the data looks like
Each delivery is a single JSON object. It contains the form’s details, the entry’s number and time, and each field with its answer, identified by the field’s ID. Field IDs stay the same when you rename a label, so your mappings in Zapier or Make keep working after small wording changes. If you add a new field, send a new test so your tool learns about it, then map it where you need it. A WordPress form webhook built this way rarely needs attention once it is running.
Webhook or built-in integration?
Built-in integrations are simpler when they exist for your tool. FillKite connects directly to Mailchimp, Brevo and other email services, and FillKite Pro sends entries to Google Sheets. For everything else, a WordPress form webhook is the universal connector. See our guides to the Mailchimp WordPress form and sending a form to Google Sheets.
More ideas for a WordPress form webhook
- Job applications become candidate records in your recruiting tool, with the role as a tag.
- Event registrations are added to your ticketing or check-in app, ready for the day.
- Support requests open tickets in your help desk, so replies happen where your support team already works.
- Feedback answers with a low score create a follow-up task for the account manager.
- Partner referrals are logged in a shared sheet and announced in a partner channel.
Start with one workflow that saves the most manual work, prove it for a few weeks, then add the next. A WordPress form webhook makes each new connection a matter of minutes rather than a new plugin.
Who owns the workflow?
Automations quietly become part of how a business runs, so give each one an owner. Note which form sends to which workflow, who built it, and which account it runs under. When that person leaves or the tool’s plan changes, someone needs to know the WordPress form webhook exists and where its data goes. A short list in a shared document is enough, and it saves hours of detective work later.
What it costs
FillKite’s WordPress form webhook is free. The cost, if any, is in the automation tool. Zapier and Make charge by the number of tasks or operations each month, and each entry passing through a workflow uses one or more. For a small business with a few dozen enquiries a month, free or entry-level plans are usually enough. n8n can be self-hosted, which avoids per-task fees but means running and updating it yourself. Count your monthly entries and the steps in each workflow before choosing a plan.
Testing and monitoring
A webhook that stops working does so silently: the form still thanks the visitor, but nothing reaches your CRM. Build a habit to catch it:
- after any change to the form or the workflow, press Send test and check the data in your tool;
- once a week, compare the number of entries in your inbox with new records in the destination;
- check the FillKite delivery log for failed attempts;
- watch your automation tool’s notifications for paused workflows or exhausted task limits.
Because the entry is always saved in WordPress, you can resend or add anything that went missing, as long as you notice.
For developers
If you are sending entries to your own application, FillKite’s webhook posts JSON to your endpoint. Developers can adjust the data with the fillkite_webhook_payload filter, for example to add a value or rename a key, and react to entries in PHP with FillKite’s other hooks. Return a success response quickly from your endpoint and do heavy work in the background, so deliveries are not treated as failures.
Start small
It is tempting to automate everything at once. Resist it. Pick the one task you repeat most after each enquiry, such as copying details into your CRM, and automate only that. Run it for two weeks, check the delivery log and the destination, and make sure your team trusts it. Then add the next step. Small, proven workflows are easier to fix when something changes, and they build confidence that your WordPress form webhook is doing its job.
A WordPress form webhook checklist
- A webhook URL from your automation tool, kept private.
- The webhook turned on for the right form, with the URL pasted and saved.
- A Send test received and fields mapped in the tool.
- “Find or create” used to avoid duplicates.
- Spam filtered at the form before anything is sent.
- Each receiving tool listed in your privacy policy.
- The delivery log and the destination checked weekly.
Where a WordPress form webhook goes wrong
| Problem | Cause | Fix |
|---|---|---|
| Nothing arrives | Wrong or old URL | Copy the URL again, press Send test |
| Fields missing in the tool | Mapping made before fields were added | Send a new test and remap |
| Spam in the CRM | No spam filtering before sending | Filter spam at the form |
| Duplicates in the CRM | The same person sent twice | Use your tool’s “find or create” step |
| Deliveries marked as failed | Slow endpoint | Answer fast, process later |
| Workflow silently off | Automation paused or out of tasks | Check the tool and the delivery log |
Frequently asked questions
Is the webhook free in FillKite?
Yes. Webhooks are part of the free plugin, with Send test, a retry and a delivery log.
What format does the WordPress form webhook send?
JSON, posted to the URL you choose, with the form’s fields and answers and details about the entry.
Can I send one form to several apps?
Use one webhook to your automation tool, then add several actions there. It is easier to manage than several webhooks.
Do I need to know how to code?
No. With Zapier, Make or n8n, you connect the WordPress form webhook to other apps with point-and-click steps. Code is only needed if you send entries to your own application.
Can I change the webhook URL later?
Yes. Paste the new URL in the form’s Webhook settings, update the form and press Send test to confirm the new destination works.
What happens if the receiving app is down?
The entry is already saved in WordPress, FillKite retries once five minutes later, and the log shows the result.
Connect your forms to any app. FillKite’s free webhook sends each entry as JSON to Zapier, Make, n8n or your own app, with a test button, a retry and a delivery log. Read the webhooks guide, see the integrations, or install FillKite free from WordPress.org.