Salesforce is an organization-wide CRM integration. A Doris admin connects it from Sources > CRM > Salesforce.
Before you start
You need two things before opening the Doris connection flow:- A Doris admin account for your workspace
- A Salesforce user who can create an External Client App and authorize API access for the org
- API access enabled
- Read access to User, Account, Contact, and Opportunity
- Read access to opportunity stages, owners, and standard opportunity fields
- Write access to Account, Contact, and Opportunity if Doris will update CRM fields
- Create access to Task if Doris will write notes or follow-up records back to Salesforce
1. Create the Salesforce app
Salesforce requires your organization to create its own External Client App before Doris can run OAuth.1
Open Salesforce Setup
In Salesforce, open Setup and search for External Client Apps.
2
Create an External Client App
Create a new app for Doris and enable OAuth. Doris uses the OAuth authorization-code flow with PKCE.
3
Add the callback URL
Add this callback URL exactly:
4
Add OAuth scopes
Add the Salesforce OAuth scopes Doris needs:
5
Copy the credentials
Copy the app’s Consumer Key and Consumer Secret. You will paste them into Doris during the connection flow.
2. Connect from Doris
After the Salesforce app exists, complete the connection in Doris.1
Open Sources
Log in to Doris as an admin and go to Sources in the sidebar.
2
Choose Salesforce
Open the CRM card, choose Salesforce, and click Connect.
3
Enter app credentials
Paste the Salesforce Consumer Key and Consumer Secret from the External Client App, then click Save & Connect.
4
Authorize in Salesforce
Salesforce opens in a new authorization flow. Sign in as the Salesforce integration user and approve the requested access.
5
Return to Doris
After authorization, Salesforce redirects back to Doris. The Salesforce source should show as connected.
3. Select reps and import
The Salesforce source has three setup sections in Doris:
Initial import can take a few minutes depending on the size of your Salesforce org.
What syncs
Doris reads Salesforce as the source of truth for your CRM records. When CRM writeback or automation is enabled, Doris can also write selected field updates and notes back to Salesforce.
Troubleshooting
Doris says Connected App credentials are missing
Doris says Connected App credentials are missing
Open Sources > CRM > Salesforce, click Connect, and paste the Consumer Key and Consumer Secret from the Salesforce External Client App. Salesforce cannot be connected without customer-owned app credentials.
Salesforce rejects the callback URL
Salesforce rejects the callback URL
Confirm the callback URL in Salesforce exactly matches
https://server.meetdoris.com/api/v1/crm/salesforce/callback. Extra slashes, missing https, or an old API domain will cause OAuth to fail.Records are missing after import
Records are missing after import
Check the Salesforce integration user’s object permissions and field-level security. Doris can only sync records and fields visible to the user who authorized the integration.
Another CRM is already connected
Another CRM is already connected
Doris supports one primary CRM connection at a time. Disconnect the existing CRM source before connecting Salesforce.