Bitrix24-3CX Integration: Setup, Cases, Solutions

Our company is engaged in the development, support and maintenance of Bitrix and Bitrix24 solutions of any complexity. From simple one-page sites to complex online stores, CRM systems with 1C and telephony integration. The experience of developers is confirmed by certificates from the vendor.
Showing 1 of 1All 1626 services
Bitrix24-3CX Integration: Setup, Cases, Solutions
Medium
~1-2 weeks
Frequently Asked Questions

Our competencies:

Development stages

Latest works

  • image_website-b2b-advance_0.webp
    B2B ADVANCE company website development
    1356
  • image_bitrix-bitrix-24-1c_fixper_448_0.webp
    Website development for FIXPER company
    943
  • image_bitrix-bitrix-24-1c_development_of_an_online_appointment_booking_widget_for_a_medical_center_594_0.webp
    Development based on Bitrix, Bitrix24, 1C for the company Development of an Online Appointment Booking Widget for a Medical Center
    693
  • image_bitrix-bitrix-24-1c_mirsanbel_458_0.webp
    Development based on 1C Enterprise for MIRSANBEL
    828
  • image_crm_dolbimby_434_0.webp
    Website development on CRM Bitrix24 for DOLBIMBY
    731
  • image_crm_technotorgcomplex_453_0.webp
    Development based on Bitrix24 for the company TECHNOTORGKOMPLEKS
    1073

Integrating Bitrix24 with 3CX

Imagine: your company uses 3CX and Bitrix24, but calls are not logged in the CRM. Managers waste time manually entering data, leads get lost, and service quality is hard to track. This is a typical scenario requiring seamless telephony integration. We solve this — syncing calls, recordings, and automatically creating CRM cards. Here we break down the technical details of two official integration methods and share pitfalls we encountered in practice. Our team holds certifications with 10+ years in Bitrix24 and 3CX, having completed over 50 telephony integrations. Through automation, you save up to 20 working hours per manager per month — that's up to $600 monthly savings per manager.

3CX is a commercial IP PBX with a polished web interface and its own client application ecosystem. Unlike Asterisk, 3CX offers a structured API for integrations — simplifying the task but imposing architectural constraints.

Setting Up Custom CRM Integration in 3CX for Bitrix24

  1. In the 3CX Management Console, go to CRM Integration → Custom CRM.
  2. Set the URL for the "Call Answered" event:
    https://your_portal.bitrix24.ru/rest/KEY/telephony.externalcall.register/
    
    Parameters are sent in the POST body:
    {
      "USER_PHONE_INNER": "%Ext%",
      "PHONE_NUMBER": "%CallerNumber%",
      "CALL_START_DATE": "%CallStarted%",
      "CRM_CREATE": "Y",
      "TYPE": "%Direction%"
    }
    
  3. Set the URL for the "Call Ended" event:
    https://your_portal.bitrix24.ru/rest/KEY/telephony.externalcall.finish/
    
    Parameters:
    {
      "CALL_ID": "%call_id_saved%",
      "DURATION": "%TalkDuration%",
      "STATUS_CODE": "200"
    }
    
  4. Save the settings.

Problem: Custom CRM Integration in 3CX does not provide state storage — you cannot save the CALL_ID from Bitrix24's response and pass it on completion. This is a key limitation: for full integration with CALL_ID persistence, you need an intermediate server.

Why an Intermediate Server Is Needed for CALL_ID

An architecture with an intermediate handler solves the problem:

3CX → webhook → PHP/Node.js handler
                     ↓
              Bitrix24 REST API → get CALL_ID
                     ↓
              Store CALL_ID in Redis/DB with key = call UNIQUEID
                     ↓
3CX → call end webhook → handler
                     ↓
              Retrieve CALL_ID from Redis
                     ↓
              telephony.externalcall.finish
                     ↓
              Attach recording

This adds an infrastructure component but gives full control over integration. We use this approach on every project — it's more reliable and scalable. Average cost is recovered within 3-6 months by eliminating manual entry.

Call Recording: How to Transfer to Bitrix24

3CX stores recordings in a server directory or cloud storage (depending on version and settings). Access files via the 3CX Recording Storage API or directly via the filesystem. To transfer to Bitrix24, a script runs after the call ends, queries the 3CX API for the recording URL, and uploads it via telephony.externalCall.attachRecord.

3CX returns the recording URL through its call API:

GET /api/recordings?callId={callId}

Authentication uses JWT token (3CX version 18+): Authorization: Bearer <token>.

3CX SBC and NAT Issues: What to Check

3CX often deploys with an SBC (Session Border Controller) for NAT traversal. When integrating with Bitrix24 via a SIP trunk, ensure the SBC's external IP is set in Bitrix24's SIP trunk settings. Otherwise, one-way audio occurs during calls from Bitrix24 to 3CX. This is a common mistake we catch during audit. Need help with your infrastructure? Contact us — we'll review your configuration.

Comparing Integration Methods

