Every lead, from every source, in one pipeline

LeadTractor captures submissions from your form plugins and orders from WooCommerce automatically — and connects to anything else through Zapier, Make, n8n, a REST API and webhooks.

Form plugins

Turn each integration on or off individually. LeadTractor only hooks into plugins that are actually installed, and maps name, email, phone, company, subject and message for you — every other field is saved as submission data.

W

WPForms Pro

Every WPForms entry becomes a lead with its contact. Works with both WPForms Lite and WPForms Pro.

  • Name, email & phone fields detected
  • Form ID stored on the lead
G

Gravity Forms Pro

Capture Gravity Forms entries, including Name (first/last) and Email field types, straight into your pipeline.

  • Complex fields flattened neatly
  • All entry data kept on the lead
7

Contact Form 7 Pro

Never lose a Contact Form 7 message in an inbox again. Standard tags like your-name, your-email and your-message are mapped automatically.

  • Custom field names detected by label
  • Spam can be marked Invalid & auto-deleted
S

SureForms Pro

SureForms submissions flow into LeadTractor the moment they're sent, with every answer saved on the lead.

WooCommerce Pro

Orders become deals linked to the customer. Status and value stay in sync with the order, and contacts show their purchase history.

WordPress users Pro

Save every new registration on your site as a contact, linked to the user account and kept in sync when they update their profile.

Settings → Integrations

One switch per source

Each integration shows whether its plugin is installed, and only installed plugins can be switched on. For WooCommerce you also choose the stage and tag for order deals, keep statuses in sync and import past orders.

  • Turn each form plugin on or off individually
  • Nothing is hooked into plugins you don’t use
  • Captured leads keep every submitted field
LeadTractor › Settings › Integrations
LeadTractor integration settings for WPForms, Gravity Forms, Contact Form 7, SureForms and WooCommerce
Zapier · Make · n8n · your app

Connect anything with the API & webhooks

Facebook Lead Ads, Typeform, Calendly, a landing-page builder, your own SaaS — if it can send or receive an HTTP request, it can talk to LeadTractor.

Inbound webhook Pro

Enable it in Settings → Connect and paste the URL into a "Webhooks by Zapier", Make HTTP or n8n HTTP Request step. Send JSON or form data — name, email, phone, title, message, value, stage and tags are recognised, and other labels like "Your Email" are detected automatically.

curl -X POST "https://yoursite.com/wp-json/leadtractor/v1/inbound" \
  -H "Content-Type: application/json" \
  -H "X-LeadTractor-Key: YOUR_SECRET_KEY" \
  -d '{"name":"Jane Doe","email":"jane@example.com",
       "title":"Quote request","value":500,"tags":["Zapier"]}'

Outgoing webhooks Pro

Add one or more URLs and pick the events. LeadTractor POSTs the full lead or contact as JSON, signed with X-LeadTractor-Signature: sha256=… (HMAC-SHA256 of the body with your secret). A "Send test event" button checks your endpoint.

lead.createdlead.updatedlead.status_changedlead.stage_changedlead.deletedcontact.createdcontact.updated
// Verify a LeadTractor webhook (Node.js)
const expected = 'sha256=' + crypto
  .createHmac('sha256', process.env.LT_SECRET)
  .update(rawBody).digest('hex');
if (req.headers['x-leadtractor-signature'] !== expected) {
  return res.status(401).end();
}

REST API Pro

Base URL /wp-json/leadtractor/v1. Authenticate with a WordPress Application Password for a user who has CRM access.

MethodEndpointWhat it does
GET/leadsList leads. Filters: search, status, stage_id, tag_id, contact_id, source, page, per_page.
POST/leadsCreate a lead (and its contact).
GET/leads/{id}Get one lead with contact, tags, value and submission data.
PATCH/leads/{id}Update status, stage, value, priority, follow-up, owner or tags.
DELETE/leads/{id}Delete a lead.
POST/leads/{id}/notesAdd a note to a lead.
GET POST/contactsList or create contacts.
GET PATCH DEL/contacts/{id}Read (with their leads), update or delete a contact.
GET/stagesPipeline stages with lead counts and values.
Settings → Connect

Everything on one settings screen

Switch on the inbound webhook to get your private URL and key, copy a ready-made cURL example, and see every REST endpoint with your site’s address filled in. Outgoing webhooks, their events and the signing secret live on the same screen.

  • Regenerate the inbound key at any time
  • “Send test event” for each outgoing webhook
  • All off by default — nothing leaves your site until you add a URL
LeadTractor › Settings › Connect
Connect settings with the inbound webhook URL, a cURL example and the REST API endpoints
Free & Pro

PHP API & hooks for developers

Create leads from any plugin or theme with leadtractor_create_lead() — or fire do_action( 'leadtractor/create_lead', $args ) so there's no hard dependency. React to CRM events with actions and filters.

  • leadtractor/lead_created, lead_updated, lead_status_changed, lead_stage_changed, lead_assigned
  • leadtractor/contact_created, contact_updated
  • Filters: pre_create_lead (reject spam), form_submission, woocommerce/status_map, webhook_payload, notification_email
// Post to Slack when a deal is won
add_action( 'leadtractor/lead_status_changed',
    function ( $lead_id, $new, $old ) {
        if ( 'done' !== $new ) return;
        $lead = LeadTractor_Lead::get( $lead_id );
        wp_remote_post( SLACK_WEBHOOK_URL, array(
            'body' => wp_json_encode( array(
                'text' => 'Deal won: ' . $lead->title,
            ) ),
        ) );
    }, 10, 3 );

Integration FAQ

Install LeadTractor Pro, go to LeadTractor → Settings and switch on Contact Form 7. Every submission from then on is saved as a lead with its contact, and all submitted fields are stored on the lead.

Yes. Developers can call leadtractor_create_lead() from the form plugin's submission hook. Without code, send the form to the LeadTractor inbound webhook from Zapier, Make or n8n — field names such as name, email and phone are detected automatically.

Each outgoing webhook request carries an X-LeadTractor-Signature header: sha256= followed by the HMAC-SHA256 of the raw request body using your signing secret from Settings → Connect.

Plug LeadTractor into your stack

Start with the free CRM today and switch on integrations whenever you're ready.