How Enswitch billing works
The customer is the basic entity within Enswitch. Each person, telephone line, mailbox, etc, belongs to a customer. All billing is done per customer, except calling cards, which have their own balance.
Customers are arranged in a tree structure; there is a single system owner, which is usually the company owning the Enswitch installation. This customer then has zero or more customers. These customers can optionally be resellers with customers of their own, and so on. There is no limit to the number of levels of resellers.
The system owner and any resellers may make rate plans. These define which features are available to their customers, and how much these features cost. Each customer has a rate plan, created for them by their parent.
Each customer has a balance, which is how much their parent owes them. Making chargeable calls, adding telephone lines, etc, decreases this balance. The amount charged is defined by the rate plan assigned to the customer by their parent. Topping up increases this balance. Each customer also has a credit limit; if the balance drops below ( 0 - credit limit ), the customer may no longer make chargeable calls.
Most paying customers are post-paid or pre-paid. Post-paid customers start wih zero balance and as they make calls go into negative balance as far as their credit limit allows. For example, a post-paid customer with $500 credit can reach a maximum balance of $-500. Pre-paid customers start with whatever amount they've pre-paid and their balances decreases towards zero as they make calls. Most pre-paid customers have $0 credit, so will not be able to make chargeable calls once their balance reaches $0. Balances can be thought of as each reseller running a bank in which their customers have bank accounts. In this respect setting a customer to be post-paid is like giving them an overdraft credit facility, and pre-paid only allows the customer to spend their own savings.
In the rate plan, the reseller sets prices for signup, SIP accounts, etc, both on one-off signup and monthly recurring basis. They then set percentage markups for incoming and outgoing calls. For example, consider the following call out:
Action | Cost so far | Profit |
---|---|---|
Carrier charges (price set in outbound group): | 2.00 | - |
System owner marks up by 20%: | 2.40 | 0.40 |
Reseller marks up by 10%: | 2.64 | 0.24 |
Customer is charged: | 2.64 | - |
Therefore the reseller's balance is decreased by 2.40 (i.e. they owe 2.40 more to the system owner), and the customer's balance is decreased by 2.64 (i.e. they owe 2.64 more to the reseller). The customer does not owe the system owner; it is up to the reseller to collect the 2.64 from the customer and send 2.40 to the system owner, keeping the remaining 0.24.
As an alternative to markups, resellers can set their own prices for particular inbound and outbound groups. Most resellers will use markups for most groups, and override these for a few groups they particularly care about. Setting prices for every group is not recommended, as this leads to many updates being required any time the parent reseller changes their prices.