Same Extension by DID

Is there a way to have the same extension with different users based on an external DID ? I am trying to save my client money but it’s too expensive to have 1 or 2 phones and then host a pbx. My idea would be to host one pbx with multiple customers that just need one phone. Problem is a lot of these use the same extension.

Don’t think you can do that without running additional servers.
FreePBX isn’t currently designed to run multi tenant systems.

If they only have one phone, why do they need extensions? Set their extensions to their DID and call it good.

Multi-tenant on FreePBX is a challenge and it’s really hard to get working. You’ll find people that are real experts that get it “kind of” working, but the extension problem is just the first of many problems you’re going to be chasing. After the extension issue, you’re going to run into the other features of the system that assume a single tenant (parking lots, for example).

The cost of standing up a new “server” is pretty low - I just bought an entire new server (case+hardware) for a little over $400. You should be able to find some old, used hardware that can handle the load for next to nothing. With virtualization, you can stand up multiple FreePBX instances on the same machine - since you’re talking about one or two customers per VM, the overhead should be minimal.