Answer first
Elementor’s Webhook action posts each submission to a private Conduyt intake address.
Create the address in Conduyt, paste it into the form widget’s Webhook action, and every submission becomes a routed Conduyt contact with its tag, source and the page it came from. No plugin to install, no API key stored in WordPress.
- Needs
- Elementor Pro (form widget)
- Setup time
- About 10 minutes
- Direction
- WordPress to Conduyt, one way
00 / Check
Before you start
Three things, all quick.
- Elementor Pro on the site. The form widget and its actions after submit are Pro features; the free Elementor plugin has no form widget.
- An email or phone field on the form. Conduyt matches and creates contacts by email or phone. A submission with neither is rejected and nothing is created.
- A Conduyt login with Settings access and active billing (the trial counts).
01 / Conduyt
Step 1: create the intake address in Conduyt
One address per form. The address is the credential, so you can revoke one form without touching the others.
- In Conduyt open Settings, then Integrations, then WordPress forms .
- Click Create intake address.
- Name it after the form and the site, for example “Contact page, Smith Roofing”. This name shows on the contact’s timeline.
- Pick a tag for leads from this form, a source (default “wordpress”), and if one rep should get every lead from this form, choose them under Assign to. Leave it blank to use your lead routing rules.
- Click Create and Copy URL. The address looks like
https://conduyt.app/api/v1/webhooks/inbound/forms/wpf_….
02 / Elementor
Step 2: add the Webhook action to the form
In the Elementor editor, with the form widget selected.
- Open the widget’s Content tab and expand Actions After Submit.
- In Add Action, choose Webhook. A new Webhook section appears below.
- Paste the Conduyt intake address into Webhook URL.
- Advanced Data can stay off. Conduyt accepts both formats; off is simpler.
- Optional: under Additional Options, give the form a Form Name. Elementor sends it with every submission and Conduyt uses it for the timeline entry.
- Click Update to publish the page.
Keep your other actions (Email, Redirect) in place. The webhook runs alongside them.
03 / Fields
Step 3: check your field labels
Elementor sends each field under the label you gave it. Conduyt recognises the usual labels, so most forms need no changes.
| Label on your form | Where it lands in Conduyt |
|---|---|
| Name, Full Name, Your Name | First and last name (split on the first space) |
| First Name / Last Name | First name / last name |
| Email, Email Address, E-mail | Email (used for matching) |
| Phone, Phone Number, Tel | Phone, normalised (used for matching) |
| Company | Company |
| Message, Comments, Notes | The timeline entry’s text |
| Anything else (Budget, Service, Best time to call) | Saved to a contact custom field when the label matches exactly one of your account’s contact custom fields; otherwise kept on the timeline entry |
If the form’s Form Metadata (Additional Options) includes Page URL and Page Title, Conduyt keeps them as the lead’s attribution. Fields labelled Date or Time are dropped.
04 / Test
Step 4: send a test
Use your own email so you can find the contact.
- Open the page on the site and submit the form once.
- In Conduyt, open Contacts. The new contact is there with the form’s tag and source, and “Submitted <form name>” on its timeline with your message.
- Back in Settings, Integrations, WordPress forms, the intake row shows a received count of 1 and the time.
05 / Fix
If something does not arrive
- The visitor sees “Webhook error”. Elementor shows this when the address did not answer with success. Check the address was pasted in full and has not been revoked.
- The form submits but no contact appears. The submission had no email and no phone, or both fields are labelled something Conduyt does not recognise. Rename the label (for example “Your details” to “Email”) or add an email field.
- The contact exists but was not created again. That is matching at work: the same email or phone updates the existing contact instead of making a duplicate.
- A site plugin blocks outgoing requests. Some security plugins block WordPress from calling outside addresses. Allow conduyt.app in that plugin.
- Other answers from Conduyt. 402 means billing is inactive on the account; 403 means the contact limit is reached; 422 means a required contact custom field is missing from the submission; 503 “Busy, retry shortly” is temporary and plugins that retry will get through.
06 / FAQ
Frequently asked questions
Does this need Zapier or Make?
No. Elementor posts straight to Conduyt. Zapier still works if you prefer it; see the Zapier integration.
Can I connect several forms?
Yes. Create one intake address per form, each with its own tag, so you can see which form a lead came from.
Does Conduyt change anything on my WordPress site?
No. It only receives what the form sends. Nothing is written back.
What about Gravity Forms or WPForms?
Same intake address, different plugin screen: Gravity Forms guide, WPForms guide. The overview is on the WordPress forms integration page.