Service Cloud Voice with SIVO in 10 minutes
From an SF org with no telephony to first call landing as VoiceCall + Conversation. No manual certificates, no Connected App, no Apex.
Salesforce Service Cloud Voice promises a unified console, native transcription and Einstein Conversation Insights — but the partner telephony decides whether the project ships in a week or in three months. This is the step-by-step on how to connect SIVO to a Salesforce org and have the first call landing as VoiceCall before lunch.
What you will NOT do
Traditional SCV integrations demand:
- Upload an X.509 certificate to SF.
- Create a Connected App with OAuth JWT bearer and register the right
iss. - Configure
External CredentialsandNamed Credentials. - Map each SF user ↔ partner user manually.
- Remember to rotate the token every 90 days.
With SIVO you do none of this. The zero-touch connector handles it.
What you WILL do
Step 1 · Install the connector
Open the package in your org (sandbox or production). It’s an External Client App + an LWC + 2 metadata records. One click.
https://login.salesforce.com/packaging/installPackage.apexp?p0=<package-id>
The connector auto-detects Organization.IsSandbox and configures the OAuth endpoint (test.salesforce.com vs login.salesforce.com) automatically.
Step 2 · Connect from the LWC
Setup → search “SIVO Connector” → Setup tab. Click Connect with SIVO. Salesforce opens an OAuth window with PKCE; SIVO receives the callback at https://app.sivocenter.com/salesforce?autoConnect=1.
If you’re not logged into SIVO, the router redirects you to login and resumes the flow afterwards — no context lost.
Step 3 · Auto-discovery
After the callback, SIVO queries SOQL:
SELECT Id, IsSandbox, Name FROM Organization LIMIT 1
SELECT Id, Endpoint FROM ScrtServiceConfiguration LIMIT 1
SELECT Id, InternalName FROM CallCenter
WHERE InternalName LIKE 'SIVO_%' LIMIT 1
And configures with no manual intervention:
org_id(15-char) and realscrt_base_urlfor your org.call_center_name(needed for Omni-Channel routing).- Sandbox vs production (in the partner DB).
Step 4 · User mapping
Click “Auto-import SF users”. SIVO queries SELECT Id, Email, Name FROM User WHERE IsActive=true AND UserType='Standard' and matches by email against your existing SIVO agents. Matched ones are linked; unmatched can be created with one click.
Step 5 · First inbound call
Configure a DID in SIVO pointing at an IVR (or direct queue). Call from your mobile to the number:
- Zadarma/Twilio trunk delivers the call.
- SIVO creates
VoiceCallin SF via SCRT2POST /voiceCalls. vendorCallKeyis assigned to the SIP channel.- Omni-Channel routes to the available agent.
- The WebRTC softphone rings inside the SF console.
Verification: in your org, SELECT Id, CallStatus FROM VoiceCall ORDER BY CreatedDate DESC LIMIT 1 should return inProgress or completed.
Live transcription
If you enable the transcription policy (Pro/Enterprise), each turn is pushed to SF as:
POST /telephony/v1/voiceCalls/{vendorCallKey}/messages
Telephony-Provider-Name: calltree
Content-Type: application/json
{
"messageId": "uuid-v4",
"messageSequenceNumber": 1,
"senderType": "ENDUSER",
"senderName": "+34611222333",
"content": "Hi, I'm calling about my invoice from last month.",
"timestamp": "2026-05-19T10:23:45Z"
}
Key bit: one by one, no batch, with the Telephony-Provider-Name header. Salesforce materializes each message as Conversation + ConversationEntry, ready for Einstein CI with no extra code.
Why this is the modern model
VoiceCallTranscript has been deprecated since 2024. The new Conversation/ConversationEntry model allows:
- Mixing channels (voice + chat + mail) in a single thread per caller.
- Native Einstein Sentiment, Topics, Coaching.
- Independent lifecycle from
VoiceCall(auditable, configurable expiry). - Official multi-participant support (HUMAN_AGENT, ENDUSER, BOT, SUPERVISOR).
If your integrator still pushes to VoiceCallTranscript, that integration is 12 months away from breaking.
Multi-org
A single SIVO instance connects N SF orgs. Useful for holdings or BPOs running calls for multiple brands with their own orgs. User mapping is independent per org — each agent can be mapped in one or more orgs with no identity conflicts.
Measured timing
- Connector installed: 2 min
- OAuth + auto-discovery: 30 s
- Mapping 5 users: 1 min
- Configure DID + simple IVR: 3 min
- First call: 1 min
Total: 8 minutes from clean org to VoiceCall.CallStatus = inProgress.
→ Start your 14-day trial and test the integration with your own SF org.