Routing info – LCR blending

Link copied to clipboard

In a multi-carrier environment where every termination partner offers different prices for the same destinations, it can be a challenging task to come up with a proper (profitable) price list for your resellers and customers. This is because you have to consider the price of every carrier while deciding how, exactly, to charge end customers. Further, you might use different routing plans for different products, requiring precise pricing in order to avoid losses on cheap calls via expensive premium vendors. So it all seems like a less than easy task. PortaBilling, however, incorporates an LCR blending report tool, which is just what you need for dealing with these issues.

This type of report is available for root and admin users only.

The goal

Link copied to clipboard

The ultimate goal is to analyze available routes, calculate the average termination price for each destination, and then use this as a basis for computing the rate for a given customer. The most important step is to “blend” the prices of different vendors according to a realistic scenario. For example, if there are three available carriers for destination 4471, with rates of $0.12, $0.18 and $0.30 per minute, respectively, calculating an average cost (0.12 + 0.18 + 0.30) / 3 = 0.20 would be incorrect, since it assumes that each of these carriers gets an equal share of traffic. Since you are using a real-time routing engine within PortaBilling, you are using least-cost routing and other features so that the cheaper carrier gets more calls, thus increasing your revenue. As a result, the cheaper carrier’s rate has a greater effect on the average termination price.

Therefore, routes are assigned “weight” parameters, where the weight reflects the share of calls going to this route compared to other routes. In our example above, we may assign a weight of 80 to the first route, 15 to the second, and 5 to the third (thus assuming that calls are distributed 80% / 15% / 5% among the three vendors). As a result, the average termination price is $0.138 per minute.

Create a report

Link copied to clipboard
  1. On the navigation menu on the left, select Financial and click Reports.


  2. On the Reports panel, select Report instances and fill in the report details on the Create report template panel:
    • Name specify a short name for your report (e.g., LCR blending).
    • Time zone specify the time zone of the report execution. This time zone will be applied to the date(s) in the report execution results and will also appear in the report result filename.
    • Type – select the “Routing info – LCR blending” report type from the drop down list.

      Create a report

  3. Click Save.

Input parameters

Link copied to clipboard
  1. On the Edit Report panel that opens, go to the Input parameters panel and specify the following details:

    Specify the input parameters

List of input values:
Link copied to clipboard



Range of values


Routing plan


Available routing plans; “All available routes” by default

Produce a routing list according to the specified routing plan.

Use only Destination Prefixes


Destination pattern

The available options are:

  • Matching the pattern – Produces a routing list only for a specific destination pattern, e.g., 49%. To produce a list of all available destinations, use %.
  • From a Destination Group Set – Produces a routing list only for destinations available in the specified destination group set (which can be selected from the drop-down list).
  • From tariff – The report will only include destinations present in the specified tariff. The tariff can be chosen from the drop-down list.



Date + time; by default – empty

Calculate routing at a specified time (if empty, use the current time at report generation).

Number of routes



Numeric up to 10; default – 3

The number of routes (from all available routes) that should be displayed for each destination.

1st route weight



How often this route is used; e.g., if the first route has a weight of 80 and the second, 20 – we can assume that, on average, 80% of all calls go via the first route.

Weight is not a percentage; rather, it is the number of calls that go via this route during the sampling interval. So if you enter 7 for the first route, and 3 for the second, it means that, on average, for every 10 calls, 7 will go via the first route and 3 will go via the second (or 70 / 30% split). Of course, you can enter the actual percent values here; e.g., in this example, you can reach the same result by entering 70 and 30.

Nth route weight



Same as above, for 1st route weight field.



Available protocols, SIP by default

Selects the routes that operate via the specified protocol.



List of “available” currencies (base + ones with a defined exchange rate)

By default, the base currency should be selected.

Selling rate markup, %



Numeric, can be negative; by default, empty (0)

Percentage to be added to the average vendor destination price as your profit.

Compare with Tariff


List of available tariffs; by default, empty

The list produced and its price will be compared with the selected tariff (use only if you need to compare the result with some existing tariff; if not, leave this blank).

Output data format

Link copied to clipboard
  1. On the Edit Report panel, click Output data format and configure the following parameters:

    Specify the output data format

List of output fields:
Link copied to clipboard




Phone number prefix of the destination.


Country corresponding to the current destination.


A short description of the specified destination.

Route N vendor

The name of a vendor for a selected route.

Route N price

The price a vendor charges you for a particular destination.

Route N, %

The route weight, i.e., how often this route is used.

Aggregated Price

Average price to the specified destination.

Suggested Sale Price

