Skip to content

Pipedrive CRM

Connect Pipedrive from Settings → CRM, authorize Kasbly, then enable the sync you need. Kasbly creates its custom fields during the OAuth connect flow, so a newly connected company is ready to sync without manual setup.

Kasbly matches a returning Pipedrive person by its Pipedrive ID first, then phone, then email. This keeps the same Kasbly customer when a phone number changes. New contacts still need a phone number because Kasbly conversations use a messaging address. An email-only person is imported only when its email matches an existing Kasbly customer; otherwise Sync History explains how to fix it.

To receive changes immediately, create a webhook in Pipedrive → Tools and apps → Webhooks after connecting Pipedrive in Kasbly:

  1. Paste the Pipedrive Inbound Webhook URL from Settings → CRM as the subscription URL.
  2. Set the HTTP Auth username to kasbly.
  3. Select Generate webhook secret in Kasbly and paste the generated value as the HTTP Auth password. Copy it before leaving the page because it is shown only once.

Pipedrive uses HTTP Basic authentication for these deliveries; it does not send an x-pipedrive-signature HMAC header for regular webhooks.

Kasbly retires the local link to a deleted Pipedrive person or deal only after it receives that deletion through the inbound webhook. If the webhook was never created, its secret was rotated without updating Pipedrive, or a delivery fails, Kasbly cannot infer the deletion during a scheduled sync or Sync Now. The next outbound two-way sync can therefore recreate the person or deal. Keep the webhook configured and working whenever you use two-way sync.

Kasbly creates and owns these Pipedrive fields:

  • Deals — kasbly_conversation_id: text. It is the stable identifier Kasbly uses to create or update the same deal for a conversation.
  • People — kasbly_lead_score: numeric. It stores Kasbly’s lead score when available.
  • People — kasbly_tags: text. It stores Kasbly tags as a comma-separated value when available.
  • People — kasbly_city: text. It stores the customer’s city when available.
  • People — kasbly_language: text. It stores the customer’s language when available.

If Pipedrive does not let Kasbly create these fields, reconnect using a Pipedrive administrator account. An administrator can also create all five fields manually with the exact names above (the deal field on Deals, the other four on People), then reconnect Kasbly before enabling a full or deals sync.

Reconnecting is safe. Kasbly resolves fields that already exist and does not create duplicates. If deal sync reports that the conversation ID field is missing, reconnect Pipedrive to retry setup before running a full sync again.