Method Flexibility Additional Server Needed Setup Complexity
Custom CRM Integration Low (basic events only) Yes (for CALL_ID) Low
Call Flow Designer + Webhooks High (any scenario) Optional Medium

Typical Errors and Solutions

Error Cause Solution
One-way audio NAT misconfiguration Set SBC external IP in SIP trunk
No CRM card created Missing USER_PHONE_INNER Ensure extension is linked to a Bitrix24 user
Recording not attached CALL_ID mismatch Use intermediate server to store mappings

Case Study: Distributed Team, 3CX in the Cloud

An IT company with offices in two cities used 3CX Hosted (cloud version). Requirement: when a client calls the Moscow number and reaches a St. Petersburg manager, the call in Bitrix24 must be created for the St. Petersburg manager but linked to the Moscow inbound number.

3CX Custom CRM Integration does not support mapping internal extensions to Bitrix24 users. We solved it with an intermediate handler containing a lookup table: 3CX extension → Bitrix24 user ID. On call registration, the handler checks the table and sets the correct USER_ID. Setup took 7 business days. The client now has fully automated telephony with correct routing.

What Our Integration Service Includes

  • Audit of current 3CX and Bitrix24 configuration.
  • Architecture design (intermediate server, mapping, recording).
  • Configuration of Custom CRM Integration or CFD for your needs.
  • Development of intermediate handler (PHP/Node.js) with CALL_ID persistence.
  • Recording integration: 3CX API → upload to Bitrix24.
  • Troubleshooting NAT/SBC and SIP trunks.
  • Testing and user training.
  • 30-day warranty support.

We evaluate your project within 1-2 days. Contact us — we'll find the best solution for your infrastructure.

Turnkey Telephony Setup: From SIP to CRM

SIP trunk not registering — the first problem when connecting telephony to Bitrix24. The client sends provider data, you enter it in "Telephony → Telephony Settings → SIP Connector", and the status hangs "Waiting for registration". Ports 5060/5061 for SIP and range 10000–20000 for RTP are blocked on the firewall — classic. Or codec G.729 is not supported, and G.711 consumes 87 kbit/s per line. For 20 simultaneous conversations — count yourself. We connect and configure telephony so that calls are not lost, routing works according to business logic, and CRM receives data automatically.

SIP (Session Initiation Protocol) — standard for voice communication over the internet. Our specialists have 5+ years of experience integrating with Bitrix24. Warranty on configured solutions — 1 year. Contact us for a free audit of your current infrastructure — we often find blind spots: missed calls without tasks, managers with status "On line" and zero calls, IVR branches that no one reaches.

How to Avoid Failures in SIP Registration and Connection?

Improper NAT, closed ports, or incompatible codecs — 90% of failures. We check codec support on the operator's side, configure keepalive and backup SIP servers. After setup, registration stays stable for months.

You already have a contract with an operator, and changing numbers is not an option. We connect to Bitrix24 via SIP connector. For stable operation, you need a channel: at least 100 kbit/s per line for G.729, 87 kbit/s for G.711a.

Typical tasks:

  • City numbers from any operator — preserved when switching to B24
  • 8-800 numbers for inbound — routing via CRM
  • Multi-line numbers with department distribution via IVR
  • Analog lines via Grandstream or Linksys VoIP gateways

Where it usually gets stuck:

  • SIP/RTP ports are closed at the provider or router level
  • NAT not forwarded correctly — one-way audio
  • Different codecs on the PBX and Bitrix side — no audio at all

We solve these problems in 1–3 days, not weeks.

Step-by-step instructions for connecting via SIP trunk:

  1. Check SIP (5060/5061) and RTP (10000–20000) ports are open on the firewall.
  2. Agree on codecs: G.711 or G.729 — test both options.
  3. Configure SIP connector in Bitrix24 admin: login, password, provider domain/IP.
  4. Enable keepalive (30–60 second interval) for stable registration.
  5. Test two-way audio with a test call.
  6. Configure backup SIP server in case of primary failure.

Cloud PBX or SIP Trunk: Which to Choose?

Cloud PBX requires no hardware — set up in 1–2 days. SIP trunk retains your numbers and allows a hybrid scheme with an on-premise PBX. Cloud PBX is configured 2-3 times faster and saves up to 40% of budget compared to maintaining your own infrastructure. Compare providers based on real cases.

Provider Real Benefit Pitfalls
Bitrix24.Telephony Built-in, setup via portal UI Tied to B24 tariff, more expensive at scale
Sipuni Native module for B24, quick integration Limited number geography
Mango Office Powerful analytics, speech analytics included Above-market price
UIS (CoMagic) Call tracking + PBX all-in-one Complex admin panel
Zadarma 70+ countries, budget-friendly API sometimes slow, support slow
MegaFon PBX FMC — mobile as office SIP setup via support, not UI
MTT Flexible tariffs, good API No native module for B24
Rostelecom Stability, government sector Slow setup, bureaucracy

Why Do You Need Call Recording and How to Set It Up?