Suggested price calculated in accordance with the selling rate markup.

Tariff Destination

The destination in the tariff that was chosen for comparison.

Tariff X price

The price for this destination in the specified tariff.

Tariff <X> difference

Difference between “Tariff_x_price” and the suggested sale price.

Schedule panel

Link copied to clipboard

This panel allows you to run a report in “unattended” mode, and may be configured to run this report at any time on any date. Additionally, this can be done as a periodical task with daily, weekly and monthly intervals. You can schedule this report to run weekly at 1:00 pm on Fridays, so that by the time your weekly meeting is over, the report has been compiled and is ready for review:

Manage LCR blendng reports

  1. To schedule a new periodical task, click Schedule and specify the following parameters:
    • Run the report during the nearest available periodic task slot – there is no specified time for the report execution. The report will be run as soon as the available task slot appears.
    • Run the report at pre-defined date and time – specify the exact date and time for the report execution. Configure the following parameters:
      • Date & time – type in the date and time to run the report or click the icon and select the date and time from a calendar.
      • Repeat periodically – enable this option to execute the report periodically. Select the required period for the report execution (e.g., Monthly or Hourly) from the Period list.
    • Do not execute report automatically – to temporarily disable the report execution (but not delete the entry from the report schedule), enable this option. The report receives the suspended status.
The time parameter specifies only the preferred start time for the report. Report execution will not start earlier than the specified time, but it may start later if there are conflicting tasks scheduled at that same time. For instance, if two reports are scheduled to be executed at 6:00 am, only one of them can start at that time, while the other will start after the first one has finished.


tips TIP: You can monitor the process of report generation. The status of report generation will be reflected in the /porta_var/<your_domain>/log/httpd-error-web.log.

  1. Click Save to execute the report at the scheduled time.

After the report execution is successfully completed, the system will email the report to the addresses defined in the Send report to field on the Edit Report panel.

Specify an email to send report to

Report result panel

Link copied to clipboard

On this panel you can find a specific report result file stored in .csv format. Specify one or more of the search criteria on the Result file search panel and click Apply filters. The list of result files that matches your search query are displayed on the Report result files panel.

You can download one or several report result files. Click the download icon to download one specific report or select several reports and click the Download button on the toolbar.

Browse the results

Download several report result files

Behind the web interface

Link copied to clipboard

How are all the things mentioned above compiled into a human-readable report? Let’s assume we are generating an LCR blending report for all available routes where the “Destination pattern” is 44 (Great Britain), “Number of routes” is 2, and “1st route weight” is 80% (or just 80) while the “2nd route weight” is 20%.

When the Save button is pressed, the system finds all the vendors who can terminate a call to the destination defined in the report parameters. Prices from all matched vendors’ tariffs with a destination like 44% are retrieved and processed in accordance with defined “route weights” for each available vendor.

If you set “Number of routes” to 2, all other routes available for that routing plan will be ignored. So the best way to get a clear and correct report is to set the “Number of routes” parameter equal to the number of route categories included in that particular routing plan.


The next step is to calculate the average price for all the vendors involved. In our example, 8 out of 10 calls will go to the 1st route (we set its “weight” at 80%). Then all the gathered data is analyzed and the average price is calculated. The 1st vendor’s price will have the highest “priority” in the calculations, to reflect the fact that it will be the most used.

When calculating the aggregated price, only connections, not vendors, are taken into account. This helps to prevent a situation where a single vendor with 5 gateways (5 different connections – same price) occupies a whole list of routes when we have only specified 2 routes. In such a case, the “aggregated price” would be equal to this vendor’s price, which is not correct.


Additionally, the percentage defined as “selling rate markup” is added to the average destination price calculated during the previous step to form the recommended selling prices for each destination that matches the 44% pattern.

The final step is to display the prices of an existing tariff next to the new ones produced by the LCR blending report (if you have specified a tariff for comparison when configuring the report).

When & how to use

Link copied to clipboard

New routing plan created

Link copied to clipboard

One example of a case in which this report is applicable is when you have created a new routing plan for premium customers, and need to generate a price list to bill for the calls accordingly. For providing services to the most demanding premium customers, you will most likely be using a special routing plan like “Globalcalls.” This will include the most expensive and most reliable vendors with the highest ASR and sound quality. When the new routing plan is ready to use, you will need to have an appropriate tariff & product to make use of it. Please refer to the Voice services section in the PortaBilling Administrator Guide for more details on how to configure routing parameters and routing plans.

