---
title: Phone System Connector
description: A friendly guide to connecting your phone system to TSync — call customers with one click, see who's calling before you pick up, keep a tidy call register with recordings, and turn unknown callers into leads.
product: TSync Intelligence 11.3.6
language: en
canonical: https://docs.tsync.pro/modules/tsync-pbx/
source: https://docs.tsync.pro/llms.txt
---

# Phone System Connector ☎️

If your team spends a lot of time on the phone, this module brings your phone
system and TSync together so they work as one. The result:

- **Call with one click** — a little phone icon sits next to every number in
  TSync. Click it, confirm, and your desk phone dials, no typing required.
- **Know who's calling before you answer** — when a call comes in, a small pop-up
  appears on your screen showing the caller's details, if TSync recognises the
  number.
- **Keep a clean call register** — every call is logged automatically, with a
  searchable history of who spoke to whom, when, for how long — and a play button
  to listen back to the recording.
- **Never lose a new contact** — if someone calls from a number TSync doesn't
  know, it can create a new lead for you on the spot.

It has been tested with the Moldcell PBX system and works with phone systems that
can talk to TSync over the internet.

## What you'll need

- A phone system (PBX) that your provider lets you connect to other tools.
- A few connection details from that phone system — a web address and a security
  token. Your phone provider supplies these.
- An administrator in TSync to do the one-time setup below.

## Turn it on

Open **Setup → Modules**, find **TSync PBX Connector**, and click **Activate**.
A new **TSync PBX Connector** entry appears in the left menu with three pages:
**Settings**, **Users mapping** and **Calls**. Setup is three short steps.

## Step 1 — Connect to your phone system

Go to **TSync PBX Connector → Settings** and fill in the connection details.
The main ones:

| Setting | What it's for |
|---|---|
| **PBX Base URL** | The web address of your phone system's CRM API, for example `https://{domain}/crmapi/v1` (your provider gives you this). It must use HTTPS. |
| **PBX Auth Key (CRM → PBX)** | The security key TSync sends when it talks *to* the phone system (click-to-call, history sync). |
| **CRM Webhook Token (PBX → CRM)** | A key your phone system must send back when it notifies TSync, so only your PBX can reach it. |
| **Enabled** | The master on/off switch. |
| **Enable debug logging** | Writes extra detail to the log to help troubleshoot — leave off in normal use. |
| **What happens on a call from an unknown number** | Choose between **Journal only (recommended)** — the call is recorded in the Omnichannel inbox and you decide which callers deserve a lead — and **Create a lead automatically from every call**. See below. |
| **Enable incoming call popup** | Show the caller pop-up on incoming calls. |
| **Incoming call polling interval (sec)** | How often TSync checks for a new incoming call (3–30 seconds). |
| **Enable TSync BX view for leads** | Adds an extra "TSync BX view" link to the caller card when you use the BX Leads module. |

For your privacy, the two token fields show only the masked value once saved
(e.g. `••••1234`); leave a field unchanged to keep the current key.

### History synchronization

Lower on the Settings page you can also import past calls and keep them up to
date:

| Setting | What it's for |
|---|---|
| **History sync enabled** | Master switch for importing call history. |
| **Import internal calls** | Also log calls between colleagues, not just calls with customers. |
| **Backfill start date** | How far back to import old calls the first time. |
| **Steady lookback days** | How many recent days the routine top-up re-checks (1–30). |

A small table shows the sync status for each job (next date, last success, last
error, lock). The buttons **Run backfill now** and **Run steady sync now** let an
administrator import on demand instead of waiting for the schedule.

### Setup buttons

The Settings page also has these buttons:

- **Test PBX API** — checks that the address and key reach your phone system.
- **Test Webhook Auth** — checks that your phone system can reach TSync back.
- **Refresh PBX users** — pulls the current list of extensions from the phone
  system (used in Step 2).

Run the two tests; green results mean you're good to go.

### Should every call become a lead?

This is the one setting worth thinking about, because it decides how noisy your lead list gets.

**Journal only (recommended)** — a call from a number you don't know is recorded in the **Omnichannel**
inbox, with its recording, and **no lead is created**. Most calls are not prospects: suppliers, couriers,
wrong numbers, someone calling back twice. When a call *is* a real prospect, open it in Omnichannel and press
**Create lead** — the lead is created from the call and stays linked to the conversation, so nothing is
retyped. If that number already has a lead, TSync links to it instead of adding a duplicate.

**Create a lead automatically from every call** — the older behaviour, and still the right choice if you want
a card for every single call and prefer to clean up afterwards.

> Upgrading changes nothing: an install that was already creating a lead per call keeps doing exactly that
> until you choose otherwise. Only brand-new installs start on *Journal only*.

## Step 2 — Match people to their phone extensions

Go to **TSync PBX Connector → Users mapping** and tell TSync which extension
belongs to which team member. This is **required** for click-to-call to work and
so TSync knows who made or answered each call.

