Softphone Connector
A Softphone Connector in Salesforce Open CTI is the JavaScript layer that links the in-browser softphone widget displayed inside the Service Console to the telephony vendor underlying phone system.
Definition
A Softphone Connector in Salesforce Open CTI is the JavaScript layer that links the in-browser softphone widget displayed inside the Service Console to the telephony vendor underlying phone system. The Connector receives call events from the phone system (incoming call, hold, transfer, hangup), surfaces them in the softphone widget, and sends commands back (answer, end, mute, transfer) when the agent clicks the corresponding button. It is the bridge between the Salesforce UI and the vendor WebRTC, SIP, or proprietary signaling stack.
The Softphone Connector is implemented by the phone vendor, not by Salesforce. Each vendor that integrates with Service Cloud through Open CTI (Cisco, Genesys, Avaya, Mitel, Five9, NICE, Aircall, Talkdesk, RingCentral) ships their own Connector as part of their AppExchange package. The Salesforce side calls the Open CTI JavaScript API; the Connector implements the vendor-specific business logic. From the agent perspective, the Connector is invisible; it just shows up as the softphone widget that works.
How a Softphone Connector ties the Service Console to the phone system
What a Softphone Connector actually does
The Connector handles five categories of work. First, registration: when the agent logs into Salesforce, the Connector authenticates with the phone system and registers the agent to receive calls. Second, presence: it surfaces the agent status (Ready, Busy, Away, On Call) to both Salesforce Omni-Channel and the phone system, keeping the two in sync. Third, call events: it receives notifications from the phone system about incoming calls, answered calls, hold, transfer, conference, and hangup, and translates them into Salesforce UI updates. Fourth, screen pop: when a call arrives, the Connector tells Salesforce which record to display by looking up the caller through the phone number or the CTI Call Lookup configuration. Fifth, call logging: when the call ends, the Connector writes a Task record (or a Voice Call record for Service Cloud Voice) capturing the call details.
Open CTI JavaScript API and the Connector contract
Salesforce defines the Open CTI JavaScript API as the contract between the Connector and the Salesforce-side softphone widget. The Connector calls Open CTI methods to: initialize the widget on agent login, search for matching records when a call arrives (sforce.opencti.searchAndScreenPop), open a record page in the Service Console, log call activity to Salesforce, get the current user information, and notify Salesforce when call state changes. The API is documented in the Salesforce Developer Guide for Open CTI. Each vendor Connector implements the API methods to call into their own phone system. The API is stable across Salesforce releases, so a Connector built once tends to keep working with minor maintenance for years.
Lightning vs Classic Connector implementations
Salesforce Open CTI has two implementations: Open CTI for Lightning Experience and Open CTI for Classic. The two have different JavaScript APIs and different developer tooling. A Connector built for Classic does not work in Lightning without porting; the call patterns, the event names, and the page lifecycle all differ. Most phone vendors ship two Connectors: one for Classic (legacy customers) and one for Lightning (current customers). Customers running both UIs in transition need both Connectors active and configured. Salesforce documentation marks Classic Open CTI as in maintenance mode and recommends new implementations target Lightning only. For Connector vendor selection, confirm Lightning support before committing.
Call Center setup and Connector configuration
Each Open CTI Connector registers with Salesforce through a Call Center configuration record. The Call Center XML (uploaded in Setup, Call Centers) declares the Connector URL, supported features, and configuration parameters. Users get assigned to a Call Center through the User detail page (or through a Permission Set). When the user opens the Service Console, the Lightning UI loads the Connector JavaScript from the Call Center URL, initializes it, and renders the softphone widget. Multi-Connector orgs (different teams use different phone vendors) configure multiple Call Centers and assign users to each. The Call Center configuration is the single most common point of failure for Connector deployment; small XML errors prevent the softphone from loading.
CTI Call Lookup and the screen-pop logic
Screen pop is the headline Connector feature. When a call arrives, the Connector calls Open CTI to look up records matching the caller phone number. The default lookup checks Contact.Phone, Account.Phone, and Lead.Phone fields. Salesforce returns matching records, ranked by recency and relevance. The Connector then tells Open CTI which record to display in the Service Console. For multi-match scenarios (the same phone number on multiple records), the Connector either displays a picker or applies vendor-specific tiebreaker logic. Custom screen-pop logic (look up by Case number from the IVR, look up by account number from a custom field) is implemented in the Connector or in supporting Apex code. Mature implementations train agents on what to do when the screen pop is wrong; misplaced screen pops are common with mature customer phone-number reuse.
Connectors, Service Cloud Voice, and the future
Service Cloud Voice (Salesforce native telephony product) does not use Open CTI Connectors in the same way. It uses a deeper integration where Salesforce hosts the softphone directly and connects to Amazon Connect (or another supported telephony backend) through a Salesforce-managed integration layer. Customers using Service Cloud Voice do not deploy a vendor Connector; Salesforce manages the equivalent integration internally. For customers who want to keep a third-party phone vendor relationship, Open CTI Connectors remain the right answer. For greenfield contact center implementations, Salesforce recommends evaluating Service Cloud Voice first. The Open CTI Connector path is mature and well-supported but is the secondary direction for the platform investment.
Deploying a Softphone Connector through Open CTI
Deploying a Softphone Connector is a vendor-coordinated activity. The Salesforce admin installs the vendor AppExchange package, configures the Call Center, and assigns users. The vendor support engineer provides their Connector configuration and tests the integration end-to-end. The four-step routine covers: install the vendor Connector package, configure the Call Center, assign users, and validate call flow end to end. Each step needs explicit ownership between the Salesforce admin and the vendor; without clear handoff, the deployment stalls in finger-pointing.
- Install the vendor Connector package
Find the vendor AppExchange listing for their Open CTI Connector and install the managed package into the Salesforce org (sandbox first, then production). The package brings in the Connector JavaScript, the Apex hooks, and any vendor-supplied Lightning components. Assign the vendor-provided permission set to admin users for setup access. Validate the install by navigating to Setup, Call Centers; a new Call Center record should exist with the vendor name. If the package installed without errors but no Call Center appears, contact the vendor support; most likely there is a post-install step in the vendor documentation that was missed.
- Configure the Call Center
Open the new Call Center record in Setup. Update the Connector URL to match the vendor documented value (usually a specific Lightning component reference). Set the supported feature flags based on the agent capabilities you need (mute, hold, transfer, conference, click-to-dial). Configure CTI Call Lookup to match how your org identifies callers (phone number, email, account number). Save the Call Center configuration. If the Call Center XML needs editing, do it through the vendor UI tools rather than editing the raw XML; small syntax errors break the Connector load entirely.
- Assign users to the Call Center
From the Call Center record, click Manage Call Center Users. Add the agents who will use this Connector. Confirm each agent has the correct profile or permission set for phone features. For multi-vendor orgs, assign each agent to the right Call Center based on their team or role. Mature implementations use a Permission Set group instead of direct Call Center assignment so onboarding and offboarding flow through the org standard user lifecycle process. Train the assigned agents on the softphone widget and the call flow before activating production calls.
- Validate call flow end to end
In a sandbox or production, perform a test inbound call: the vendor support team places a call to the configured number, the agent softphone widget displays the call, the screen pop opens the right Salesforce record, the agent answers and the call logs as a Task. Perform a test outbound call: the agent clicks a phone number on a Contact record, the softphone dials, the call connects. Test mute, hold, transfer, and hangup. Once the smoke tests pass, expand to a pilot user group for two weeks before declaring the deployment ready for the full team.
- Connector deployments are vendor-coordinated. Both the Salesforce admin and the vendor support engineer have responsibilities; without clear handoff, deployments stall in finger-pointing.
- Lightning and Classic Open CTI use different APIs. A Connector built for Classic does not work in Lightning without porting; confirm Lightning support before selecting a vendor.
- Call Center XML syntax errors break the Connector load entirely. Use the vendor UI tools to edit the configuration; do not hand-edit the raw XML unless you have to.
- Screen pop ranking depends on the CTI Call Lookup configuration plus the underlying record set. Misplaced pops are common when phone numbers are reused across multiple Contact records; train agents on what to do.
- Service Cloud Voice is the strategic direction for greenfield contact centers. Open CTI Connectors remain mature and supported but are the secondary direction for platform investment.
Trust & references
Straight from the source - Salesforce's reference material on Softphone Connector.
- Open CTI Developer GuideSalesforce Developer Docs
- Call Centers OverviewSalesforce Help
- Service Cloud Voice OverviewSalesforce Help
About the Author
Dipojjal Chakrabarti is a B2C Solution Architect with 29 Salesforce certifications and over 13 years in the Salesforce ecosystem. He runs salesforcedictionary.com to help admins, developers, architects, and cert/interview candidates sharpen their fundamentals. More about Dipojjal.
Test your knowledge
Q1. What is a Softphone Connector?
Q2. Who provides them?
Q3. What architecture do they use?
Discussion
Loading discussion…