All incoming and outgoing calls are recorded automatically. Storage — Bitrix24 cloud (tariff limited) or your own server via the voximplant module. Each recording is attached to a CRM card: contact, deal, lead. Listening — from the deal timeline.

Control tools:

  • Recording notification — mandatory under 152-FZ, configured in IVR
  • AI transcription — speech recognition via built-in CoPilot module or external service. Converts calls to text, searchable by keywords
  • Sentiment analysis — system flags negative calls. Not a replacement for listening, but filters 90% of routine
  • Selective recording — only incoming, only specific departments
  • Automatic duration control — calls shorter than 15 seconds almost always indicate a problem: dropped, not reached, manager didn't pick up

Manager sees summary reports: number of calls per manager, average duration, missed calls without callbacks. The last point is the most painful: a missed call without a callback task equals a lost client.

Typical Routing Mistakes

Routing is the most fragile part. Set up "in order", but the manager logged in and went to lunch — the call hangs for 40 seconds and drops. Or IVR with five nesting levels — the client hangs up on the third. We use working distribution scenarios:

  • By CRM responsible — number found in database, call goes directly to manager
  • In order — even load among operators with "On line" status
  • By departments via IVR — voice menu, max two levels. More means lost calls
  • By time — working/non-working hours, weekends
  • By region — detected by number code, distributed to local managers

On incoming call, the system performs: Number found in CRM:

  • Route to responsible manager
  • Pop-up card: name, company, open deals, contact history
  • If manager doesn't answer within 15 seconds — forward to colleague, then to supervisor

Number not found:

  • Automatically creates a lead in CRM (setting Telephony → CRM Integration → Create lead for unknown number)
  • Call distributed by queue
  • All information recorded for later processing

How to Automate Work with CRM Integration?

Pop-up card on incoming call shows:

  • Name, company, position
  • Current deals with statuses
  • Last 5 interactions — calls, emails, chats
  • Customer comments
  • Buttons: "Create deal", "Set task", "Transfer call"

Automation via business processes is configured in "CRM → Robots and triggers":

  • Missed call → lead + callback task for responsible
  • Call end → record activity in deal timeline
  • Missed without callback within 30 minutes → notify supervisor
  • Incoming from client with overdue deal → escalation

Analytics available in "Telephony → Balance and statistics" and CRM reports:

  • Number of calls by manager, department, direction
  • Average duration and hold time
  • Missed call percentage with weekly trend
  • Call-to-deal conversion — most important metric for sales

How to Increase Conversion with Callback, Auto-dialer, and Voice Menu?

"Call me back" widget on website — one field (phone), nothing extra. The system calls the manager first, then the client. Each request automatically creates a lead in CRM. Anti-spam: limit requests from one number. A/B testing placement — widget bottom right converts better than left, but depends on design. Callback reduces missed calls by up to 30% compared to manual dialing.

Auto-dialer:

  • Dial segment from CRM — manager connects after client answers
  • Robotic dial with voice message — order confirmations, appointment reminders
  • IVR scenarios: "press 1 to confirm"
  • Scheduled with time zone awareness — module checks region by number code

Building a voice menu:

  • Welcome message — company name, recording notice
  • Department selection via DTMF — max 4–5 items
  • Music on hold with queue position
  • Non-working hours — voicemail or informational message

Recording by professional voice actor — worthwhile for greeting and main menu. Deeper levels — speech synthesis, easier to update.

Which codecs to choose for stable operation? G.711 (A-law/µ-law) — standard codec, bandwidth 87 kbit/s per line. G.729 — compressed codec, 31 kbit/s. If bandwidth is limited, G.729 is preferred, but not all providers support it. Also possible G.722 (HD voice) — requires 64 kbit/s and PBX support.

What's Included in Telephony Setup?

Deliverables after project completion:

  • Configured SIP registration (cloud PBX or SIP trunk turnkey)
  • Working call routing (by CRM, queue, IVR)
  • Call recording with cloud or server storage
  • CRM integration: pop-up cards, auto lead creation, business processes
  • Callback widget on website
  • Voice menu (IVR) with voice actor recording or synthesis
  • Configuration documentation and staff training (2 sessions)
  • Technical support for one month after launch

Everything included in the comprehensive setup — no hidden extras. Order telephony setup and get a ready-made infrastructure for working with clients.

Setup Timeline and Pricing

Task Timeframe
Cloud PBX + basic routing 1–2 days
SIP trunk (if provider releases data quickly) 1–3 days
Routing + IVR 2–5 days
CRM integration: robots, triggers, cards 3–5 days
Callback widget 1 day
Comprehensive setup with audit 2–3 weeks

Pricing is calculated individually — depends on number of lines, routing complexity, and required integrations. Average budget for setup ranges from several thousand to tens of thousands in local currency depending on scope. We'll evaluate your project in 1 day. Start with a free audit of your current infrastructure — we often find blind spots: missed calls without tasks, managers with "On line" status and zero calls, IVR branches that no one reaches. Contact us for a consultation — we'll offer the optimal solution for your budget and business processes.