Tutorial: Setting Up Call Transcription on Cloud PBX (3CX)
5 min read
This article covers the technical steps for enabling Call Transcription on a 3CX-based Cloud PBX system — from licensing requirements, choosing an AI engine, to configuring it per department/queue.
Prerequisites #
Before starting the configuration, make sure the following are in place:
- 3CX Enterprise license — call recording transcription is only available on the Enterprise license. The PRO license only supports voicemail transcription.
- 3CX Admin Console access with full (Super Admin) privileges.
- Call Recording already enabled on the extension, queue, or DID you want transcribed, since transcription works on top of the recording output.
- One of the following three AI engines, depending on your needs:
- 3CX AI (native, convenient, no third-party account needed)
- OpenAI Whisper / GPT Transcribe
- Google Cloud Speech-to-Text API
Option 1: Using 3CX AI (Native) #
This is the fastest option since it doesn’t require an external API account.
- Go to Admin Console > Integrations > Transcription.
- Select the 3CX AI engine.
- Enable Stereo Mode — this mode separates the caller’s and callee’s audio into distinct channels, making speaker diarization (identifying who’s speaking) more accurate.
- Select the transcription language from the Speech Language dropdown (e.g. Indonesian, English).
- Click Save.
Option 2: Using OpenAI (Whisper / GPT Transcribe) #
- Create an account at platform.openai.com if you don’t have one yet.
- Create a new Project, then go to Settings > Billing to enable a paid plan.
- Go to Settings > Limits and configure:
- A Monthly Budget and Notification Threshold
- Add the required models: whisper-1, gpt-4o-mini-transcribe, gpt-4o-transcribe
- Set Rate Limits according to your call traffic capacity
- Create an API Key for that project, then copy it.
- Go back to 3CX Admin Console > Integrations > Transcription.
- Select the OpenAI engine and paste in the API Key you just created.
- Select the transcription language, then click Save.
Cost note: If your 3CX license is 8SC or above, voicemail transcription via 3CX AI is usually free, but call recording transcription via OpenAI is still billed according to OpenAI’s API usage.
Option 3: Using Google Cloud Speech-to-Text #
A good fit for companies already using the Google Cloud ecosystem.
- Log in to the Google Cloud Console and create or select a project.
- Enable the Cloud Speech-to-Text API V2 for that project.
- Configure Google Cloud Storage as the recording storage bucket:
- In the 3CX Admin Console, open System > Storage
- Enable Enable Remote Data Storage & Archiving
- Select Google Storage as the location
- Connect your Google account to 3CX via Google Integration and grant access (this requires a Super Admin role on that Google account/IAM project — the most common cause of failed integrations).
- Go back to Integrations > Transcription, and select the Google Speech engine.
- Select the Speech Language, then click Save.
Important: Call recordings get fully transcribed during the remote archiving process (immediately or on a schedule), not in real time as the call is happening.
Enabling Transcription per Department, Extension, Queue, and Ring Group #
Once the engine is configured, transcription doesn’t automatically run for every user. You need to enable it at the appropriate level:
- Go to Admin Console > Departments.
- Select the department you want to enable transcription for.
- Open the Options tab and set your transcription preference (Voicemail, Recording, or both).
- Click Save.
By default, every user, ring group, and queue within that department will follow the department-level setting. If you need an exception for a specific extension, the setting can be overridden directly on that extension’s page.
Viewing Transcription Results #
Once enabled, transcription results can be accessed in several places:
| Platform | How to Access |
| 3CX Web Client | Open the Voicemail/Recordings menu; the transcript text appears next to the audio file |
| If email notifications are enabled in the user’s settings, the transcript is sent automatically for every recorded call | |
| Windows Softphone | A transcript snippet appears in the call list; click the transcript icon for the full text |
| iOS / Android App | A transcript snippet appears in the call list; tap the transcript icon to open the full text |
Common Troubleshooting #
1. Transcription doesn’t appear for a certain user
- Check whether the Department/Extension-level setting has actually enabled transcription.
- Make sure Call Recording is active for that user/queue — without a recording, there’s nothing to transcribe.
2. The Google Speech integration shows an error status (red outline)
- Usually caused by the Google account used not having a Super Admin role in the IAM project.
- Make sure Google Cloud Storage is already configured as Remote Storage before connecting the Speech API.
3. OpenAI transcription suddenly stops
- Check the Usage Limits and Monthly Budget on your OpenAI account — transcription stops once your API quota/budget runs out.
- Make sure the API Key is still valid and hasn’t been revoked.
4. Speaker diarization results are inaccurate
- Enable Stereo Mode in the transcription settings, since it separates caller and callee audio into distinct channels for more precise speaker identification.
Recommendation for Enterprise Scale
For companies with high call volume and strict data privacy requirements, transcription can be run locally (on-premise) via the 3CX Transcription Engine Server, so voice data never has to be sent to a third party. This local deployment is recommended to run on a machine with a high-performance GPU to keep processing speed up.
Need Help With Configuration? #
SolusiPBX’s certified 3CX technical team is ready to help install and configure Call Transcription on your Cloud PBX system. Contact us via WhatsApp Business or the Contact Us channel on our website for a technical consultation.