For each staff member you can set:

- a **PBX Extension** (their main extension, e.g. `733`), and
- one or more **Department Extension(s)**, separated by commas (e.g. `799,712`),
  for shared lines they also answer.

The quickest way: on the Settings page click **Refresh PBX users** to pull the
list of extensions from your phone system automatically (TSync tries to match
them to staff by e-mail and name), then come here to assign or correct each one
and click **Save**.

## Step 3 — Let your phone system notify TSync

Finally, in your phone system's own settings, point it at TSync so it can send
through call events (incoming calls, hang-ups, history, and so on). The address
to use is shown on the Settings page as the **Webhook URL** (it ends in
`api/tsync-pbx/webhook`), and your phone system must send the **CRM Webhook
Token** from Step 1 with each event. Your administrator or phone provider handles
this part; once it's done, the live pop-ups and automatic call logging start
flowing.

## Using it day to day

### Place a call (click-to-call)

Find a number anywhere in TSync — on a customer, a lead, a contact, or in the
**Calls** register — and click the phone icon (or the underlined number) next to
it. A small **"Call contact"** confirmation appears; click **Yes** and your desk
phone rings first, then the customer's.

### See who's calling

If incoming pop-ups are on, when a call arrives a toast slides in showing the
caller's name and number (if TSync recognises it). It offers **Open card** to jump
straight to the customer or lead, plus **Details** and **Close**.

### The Calls register

Open **TSync PBX Connector → Calls** for the full call history. Each row shows
the time, the matched **Customer / Lead**, the **Employee** who handled it, the
**Scope** (external or internal), the **Status**, the **From** and **To** numbers,
the **Duration**, and a **Recording** play button when a recording exists.

#### Building your own filter

The list uses the same filter tool as the Leads list, so instead of a fixed set of
boxes you build the question you actually want to ask — and keep it.

Click **Filters** above the table, then **Add rule**, and choose what to filter on:

- **Started at** — a date, a range, or a relative period such as "this month".
- **Status**, **Scope** (External / Internal), **Direction** (Incoming / Outgoing).
- **Employee** — the staff member the call is mapped to; or **PBX user name** and
  **Extension** when the extension was never mapped to a person.
- **From** and **To** numbers, **Duration (seconds)**, **Waiting time (seconds)**.
- **Recording** — has recording / no recording.
- **Linked to** — a customer, a lead, or nobody. "Nobody" is the useful one: it
  lists calls from numbers that were never attached to anyone.
- **Call-back status** and **Missed-call status**.

Add as many rules as you like and choose whether a call has to match **all** of
them or **any** of them.

**Save the filter and it stays.** Give it a name and it appears in the Filters
menu next time — as a private view, or shared with your colleagues if you tick
that. You can also mark one as your **default**, so the page opens on it. This is
per user: your saved views do not change anybody else's screen.

Sorting and paging work the way they do everywhere else in the app — click a
column heading to sort, and use the page-size selector under the table. The
search box above the table still finds a call by phone number, extension, PBX
user, **or customer/lead name**.

Click a customer or lead name to open a quick card with their contact details and
their recent calls, with links to **Open full card** (and **TSync BX view** if
enabled).

### Missed-call follow-up

For missed or unanswered calls, the register adds a coloured badge telling you
what happened next — whether the **client called back**, an **agent called back**
(and how long it took), or **nobody called back yet** — so a dropped call is easy
to spot and chase.

### Listen to a recording

Where a recording exists, click the **play** button on the row. A player opens
right under the call with **Open in new tab** and **Download** options, so you can
review the conversation without leaving the page.

### Reports

In the **Reports** console you'll find **Call Summary by Agent** (telephony
category): per-agent totals for inbound/outbound, answered/missed, the missed
rate, average duration, and how many calls turned into leads. It exports to Excel
and CSV and can be shown as a chart.

## Make calls trigger automatic actions

This module pairs beautifully with [Automations](tsync-automations.md). Every
call event — a received call, a missed call, a call that needs a callback, a new
lead created from a call — can **kick off an automation**. That means TSync can
react to phone activity all on its own.

A classic example:

- **When** a call is missed
- **Then** create a task for the lead's owner: *"Urgent callback needed."*

Set this up in **Automations** and no missed call slips through the cracks.

## Who can do what

You can decide which team members get which abilities:

| Ability | Give it to |
|---|---|
| **View** | Anyone who should see the call register and caller pop-ups. |
| **Call** | Anyone who uses click-to-call. |
| **Admin** | Managers who handle the settings, the extension mapping and the manual syncs. |

## See also

- [Automations](tsync-automations.md) — turn calls into automatic tasks and
  reminders
- [Romania — e-Factura & ANAF](ro-anaf.md) · [Moldova — FISC](md-fisc.md) —
  fiscal details for the leads created from calls
- [Getting started with TSync](../index.md) — back to the basics
