Features

If it happened,
it's in Salesforce.

No black boxes. Here's every feature: what it actually does, how it actually works, and what changes for the people who live in Salesforce every day.

01

Your team's calls sync to Salesforce.
Without anyone doing anything.

Every inbound and outbound call from the handlers in your Transcribe & Sync team — including missed calls and calls nobody picked up — syncs into Salesforce shortly after the call ends. No rep action required. No manual logging. No CSV import scheduled for Monday morning.

Your reps make calls. Your reps hang up. CallCore does the rest. The first time a manager opens a record and sees every call already there — without asking a single rep to log anything — is typically the moment the product pays for itself.

How it works: CallCore's agent runs as a user inside your 3CX system. When a call ends, it captures call metadata, the recording, and participant details, then queues them for sync. Data appears in Salesforce within moments — even before transcription completes, as a "Transcribing…" entry that updates automatically.

Start free trial →
What syncs automatically on every call
  • Inbound calls — who called, when, how long, handler
  • Outbound calls — who your rep called, when, duration
  • Missed calls — number, timestamp, no-answer status
  • Unanswered calls — every attempt, logged and visible
  • Call recording — available for secure playback immediately
  • Transcript placeholder — "Transcribing…" appears right away
  • Full transcript + AI summary — updates automatically when ready
  • Handler identity — matched to Salesforce user record
02

Calls match to records at view time.
Not at sync time.

Most integrations assign calls to Salesforce records at the moment of sync. If a phone number wasn't attached to a record at that exact moment — because the record was created later, or the number was added after the call happened — the call is missed. Permanently.

CallCore works differently. When you open a record, the Communication Timeline looks at every phone number associated with that record and its related records in real time, then surfaces every matching call. This means no historical calls are lost because of record timing — including calls that happened before CallCore was even connected.

It stays live, too. If a matching call completes while you're on the record, it appears at the top as New Comms the moment it lands — or drops straight into the timeline, if you prefer, via a setting in the page builder. And any Salesforce emails on the record (EmailMessage) are woven into the same timeline, so calls and emails read as one thread.

The practical consequence: An Opportunity pulls numbers from its linked Contacts and Account. A Contact pulls its own numbers and those of its Account. If a number is added to a record after the call happened, the call still appears — because the match happens when you look, not when the call landed.

What this means in practice
  • Open an Opportunity — see calls from its Contacts and Account
  • Open a Contact — see calls from their number and their Account's numbers
  • Calls from before CallCore was connected still appear
  • Number added to a record after the call? Call still shows up
  • New Contact added to a deal? Their calls appear on the Opportunity
  • Works on custom objects with the same logic
  • A call that lands while you're viewing appears live as New Comms
  • Salesforce emails on the record are woven into the same timeline
03

Recordings play inside Salesforce.
No external login. No other tab.

Click play on any call recording in the Communication Timeline. The audio streams directly inside the Salesforce page. No link that opens a new window. No redirect to your 3CX console. No "please log into the phone system to access this recording."

This is the feature most teams haven't seen before. When you demonstrate it to a team that has spent years switching between Salesforce and a phone system to hear recordings, the reaction is immediate.

How it's secure: CallCore uses a server-side proxy to stream the audio. Your 3CX is never directly exposed to the outside world. Recordings are served via short-lived signed URLs — so only authenticated, permitted users can play them, only within a time-limited window. No recording ever lives on a public URL.

Start free trial →
Recording playback specifics
  • Plays in the browser on the Salesforce record page
  • Available immediately after the call ends — before transcription
  • Secure proxy — 3CX server never exposed externally
  • Short-lived signed URLs — expire after access window
  • Permission-gated — users hear what they're allowed to hear
  • Works on mobile Salesforce app
  • No Salesforce storage used — audio stays in your 3CX environment
04

Transcripts and AI summaries
on every answered call.

A full transcript and an AI-generated summary appear on every call entry in the Communication Timeline. The summary is written with awareness of your company context — not a generic bullet-point extraction, but a readable account of what happened on that specific call.

If your 3CX already produces transcripts, CallCore syncs those as-is at no extra cost. For everything else, transcription and AI summaries run on your own Azure OpenAI account — you bring your own AI, and Microsoft bills that usage to you directly, so there's no separate per-minute charge.

