It is possible to have multiple isolated PortaBilling instances, or virtual environments, within the same PortaBilling installation. This functionality allows you to use PortaBilling as an ASP (Application Service Provider) platform, or to create test environments which do not affect billing production activities.
Each PortaBilling virtual environment contains a complete set of data specific to that environment. A user who logs in to a user account for a specific environment will see only the users, customers, tariffs, accounts, xDRs, statistics, and so on for that environment.
The PortaBilling web interface allows administrators with the Root role to navigate among the environments. Administrators can open the list of environments in the top right corner, look up a specific one, e.g., by its number (i_env value), and switch to that environment.
There are a few restrictions on the use of virtual environments to ensure their correct functioning:
- The login name for admin users must be unique across all environments. For example, you may not have a user ‘jack’ in both ABC-Production and ABC-Test environments. Rather, two users will have to be created, possibly ‘abc-jack’ and ‘test-jack’. The same applies to login names used by your customers/accounts/vendors on their self-care pages.
- A gateway (node) may be registered to only one environment. So you cannot have a node with the same IP address in two environments.
You may have multiple customers, vendor, or account entries with the same name across environments. For example, you may have an account ‘12345’ in both ‘ABC-Production’ and ‘ABC-Test’ environments (from the previous example). In this case, the decision as to which account (from which environment) is determined by which gateway sends the accounting record (i.e. one registered in ABC-Production or in ABC-Test environment).
You may create new environments or delete them from the Configuration server web interface.
A new environment is created empty except for a single user account that you use to log in and then create other users, tariffs, customers, etc.
By default, the account’s username is <env>-root, where <env> is the name of the environment you just created.
When you create a new billing environment, you define your email and base currency. Please note that you define the base currency only once and cannot change it once you save the environment. The default base currency is US dollars.
The user’s password is randomly generated when you create the environment. So, if you create the environment EasyCall, to log into it you use the username EasyCall-root and then the generated password.
The password is displayed only during the environment creation step. Thus, you must copy the password before clicking Save.