It is then time to start using LCR blending reports. They can save you a lot of time, since recommended prices are generated automatically according to route analysis and routing cost. Open the Report template and enter the appropriate data in all the necessary fields on the Input parameters panel and, if needed, the Output data format panel as well. See the list of Input values and Output values above for a detailed description of all the available fields. As you are not comparing tariffs, you may leave the Compare with Tariff field blank. This report will use the following input parameters:

  • Routing plan – Premium.
  • Use only Destination Prefixes – matching the Pattern “%” (meaning every available destination).
  • Number of routes – 3 (there are 3 vendors in the routing plan).
  • Weight of route 1 – 80% (you assume 80% of calls will go to this vendor).
  • Weight of route 2 – 15% (you assume 15% of calls will go to this vendor).
  • Weight of route 3 – 5% (you assume 5% of calls will go to this vendor).
  • Selling Rate Markup – 8% (expected profit margin).
  • Currency – US Dollar.
  • Compare with Tariff – skipped for now.
You need to select a newly created routing plan in the “Routing plan” field in order to obtain the correct results, since by default, the “All available routes” option is selected.


Go to the Schedule panel and select the Run the report during the nearest available periodic task slot option. This is a rather large report, so it can take a while to be produced. You can check the status of report execution on the Edit Report panel.

The status of report execution

How to read it

Link copied to clipboard

When you created the “Globalcalls” routing plan, you included 3 vendors in it. All of them are prioritized differently; the first one handles the vast majority of calls (since it is first on the list, with the highest priority), while other vendors have the opportunity to terminate a call in case the first one fails to do so for some reason. This first vendor’s info is shown as Route 1 and on the LCR blending report results page, as Route 1 Price. The Route 1 Price will be the basis for the suggested sale price, since you will send about 80% of all calls to it. In spite of possible differences in prices, the Route 2 and 3 prices will have less influence on the resulting sale price, since you will use those vendors mostly as failover solutions.

The results page provides you with a routing and price data overview for each of the 3 vendors. The most important columns are:

  • Destination – destination phone prefix.
  • Route 1 % – you assume that on average, 80% of calls go via the first route.
  • Route N % – you assume that on average, x% of calls go via the Nth route.
  • Route 1 Price – price vendor 1 charges you for calls to that destination.
  • Route N Price – price vendor N charge you for calls to that destination.
  • Aggregated Price – the average price of all vendors combined, with each route’s weight taken into consideration.
  • Suggested Sale Price – the aggregated price + 8% (which you have defined as the selling rate markup).

Modifying the report format

Link copied to clipboard

As the only intention is to generate a profitable price list and no routing analysis is needed here, you can hide all unnecessary data.

On the Output data format panel, use a slider to disable the unneeded elements to prevent them from showing up on the results page (in this example, only “Destination,” “Description,” and “Suggested sale price” are left).

There is also a post-processing rule field. Here you can define a Perl regular expression that will rewrite the original values accordingly.

Hide all unnecessary data

The report results file will look like the following (no extra data, just destination and price):

See the results

Quick way to check and redesign existing tariffs

Link copied to clipboard

In addition to the information about routes and the suggested price list for the selected routing plan, an LCR blending report can compare its suggested price with a specified existing tariff. It may be helpful to compare your current prices for different end-user groups with those computed with the help of the LCR blending report, and to modify the existing tariffs, if needed.

Before starting the report compilation, simply define the tariff you wish to compare the report’s results to on the Input parameters panel, and then execute the report:

Quick way to check and redesign existing tariffs

With a tariff defined, the results page will have several new columns:

  • Tariff Destination – the corresponding destination in the tariff that was chosen for comparison.
  • Tariff Price – the price to make calls to this destination within the defined tariff.
  • Tariff Difference – the difference between the recommended sale price and the current price in the tariff.

Fields like “Route N Price” and “Route N%” have been excluded from this report to give you a clearer view of the new columns on the results page.

Tariff upload

Link copied to clipboard

Uploading vendors’ tariffs is not a problem, since vendors themselves provide you with a file containing all the destinations and prices. If this is your own tariff, you will need to create such a file yourself. If the suggested sale price suits you, you can create a new tariff and easily upload the rates for it using a .csv file with report results as a template. Refer to the Rate Import handbook for more information about uploading rates.

PortaBilling requires that you have at least the Destination and Suggested Sale Price data fields visible to be able to use a CSV file for tariff upload.



Link copied to clipboard

The LCR blending report tool is primarily designed to display routing options for each destination and produce suggested selling prices. It creates a list of available routes for each destination and presents them in a form that allows for easy calculation of “blended” route pricing.

On this page

What's new
Admin manuals
UI help
Back to main menu