How transcription runs: on your own Azure OpenAI deployment, in your own tenancy — CallCore never marks up AI usage. Calls your 3CX already transcribed sync as-is, not re-transcribed. Missed and unanswered calls are logged in full; there's nothing to transcribe, so they carry no summary.

What appears on each call entry
  • Direction, duration, timestamp, handler name
  • AI summary — readable, specific to the conversation
  • Full transcript — expandable in-page
  • Single-stream transcripts — no speaker labels, by design
  • Recording playback inline
  • "Transcribing…" placeholder appears immediately after call ends
  • Updates automatically when transcript is ready — no page refresh
  • Visible to users with the appropriate permission level only
05

Works with your Salesforce org.
Not just the out-of-the-box one.

Out of the box, the Communication Timeline works on standard Contacts, Accounts, and Opportunities using standard Salesforce phone fields. But the package is built on an extensibility framework that means a Salesforce developer can add support for any custom object, any custom phone field, or any custom relationship logic.

Adding support for a custom Opportunity layout that links to applicant Contacts via custom fields is around 15 lines of Apex. Adding a custom phone field is around 10 lines. These are not integration projects — they're afternoon tasks for a developer who knows your org. If you don't have a developer, the CallCore team can do it.

The extensibility framework: The package defines five strategy interfaces — which records are in scope, which numbers belong to them, how handlers map to Salesforce users, which handlers a user can see, and which call sources are visible. Customers implement their own versions in their own org, without touching the managed package.

Read the extensibility docs →
Custom org support — the specifics
  • Custom objects — ~15 lines of Apex to add support
  • Custom phone fields — ~10 lines of Apex
  • Custom relationship logic — any structure your org uses
  • Your code lives in your org — never inside the managed package
  • Package updates never break your customisations
  • The CallCore team can implement custom strategies for you
  • Pre-trial docs available — read them before you sign up
06

Sync only the people
whose calls belong in Salesforce.

Not everyone in a 3CX system talks to customers. HR, finance, IT, management — plenty of internal calls happen every day that have no business appearing in Salesforce. CallCore gives you deliberate control over who gets synced.

One deliberate mechanic: nobody syncs by default. Only the handlers you place in the Transcribe & Sync team flow into Salesforce — and the same console teams power the built-in analytics and leaderboards, so there's no separate configuration.

Team management: A split-screen drag-and-drop interface — your team on the left, all available users on the right. Drag a user across to add them. Hold Ctrl to copy rather than move, so users can belong to multiple teams. Changes take effect immediately across Salesforce sync — and the console's analytics and leaderboards.

Selective sync in practice
  • Nobody syncs by default — only the Transcribe & Sync team
  • HR, IT, Finance excluded — their calls never appear in Salesforce
  • The same console teams drive your sync scope and analytics views
  • Every synced call is fully transcribed and summarised — no metadata-only stubs
  • Users can belong to multiple teams simultaneously
  • Billed per active user-day — only synced handlers, only on days they take a call
  • Console shows your current synced user count at all times
07

Granular permissions.
Precise control over who sees and hears what.

By default, users can see and hear their own handled calls. Beyond that, access opens in discrete steps — each a deliberate decision, not an all-or-nothing toggle. A manager can have full access to their own calls but only summaries of calls handled by others. A compliance team member can access all recordings across the board.

The permission logic is extensible via the same framework as custom object support — so if your org has team structures or custom profiles that should influence call visibility, those can be wired in.

Deny by default: a new user sees and hears only their own handled calls until someone deliberately grants more. Each level is independently assignable, so access maps to your organisation's real trust boundaries rather than an all-or-nothing switch.

Permission model specifics
  • Four distinct permission levels — each independently assignable
  • Default: users see and hear only their own handled calls
  • View all call logs (basic — number, duration, direction)
  • View summaries of all calls (no transcript access required)
  • View full transcripts of all calls
  • Listen to recordings — all calls, or only personally handled calls
  • Permission logic extensible via the same Apex framework

Every feature you just read
is live in your Salesforce org
within about fifteen minutes of signing up.

Start a free trial. Connect your 3CX. Connect Salesforce. Your call history appears.

No IT project. No configuration file. No consultant.

See it working in my Salesforce org Set up in about 15 minutes · Cancel any time · Works with customised Salesforce orgs