Salesforce
Connect Salesforce and every inbound call lands as a Task on the right Contact or Lead. Outbound campaign calls do the same.
What it does
- Looks up Contacts AND Leads. Phone match runs against both objects — a known person or a hot lead, agent finds them either way.
- Creates a Lead for new callers. Unknown number that gives a name + company → fresh Lead in your default queue, populated with the call summary as the description.
- Logs every call as a Task. Subject, description, duration, completed status, type=Call. Linked to the Contact/Lead via
WhoId. Shows up under Activities in Salesforce within seconds. - Reads recent context. Before the call connects, agent gets the contact's last 30 days of Salesforce activity in scope.
Setting it up
- Connect Salesforce in /dashboard/integrations. OAuth flow — sign in, approve
api refresh_token offline_access, redirected back. - Confirm the connection — the dashboard shows your org name once OAuth completes.
- Enable on agents — toggle Salesforce on in each agent's Integrations tab.
We use login.salesforce.com for OAuth so it works for both Production orgs and Developer orgs. Sandbox support (test.salesforce.com) is on the roadmap.
What happens on a call
Caller: "Hi, this is Mike from Acme Logistics."
Agent (already knows the Contact): "Mike, hi — last we spoke about the multi-site rollout. Are you ready to schedule the kickoff call?"
Caller: "Actually, my colleague Jane will lead this — can I bring her in?"
Agent: "Of course — what's her email so I can copy her in?"
Caller: "jane@acmelogistics.com."
[Call ends. Salesforce Task appears under Mike's Contact within seconds:]
Subject: Foan inbound call — multi-site rollout transfer to Jane
Type: Call · Status: Completed · Duration: 2:14
Description: Mike confirmed Jane will lead the multi-site rollout. Provided Jane's email: jane@acmelogistics.com. Agent committed to send Jane the kickoff scheduling link.
Pricing
Salesforce integration is included in every Foan plan. You need at least Salesforce Professional or above for the API access scopes we use — Essentials doesn't expose the SOAP/REST APIs.
Common questions
Sandbox / test orgs? Not yet. We use the production OAuth host. Sandbox support is queued.
Custom objects / record types? Default record type for now. Custom-object linking comes after the core flow is battle-tested.
Person Accounts? Currently we look at the Contact + Lead objects only. Person Account support is on the roadmap.
What about Opportunity creation? Manual for now — the agent flags qualified calls in the Task description but doesn't auto-create an Opportunity. We'll wire this up once we've gathered customer feedback on the rules.
Disconnect? One click from /dashboard/integrations. We delete the OAuth token immediately.