Native integrationAll plans

Salesforce integration: Contacts, Opportunities and Tasks sync

A native OAuth connection that syncs ZenMode contacts, deals and activities with Salesforce Contacts, Opportunities and Tasks.

Verified against the product on September 3, 2026 · Updated · Set up in /dashboard/settings

What this integration is

Salesforce is a native OAuth integration with PKCE — you click Connect, approve ZenMode in Salesforce, and ZenMode stores and refreshes the tokens itself. There is no key to paste and no connector product in between. The sync runs both ways across three Salesforce objects: Contacts, Opportunities and Tasks. It is on every plan, with no tier gate.

One Salesforce-specific detail worth knowing: your org's instance_url is captured during the OAuth callback and stored alongside the connection, so ZenMode talks to your instance rather than a generic endpoint. Reads are SOQL queries; writes go through the Salesforce REST API at version 59.0. The OAuth scopes requested are api and refresh_token — enough to read and write on your behalf and to keep the connection alive, and nothing wider.

What syncs

ZenMode objectSalesforce objectDirection
ContactsContactsBoth ways
DealsOpportunitiesBoth ways
ActivitiesTasksBoth ways

Deal stages are translated on the way across, so a ZenMode pipeline lands in Salesforce's default stage vocabulary rather than as free text:

ZenMode stageSalesforce stage
leadProspecting
qualifiedQualification
proposalProposal/Price Quote
negotiationNegotiation/Review
closed-wonClosed Won
closed-lostClosed Lost

What does not sync: those three objects are the whole surface. Accounts, Leads, Campaigns and custom objects are not touched in either direction, and no LinkedIn message content is pushed as part of the sync. A stage you invent outside the six above has no mapping to travel on.

How to set it up

  1. Open /dashboard/settings — the same card is also on /dashboard/crm — and click "Connect Salesforce".
  2. Approve ZenMode in Salesforce. The callback captures your instance URL, so the connection is bound to the right org automatically.
  3. Back on the Salesforce card, decide whether to switch auto-sync on. It is off until you turn it on. The card also carries Sync Now and Disconnect.
  4. Run Sync Now once to seed both sides before you rely on the nightly run.

When it runs

The same three triggers as every ZenMode CRM connector:

  • ManualSync Now on the Salesforce card runs a full sync immediately.
  • On write — a contact or deal changing in ZenMode pushes straight away, but only if auto-sync is enabled, and the default is off.
  • Nightly — a scheduled run at 06:00 UTC.

So the honest description is push-on-write plus a daily catch-up, not a live feed. Changes made in Salesforce reach ZenMode on the next pull — whichever of those three fires first.

What it's useful for

A prospect replies on LinkedIn, ZenMode pushes them as a Contact, and your AE works the rest of the deal in Salesforce with the LinkedIn origin already attached. A deal you open in ZenMode's CRM lands as an Opportunity in the right stage, so pipeline reviews read from Salesforce without anyone rekeying rows. And activity logged during outreach arrives as Tasks against the Contact, which keeps the account history in the system your team already reports from.

What it doesn't do (yet)

  • There is no continuous sync. With auto-sync off — the default — nothing moves until you press Sync Now or the 06:00 UTC run happens. Turning auto-sync on adds push-on-write; it still does not make inbound changes instant.
  • Only Contacts, Opportunities and Tasks are in scope. There is no mapping UI for other objects or custom fields, and no way to change the stage translation above.
  • Pipedrive is not available. It appears in the product as a "Coming Soon" card only. If you need leads out of a CRM ZenMode does not connect to, CSV is the route in — the migration guide covers exports from nine tools.
  • CRM webhook delivery logs are not viewable in the product. Deliveries are recorded, but the Logs button in Settings has nothing behind it, so do not plan on reading delivery history there.

FAQ

Which plans include the Salesforce integration?

All of them. None of the CRM integrations carry a plan gate — the only integration surface that does is the public REST API, which needs Practitioner or above. See pricing for the tiers.

Does connecting Salesforce need my LinkedIn password?

No. Integrations never touch LinkedIn credentials. The Salesforce connection is an OAuth handshake with Salesforce and nothing more.

Is it two-way?

Yes, across those three objects: ZenMode pushes Contacts, Opportunities and Tasks, and pulls them back. It is not two-way in real time — inbound changes arrive on the next sync. HubSpot and Monday.com behave the same way.