SIVO
← Back to blog
#salesforce#scv#integrations

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.

Iván Jerez ·

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 Credentials and Named 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 real scrt_base_url for 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:

  1. Zadarma/Twilio trunk delivers the call.
  2. SIVO creates VoiceCall in SF via SCRT2 POST /voiceCalls.
  3. vendorCallKey is assigned to the SIP channel.
  4. Omni-Channel routes to the available agent.
  5. 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.

Your call center with AI superpowers, in minutes.

Start a 14-day free trial. No card. No lock-in.