ClickFunnels
What It Does
ClickFunnels 2.0 sends your funnels' form submissions (opt-ins) and paid one-time orders to DURUM.ai in real time. You connect with your subdomain and an API key: DURUM.ai creates the webhooks in your workspace itself, there is nothing to paste into ClickFunnels.
Each funnel is then classified in one click: its submissions become leads, applications, or are ignored.
Before You Start
- A ClickFunnels 2.0 account (address in
yoursite.myclickfunnels.com). The older ClickFunnels version is not supported. - The right to create an API key in Account Settings, Developer section. The key is personal: it gives access to the workspaces of your account.
- Your subdomain: the part before
.myclickfunnels.comin your workspace URL. - For ad attribution, the DURUM pixel installed on your ClickFunnels pages (see the UTM Tracking page), or UTM hidden fields in your forms.
Step-by-Step Connection
- Log in to ClickFunnels 2.0 (
yoursite.myclickfunnels.com). - Click your avatar in the bottom-left corner, then Account Settings.
- In the Developer section, open API keys and click Create API key. Copy the key.
- In DURUM.ai, go to Settings then Integrations, and click Connect on the ClickFunnels card (Funnels category).
- Fill in the window:
- ClickFunnels subdomain: for example
mycompany. The full URL is accepted, DURUM.ai keeps the useful part. - ClickFunnels API key: paste the key copied at step 3.
- ClickFunnels subdomain: for example
- Click Connect. DURUM.ai validates the key and discovers your teams and workspaces.
- If the key gives access to one workspace, it is connected right away.
- If it gives access to several workspaces, a Workspace to connect field appears: pick one and click Connect again. One connection covers one workspace.
- The message "ClickFunnels connected" confirms the connection. DURUM.ai has created two webhooks in the workspace, both named with the "DURUM.ai" prefix:
- Leads (form submissions) on the
form_submission.createdevent, pointing tohttps://app.durum.ai/api/webhook/lead; - Ventes (one-time orders) on the
one-time-order.completedevent, pointing tohttps://app.durum.ai/api/webhook/sale.
- Leads (form submissions) on the
Webhook names
Do not rename or delete these webhooks in ClickFunnels: DURUM.ai recognizes them by their URL, which carries your identifier.
Classify your funnels
- On the ClickFunnels card, open the integration settings.
- Your funnels are listed. For each one, pick Lead, Application or Ignore.
- Click Save.
Without a classification, every submission is recorded as a lead. The classification applies on reception: nothing to change in ClickFunnels.
Verify It Works
- Open a page of your funnel and submit the form with an easy-to-spot test email.
- Wait 30 seconds.
- In DURUM.ai, open Data Logs: a
leadevent (orapplicationdepending on the classification) with sourceclickfunnelsshould appear. - For sales, place a test order: a
saleevent should appear with the order amount.
Captured Events
| ClickFunnels side | DURUM.ai event | What it feeds |
|---|---|---|
form_submission.created (funnel classified Lead, or unclassified) | lead | Leads. Contact = email, phone, first and last name from the form. Date = submission date. |
form_submission.created (funnel classified Application) | application | Applications. |
form_submission.created (funnel classified Ignore) | none | Ignored, visible in Data Logs with reason funnel_ignored. |
one-time-order.completed | sale | Sales. Amount = the order's total_amount (tax included), invoice reference = order number, status = billing_status. |
| Refunds, subscriptions, recurring invoices | none | Not covered yet. |
UTM fields read from the submission (form hidden fields, filled by the DURUM pixel or by ClickFunnels): utm_source, utm_medium, utm_campaign, utm_content, utm_term, utm_ad_id, utm_adset_id, utm_campaign_id, plus fbclid, gclid, fbc_id and h_ad_id. Without these fields, the lead is recorded but without direct ad attribution.
Double-counted sales
ClickFunnels often charges through Stripe. If you also connect Stripe, the same sale can arrive from both sources. DURUM.ai deduplicates by email, and you can disable the Sales type in the ClickFunnels integration settings to keep Stripe only.
Troubleshooting
| Problem | Solution |
|---|---|
| "API key invalid or revoked" | Create a new key in ClickFunnels, Account Settings, Developer, API keys, and start again. |
| "Subdomain not found at ClickFunnels" | Check your workspace URL: only the part before .myclickfunnels.com matters. |
| "Too many attempts" | Wait 1 minute and try again. |
| "Connection saved, but webhook creation failed" | Disconnect then reconnect the integration: DURUM.ai retries creating the webhooks. |
Status ignored with reason no_identifiable_contact | The submission has neither email nor phone. Add an email field to the form. |
Status ignored with reason unhandled_cf_event_type | ClickFunnels sent an event DURUM.ai does not process (other than a submission or a one-time order). No action needed. |
| No funnel in the classification list | The connected workspace has no funnel, or the key no longer has access to it. Check the workspace chosen at connection. |
| Duplicate sale with Stripe | Disable the Sales type on the ClickFunnels side (see the warning above). |
FAQ
Does the API key expire?
No. It stays valid until you revoke it in ClickFunnels. It is encrypted and never displayed in DURUM.ai.
I have several workspaces, what do I do?
One connection covers one workspace. At connection, DURUM.ai asks which one if the key sees several.
Does DURUM.ai import my past submissions?
No. Tracking starts at connection, with no import of the past.
What happens on disconnect?
DURUM.ai only removes the webhooks pointing to app.durum.ai. Your other ClickFunnels webhooks (Zapier, Kajabi, etc.) are never touched.
How do I attribute my ClickFunnels leads to my ads?
Install the DURUM pixel on your ClickFunnels pages, or pass your ads' UTM parameters into hidden fields of your forms. See the UTM Tracking page.