Call integration for CRM and ERP

The calls reach your software. Without anyone typing anything.

Your PBX's call records land in your CRM, your ERP or your own application — on demand, on a schedule, or the moment they happen. Plus the recordings, if you want them in your own archive.

Delivery log Live
GET cool.pbxtools.ro/api/external/v1/cdr/calls
Authorization: Bearer pk_live_…
call.ended 12:04:11 200
call.started 12:04:02 200
call.ended 11:58:47 502
dnc.added 11:52:19 200
↻ retrying in 4 min
Requests
18,4K
Delivered
99,8%
Traffic
2,1 GB

Compatible with

centraletelefonice.ro centraletelefonice.ro
IT4All PBX IT4All PBX
FreePBX FreePBX
VitalPBX VitalPBX
FusionPBX FusionPBX
Asterisk Asterisk
FreeSWITCH FreeSWITCH
Issabel Issabel
Yeastar Yeastar
3CX 3CX
Cisco Cisco
Grandstream Grandstream
Sangoma Sangoma
Mitel Mitel
Elastix Elastix
Xorcom Xorcom

… and practically any standard SIP-compatible PBX.

📋

How it's wired today

In most companies, it isn't. The calls stay in the PBX, the CRM never learns that a customer rang, and anyone who wants a combined report exports a CSV and pastes columns. When an integration does get built, it is a script written on someone's knee that breaks silently on the first network error, and nobody finds out until a month of calls is missing.

How it's wired with PBX Connect

Four channels, picked to match how you work, with a delivery log and automatic retry. Whatever failed to arrive shows up in a list, with your server's error code and the time of the next attempt. And if delivery was switched off for a day, the calls are not lost — the history API hands them to you whenever you ask.

Four channels, for four ways of working

You do not have to pick one. Most companies use the history as the foundation and events for what is happening right now.

🔎

The history API — you ask us

Request the calls for whatever period you want, with filters, and get them as JSON. It is the foundation of any serious integration: good for nightly syncs, for reports, and for recovering anything another channel missed.

📄

The periodic file — for those without a developer

A CSV generated on your schedule and emailed to you. It opens in Excel, it goes to accounting, it needs not one line of code. Files stay available for thirty days.

Real-time events — we push to you

Phone ringing, call answered, nobody picked up, caller hung up in the queue — pushed to your address the moment it happens, in order. The events come from the agent on your own PBX, so the channel runs on its own, with no other module.

🎧

The recordings, in your own archive

Part of the same fee, with no per-extension cost. Worth it if you want a complete archive: recordings do not live forever, neither on your PBX nor with us. If your software collects them as they appear, they stay with you for as long as you want.

What you see in the panel

An integration is not "I set up a webhook and hope". It is a list showing what went out and what your server said back.

🔑

API keys, revocable

Generate a key, see it once, use it. A revoked key cannot be brought back, only replaced. The right to read metadata and the right to download recordings are separate — a reporting key never reaches conversation content.

📋

The delivery log

What we sent you, what your server answered, which error code it gave and when the next attempt is due. The badge in the menu counts deliveries permanently given up on in the last seven days — you do not have to open the screen to learn you have a problem.

🔁

Automatic retry, in steps

A refused delivery retries by itself at growing intervals. If your address keeps refusing, we pause for a few minutes and try again. Only a row marked "Given up" is lost for good — and it stays in the history.

📈

Usage, day by day

Requests, traffic and recordings, with the monthly allowance and the rate above it written at the top of the page. These are exactly the figures we see — you do not find out at invoice time what you consumed.

🛑

A hard cap, so there are no surprises

Past a threshold, serving stops by itself. A broken script on your side is not allowed to turn into an invoice nobody expected. We call you before it gets there.

🏢

Per-company separation

A company's key sees that company's calls, and nothing else. On a system hosting several customers, each has their own keys and cannot reach a neighbour's data.

First steps, in order

From zero to the first call landing in your CRM.

⚙️ 01

Generate a key

From the API Keys screen. It is shown once, so copy it there and then. The ready-written command for your first request is on the same screen, under the list.

🔄 02

