# FusionPBX is a FreeSWITCH management layer where the phone system is the multi-tenant unit

> FusionPBX is a PHP application that turns a FreeSWITCH installation into a domain based multi-tenant PBX, adding extensions, provisioning, call routing, voicemail to email, call centre features and a web management interface. It fits a service provider or large site running many phone systems on one box, and it does not fit a single small office that a plain FreeSWITCH configuration would already handle.

**fusionpbx/fusionpbx** — Official FusionPBX - A full-featured domain based multi-tenant PBX and voice switch for FreeSwitch.

- Repository: https://github.com/fusionpbx/fusionpbx
- Website: http://www.fusionpbx.com/
- Stars: 1,087 · Forks: 796
- Language: PHP
- License: not declared
- Published: 2026-10-19 · Updated: 2026-10-19 · Language: en
- Canonical page: https://hysenlabs.com/projects/fusionpbx-fusionpbx

## The same codebase is a PBX, a switch, a call centre and a voicemail server

FusionPBX is described as the official FusionPBX project, a full-featured domain based multi-tenant PBX and voice switch for FreeSWITCH. The list of roles it can take on is long, and the length is the point: it can be used as a single or domain based multi-tenant PBX, a carrier grade switch, a call center server, a fax server, a VoIP server, a voicemail server, a conference server, a voice application server, a multi-tenant appliance framework and more.

Underneath is FreeSWITCH, which the README describes as a highly scalable, multi-threaded, multi-platform communication platform. FusionPBX is the layer above it: the database schema, the provisioning logic, the web interface, the domain model and the dialplan conventions.

That division is the single most important thing to understand before evaluating the project. FreeSWITCH does the media and signalling work. FusionPBX is what turns a working FreeSWITCH into something an administrator, a reseller or a large organisation can operate at scale, where the unit of management is the domain rather than the individual extension.

The repository layout reflects a PHP web application rather than a telephony codebase. The top level holds app/, core/, resources/, themes/ and public/ directories plus index.php, login.php, logout.php,.htaccess and robots.txt. The last push was on 2026-10-18 and the release history shows 5.6.5 on 2026-09-21, 5.5.7 in January 2026 and 5.4.4 in July 2025.

## Installation is a shell script that pulls in the whole stack

The installer is a separate project, fusionpbx-install.sh, and the README gives per-distribution commands to run as root. On Debian:

```
wget -O - https://raw.githubusercontent.com/fusionpbx/fusionpbx-install.sh/master/debian/pre-install.sh | sh;
cd /usr/src/fusionpbx-install.sh/debian && ./install.sh
```

On Ubuntu the same two steps point at the ubuntu directory. On CentOS you first run yum install wget, then the pre-install script from the centos directory, then the install.sh. On FreeBSD the route is through the package manager, pkg install --yes git, then a git clone of the install repository into /usr/src, then the freebsd install.sh.

The pattern is consistent: a small pre-install script fetches the installer repository, and the install.sh in that distribution's directory does the work. The pre-install script is piped to sh, which is worth thinking about before running as root, since the content comes from a raw GitHub URL at execution time.

The README describes the script as designed to be fast, simple and modular, and says to start with a minimal install with SSH enabled. It installs FusionPBX itself, the FreeSWITCH release package and its dependencies, IPTables, Fail2ban, NGINX, PHP FPM and PostgreSQL. That list is the real scope of an install, and it is the reason FusionPBX is a heavier proposition than writing a FreeSWITCH XML config by hand.

Supported platforms are stated as Debian, Ubuntu LTS, FreeBSD, CentOS and more. The installer repository's readme is where the special cases are documented, and the README notes that some installations require special considerations.

## Features are grouped around domain, extension, routing and call handling

Beyond the usual PBX functionality, the README lists what FusionPBX lets you configure. The list groups into three rough families.

The first is scale and tenancy: multi-tenant, unlimited extensions, and device provisioning. Multi-tenancy with a domain model is what makes the same installation usable for a service provider, where each customer is a domain with its own extensions, users, dialplan and configuration.

The second is call handling: voicemail-to-email, music on hold, call parking, automatic call distribution, interactive voice response, ring groups, find me / follow me, and hot desking. Automatic call distribution and ring groups are the queue and hunt-group features that a call centre deployment needs, and interactive voice response is the menu system.

The third is availability and extensibility: high availability and redundancy, and dialplan programming that allows nearly endless possibilities. That last phrase is doing real work. In a FreeSWITCH-only setup, extensions, routing and queues are all in XML, and a large dialplan becomes hard to maintain. FusionPBX's contribution is moving that configuration into a database with a web interface, which is what makes the rest of the list maintainable at scale.

Beyond those, the README links to a features documentation page for the long tail.

## Membership tiers decide which features and support you get

