In today’s business climate, securing customers’ balances and ensuring that the customers only use the service when they have sufficient funds is essential. Overdraft protection functionality helps you reach this goal. Refer to the Overdraft protection chapter for more details.
By default, the system operates in overdraft protection mode. With default settings, the total amount of a customer’s available funds is locked when a session is authorized. This means that another paid session can be authorized only after the first session ends.
For example, when a user makes a call, the customer’s entire balance becomes locked until the call ends. If another customer’s account attempts to make a new paid call at the same time, it won’t be authorized. The second call can be authorized only if it’s free, e.g., if a user dials a toll-free number or the dialed destination is covered by the quota.
This chapter describes the overdraft protection configuration such as locking a specific amount of funds for each session, which enables establishing several simultaneous sessions for a customer.
Dynamic re-authorization and fund locking
This is the most flexible overdraft protection configuration since the customer’s funds are locked “on the go,” and can update a session or initiate another concurrent one.
Dynamic re-authorization is fully supported by PortaSIP, allowing your customers to initiate several concurrent sessions and protect their balance from overdraft.
Note that since PortaSIP sends multiple re-authorization requests to PortaBilling, this might impose additional load on the system.
Let’s take this scenario as an example of the overdraft protection configuration:
John Doe is your residential customer. He has 2 phone numbers, one for himself and one for his wife Jane and he has subscribed to A-Z calls for a unified price of $1/min. He has $10 of available funds and may make a maximum of two concurrent calls. To prevent overdraft, you configure PortaBilling to allocate $3 for each session and re-authorize it for $3.
Enable re-authorization on the Configuration server
- On the Configuration server web interface, clone the existing configuration to modify it.
- From the Configuration tree select ClusterSuite > PortaSIP Cluster > <your_sip-cluster>MUB2bua group and set Yes for the allow_reauth option.
- Click the Save button and then the Verify button.
- Verify the new configuration and click the Check/Apply button.
Configure overdraft protection within the product
- On the Edit Product panel, click Charges and select Usage charges.
- On the Usage charges panel, click the button to configure the Overdraft protection.
- In the Overdraft protection section, configure the following options:
- Enable the Send alerts when overdraft is detected check box to receive notifications in case of overdraft.
- Specify 3.00000 for the Lock at least … for each session option.
- Specify 3.00000 for the Each fund lock allocates no more than option.
- Click Save to save the changes.
When customer John Doe makes a call, the following occurs:
PortaBilling allocates $3 for this call and computes the call duration at 3 minutes. The amount of available funds is $7. After 2 minutes, his wife Jane makes a second call. PortaBilling analyzes the amount of funds available ($7) and allocates $3 for this call to last 3 minutes. The amount of available funds remaining is $4.
John is still on the phone, therefore PortaSIP re-authorizes the call in PortaBilling. PortaBilling allocates $3 for another 3 minutes from the amount of available funds ($4) leaving $1 available.
When PortaSIP sends the re-authorization request for Jane’s call, PortaBilling locks the remaining $1 of available funds and computes the call duration at only 1 minute.
Since no more funds are available, John is disconnected 6 minutes after his call initiated while Jane is disconnected after 4 minutes of making her call. PortaBilling produces two xDRs for these calls, for $6 and $4, respectively.
Overdraft protection with legacy equipment
If your gateway is not capable of dynamic re-authorization, you must disable the overdraft protection to be able to establish simultaneous sessions. Although this could open up the possibility of overdrafts (since each session will be authorized based on the total amount of customer’s funds), you can diminish that by configuring PortaBilling to lock the optimal amount of customer’s funds for a session.
Consider the following example:
You are the cloud PBX solution provider. A small company, Easy Call, is your postpaid customer. Their staff consists of only three people; therefore, they need to be able to make simultaneous calls. Their credit limit is $10.
To secure the customer’s balance, you limit the number of simultaneous calls to 3 and configure the maximum amount of locked funds to $3 for every call.
Enable the simultaneous calls limit on the Configuration server
In order to limit simultaneous calls, configure PortaSIP to send accounting requests to PortaBilling when a call is connected.
- On the Configuration server web interface, clone the existing configuration to modify it.
- From the Configuration tree select ClusterSuite ->PortaSIP Cluster -><your_sip-cluster>MUB2bua group and set connect_disconnect for the accounting_mode option.
- Click the Save button and then the Verify button.
- Verify the new configuration and click the Check/Apply button.
Configure fund locking within the product
- On the Edit Product panel, click Charges and select Usage charges.
- On the Usage charges panel, click the button to configure the Overdraft protection.
- In the Overdraft protection section, configure the following options:
- Enable the Send alerts when overdraft is detected check box to receive notifications in case of overdraft.
- Specify 3.00000 for the Limit maximum locked funds for each session to option.
- Click Save to save the changes.
Limit simultaneous calls for a customer
To configure a limit on simultaneous calls for a customer, follow these steps:
- On the navigation menu on the left select Sales and then Customers.
- Use the Customer search panel to search for the desired customer, e.g., EasyCall.
- Click the customer name to enter their record.
- On the Customer panel, click Services and select Voice calls.
- On the Voice calls configuration panel, enable the Limit simultaneous calls option.
- Specify the maximum number of simultaneous calls allowed. This allows you to limit the number of concurrent calls for this customer’s accounts.
- Click Save.
When Easy Call’s staff make simultaneous calls, the following occurs:
- When the first call starts, PortaBilling allocates $3 and computes the call duration based on total funds available ($10).
- When the second call begins, PortaBilling analyzes the customer’s funds. There is a $7 balance, since $3 became locked for the first call. PortaBilling allocates $3 and computes the call duration based on the remaining funds ($7).
- When the third call is initiated, PortaBilling allocates $3 to authorize it but computes the call duration based on the $4 remaining.