Ask for the first calls

One request to the history API and you get the calls as JSON. From there it is your developer's job — or ours, if you'd rather we handled it.

📊 03

Add automatic delivery

If you also want real time or the periodic file, switch them on in the panel and check the delivery log to confirm what went out.

Which PBX systems it runs on

PBX Connect serves the records and events collected by the agent on your own PBX. It runs on Asterisk-based systems, and the rest are added on request.

🟢

Asterisk-based PBX systems

FreePBX, VitalPBX and centraletelefonice.ro PBX — including systems hosting several companies. The same stack covers the other distributions in the family: Issabel, PBXact, Elastix, Wazo.

⚙️

Bespoke PBX systems

A hand-built Asterisk, or a system built for a single customer. We fit the data structures ourselves, so all four channels behave identically.

🔧

FusionPBX — in progress

FreeSWITCH holds calls differently from Asterisk, so it is a job in itself. It is underway right now. Running something else? Tell us — customers who ask go first.

☎️ Different system, or different PBX?

Tell us which CRM you use and which PBX you run. If the link does not exist yet, we build it — that is what we do every time a customer asks for a new platform.

Tell us what you run

What it costs

25 € / month
That is all. All four channels included.

One fee per company — not per extension, not per call. A monthly allowance of requests and traffic is included and visible in the panel.

See what is included →

Frequently asked questions

Which of the four channels do I need?
Start with the history API — it is the foundation and covers everything, from reports to recovering what was lost. Add real-time events if you want the customer card to open by itself when they ring. The periodic file is for those without a developer. Recordings are a separate option, for archiving.
What happens if my server is down?
The delivery retries by itself at growing intervals. If your address keeps refusing, we pause for a few minutes and try again. The log shows what your server answered and when the next attempt is due. And if a row really is lost, the call remains in the history API — it never falls out of the record.
Which address do I use in code?
https://cool.pbxtools.ro/api/external/v1/cdr, written literally. ⚠️ Do not take it from the portal's address bar: the portal is served behind a protection layer built for browsers, which a server-to-server integration cannot pass.
Do I lose calls while the integration is switched off?
No. Calls are recorded in our records regardless of whether delivery is on, paused or off. The history API hands them to you whenever you ask, for whatever period you ask for.
Which CRMs does it work with?
Any that can receive JSON over HTTPS or make a request — so effectively all the serious ones, plus in-house applications. We do not sell ready-made connectors for one specific CRM: we give you the data in a clean, documented shape and your developer makes the link. If you don't have one, we'll do it, for a fee.
What do recordings cost?
Nothing extra. Downloading recordings is part of the same monthly fee. The channel is off by default on every account and is switched on at your request, with a key separate from the metadata one — a metadata response is kilobytes, an audio one is megabytes, and fetching it occupies your PBX rather than our server. That is why it carries its own rate limit, tighter than the other channels.
Do I need other modules for it to work?
No. All four channels rest on the records and events the agent brings from your own PBX. Smart Dialer has its own events, about campaigns — a separate vocabulary you can additionally subscribe to if you run the dialer. But PBX Connect does not require it.
Does it work on my PBX?
On Asterisk-based systems: FreePBX, VitalPBX — multi-company included — and centraletelefonice.ro, our own platform, plus bespoke systems. The same stack covers the rest of the family: Issabel, PBXact, Elastix, Wazo. FusionPBX is in progress. For anything else, we build on request: every platform on the list got there because a customer asked.
What does it cost?
€25 per month, per company. That is all — not per extension and not per call. It gives you all four channels: the history API, the periodic file, real-time events and recording downloads, with a monthly allowance of requests and traffic. Above the allowance it is metered, and past a hard cap serving stops by itself, so a broken script of yours cannot produce an unexpected invoice.

💡 Got a feature or integration idea?

Help us build the ideal product for your business.

Suggest a feature

📬 Stay Updated

Subscribe to the PBXTools newsletter and be the first to know when we launch new features.

We'll wire your PBX to your software

Tell us which CRM you use. We'll give you a key and a ready-written request, so you can see the data before you decide.

Request activation