A WordPress form webhook can keep working long after the person who created it has left, the receiving tool has changed, or the client has stopped using the workflow. The form still shows a success message, so nobody notices that submission data is going to the wrong place or going nowhere.
A useful WordPress form webhook audit answers four questions: what sends the request, where it goes, which fields leave the site, and who owns the destination. If one answer is missing, the integration is not ready for routine maintenance or client offboarding.
Use this checklist for form-builder webhook add-ons, automation plugins, custom snippets, and connector tools that send a submission to another service.
Build a WordPress form webhook audit register
Start with an inventory, not a test submission. Open each high-value form and list every action that sends data away from WordPress. Check form settings, add-on feeds, automation plugins, code snippets, and the receiving service.
| Record | What to capture | Why it matters |
|---|---|---|
| Source | Site, form, form ID, and sending component | Shows where to change or disable it |
| Destination | Service name and redacted endpoint label | Shows where submission data leaves WordPress |
| Purpose | The business step the request supports | Exposes connections with no current reason to exist |
| Payload | Fields and metadata sent | Supports minimization and review |
| Owner | Named person or role on both sides | Prevents orphaned integrations |
| Evidence | Last safe test, result, and next review date | Separates configured from confirmed working |
Do not put full endpoint URLs, tokens, signing secrets, or copied customer payloads in a shared maintenance sheet. Use a redacted label and point authorized staff to the system that owns the secret.
Find every sending surface
The same form can send data through more than one path. A native add-on may post to a CRM while an automation plugin sends a second copy to chat. A custom hook can remain active after the visible feed is removed.
- Review each form builder’s actions, feeds, and confirmation settings.
- Search automation plugins for the form name, ID, and destination service.
- Inspect site-specific snippets and must-use plugins for submission hooks.
- Ask the receiving service which active endpoint or workflow matches the form.
- Compare the result with the broader form inventory.
Builder documentation shows why this must be checked in the actual site. Gravity Forms configures webhook feeds under Form Settings, while the Gravity Forms Webhooks Add-On can send remote HTTP requests on submission. The WPForms Webhooks Addon exposes request URL, method, format, headers, body, and optional logic. Elementor Pro places Webhook under Actions After Submit.
Review the payload field by field
Map each outgoing value to a stated purpose. A CRM may need a name, email address, service choice, and message. It probably does not need every hidden field, browser detail, uploaded file URL, internal note, or full query string.
- Remove fields the destination does not use.
- Separate visitor answers from site-generated metadata.
- Confirm whether files are transferred, linked, or excluded.
- Check that field labels and keys still match the receiving workflow.
- Keep secrets out of payload captures, screenshots, and logs.
Use the same discipline as the field-minimization checklist for AI review: send the smallest useful record. OWASP’s web service security guidance also recommends protected transport when a service carries sensitive or authenticated data.
Assign owners on both ends
The WordPress owner can maintain the sending form but may not control the CRM, help desk, spreadsheet, or custom API. Record one owner for the source and one for the destination. A team alias is better than a personal address when staff changes are common.
Ask the destination owner to confirm the workflow name, current purpose, expected fields, retention or deletion process, and what a failure looks like. If nobody claims the destination, pause before deleting anything and treat the connection as an offboarding risk.
The client form offboarding checklist helps place webhook ownership beside domains, licenses, mailboxes, and stored entries. A webhook is not handed off merely because its URL still responds.
Run a safe end-to-end test
Use the public form with synthetic, non-sensitive data that is easy to identify. Record the test label and time. Then verify the source entry, webhook execution evidence, and final destination record. A visitor confirmation proves only that the form reached its confirmation step.
| Checkpoint | Evidence | Failure owner |
|---|---|---|
| Form accepted test | Visible confirmation and stored source record | Form owner |
| Sender attempted request | Feed, action, or connector status without exposed secrets | WordPress/integration owner |
| Destination accepted it | Matching record or documented receipt ID | Destination owner |
| Fields arrived correctly | Expected values and no unintended fields | Both owners |
| Staff can act | Record appears in the real review queue | Business-process owner |
Do not store full payloads just because they are convenient debugging evidence. The OWASP logging guidance lists access tokens, passwords, connection strings, encryption keys, and sensitive personal data among the values that should not be recorded directly.
Separate form review from webhook delivery
Sentient Forms can help summarize, check, score, or recommend a route for a stored submission. It does not turn a third-party webhook into a confirmed delivery channel, and a Routing Recommendation does not send or synchronize the entry to another system.
Keep the local review record and the external delivery evidence separate. If a webhook fails, staff should still know where to find the original entry or Submission Ledger record. If an AI-assisted review fails, that should not erase the evidence that the webhook ran.
The existing entries and alerts audit provides a useful companion check for stored records and staff notifications.
Add change and offboarding triggers
Repeat the WordPress form webhook audit after a form field change, destination migration, client handoff, staff departure, secret rotation, automation-plugin update, or change in what the business does with the submission. Add a review date to high-value connections even when nothing changes.
- Remove obsolete destinations through the owning configuration, not by hoping the endpoint expires.
- Rotate or revoke credentials through the destination’s supported process.
- Update the register with the test result and new owner.
- Run one final safe submission and inspect the actual review queue.
A short, current register is more useful than a large diagram nobody maintains. Start with the forms that carry the highest business or privacy cost, close the owner and payload gaps, and schedule the next check.
Record the source form and sending component, a redacted destination label, business purpose, fields sent, owners on both ends, last safe test, result, and next review date. Keep endpoint secrets and real customer payloads out of the audit sheet.
Submit synthetic, non-sensitive data through the public form. Match the stored source entry to the sender status and the final destination record, then confirm that only the intended fields arrived and the real review queue can use them.
No broad webhook-delivery claim should be inferred. Sentient Forms can review a stored submission and produce local results such as summaries or routing recommendations, but third-party webhook configuration, delivery, ownership, and destination evidence remain separate responsibilities.