A large part of the README is about the membership programme, and it is the part a reader evaluating the project should read carefully, because the open source repository and the supported product are not the same thing.

The memberships are for businesses that want to get the most out of FusionPBX. A member actively receives news and updates, has access to past training videos, additional member documentation, and live monthly continuing education training. There is also a specific operational benefit: members get advance warning of security related issues, and advanced bug reporting, which includes viewing select bug reports from other users so you do not spend time communicating details of an issue that is already known.

The tiers are Green, Blue and beyond, with a stated price of $100.00 USD monthly for the Green level, which allows one individual access to the listed benefits. The Blue level includes the Green benefits plus over an hour of official support each month. Further down the README, the feature gates are explicit: gold members get access to the FusionPBX REST API, and purple members get access to call center reporting and wallboard, with the wallboard marked as coming soon.

That last point is the one to sit with. The REST API is behind a paid tier, which means an integrator who wants to automate against FusionPBX through its API is making a commercial decision, not just a technical one. The project itself is open and freely installable, and the licence field in the repository is not filled in, so the exact terms are in the LICENSE file in the repository rather than stated in the README.

## Where FusionPBX is the wrong choice

The first wrong-tool case is scale, and it is the mirror image of the usual objection. If you have one office, ten extensions and one trunk, FusionPBX installs a web stack, a database, a provisioning system and a multi-tenant schema to solve a problem you do not have. A plain FreeSWITCH configuration, or a hosted PBX, is less machinery.

The second is operational appetite. The installer brings NGINX, PHP FPM, PostgreSQL, Fail2ban and IPTables, and FusionPBX is a PHP application with a database schema that evolves between versions. That is fine if someone owns the system. It is a liability if the phone system is one of twenty things on a server and nobody has time to read the changelog before an upgrade. The release history shows a 5.x line with releases spread over 2025 and 2026, so upgrades are a recurring task rather than a one-off.

The third is the membership dependency for anything beyond basic administration. If your plan depends on the REST API, on call centre reporting, or on advance notice of security issues, you are depending on a paid relationship with the project for those capabilities, and that is a different kind of adoption decision from installing open source software.

The fourth is upstream change. FusionPBX sits on FreeSWITCH, and a FreeSWITCH upgrade can change behaviour underneath a management layer that assumes a particular dialplan and configuration model. The README's own advice, to read the installer readme for special cases and to keep up with updates as a member, points at the fact that this is a system to be operated rather than a library to be called.

## Conclusion

FusionPBX fits an operator running several independent phone systems, a reseller hosting telephony for customers, or an organisation that needs per-tenant isolation, provisioning and self-service on one FreeSWITCH host, and it does not fit a team that wants a small, dependency-light SIP configuration. Before deploying, plan for the stack the installer brings, which includes NGINX, PHP FPM, PostgreSQL, Fail2ban and IPTables, and decide up front whether the paid member tiers are part of your plan, because the REST API access and call centre reporting sit behind the Gold and Purple levels.

## FAQ

### What is FusionPBX and what does it add to FreeSWITCH?

FusionPBX is a PHP application that adds a domain based multi-tenant management layer, database schema and web interface on top of FreeSWITCH. It adds multi-tenancy, unlimited extensions, device provisioning, voicemail to email, call parking, automatic call distribution, interactive voice response, ring groups, hot desking and high availability.

### How do I install FusionPBX on Debian or Ubuntu?

As root, run the pre-install script for your distribution and then the install script from the installer repository directory. On Debian the pre-install comes from the debian directory of fusionpbx-install.sh and you then run ./install.sh from /usr/src/fusionpbx-install.sh/debian. The installer sets up FusionPBX, FreeSWITCH, IPTables, Fail2ban, NGINX, PHP FPM and PostgreSQL.

### Is the FusionPBX REST API free to use?

The README states that gold members get access to the FusionPBX REST API, and that purple members get access to call center reporting and wallboard. The Green membership level is priced at $100.00 USD monthly, and the Blue level adds over an hour of official support each month.

### Which operating systems does FusionPBX run on?

The README states that FusionPBX will run on Debian, Ubuntu LTS, FreeBSD, CentOS and more, with separate install commands documented for each of Debian, Ubuntu, FreeBSD and CentOS. Special cases are documented in the fusionpbx-install.sh repository readme.

## Sources

- [fusionpbx/fusionpbx on GitHub](https://github.com/fusionpbx/fusionpbx)
- [Issues](https://github.com/fusionpbx/fusionpbx/issues)
- [Project website](http://www.fusionpbx.com/)
- [README](https://github.com/fusionpbx/fusionpbx/blob/master/README.md)
- [Releases](https://github.com/fusionpbx/fusionpbx/releases)

---

Hysen Labs editorial analysis, written from the project's own repository and release notes. Cite the canonical page: https://hysenlabs.com/projects/fusionpbx-fusionpbx
