How to Connect WordPress Contact Form 7 with Task Session Forms using CF7 to Webhook

Task Session includes a powerful Forms / Lead Capture module that can receive leads from external websites. This guide explains, step by step, how to connect a WordPress site running Contact Form 7 to your Task Session installation at https://yourdomain.com using the free CF7 to Webhook plugin.

Table of Contents

Prerequisites

Before you start, make sure you have:

  • Task Session installed at https://yourdomain.com
  • Admin access to https://yourdomain.com/admin/
  • Forms / Lead Capture module installed and database tables created
  • WordPress website with Contact Form 7 installed and activated
  • The free plugin CF7 to Webhook installed and activated on the same WordPress site

Step 1: Install and prepare the Forms module in Task Session

1. Verify access to Forms settings

  • Log in to your Task Session admin panel at https://yourdomain.com/admin/
  • Go to Form settings in the left menu and confirm you can see:
    • Integrations
    • Field Mappings
    • Forms
    • Submission Logs
    • Debug

Step 2: Create an Integration in Task Session

1. Open the Integrations page

  • In Task Session admin, go to: Form settings > Integrations
  • Click Add Integration

2. Fill the Integration details

  • Name: for example WordPress Contact Form 7
  • Source key: for example wordpress-cf7
    This value will be used in the API URL as ?integration=wordpress-cf7.
  • Auth token: create a secret token, for example art123 (you will use this in the CF7 to Webhook headers)
  • Status: set to Active

3. Save the Integration

  • Click Save
  • Write down:
    • The Source key you used (e.g. wordpress-cf7)
    • The Auth token (e.g. art123)

Step 3: Configure Field Mappings

1. Open Field Mappings

  • Go to Form settings > Field Mappings
  • Select your integration (e.g. WordPress Contact Form 7) from the dropdown

2. Add mappings for each field

For each incoming field from WordPress, add one mapping:

  • Source field: the key name that will come from your webhook JSON (for example first-nameLast-namephonetext-762emailcompanyinterested-servicetextarea-829)
  • Destination type:
    • Lead column for built?in CRM fields like name, email, phone, source, status
    • Custom field for extra fields like Company, Budget, Service type, etc.
  • Destination: pick the exact lead field or custom field where the value should be stored
  • Mark Required for important fields such as name and email

Save each mapping. The names you configure here must match the keys you send from WordPress in the JSON body.

Step 4: Create / edit your Contact Form 7 form

1. Define your CF7 fields

  • In your WordPress admin, go to Contact > Contact Forms
  • Edit the form you want to send to Task Session
  • Each field has a name in the shortcode, for example:
    • [text* first-name "First Name"] > field name is first-name
    • [text* Last-name "Last Name"] > field name is Last-name
    • [email* Email "Email"] > field name is Email
    • [tel phonetext-762 "Phone"] > field name is phonetext-762

2. Keep a list of field names

  • Write down all CF7 field names you will send to Task Session
  • These names will be used as placeholders inside the CF7 to Webhook JSON body (for example [first-name][Last-name][Email], etc.)

Step 5: Install and configure CF7 to Webhook

1. Install the plugin

  • In your WordPress admin, go to Plugins > Add New
  • Search for “CF7 to Webhook”
  • Install and activate the plugin by Mário Valney (plugin page)

2. Open the Zapier / Webhook tab for your CF7 form

  • Edit your Contact Form 7 form
  • Click the “Zapier” / “Webhook” tab added by the CF7 to Webhook plugin

3. Configure the Webhook URL

  • Enable Send to Webhook
  • Set the Webhook URL to your Task Session submit endpoint, including the integration key, for example:
    https://yourdomain.com/includes/forms/api/submit.php?integration=wordpress-cf7

4. Configure Advanced Settings: Method and Headers

  • Under Advanced settings > Method, select POST
  • Under Advanced settings > Headers, add one header line:
    Authorization: Bearer YOUR_AUTH_TOKEN
    Replace YOUR_AUTH_TOKEN with the token you set in Task Session (for example art123).

5. Configure Advanced Settings: Body (custom JSON)

In the Body section, choose to enter a custom body and paste JSON using your CF7 mail tags as values. Example:

{
  "first-name": "[first-name]",
  "Last-name": "[Last-name]",
  "phonetext-762": "[phonetext-762]",
  "email": "[Email]",
  "company": "[company]",
  "interested-service": "[interested-service]",
  "textarea-829": "[textarea-829]"
}

Notes:

  • Left?hand side keys ("first-name""email", etc.) must match the Source field values you configured in Task Session Field Mappings.
  • Right?hand side values ("[first-name]""[Email]", etc.) are CF7 mail tags for your form fields.
  • The CF7 to Webhook plugin will send this body as JSON to https://yourdomain.com/includes/forms/api/submit.php?integration=wordpress-cf7.

Step 6: Test the connection and debug failures

1. Submit a test form from WordPress

  • Open the page on your WordPress site where the Contact Form 7 form is embedded
  • Fill the form with test data and submit it

2. Verify the lead in Task Session

  • Log in to https://yourdomain.com/admin/
  • Go to Leads and check that a new lead has been created with the correct name, email, phone, and other mapped fields

3. Use Submission Logs and Debug if something fails

  • Go to Form settings > Submission Logs (https://yourdomain.com/admin/forms_submissions.php) to see each incoming request and status
  • Go to Form settings > Debug (https://yourdomain.com/admin/forms_debug.php) to see raw payloads, validation errors (for example “Name is required”, “Invalid email format”), and lead creation results
  • Fix any issues (field names, mappings, token, URL) and submit again from WordPress

Example JSON payload

This is a simple example of the JSON body your WordPress + CF7 + CF7 to Webhook setup can send to Task Session:

{
  "name": "John Smith",
  "email": "[email protected]",
  "phone": "+1 555-123-4567",
  "message": "I would like more information about your services."
}

In your real integration you will typically use more specific keys (for example first-nameLast-namephonetext-762, etc.) and map them in the Field Mappings page.

FAQ and Tips

What is the exact submit URL for my integration?

For the example Source key wordpress-cf7, the submit URL is:

https://yourdomain.com/includes/forms/api/submit.php?integration=wordpress-cf7

Which plugin do I need on WordPress?

You need two plugins:

  • Contact Form 7 – to build the form
  • CF7 to Webhook – to send the form data as JSON to your Task Session webhook URL

Where can I see errors if a lead is not created?

  • In Task Session, open Submission Logs at https://yourdomain.com/admin/forms_submissions.php
  • Open Debug at https://yourdomain.com/admin/forms_debug.php to see the raw payload and validation messages

Do I need to use yourdomain.com anywhere?

No. For this setup you always use your real Task Session domain. In this guide we use https://yourdomain.com as a placeholder. Replace it with the actual URL where your Task Session is installed.

If you follow the steps in this guide, your WordPress Contact Form 7 submissions will automatically create leads in Task Session via the Forms / Lead Capture module, using the CF7 to Webhook plugin as the bridge between the two systems.