Skip to content
Karolina
Esc
navigateopen⌘Jpreview
On this page

Salesforce

Salesforce integration

Connect Salesforce CRM so Karolina can sync accounts, contacts, opportunities, tasks, and activity context.

What Karolina syncs

Karolina reads Salesforce accounts, contacts, opportunities, and task/activity data. Accounts become Karolina accounts. Contacts and opportunities enrich account context. Karolina can also write approved CRM actions back to Salesforce, such as tasks, account updates, opportunity creation, and logged activity.

Prerequisites

You need:

  • A Salesforce user with permission to approve connected apps.
  • API access enabled in Salesforce.
  • Permission to read the Salesforce objects Karolina will sync.
  • Permission to write tasks, opportunities, or account fields if your team will use CRM writeback.

Karolina owns the Salesforce connected app. You do not need to create your own app or paste a Consumer Key and Consumer Secret into Karolina.

Connect Salesforce

  1. Open Karolina.
  2. Go to Integrations.
  3. Find Salesforce and click Connect.
  4. Choose the Salesforce environment.
    • Choose Production for production and Developer Edition orgs.
    • Choose Sandbox for sandbox orgs that use test.salesforce.com.
  5. Sign in to Salesforce.
  6. Review the requested permissions and approve Karolina.
  7. Wait for Salesforce to redirect back to Karolina.

After the redirect, Karolina starts an initial sync.

Requested Salesforce permissions

Karolina requests:

  • api, used to call the Salesforce REST API.
  • refresh_token and offline_access, used to keep syncs working without asking you to sign in again.

Karolina does not need Salesforce full scope.

How account matching works

Karolina keeps the Salesforce record ID as the external CRM ID. When possible, it also uses account names, domains, and existing Karolina account metadata to keep the account graph clean. If an account looks wrong after sync, check the Salesforce account name, website/domain fields, and any duplicate records in Salesforce first.

Sync behavior

Initial sync starts after authorization. Ongoing syncs run in the background. You can also run a manual sync from the Integrations page.

Salesforce API pagination uses Salesforce’s nextRecordsUrl, so large orgs do not depend on OFFSET pagination.

Disconnect or reconnect

To disconnect Salesforce, open Integrations, find Salesforce, and choose the disconnect action. Karolina revokes the Salesforce token when possible and pauses the integration.

Reconnect if:

  • Salesforce access was revoked.
  • The approving Salesforce user lost API or object permissions.
  • Your org moved from sandbox to production.
  • Karolina asks you to reconnect after an auth failure.

Troubleshooting

Salesforce sends you to the wrong login page

Retry the connection and choose the correct environment. Developer Edition orgs usually use Production.

You approved Salesforce but Karolina still shows old Salesforce data

Refresh the Integrations page. If your workspace has an older demo Salesforce connection, the new connection is the row named Salesforce that was created when you approved the OAuth prompt.

Authorization fails after you approve

Ask your Karolina admin to check the Salesforce connected app callback URL. It must match Karolina’s Salesforce callback route exactly.

Sync fails after connection

Run Sync now from the Integrations page. If it still fails, check that the approving Salesforce user has API access and object permissions for accounts, contacts, opportunities, and tasks.

Last updated on July 14, 2026

Was this page helpful?