CTI Connector
A CTI Connector is the installable Salesforce package that wires a telephony provider into the Salesforce console.
Definition
A CTI Connector is the installable Salesforce package that wires a telephony provider into the Salesforce console. It bundles a CTI Adapter (the JavaScript that runs the softphone), a Call Center definition file, any Lightning or Aura components the vendor adds, and the configuration screens an admin needs to point it at the phone platform.
People say "Connector" and "Adapter" as if they mean the same thing, and vendor marketing rarely draws a line. In practice the Connector is the AppExchange bundle you install, while the Adapter is the code inside it that talks to Salesforce through Open CTI. Most providers (Five9, Talkdesk, Genesys, NICE, Amazon Connect partners) ship their integration as a Connector, and Service Cloud Voice ships its own first-party version.
How a CTI Connector fits together
What ships inside the package
Open a typical vendor Connector and you find more than the adapter. The package carries the JavaScript Adapter that loads in the softphone iframe, a Call Center definition file that registers that adapter, and Lightning Web Components or Aura components for vendor screens like call-history panels and queue monitors. It usually adds custom objects for settings the Salesforce data model does not cover, such as skills, queues, and agent profiles. It ships permission sets so admins can grant component access without hand-building field-level security. Many Connectors include a setup flow that walks an admin through tenant credentials and user assignment. Because all of this arrives as one managed package, the install is a single approval rather than a dozen manual steps. That packaging is the whole point of the Connector: it turns a multi-part integration into something an admin can deploy from AppExchange in an afternoon, then refine. The adapter alone would not give you the call-history view or the queue object; the Connector is what makes the integration feel native inside the console.
Connector versus Adapter, plainly
The cleanest way to keep the two terms apart is by scope. The Adapter is the JavaScript layer. It connects to Open CTI, draws the softphone, answers and places calls, and fires the screen pop. The Connector is the package that contains that Adapter plus everything around it: the Call Center file, the components, the objects, and the config UI. In strict usage that distinction holds. In casual usage, vendors and admins swap the words freely, and a single Salesforce or partner article will switch between them paragraph to paragraph. So when a colleague says "install the Connector," they mean the full bundle. When a developer says "the Adapter is not connecting," they mean the JavaScript is failing to reach Open CTI. The site keeps a separate CTI Adapter entry for that narrower meaning. Knowing which layer someone is pointing at saves real time during troubleshooting, because a Call Center file problem and an adapter-load problem look similar from the agent seat but get fixed in completely different places.
Installing a Connector from AppExchange
The standard path starts on the vendor AppExchange listing. An admin clicks Get It Now, signs in to the target org, picks production or a sandbox, and approves the install. Salesforce then creates everything the package declares: custom objects, permission sets, a Call Center record, and the Lightning components. None of that requires touching XML by hand, because the Connector packaged its Call Center definition file for you. After the install, the admin opens the vendor setup screens to enter the tenant ID, API credentials, and any queue or skill mappings the platform needs. The last step is human: Salesforce users must be assigned to the Call Center record before they can see a softphone at all. A clean test always follows. Place a real inbound call, an outbound call, a transfer, and a conference, then confirm the screen pop opens the right record and that logging a Case writes back. Marketing screenshots rarely show the gaps, and a five-minute call test surfaces them before agents do.
Where Connector configuration actually lives
A Connector splits its settings across two places, and that trips up admins who expect everything in one screen. The Call Center record holds what Open CTI cares about: the adapter URL, the standard keys version, and the softphone height and width. Salesforce manages that record under Setup, Call Centers. Everything platform-specific lives somewhere else. Tenant IDs, API keys, queue-to-Salesforce mappings, agent skill assignments, and call-recording preferences sit in the Connector custom objects or in named credentials the vendor defined. Salesforce Setup does not know those exist, so the vendor ships its own configuration UI to manage them. The practical consequence is that two screens drive one integration. If a call routes to the wrong agent, the fix is probably in the vendor queue mapping, not in the Call Center record. If the softphone will not load or sizes wrong, the fix is in the Call Center file. Documenting which setting lives where, with screenshots, is one of the highest-value pages an admin can leave behind for the next person.
Open CTI maintenance mode and what it means
Every standard CTI Connector runs on Open CTI, the browser-based JavaScript framework underneath it. Salesforce has placed Open CTI in maintenance mode, with retirement scheduled for February 2028 and no new features arriving before then. That does not mean your Connector stops working tomorrow, and it does not make the Connector "retired." It does mean the foundation is frozen, so net-new investment from Salesforce is flowing to Salesforce Voice (the Service Cloud Voice family) instead. The recommended direction for new contact centers is Salesforce Voice, which keeps many of the same call-control features and adds native Omni-Channel and Command Center integration. For existing deployments the message is calmer: keep running, but plan. If you are choosing a Connector in 2026 for a long-lived program, weigh the 2028 horizon honestly and ask each vendor for a written migration story. A Connector that already has a Service Cloud Voice path is a safer bet than one with no answer for what happens after maintenance mode ends.
Service Cloud Voice as the first-party Connector
Service Cloud Voice (SCV) is also a Connector, but Salesforce builds and runs it rather than a third party. It does not arrive as a separate AppExchange install; it comes with the SCV license. The package includes the adapter, the Voice Call record that stores call data on the platform, real-time transcription, and the Amazon Connect or partner-telephony integration. Because Salesforce owns both ends, SCV is the most tightly woven option: calls, transcripts, and Omni-Channel routing share one data model instead of being stitched together. That depth is the reason greenfield projects increasingly pick SCV, and it is the same depth Salesforce points to when it recommends Voice over Open CTI for the future. The trade-off is platform commitment. SCV ties your telephony to the Salesforce-managed stack and its supported phone backends, where a third-party Connector lets you keep an existing phone vendor. Neither choice is wrong. The right one depends on whether you value the deepest native integration or the freedom to bring your current platform along.
Upgrades, lock-in, and choosing well
Vendor Connectors update through normal managed-package upgrades. The vendor publishes a new version on AppExchange, an admin clicks Upgrade in Installed Packages, and Salesforce applies the change. Bigger releases sometimes alter the Call Center file or add permission sets that need re-assignment, so a sandbox test before production is not optional. Beyond mechanics, two realities shape the decision. First, support matters more than features in regulated, phone-heavy industries, where a CTI outage is a 24/7 production incident; read the vendor SLA before you sign. Second, switching Connectors mid-program is genuinely painful. You migrate call data, retrain agents, and rebuild integration logic, so vendor lock-in is real and worth pricing in up front. Choosing well comes down to three questions. Which phone platform does the company already run? How deep are the features you actually need, like AI agent assist or live monitoring? And what is the vendor doing about the Open CTI 2028 horizon? Answer those honestly and the shortlist narrows fast.
Deploy a CTI Connector from AppExchange
Most teams deploy a CTI Connector from AppExchange rather than hand-building one. Here is the path from a vendor listing to agents taking calls inside the console. The exact vendor screens differ, but the Salesforce-side steps are consistent.
- Install the Connector from AppExchange
Open the vendor listing, click Get It Now, sign in, and choose production or a sandbox. Approve the install so Salesforce creates the package objects, permission sets, Call Center record, and components. Install in a sandbox first whenever the org is live.
- Confirm the Call Center record
Go to Setup, Call Centers, and confirm the Connector created its Call Center with the right adapter URL and softphone size. The Connector packaged its definition file, so you rarely import XML by hand, but verify the compatibility mode matches Lightning Experience.
- Enter vendor credentials and mappings
Open the Connector's own setup screens. Add the tenant ID, API credentials, and any queue or agent-skill mappings the phone platform needs. These live in the Connector custom objects or named credentials, not in Salesforce Setup.
- Assign users to the Call Center
Add each agent to the Call Center record and grant the Connector permission sets. A user with no Call Center assignment sees no softphone at all, so this step is what actually turns the feature on for people.
- Run a real call test
Place an inbound call, an outbound call, a transfer, and a conference. Confirm the screen pop opens the correct record and that logging a Case writes back. Fix routing in the vendor queue mapping and softphone sizing in the Call Center record.
The Salesforce object that registers the adapter; holds the adapter URL, standard keys version, and softphone dimensions.
Set in the Call Center definition file; declares whether the adapter supports Salesforce Classic, Lightning Experience, or both.
The Connector's own screens for tenant ID, API keys, queues, skills, and recording, separate from Salesforce Setup.
Packaged grants that give agents access to the softphone components without hand-building field-level security.
The Salesforce-managed layout that controls which fields and links appear in the softphone during a call.
- Users with no Call Center assignment never see a softphone, even after a perfect install. Assignment is the on switch.
- Call routing problems usually trace to the vendor queue mapping, while softphone load or sizing problems trace to the Call Center record. Check the right screen first.
- Open CTI is in maintenance mode with a February 2028 retirement date, so confirm the vendor's Service Cloud Voice migration plan before committing to a long-lived deployment.
- Always test a Connector upgrade in a sandbox; major versions can change the Call Center file or add permission sets that need re-assignment.
Prefer this walkthrough as its own page? How to CTI Connector in Salesforce, step by step
Trust & references
Cross-checked against the following references.
Straight from the source - Salesforce's reference material on CTI Connector.
Hands-on resources to go deeper on CTI Connector.
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 CTI Connector in a Salesforce service deployment?
Q2. Which is a typical CTI Connector feature offered to Salesforce service agents?
Q3. Where are CTI Connectors typically distributed for Salesforce customers to install?
Discussion
Loading discussion…