Salesforce Integration
Push Lead Distro AI leads into Salesforce as Lead records using Web-to-Lead or Flow with an authenticated webhook. Setup paths, daily volume limits, and troubleshooting for enterprise lead distribution.
What This Integration Does
Pushes every accepted Lead Distro AI lead into Salesforce as a Lead record. Two supported setup paths: Web-to-Lead (simplest, daily volume cap) and Salesforce Flow with an authenticated webhook (unlimited volume, supports custom fields and validation logic).
Picking a Path
| Criteria | Web-to-Lead | Flow (HTTP Callout) |
|---|---|---|
| Setup time | ~10 minutes | ~30-45 minutes |
| Daily volume cap | 500 leads/day | Unlimited |
| Custom fields | Standard form fields only | Any field, with validation |
| Authentication | Public form (org ID + reCAPTCHA) | OAuth Bearer token via Connected App |
| Salesforce edition required | Any (Essentials+) | Enterprise+ for Flow HTTP Callouts |
| Best for | Low volume, standard intake | High volume, regulated verticals, complex logic |
Path A — Web-to-Lead Setup
- In Salesforce, go to Setup → Web-to-Lead.
- Generate a Web-to-Lead form. Note the
oidvalue (your Salesforce org ID). - Note the field names Salesforce expects —
first_name,last_name,email,phone,company, plus any custom Lead fields you've created. - (Optional) Set the Lead Source default to
Lead Distro AIso all incoming leads are attributed to the integration. - In Lead Distro AI, edit the destination buyer and set Delivery Method to Webhook.
- Set the URL to
https://webto.salesforce.com/servlet/servlet.WebToLead?encoding=UTF-8. - Set the Content-Type to
application/x-www-form-urlencoded(not JSON — Web-to-Lead requires form-encoded body). - Map Lead Distro AI fields to Salesforce field names, including the required
oidvalue. - Test with a single lead and verify it appears under Leads in Salesforce.
Web-to-Lead caps at 500 leads per 24-hour period on most Salesforce editions. If you're routing more than that to a single Salesforce instance, use Path B (Flow with authenticated webhook). Volume above the cap is silently dropped by Salesforce — Lead Distro AI's webhook log will show successful POSTs, but the leads won't appear in Salesforce.
Path B — Salesforce Flow with Authenticated Webhook
- In Salesforce, create a Connected App under Setup → App Manager → New Connected App.
- Enable OAuth Settings, set callback URL, scope to
api. Generate a Consumer Key and Consumer Secret. - Create a Named Credential referencing the Connected App for authenticated outbound calls.
- Build a Flow triggered by an HTTP Callout or an Apex REST endpoint that creates a Lead record from incoming JSON. Map fields, validate, and apply your routing logic on the Salesforce side.
- Generate an OAuth Bearer token from the Connected App.
- In Lead Distro AI, edit the buyer and set Delivery Method to Webhook.
- Set the URL to your Salesforce Flow endpoint.
- Add a Custom Header
Authorization: Bearer. - Test and verify the Lead appears in Salesforce with all custom fields populated.
Bearer tokens issued by Connected Apps expire — typically 2 hours for access tokens. Use a refresh token flow or use Named Credentials (Salesforce auto-refreshes those). For high-volume integrations, set up a refresh job on your side that updates the Lead Distro AI buyer's custom header before each token expiry.
Frequently Asked Questions
What's the Web-to-Lead daily limit in Salesforce?
Can I use Lead Distro AI's webhook with Salesforce Sales Engagement / Cadences?
Lead Source = Lead Distro AI) into the appropriate cadence. The integration creates the Lead — Salesforce then handles cadence enrollment based on your existing rules.How do I map Lead Distro AI custom fields to Salesforce Lead custom fields?
case_type__c (Salesforce auto-appends __c to custom field API names). In Lead Distro AI's buyer webhook config, map custom.case_type → case_type__c. Field types must match — Lead Distro AI sends strings; Salesforce checked-box and picklist fields need exact value matches.Does Lead Distro AI support Salesforce's Web-to-Lead reCAPTCHA?
How do I handle Salesforce field validation rules from a webhook?
delivery_failed. To avoid validation rejections: (1) configure validation rules to soft-fail or log warnings instead of blocking on the integration-source Lead Source, or (2) pre-validate fields in Lead Distro AI using inbound filters so invalid leads are rejected at ingest time, never reaching Salesforce.Can I deduplicate leads before they reach Salesforce?
What happens to my Salesforce OAuth token if the integration is paused?
Does the integration support Salesforce Person Accounts?
Related Articles
If you have any questions, send us an email at support@leaddistro.ai