Sending voice, data, picture, fax, etc., from one point to another using electronic media is termed as telecommunication and in short 'telecom'. Examples include Phone, Radio, Television and Internet. The medium of transmission includes Wire (Copper), Fiber Optics, Ether (wireless), Radio towers, Microwave, Satellite, etc.
Now, let us list down a few international telecom operators, who are providing satisfactory telecom services to their customers −
Let us also list down a few basic telecom services being provided by various well known telecom operators −
Telecom operators are charging their customers in various ways, but there are two mainly used parameters to charge a customer −
Rental Charges − These are the charges taken from the customers on monthly basis against the service provided. For example, your telephone monthly charges would be $5.00 regardless you use it or not.
Usage Charges − These are the charges taken from the customers based on the service utilization. For example, you would be charged for all the calls you made or data downloaded using your phone.
Apart from monthly rental and usage charges, operators may charge you for service initiation, installation, service suspension or termination as well.
Telecom Billing is a process of collecting usage, aggregating it, applying required usage and rental charges, and finally generating invoices for the customers. Telecom Billing process also includes receiving and recording payments from the customers.
There could be very complex charging scenarios, which would be difficult to handle manually. There are state-of-the-art Billing Systems available in the software market that can handle billing tasks very efficiently and provide lots of flexibilities to service providers to offer their services with different price structures.
Billing systems are often viewed as accounts receivable, as the billing system assists in the collection (receipt) of money from customers. Billing systems are also part of accounts payable (for inter-carrier settlements), as customers often use services from other companies such as wireless roaming, long distance, and call completion through other networks.
Billing systems are high end, reliable, and expensive softwares, which provide various functionalities. Here is a list of most important features but not limited to the following −
Rating & billing − It involves rating the products or services usage and producing monthly bills.
Payment processing − It involves posting of the customer's payments into his/her account.
Credit control and collections − It involves chasing the outstanding payments and taking appropriate actions to collect the payments.
Disputes and adjustments − It involves recording customer's disputes against their bills and creating adjustment to refund the disputed amount in order to settle the disputes.
Pre-pay and post-pay services − It involves supporting both the pre-paid and the post-paid customer bases.
Multilingual & multiple currencies − Multilingual and multiple currencies support is required if the business is spread across the globe and have multinational customers or else if the government regulations demand for it.
Inter-carrier settlements − It involve sharing of revenue between carriers that provide services to each other's customers.
Products & services − This involves providing flexible way to maintain various products and services and sell them individually or in packages.
Discount applications − This involves defining various discount schemes in order to reduce customer churn and attract and increase customer base.
When you drill down billing subject, it becomes more complicated. I would try to cover most of the concepts later in this tutorial, but first, let us have a broad view of the widely used billing types −
Pre-pay Billing − A billing mechanism where customer pays in advance and after that starts using a service. Usually, prepaid customers do not receive any invoice and they are charged in real time by the highly available billing systems called 'IN'(Intelligent Network).
Post-pay Billing − This is the conventional billing, which is coming for many years. Here, customers buy products and services and use them throughout the month, and by end of the month, invoices are generated by the service provider and sent those invoices to the customers to make their due payment.
Interconnect Billing: The network operator is usually financially responsible for services provided to its customers by other networks regardless of whether or not the customer pays for the service. Interconnect billing is related to inter-carrier or sometime called partner settlements.
Roaming Charges − When a customer goes from one network operator's coverage area to another operator's coverage area, the first operator would pay marginal charges to the second operator to provide services to their customers. Such type of charges are settled through roaming billing. This settlement is done as per TAP3 protocol, which we will discuss in the upcoming chapters.
Convergent Billing − Convergent billing is the integration of all service charges onto a single customer invoice. Convergent billing means creating a unified view of the customer and all services (Mobile, Fixed, IP, etc.,) provided to that customer.
Billing Systems are the backbone of any telecom operator. If operators do not have a strong billing system, then it would not be possible for them to offer their products and services with attractive promotions and deals and ultimately they can not stand in today's competitive and dynamic market.
You can find thousands of vendors, who are selling their billing products with a claim of lot of features, but there are a few in the market which are really good and most commonly used. Some of the good billing systems are listed below −
The following diagram shows the typical architecture of a Billing System −
Here, we have two possibilities −
CRM (Customer Relationship Management)/OMOF (Order Management and Order Fulfilment) system contacts with the billing system and billing system contacts with provisioning system to provision the services and network inventory system as well to assign phone numbers or IP addresses, etc.
Second possibility could be that the CRM/OMOF system itself contacts with provisioning system to provision the services and network inventory system as well to assign phone numbers or IP addresses, etc.
Considering the above system architecture: → After a call is made or you can say a usage is generated by the end customer, the mediation system gathers usage data from the network switch and builds a call-detail record (CDR). This CDR must contain 'A' party number and 'B' party number, the start and the end date & times.
The CDR is then stored until it can be rated. To rate the call, the CDR is examined to see if the call is, for example, an 800 number, a local call that is covered by a local-area calling plan, international call or a toll call. Information such as the time of the call was placed and city code or country codes are used to calculate the rate for the call.
Once each call is rated, this information is stored until the invoice is run, usually once a month. When the invoice is run, other nonusage charges, such as discounts or monthly fees, can be applied to the bill or sometime called invoice.
There could be a rating time discount or billing time discount, different payments done by the customers, different adjustments given, all these information contribute in the final invoice generation.
This information is then converted in a format, which can be printed in a readable form. Finally, the envelope is printed, stuffed with enclosures, and mailed to the end customer.
A billing system should be composed of a series of independent applications that, when run together, are referred to as the billing system. A good billing system should provide the following major functionalities with a depth of flexibility −
Customer-interface Management − The billing system must be able to handle customer-initiated contact, oversee outbound customer contact, and manage the contact life cycle.
Order Management − It is a basic functionality, which should be available in a typical billing system. Billing system should be capable enough to capture product & service order and manage the order-entry life cycle, and oversee the order-completion life cycle.
Sales and Marketing − A satisfactory billing system should answer customer's query, handle commissions, provide sales support, track prospects, manage campaigns, analyze product performance, and acquire multiple dwelling units.
Rate Plans and Rating − A billing systems must manage a variety of products and services, different rate plans associated with those products and services and should provide flexible ways to rate usage generated by those products and services.
Discounting − A billing system should be capable of giving various types of discounts on different usages and rentals.
Invoicing − It is important that the system performs billing inquiry, generates bills, processes deposits, performs account administration, maintains tax and fee information, and processes financial information.
Credit Control & Collection − A billing system should control usage and revenue by assigning different credit classes to different customers. System should support payment collection and applying them on different invoices.
Multilingual Support − Multilingual support involves providing invoices and customer care services in multiple languages.
Multiple Currencies − Multiple currencies used in different countries can complicate the billing system as the billing and customer care system must be capable of recording and processing in units of multiple currencies.
Partner revenue management − Partner revenue management are the sharing of revenue between carriers that provide services to each other's customers.
Problem Handling − A billing system should also be able to manage trouble-ticket entry, coordinate trouble-ticket closure, and track the resolution progress of a trouble ticket.
Performance Reporting − A satisfactory system will provide performance reporting, ensure quality-of-service (QoS) reporting, create management reports, and generate regulatory reports.
Installation and Maintenance − The system should also provide workforce scheduling and manage activities performed at the customer premises.
Auditing & Security − A billing system should perform data audits and integrity checks. A secure system is always desirable for an operator.
Apart from the above functionalities, a good billing system should be −
Accelerating time-to-market for new service launches.
Enabling convergent view of customers and products.
Supporting cost-efficient architectural scalability.
Enabling partner relationship management and settlement.
Reducing total cost of ownership.
Starting from the next chapter, we would try to cover complete process starting from defining products and services, associating plan and tariffs with those products, acquiring customers (selling products to the end customers), capturing usage generated by those customers, and finally, rating and billing that usage to send a final bill to those customers.
Let us suppose a telecom operator like Airtel wants to set up a billing system of its own. Then, Airtel would have to first define its products and services by its sales and marketing department before moving on to set up a billing system.
A product is a logical or physical entity, which can be sold out to an end customer by the operators. This could be a mobile phone, internet connection, Voice call connection, VPN, Video on demand, Digital TV connection, etc.
A product can have its monthly rental, which we call periodic charges also. A product can be usage generating product or non-usage generating product. A usage generating product is sometime called event generating product and non-usage generating product is called non-event generating product.
For example, voice call connection, which comes along with a phone number, is a usage generating product because it generates usage whenever end customer uses this product to make a voice call. A simple phone set without a connection is a non-usage generating product and it could be given to a customer based on monthly rent only. So even if, a customer is not using it, he has to pay monthly rental.
When we talk about them from marketing point of view, as such there is no difference between products and services because most of the times, both are used interchangeably by different billing and marketing experts.
Simply put, an operator uses its products to provide voice services to its customers. An international call can be called a service provided using a voice call connection. Another example could be 800 number call may or may not be available through a particular operator, call waiting, call forward could be said a service provided by a model of a phone set or by an operator.
This tutorial will use Product and Service terms interchangeably. Keeping it simple, Products are the items that customers can either buy outright or lease. products may be −
Related products can be grouped together into a product family. Multiple levels of products are possible, so a product can be both a parent and a child at the same time.
In addition, each product family can have more than one parent product if required. Examples of product families are −
Many a times, operators bundle more than one product into a single group and sell them as complete package. There are billing systems, which support bundling of various types of products together as a package. It can be offered at discounted price.
Packages allow a product to be offered to a customer at a reduced price if it is taken as part of a package. Each package can consist of any number of products and these products can be taken from more than one product family.
This package price plan for a product is usually different to its comparison (that is, non-package) price plan, as this is how the company offers a discount to the customer for buying the complete package. However, this is not mandatory, as a product can have one of its normal price plans assigned to it within a package.
A product can have a number of attributes associated with them. Product attributes allow information about individual product instances to be held where the relevant information differs between types of product. For example, a pay TV product may have an attribute recording its set-top box number.
Further, a mobile phone product may need attributes to record the International Mobile Subscriber Identity (IMSI) and Mobile Station International ISDN Number (MSISDN).
A product can have a number of event types associated with it. These event types govern the events that can be generated by the product.
For example, a mobile phone product could have event types such as voice calls and messaging services. There could be many more event types associated with a single phone device and operator can charge end customer for each of the event generated by the customer.
Once your marketing department finalized all the products, services, packages and associated prices, they are configured in the billing system.
Different billing systems provide different levels of flexibilities of defining products and their hierarchies in terms of parent, child, and grandchild products.
Some systems are flexible enough to support packages and bundles and a few provide limited functionalities related to packages and discounted prices.
Some systems keep product catalogues separately from the price catalogues to provide better modular approach and some billing systems combine products descriptions, their features, and associated prices altogether.
Once all the products, services, packages and their events are configured in the billing system, next step is to define their rental and usage prices, which we will cover in next chapter.
If you understood what is a product or service and package, then you can proceed to the next chapter to understand how their prices are defined by the marketing department available with any operator.
Marketing department in a telecom operator company works hard to define rental & usage charges for different products and services. These charges are defined keeping other competitors and regulations in mind. Broadly speaking, there are two type of tariffs, also called rate or price plans, depending terminology used in different billing system.
There could be different types of charges to be applied for a product and associated services. For a given product, an operator can define one or more of the following charges, but they are not limited to only these charges, there could be some other type of charges depending on country, location, and business situation −
Product Initiation Charges − These are one-time charges, which can be taken from the customer as a part of installation, activation, service or initiating a connection.
Product Periodic Charges − These are the charges, which can be applied on monthly or bi-monthly or yearly basis as a rental of the product and service provided.
Product Termination Charges − These are the charges, which can be applied on termination of the product and service.
Product Suspension Charges − These are the charges, which can be applied if a product is suspended because of some reason; for example, non-payment.
Product Suspension Periodic Charges − There could be a requirement to charge a customer periodically even if a customer is suspended because of some reason.
Product Re-activation Charges − Assuming a product was suspended due to some reason and now it needs its activation, an operator can apply re-activation charges for this service.
Product Usage Charges − This is most important type of charge, which would be applied based on the usage of the service. For example, call per minute or per second, data download per MB, etc.
All the above charges are defined (i.e., configured) in different tariff catalogues inclusive or exclusive of applicable tax depending on regulatory. These catalogues vary from a billing system to billing system. Some billing systems keep all the prices in a single catalogue and some billing systems keep usage charges separate from other charges.
These catalogues are maintained in the billing system, but they are also made available to front end system so that different tariffs can be applied to the customer while creating customer account.
All the prices are defined based on products and their packages as well. There could be different combinations of products giving different prices in different packages.
Following section would give you an idea on different concepts, which are closely related to tariff definition −
There may be situation, when an operator would like to charge their customers in advance for some services and at the end of every month for some other services.
Charges taken in advance before providing the services are called in-advance charging and charges taken after providing the services are called in-arrear charges.
For in-arrears charging, the product charges are applied for a period up to at least the day before the current nominal bill date (or bill request date for non-periodic bills).
So while configuring different charges, billing system should give a provision to configure charges in advance and it is always optional for the operators if they want to configure a particular price in-advance or in-arrears.
NOTE − Usage charges can not be taken in advance until they are lump-sum because you never know how much usage a customer is going to generate in the coming month. If they are lump-sum amount, then you can take that amount in advance and let the customers use unlimited services based on their requirements.
Consider a situation, when a customer takes phone connection in the middle of the month and his invoice needs to be generated on the first day of every month. If prices are non-proratable, billing system would charge the customer for the whole, month which would not be fair with the customer. Same apply at the termination, if customer terminates a service in the middle of the month, then operator may not be willing to charge the customer for rest of the month.
Pro-ratable pricing means that they would apply only for the number of days customer is going to use the service. For example, if monthly product rental is $30 and customer used this product for 10 days only, then billing system should charge the customer only $10 for those 10 days.
So billing system should provide an option to configure the particular prices to be pro-ratable as well as non-proratable and let the operators choose what suites them best.
Now, let us consider a situation where an operator is charging a customer in advance for the whole month, but customer leaves in the middle of the month after using a service for 10 days.
If prices were configured as non-refundable, then they would not be refunded to the customer, but if they were configured as refundable, then they would be refunded to the customer. Second rule, if prices were configured as pro-ratable, then they would be refunded based on pro-ration, otherwise they would be refunded as a whole.
A good billing system provides an option to override base prices at the time they are given to the customer.
For example, for a particular product base prices in the catalogue are defined $30 per month but customer is not ready to pay $30 per month, and based on some bargaining, he is ready to pay $25 per month. In such a situation, customer service representative (CSR) should be able to override defined base price $30 and add them as $25 at the time of customer creation in the system.
Billing system should give an optional provision to the operators if a particular price can be overridden or not and let the operators decide if they want to override some charges at the time of sale or they are fixed in all the situation.
All the operators would like to know how much they have earned using a particular product, its rental, suspension or usage, etc.
While defining different prices in the catalogue, billing system should give a provision to associate some kind of revenue codes or keywords with different types of charges. This helps in generating different reports based on the codes associated with the revenue.
An operator may define different tariffs, which can be offered to different people having different credit classes. For example, a 5mbps data line at a cost of $100 per month can be offered to a customer having monthly income more than $1000/month and a 1mbps data line can be offered to a customer having minimum monthly income $500/month.
All the billing systems give options to define different credit classes, which can be assigned to customers based on their credit history and income and may be based on some other parameters defined by the operator.
All the products and services can have different tariff plans, which can be offered to different classes of people ranging from general class to VIP class.
There are number of parameters, which can be used while defining usage charges. For example −
Calls in daytime, usually called peak time, will be charged on higher rate and in night time, i.e., off peak time rate will be relatively low.
If calls are terminating within the same network, usually called on-net calls, would be charged at relatively low prices.
Calls during weekend, i.e., Sat and Sun would be charged at low prices.
Calls to a particular destination would be charged at high prices.
Calls during some festival would be charged at special prices.
Data download from a particular site would be free of cost.
Sending SMS to a particular code would be charged at high rate.
Calls within a particular group of numbers, usually called closed user group (CUG), would be charged at zero price.
Sending international or national MMS would be charged at the same prices.
Billing systems provide lots of flexibility to define various such rules to charge voice, data, SMS, or MMS usage generated by the customer.
Now, we have all the products, services, and associated tariffs available in the billing system. In the next chapter, we will see how to sell these products to the end-users and create their records in the system.
A customer is a "legal entity" (that can be either an individual or a company) that takes the products and services offered by the service provider and responsible for paying the bills. In a residential billing scenario, a customer might be a single householder. In a business billing scenario, a customer might be a corporation.
Individual customer − An individual customer is a single person (or household), who buys one or more products and pay the bills. There would not be any hierarchy required to maintain customer or account.
Company customers − A company customer is a single company or branch of a company. There could be a typical parent and child type of customer hierarchy representing different branches or departments of the company.
Customer Acquisition is the process of identifying, attracting and retaining the potentially profitable customers. This is a handled using system called Customer Relationship Management (CRM), which is one of the important business support systems (BSS).
A CRM system would always be connected with various systems including billing system and feeds customer personal data and product and service information to the billing system.
A customer, who is purchasing the products & services, needs to be activated in the system and for this, various details about the customer are required −
The customer may have to fill up an application form providing personal details.
Validate the identity of the customer in order to prevent fraud.
Service Provider needs to carry out a credit check on the customer and assign appropriate credit class based on credit history and monthly income, etc.
Offer appropriate products, which are provisioned at the network to provide the service.
Once the customer is acquired, it is required to manage and retain the customer, which involves −
Interacting & communicating with the customer for sales and collection activities.
These interactions can be recorded in different formats like Notes, voice recordings, etc. This data can be used to analyze the behavior of the customer and helps the service provider to provide better services in order to retain the customer
Handling trouble tickets raised by the customers against any problem they face with the network or invoice, etc. This data can also be used to analyze the behavior of the customer and helps the service provider for the betterment of the services in order to retain the customer.
Handling any bill disputes and adjustments raised in between the customer and service provider.
A typical customer life cycle is shown below in the following diagram −
All the phases comprising a customer life cycle are briefed here −
Customer Engagement − The customer contacts the CSR (Customer Service Representative) and the CSR engages the customer with the various products and services offered by selling them to the customer.
Order Creation and Fulfilment − The customer takes the product(s) and services(s) and the CSR creates and completes the order into the system, which is then fulfilled by supplying required product and services to the customer.
Service Provisioning − The products and services are provisioned at the network using a system called Provisioning System. The Provisioning System informs the network about the customer's information and the services they are authorized to use. In fact, this activates the customer on the network.
Products Utilization − Once the customer is activated on the network, the customer starts using the products & services including, making a call, data download, etc.
Products and services usage is Rated & Billed − Customer usage is collected from the network and then it is rated based on the defined rate plans and billed to apply product rentals and required discounts, adjustments, etc.
Bill Delivery − Once a bill is generated, it is delivered to the end customer demanding for the revenue against the services provided.
Bill Payments − Customer makes the payments against the received invoices.
Dunning & Collection − There may be many customers, who will not pay their bills on time. For such type of customers, different dunning letters are sent to remind them about their payments. If a customer does not pay on time, then different collections are taken starting from stopping the customer services one by one.
Customer Termination − There may be various reasons when it is required to terminate a customer in the system. For example, customer may be migrating to different location, or customer may not be happy with the services provided, etc.
On a given date, total number of active customers in the system are called the customer base. Adding a customer into the system, and terminating a customer from the system, is known as customer churn.
Typically, there are following types of customers in today's telecom market −
Mobile Pre-Paid Customers − These are the customers, who use Mobile services by paying their charges in advance. For example, GSM, GPRS phone users. These customers recharge their phone based on their requirements.
Mobile Post-Paid Customers − These are the customers, who use Mobile services by paying their charges after every invoice they receive. For example, GSM, GPRS phone users. These customers pay their bills on monthly or bi-monthly basis.
Fixed Pre-Paid Customers − These are the customers, who use Fixed line, i.e., landline services by paying their charges in advance. For example, PSTN, WiMax phone users. These customers recharge their phones based on their requirements.
Fixed Post-Paid Customers − These are the customers, who use Fixed line, i.e., landline services by paying their charges after every invoice they receive. For example, PSTN, WiMax phone users. These customers pay their bills on monthly or bi-monthly basis.
Now, we have customers in our billing system along with products and services. Customer starts utilizing all the products and services bought and start generating national and international, data and voice calls, which will be rated and billed by the billing system and we will discuss those processes in subsequent chapters.
A customer starts generating usage at Network as soon as he/she starts using the products and services sold by the operator. A network element is a combination of software plus hardware and responsible for overall service control and metering events for any type of service.
An event is a single billable occurrence of product usage, typically captured electronically by a network. For example, when a mobile phone user makes a telephone call, an event is generated, which contains information about that phone call, such as the call duration, the time of day the call was made, and the number that was called.
An event along with all its attributes is called Call Detail Record (CDR). A data collector in the network switch captures the usage in the form of Call Detail Record (CDR)/Usage Detail Record (UDR). These raw CDRs/UDRs are in turn converted by the mediation system into a format understandable by the Billing System.
There could be different network elements controlling the services and producing different types of CDRs; for example, for GSM telephony −
For more information on GSM, MSC, SMS, SMSC, GGSN, MMS, MMSC, please refer to our GSM tutorials.
The following diagram shows the Network elements capturing Usage data and sending Raw UDRs to the Mediation System and finally to the Billing System for rating and billing.
As mentioned above, a CDR keeps usage details along with various other useful information. Below are the most important attributes of a CDR −
Calling Party (A number).
Called Party (B number).
Call Start (date and time).
How long the call was (duration).
Call Type (Voice, SMS, Data etc).
A unique sequence number identifying the record.
Additionally, a CDR may also record other information such as −
The identifier of the telephone exchange.
The result of the call (whether it was answered, busy, etc.).
Trunk or route used to connect the call.
Any fault condition encountered.
Indicators that note the use of features such as call forwarding, three-way calling, etc.
Any facilities used during the call, such as call waiting or call diversion.
Various other attributes depending on requirement.
The accurate recording of all required information in a UDR depends on the logic of the switch vendor plus the switch specific table entries. If either of these cannot record the data accurately, the mediation system will not be able to recognize the completed calls and pass them to the billing system.
The Mediation System collects CDRs from different network elements in different formats. Various network elements generate CDRs in ASN.1 format and some network elements have their own proprietary format of CDRs.
The Mediation System processes all the CDRs and converts them into a format compatible to the down stream system, which is usually a Billing System. The Mediation System applies various rules on CDRs to process them; for example, mediation system marks the international calls based on the dialed number (B-Number), same way mediation system marks the on-net calls based on A-Number and B-Number.
There may be a requirement to filter out all the calls, which are having call duration less than 5 seconds, the best place to filter out such types of calls will be at Mediation System level. Same way, if some extra information is required in the CDRs, which is critical to billing, then Mediation System will help in providing such information based on some other attributes available within the CDRs.
Once the collected CDRs are processed, Mediation System pushes all the CDRs to the Billing System using FTP because usually Mediation and Billing systems run on different machines.
Well, now you have captured customer generated usage. The next chapter will cover how we can rate this captured usage so that due revenue can be collected from the end-user.
Rate is the charge/price for the occurrence of an event. Examples of rate include charge for the duration of the telephone call: For example: "0.40 INR per 1 minute" or a specific quantity. For example: 10.00 INR for 1MB download or it can be charged for the quality of service.
We already explained that Event is a single occurrence of product/service usage. The events are captured by the network elements in the form of CDRS/UDRs and passed to the Billing system for rating & billing.
Rating is the process of determining the charge/price of individual events. For example, the price for 2 minutes call is 0.80 INR with the rate of 0.40 INR per minute.
Rating Engine, which is part of the Billing system, carries out this rating function.
Rating Engine receives the events in the form of data records called as Call Detail Records (CDRs) or Usage Detail Records (UDRs), which describe the use of a product/service. A CDR is a string of data that contains call information such as call date and time, call length, calling party, called party, etc., which are used to rate the events.
There is a list of basic functions of Rating/Rating Engine −
Accepting CDRs from the Mediation System or other service providers or roaming partners in case of roaming usage.
Validating the CDRs and eliminating any duplicate records. These duplicate events are stored in a database table for later verification.
To determine the customer account that has to be charged for the event. Here, Rate process picks up the event source ( Mobile Number or IP Address, etc.) and checks the database to verify if this event source is associated with any account. This step is called Event Guiding.
If the event can not be guided, then this event will be rejected and can be put in suspense category. These rejected events are stored in a database table for later verification.
To calculate the cost/price of the event as per the rating tariff (also referred as rate plan).
To apply any applicable rating time discounts. This could be first five minutes free and after that call will be charged at normal rate. Such type of discounts are called rating time discounts.
To store the rated event in the database for a billing purpose or send it to the external system for billing.
The following image shows an overview of the Rating Engine and its associated functions −
The customer's information determines the rate plan (rating tariff) to use in charge/price calculation. The rating engine uses the rating tables, and the event information from the CDRs (e.g. distance, time of day, location of the call, duration or volume of the event, etc.) to calculate the actual charge for each call.
A duplicate event is defined as any unbilled event that relates to another unbilled event in all of the following ways −
Any other criteria can be defined in the billing system to identify duplicate events. There are a number of situations that may cause duplicate events to be submitted to the Billing system −
When Billing System encounters a problem with a particular event, the offending event is rejected. Rejection may be due to problems with any of the following −
There are three main reasons for rejecting an event −
Parsing errors prevent the Billing System from reading the information in the event detail record. A parsing error may occur because the data in the event record is corrupt or in the wrong format.
Unguideable errors prevent Geneva from identifying the event source or account associated with the event. An unguideable error may occur because the event source does not yet exist in the Billing System database.
Unrateable errors prevent Billing System from calculating a cost for the event. An unrateable error may occur because of problems with a rate plan.
All the rejected events are posted to a special account, which is called internal account or suspense account and these rejected events are called suspense events. Finance department keeps track of all the rejected events and count them as a part of revenue loss. IT department always gives alot of attention to resolve rejected events and rate them properly to save revenue.
If a rejected event cannot be fixed and the Operator does not want to post it to an internal account, the event can be discarded. When an event is discarded, it will not be submitted to the Rating Engine and no further attempts to rate it will take place.
Real-time rating is the process of taking events as they occur and rating them immediately, with as little delay as possible between event generation and costing. Real-time rating can be contrasted with file-based rating, where event details are stored in a file buffer for hours, days, or weeks before the whole file is finally rated.
Real-time system process includes e-commerce transactions and data download. Any application where events must be rated and applied quickly to a customer's account is a suitable candidate for real-time rating.
There are several situations in which it may be necessary to rerate events. For example, when −
An error in the rate plan used resulted in incorrectly priced events.
The events were loaded against the wrong account (due to incorrect event source registration).
An existing rate plan was replaced at some point between the last and the next billing dates.
The rate plan, price plan, or event source for a product has been retrospectively changed.
The process for rerating events is very simple and it is as follows −
Unload/Unrate all the events from the database using provided utility. Most of the billing system provides a utility to unload or unrate all the rated events.
Fix the problem wherever it lies.
Resubmit the events for rating by the Rating Engine.
Partial events allow a customer's balance to be maintained while an event is in progress.
For example, in case of a long data download, mediation system will keep sending partial events to the billing system so that billing system keep rating them instead of waiting for event completion, and as soon as customer's credit limit breach, account will be barred and Network element will be informed to terminate the call.
The Rating Engine can automatically check to see if any rating time thresholds, including rating time discount thresholds, have been reached.
Rating time thresholds help in protecting operators from lots of revenue loss. For example, a customer may not be willing to pay more than his credit limit, in such a case, it becomes necessary to terminate customer's call as soon as it reaches to credit limit threshold.
If it is required to take rating time action, then it is important to have as much as real time rating as possible.
So far, we have seen how a customer generates usage and how mediation system pushes that usage (CDRs) to the Billing System and how a Billing System rate those CDRs.
In the next chapter, we will discuss how to collect all the rated CDRs for the whole month and generate final invoice/bill, which is sent to the end customer to collect revenue for the provided services.
Billing is the aggregation of all non-recurring, periodic, and chargeable events on an account-by-account basis. It is also the calculation of all outstanding charges and available discounts and bonuses.
The output from billing process is a stream of tagged bill data that can be used to create a bill on paper, disk, or any other media. Billing Engine, which is part of the Billing System, creates invoices.
The following diagram shows the basic diagram of the Billing Engine and associated functions −
The Billing Engine picks up an account to generate a bill and the following associated information to generate invoice data −
All the rated CDRs for the customer within the month of invoice.
All types of charges (initiation, installation, periodic, suspension, termination, etc.,) applicable for the customer's products and services.
If there is any refund or any other charges applicable.
Total outstanding from previous bills.
Total payments made by the customer in the given month.
Total adjustment passed in favor of the customer or against the customer.
Total discount given to the customer.
Total taxes applicable on customer's usage and rental charges.
Billing configuration parameter required to run the Billing Engine; for example, payment due date, etc.
The above-mentioned information is just an indicative and may vary from billing system to billing system and operator to operator.
Billing Engine produces raw data having all the information required to generate a final bill and this raw data can be used to generate a final invoice to be sent to the end customer.
When a customer is added into the Billing System, system assigns the customer a predefined Bill Cycle. A bill cycle is a date on which Billing Engine runs and produces bills for a set of customers.
If there are many customers, then they are divided into different billing cycles. For example, a group of customers can have billing data as 1st of every month; another can have the billing date on 15th of every month.
If a customer is assigned to run a bill on 1st of the month, this would be called customer's nominal bill date. But because of various reasons, many times bill run becomes delayed and actual bill gets generated on a later date, this would be called actual bill date.
There could be various types of bills available for a user. Few of them may not be supported by some Billing Systems.
|Sr.No.||Bill Type & Description|
Normally, only requested as the first bill on an account. Includes product charges and adjustments, but no events.
Produced at regular intervals. Includes all periodic charges, events, and adjustments.
An extra bill that contains charges due to events processed for the account since the last bill. Includes all events and adjustments, but no periodic charges.
Sent when an account has been suspended. Includes all periodic charges, events, and adjustments.
Sent when an account has been terminated to bill all outstanding charges that are due. Includes all periodic charges, events, and adjustments, along with any refunds; for example, the return of a deposit.
Sent when a terminated account has receivables outstanding after the production of a final bill. Includes any post-termination events and adjustments, but no periodic charges.
An extra bill that contains all adjustments in the customer's favor generated since the last bill.
A summary statement can be produced for a customer-driven billing hierarchy. It can summarize all the bills produced by all accounts associated with the respective customer. Optionally, they can also concatenate all the bills into a single statement.
Bills are produced either automatically or on request from a customer.
A Billing System can generate bills in two modes, for example −
Test (what if?) billing mode − This mode if used to produce formatted test bills whilst leaving the database unchanged. These bills are useful to make sure that system is working fine and test after making changes to bill templates or tariffs.
When running the Billing Engine in test mode, commits are not made to the database. So there would not be any impact on customer's profile even after running test billing many number of times.
Test bills are usually run for a sample set of customers. If you are satisfied with the test bills, then you can proceed for production bills.
Production (live) billing mode − This mode is used to produce normal production bills. Most of the time, this is the default mode for the Billing Engine.
Once a production bill is generated, Billing Engine updates customer's profile in the database with the total outstanding balance to be paid by the customer, and next bill date, etc.
Billing Engine assigns different invoice numbers to all the production bills which help in keeping track of different payments made against the invoice.
There may be a situation when it is not worth to generate a bill and better to suppress the bill. Following are such type of situations −
Suppressing bills for accounts with zero (zero activity bills) or very little value (small bills).
A particular type of bill can also be suppressed if multiple bill types are requested/scheduled at the same time and therefore preventing unnecessary bills from being sent to the customer.
A small bill is a bill that falls between the ranges defined by the minimum positive bill amount and the maximum negative bill amount, exceptional bill conditions. Small valued bills are produced and then removed from the billing process, so that they are not sent out to customers.
Examples of possible exceptional bills are unusually high bills or bills, which exceed the account's credit limit by a set multiplier. The Billing Engine performs some basic checks on the bill data that it produces. These involve testing the total being billed to ensure that the following conditions are met −
The bill total is greater than the minimum negative bill amount.
The bill total is less than the maximum positive bill amount.
The bill total is less than account's credit limit multiplied by the credit limit multiplier.
All the above conditions vary from billing system to billing system and operator to operator and they are called exceptional bills conditions.
By default, all the invoices provide a detailed summary of product and service charges along with usage charges. But it does not provide the details on all the calls made by the customer.
An itemized bill means giving complete details of all the calls made by the customer. This needs more number of papers to be printed. Recent trend is to send itemized bill through electronic e-mail and summary statement is sent using a physical copy of the bill.
There are Billing Systems, which provide Billing Formatting utilities, which can be used to generate final formatted bills.
Bill formatters take the output data produced by the Billing Engine and usually generate either Post Script file or a PDF file, which can be used by the Bill Printing Company.
If Billing System is not capable enough to generate formatted bills, then system generates a set of tagged files along with billing information and any external Bill Formatter can use that tagged information to generate a well-formatted invoice.
No matter, if Billing System generates formatted invoice or we use an external tool to generate these formatted invoice using raw data generated by the billing engine, finally these invoices are sent to the bill printing company, who takes care of generating final copy of generating invoice. We will discuss it in detail in the subsequent chapter "Invoice Generation."
Next chapter would explain discount process, which is actually a part of rating and billing process, but we kept it as a separate section because of the various that items need more explanation.
We will discuss different types of discount hierarchies and which can be given at the time of rating and billing.
All discounts alter (most commonly to reduce) the price to be paid for a set of events and/or products. Discount is a way of giving customer money off. Discount defines a set amount of money (percentage or monetary) to be applied to products or usage that meet certain criteria. For example, all the local calls made on a particular day say 01-01-2010 are charged at $0.20.
Discounts can be calculated either during the rating process or during the billing process −
Rating Time Discount − All the discounts given at the time of rating process. These discounts can be given at usage only. An example of rating time discount is "5% off the first hour of all international calls".
Billing Time Discount − All the discounts given at the time of billing process. These discounts can be given on rated usage as well as on product & service charges. An example of billing time discount is "5% off if you spend over $15 within a month".
A pre-itemization discount is one that modifies the price of each event to which it applies to determine a rerated price. This discount also comes in billing time discount category, but this is related to rating of the calls. Other billing time discounts leave the price of the event unmodified. A pre-itemization discount cannot incorporate product charges, only event charges.
The size of a discount is determined using a series of discount steps and thresholds. Discount steps allow the size of the discount to be changed when particular thresholds are reached.
For example, a discount for telephony events could depend upon the number of minutes spent calling with 10 percent off after 100 minutes and 20 percent off after 200 minutes.
Each discount should have at least one step. Further steps can be added if the discount is required to become more or less favorable with greater volumes. Each discount step can have its discount expressed as either an amount of money or a percentage (but not both).
There could be infinite types of discounts given to the end customer, but it depends on what your billing supports. Following are the simple, but very good types of discounts, which can be offered −
These are the discounts where a set of products & events determine the discounts for another set of products & events.
For example, "10 SMS free if more than $30 is spent on mobile calls". Here mobile calls determine the discount and SMS product gets the discounts, such type of discounts are called cross product discounts.
These are only applicable to the portion of the set of events or money spent that falls between the assigned discount thresholds. For example, in the following diagram, 0% off for a spend of $0-$100 threshold or 0-100 events threshold, 5% off for a spend of $100-$200 threshold or 100-200 events threshold, etc.
These are the discounts based on the number of events or product charges that a certain product generates. For example, in the following diagram, 5% off for a spend of $100 or 100 events, etc. As seen, the greater the spend, the more the discount.
Tax discounts provide an alternative method for dealing with some tax exemptions. They are calculated and applied when the account is billed.
Most discounts have a discount period associated with them, which can be any number of days, weeks, or months. This period can be used in three ways −
To specify the time over which a threshold value is meant to be reached.
To specify the frequency with which an absolute discount is meant to be applied.
To specify how often the highest usage is determined for discounts with highest usage filters attached.
Discounts could be pro-rated and non-prorated based on the requirement. If discount is pro-rated, then discount will be calculated based on the number of days service has been under use, and in case of non-proration discount, it will be calculated for the whole period for which discount has been configured.
Bonus schemes are methods of giving the customer free events, where the number of free events is determined by the prior usage of or charge for one or more products over a period of time (for example, the previous year).
For example, "Take the Super deal telephony package and get $10 of free calls for every three hours of international calls made in the previous quarter."
There are other ways of giving customers money off, for example, giving a more favorable price plan via a package, reducing the unit rate of a product as the quantity taken increases.
Calling circle Groups define a relationship between users, who are modelled as members and (by default) non-members.
Within this model, a call made by a member of the circle to another member of the circle would be priced using a different rate to that applied to a non-member (or associate) making the same call.
The relationship between the calling parties is determined by the combination of caller identities. Calling circles can span networks if the networks belong to the same operator and a single calling circle can include both mobile and fixed-line users.
We already have covered Billing Processes in the previous chapter. In the next chapter, we will discuss the last part of Invoice Generation starting from raw invoice data to structured bill formation.
Most of the billing systems generate structured ASCII text containing the information content of the bill. The bill data for each bill is written initially to either database or flat text files. The format of the data at this stage is the same, regardless of how the data is to be processed.
This bill data can then be processed by one of a number of formatting engines to produce output in the desired form. For example, paper, CD-ROM, etc.
There are Billing Systems available, which provide internal Bill Formatting tools. If a billing system does not provide capable tool to generate formatted bills, then there are third party tools available like DOC1, which is one of the most commonly used tools.
Here is a typical diagram showing the flow of bill formatting −
Following is the snapshot of a bill data taken from Convergy's Infinys Billing System −
DOCSTART_85 DOCTYPE BILL GENEVAVERSION 5.0 BILLSTYLE 1 BILLTYPE 1 BILLTEMPLATE 85 BILLSEQ 1 BILLVERSION 1 ACCCURRENCYCODE BEF BILLLANGID 2 BILLLANGNAME English (US) BILLLANGLOCALE us PAYMETHODID 1 FORMATREQ A30001001/0001 COPYBILLNUM 0 BILLPURPOSE 1 ADDRESSNAME Dr D Jackson POSITION Project Manager DEPARTMENT Recruitment ADDRESS1 12 South Street ADDRESS2 Detroit ADDRESS3 Michigan ZIPCODE 12345 COUNTRY United States BSTARTACCFADDR ACCFADDR_1 United States ACCFADDR_2 Michigan ACCFADDR_3 12345 ACCFADDR_4 12 South Street ACCFADDR_5 Detroit ACCFADDR_6 Dr D Jackson BENDACCFADDR CUSTOMERREF C30001 CUSTOMERTYPE Standard ACCTAXSTATUS Exclusive INVOICINGCONAME Invoicing company for English (US) INVOICINGCOADDRESS1 Company House INVOICINGCOADDRESS2 Atlanta INVOICINGCOVATREG taxref000576 ACCOUNTNO A30001001 BENDBFPAYSUMMARY BALOUT 0.00 CHARGES 142.00 NEWBAL 142.00 BSTARTBFPAYDETAILS ACCDEPPREVTOT 0.00 ACCDEPCHANGE 0.00 ACCDEPCURRTOT 0.00 BENDBFPAYDETAILS BENDBFSTATEMENT BILLREF A30001001@0001 BILLDATE 02/20/99 NEXTBILLDATE 03/20/99 BSTARTPAYMENTDUEINFO PAYMENTDUEDATE 03/04/99 DEBTSTARTDATE 02/25/99 PAYMENTTERMDESC Payment due 7 days after the bill date PAYMENTDUEDAYS 7 BENDPAYMENTDUEINFO GIROREF 34 GIROACCOUNT 404 7800 OCRREF 1300010019 OCRSORTCODE V6344047800 GIROAMOUNT 142.00 OCRAMOUNT 000142000 INVOICEACTUALDATE 02/25/99 INVOICETAXDATE 02/25/99 INVOICESTART 01/03/99 INVOICEEND 02/19/99 TAXTYPE 1,2.00, TENDTAXTYPE INVTOTALTAX 2.00 BENDTAXDETAILS INVTOTAL 142.00 INVTOTALROUNDED 142.00 TOTALSAVE -11.00 PERIODEND 02/25/99 POINTSBALANCE 0 POINTSEARNED 0 POINTSREDEEMED 0 POINTSADJUST 0 NEWPOINTSBALANCE 0 DOCEND
Bill data consists of succession of lines of ASCII text. Each line takes the form −
TAGNAME and tag value are separated by a tag separator (tagsep) of a space. The tagvalue can be either a single value or a list of values separated by delimiters (sep). The delimiter used is a comma unless specified.
A Billing Engine may not be able to generate all the information required in the bill or there may be a requirement to perform some special calculation on the data provided in the invoice. This is called Bill Post Processing and usually done by a custom component called Bill Post Processor (BPP).
A BPP can be written in your preferred programming language, which reads a raw invoice file and performs required modification into this file before passing it for the final formatting.
There is none billing systems available which provide out-of-the-box BPP functionality because requirements vary operator to operator and this process can not be standardized. At most, billing system can provide a plug-in point to plug your custom BPP along with Billing Engine.
DOC1 is very famous Bill Formatter tool available from PitneyBowes Company, which helps in bill formatting into PDF or Post Script files.
As mentioned above, the output of the Billing Engine is structured ASCII text containing the information content of the bill. A mapping is established between source invoice file tags generated by the billing system and tags required by DOC1. DOC1 requires fixed length tags as shown below.
The following is a hypothetical sample from the invoice file provided −
ACCOUNTNO ACC0010000 ACCUMBONUSPOINTS_1 BON0050100 ACCUMBONUSPOINTS_2 BON0050100 ACCUMBONUSPOINTS_3 BON0050100 ACCUMBONUSPOINTS_4 BON0050100 ACCUMBONUSPOINTS_5 BON0050100 ADDRESS1 ACC0030000 ADDRESS2 ACC0040000 ADDRESS3 ACC0050000 ADDRESS4 ACC0060000 ADDRESS5 ACC0070000 ADDRESSNAME ACC0020000 BUSINESSNAME ACC0120000 TSTARTADJ ADJ0000000 ..........
Now using the above translations, a final file would be generated for DOC1 and DOC1 will take care of generating final invoice using the information provided.
Some modifications can also be performed at DOC1 level, but it does not provide much flexibility to modify the invoice. You can try latest version, which can help you much more the expectations.
Once all the accounts are billed and invoices are formatted using either internal or external bill formatter, these invoices are sent to the Bill Print Company for final printing.
If an operator is using Electronic e-mail facility to send a bill to their customer, then a copy of the same bill can be sent to e-mail system to send it to the end customer.
Tier 1 operators (having 20-30 million or more customer base) usually outsource this task including bill distribution.
After generating invoices, they are sent to the end customers. Now, it is time to collect revenue from the customer. We would discuss revenue collection process after one chapter.
Before we proceed further, let us cover Credit Control Part, which is very important and should be covered before revenue collection.
All the operators provide their services and collect revenue from the end customers to survive in the business. There may be two possible ways to charge an end customer −
In-Advance − An operator charges the customers in advance before providing the service. This leads to less customer satisfaction, but operator is more secure from revenue point of view.
In-Arrears − An operator pushes himself on risk and charges the customer at the end of every month after providing required services. This leads to more customer satisfaction, but operator is on a risk of collecting less revenue.
There is always a threshold up to what an operator can tolerate revenue loss associated with a particular customer; same time, there is a threshold of risk an operator can take with a particular customer.
For example, if a customer's income is $10,000/month, then operator can provide him their services very easily up to $1000 - $2000 but for the same operator it would be difficult to provide him a service, which would cost almost $10,000/month because in such a situation, it would be difficult for the customer to make monthly payment.
Keeping the same concept, operators define different credit classes, which they use to classify their customers and associate different credit and collection actions.
The credit class defines a category of the customer and associated risk of revenue can be taken with that customer. A credit class also defines which collections schedule is to be applied to the customer, should its owner fail to make the (undisputed) payments that are due.
All the Billing Systems provide facility to define various credit classes, which can be assigned to different customers at the time of adding them into the system. Some examples of credit classes are as follows −
VIP Credit Class − This can be assigned to VIP customers and would have very high value of credit limit.
General Public Class − This is the most common credit class and would have almost $100 or $200 credit limit.
Segment Specific Class − These classes can be defined based on different segments such as police, military, or bank officers, etc. Operator can define credit limit based on their comfort.
There could be infinite number of credit classes defined based on the requirements and category of the customers.
There are mainly two stages where credit can be controlled for a particular type of customer category −
This is rating time control, which is done by the Rating Processes. Here, customer's usage and total charges are checked against the assigned credit limit, and if customer starts approaching towards the assigned credit limit, customer is informed about the same and after breaching the credit limit an appropriate action can be taken.
There are operators, who would like to bar (i.e., temporarily stop) the services if customer is breaching the credit limit and they would be unbarred once the payment is done. For example, a customer having a credit limit of $200 will be informed on 80% of usage by a means of SMS, on reaching a threshold of 90% might be informed by means of a reminder call, etc., and when 100% credit limit has been reached, then outgoing might be barred.
To control the credit, operators like to bar only outgoing calls in case of Voice and SMS usage, but in case of data download, customer would not be able to perform any data download.
This is usually done after sending the invoices and more related to revenue collection process, which we would discuss in next chapter.
To control the credit at rating time, it is important to keep rating as real time as possible. If usage is not being captured in real time and it is being rated after a long gap, then there is a possibility that customers would have crossed their credit limit and legally customer may not be able to pay the amount beyond their assigned credit limits, but this varies from country to country and operator to operator.
There are billing systems, which support deposits to be held against accounts. Deposits are held alongside the account balance and cash can be transferred between the two.
There could be different level of deposits to provide different kinds of services, which can be maintained against an account.
Deposits help operators to cover their revenue in case customer is not able to make their payments.
Hope you have some idea on how to control credit given to the different classes of customers. Still there would be various customers, who would not pay on time even after giving them a credit within their capacity. There are various customers, who do not pay at all after using the services.
In the next chapter, we will explain how we define different revenue collection processes and schedules to collect the revenue for the services provided.
After an invoice is generated and dispatched to the customer, ideally, all customers will receive their bills and pay promptly. However, there may be some customers, who do not pay their bills and there may be an unacceptable delay in paying the bill and hence the service providers must take some action needed to remedy the situation and collect the outstanding balance due (called account receivable, abbreviated as A/R).
Collection is the process of chasing past due receivables on customer account. This usually involves sending notifications to the customer and taking appropriate actions in absence of due payments after the due date.
Billing Systems support dunning (receivables chasing) both at the invoice level where receivables are chased on an invoice by invoice basis and at the account level whereby all overdue amounts for an account, across several invoices, can be handled by a single dunning action.
The dunning model to be used for an account will be assigned on the basis of its credit class. A core collection process includes the following two items −
Collections Aging Tracking − This is the process of tracking the customer invoices that have not been paid within the specified payment period due date. It deals with the "age of account receivables"; for example, invoices that are 0-30 days overdue, 30-60 days overdue, etc.
Collections Actions − Collection action is the action that is performed when the account receivable reaches a particular age. For example, reminder messages to the customer to be mailed or recorded audio message should be played.
Normally, collections actions are taken in the following steps −
Send reminder mail and/or call: The customer service department contacts the customer reminding the payment. Still if there is no payment received, then proceed for the next action.
Send red letter − For example, a "Pay in seven days" letter is issued. Still if the payment is not received, then proceed for the next action.
Disconnect the service − The network management department suspends the service.
Collections schedules define collections actions, which should be carried out and the times at which they should be carried out when a customer does not pay.
The collections schedule specifies the series of stages that make up the collections process. For each stage, it covers −
The effective age that the receivables have to be for an action to take place. The effective age of receivable is calculated by taking the actual age of receivable.
The action to be taken. This might be an action that Billing System is to perform, for example, sending out a dunning notice on a particular date.
Whether or not the action is mandatory. If an action is mandatory, subsequent actions cannot take place until this one has been performed.
The minimum receivables amount below which the action will not take place.
In the early stages of the collections process, the soft collection action will typically be to send a number of dunning notices, which are simple reminder letters and requests for the payment.
After a number of dunning notices have been sent at various stages, other actions are typically scheduled. For example, you can specify that a customer services representative (CSR) should telephone the customer to ask why they have not paid.
If the initial attempts fail, then more aggressive actions can be taken like barring the services, or disconnecting the services or hot-lining (hot-lining is the process of re-directing all calls of delinquent customers to collections operator).
If all the attempts to collect the dues fail, then the service provider may write-off the account and marks the due amount as bad debt or may hand over (sell off) the account to a collection agency. Collection agencies work on a percentage of collected revenue. However, once the uncollected account invoices are sold off to a collection agency, the service provider is not allowed to work with the customer regarding the payments.
Here, write-off means service provider (operator) clears the dues on behalf of the customer and closes the account forever. This is done for accounting purpose, otherwise it is a loss for the operator.
The service provider maintains the history of the write-off accounts, also called blacklist customers so that they are not re-activated again and informs the credit checking/reporting agencies about such accounts.
Most of the customers make their payment before the due date. There can be different channels, which are used to make payments.
In the next chapter, we will discuss different types of payments and their end-to-end processing to settle down the invoices.
Once the invoices are sent to the customers, the customers start making payments of their bills. The processing of bill payments into the billing system is called payment processing.
The payments made by the customers are posted to the customers' account. If there are any outstanding invoices, then which invoice is paid depends on the account's accounting method. There are two types of accounting methods −
Balance forward accounting − Using this method, if a number of invoices are outstanding, payments received are allocated to invoices according to the age of the receivable, with the oldest invoice being created first.
Open item accounting − This method allows payments to be allocated to specific invoices. Open item accounting is particularly useful when dealing with payments from the business customers.
A customer can make payment using different payment methods that are supported by the service provider; for example, the customer can make payments using the payment methods such as cheque, credit card, debit card or wire transfers, or direct cash deposit.
An operator may have multiple bank accounts into which it will receive payment done through bank accounts directly. These bank accounts are referred to as holding accounts and sends payment details to the billing system in text files.
If payments are received outside the billing system either manually or electronically, then those payments are uploaded into the system using automated process to settle down the invoices.
Billing Systems provide facility to capture credit card or debit card information and automatic payment methods on monthly basis.
If payment method is set automatic using either credit card or debit card, payment requests are generated automatically after every invoice or on a given date and these requests are sent to the payment gateways (or banks) for payment authorization.
Once all the payments are authorized, they are uploaded into the billing system to settle down the due invoices.
If the payments are made using cash or cheque, then either it can be entered into the system upfront the customer or if this is collected by some agencies, then all such payments are collected and posted to the billing system using automated methods provided by the billing system.
For all the payments received, payment files are prepared with a predefined format and then they are pushed automatically to a predefined location from where Billing System picks them up and uploads into the billing database.
There may be a situation, when a payment made by credit card or cheque does not go through. If this payment is already posted into the system, then it needs a cancellation to adjust the amount. Billing System provides utilities to handle failed or cancelled payments.
An interface is a bound between the billing system and any other external system to receive the payment. Interface allows two systems to communicate with other based on predefined rules.
For example, a simple text file could be a payment interface between a bank and the billing system. If interface is file based, banks keep sending payment details using payment files in predefined format.
There could be an online API-based interface between a bank and the billing system. If an online interface is in place, then bank will call the provided API to post the payment directly into the billing system.
Similar way, there could be file-based or online interfaces provided for third party involved in collecting payments.
So far, we have almost gone through the complete life cycle of a telecom customer. The next chapter is important to understand the dispute situation that arises between operators and customers.
A dispute is a record of a query about an amount of money on an account. Normally, a dispute will be recorded when a customer queries some aspect of their bill. Disputes can be raised −
Against an invoice on an account.
Against a particular rated event on the account. For example, if a customer disputes a particular pay-per-view TV event due to a power cut.
After a dispute is recorded, it would be investigated, verified in order to either −
Accept − If the raised dispute is valid from customer side, then the dispute would be accepted, and would be refunded to the customer.
Reject − If the dispute found to be not acceptable, then the dispute would be rejected.
Cancel − If the dispute is entered in error, then the dispute would be canceled.
The following points should be noted for the dispute and a billing system should support these points −
Collections actions are not escalated while amounts have a dispute status of pending, but the collections are aged during this period.
Disputed events are not included in collections calculation until they are billed. After this, the collections are aged as normal.
An adjustment is a method of crediting or debiting an account with an arbitrary amount of money. Adjustments can be lodged against either an account as a whole or against a particular rated event on that account.
A Billing System allows to create different types of adjustments, which can be used in different situations and each adjustment flows through different stages of approval.
If a dispute is accepted, an adjustment is created to credit the account with the disputed amount. Adjustments should not affect the balance of an account until they are approved. Adjustments with a status of pending approval do not affect billing or collections.
Disputes and adjustments that are made for tax inclusive accounts are assumed to be inclusive of tax. The gross amount is entered and will be available for output on the bill.
In the next chapter, we will discuss different types of reports required for the management. There could be a list of reports available out-of-the-box and there may be some reports, which would need custom development.
Various reports are generated to provide valuable information to management on finance, sales and performance of the system. Different kinds of reports like financial reports, management reports, reconciliation reports, network activity reports, etc., can be generated.
Reports contain information that drives business success and help to monitor the health of business, identify any problem areas so that appropriate corrective actions can be taken.
Reporting is one of the areas where none of the Billing Systems can meet 100% requirements out-of-the-box. Definitely marketing or finance departments will come up with such reporting requirements, which would need lots of custom development.
If your Billing System is pushing data on Data Warehouse (DWH), then you can transfer reporting activities towards DWH system, but still many departments would like to have important reports from the source system, which is the Billing System.
We can categorize reports into two categories −
Core/Canned Reports − These reports are provided by the Billing System as core functionality of the system. Sometimes, they are called canned or standard reports.
Custom Reports − These reports would not be available directly from the system and it would need some development using PL/SQL, PERL, or Shell script, etc.
Different billing systems provide different types of reports in different areas. Interconnect Billing Systems are required to provide more functionalities related to reporting because they deal with wholesale billing.
Following is the list of reports required by different departments −
Payment reports provide information on the customer's account payments during a period of time. Account Receivables aging reports provide information on the account receivables, outstanding dues, etc.
Disputes & adjustment reports help in identifying the pattern of reasons for disputes & adjustments and help to understand the reason for such disputes & adjustments and take appropriate corrective action.
Management reports provide information on customers, their products & services usage, call patterns, customer feedback, etc. These reports help to take appropriate steps to reduce customer churn to introduce new services.
Churn is the process of customers disconnecting from one service provider and moving to another service provider and this can be due to many reasons like inadequate customer service or lack of competitive products or lack of competitive charges or it can be due to a natural reason of geographic relocation of the customer.
These reports provide Revenue Assurance (RA) information ensuring that all the sources of revenue and expenses are under observation and there is no leakage of any sort of revenues. For example, revenue can be lost due to many reasons like leakage in network system or mediation or billing mistakes, demand for introducing new services quickly, etc.
Revenue assurance reports help to identify where the leakage is so that appropriate actions can be taken.
These reports provide information to identify the areas of network congestion so that corrective measures (rerouting or adding more resources) can be accomplished to overcome these problems.
The following is further an imaginary list of a few other reports, which can be required out of a Billing System −
|1||Revenue Classification reports that summarize revenue information for a specific date range by credit class, customer details, price plan, charge type, etc.|
|2||Customer Details, Aged Receivables, and Open Item reports that are provided primarily to assist with the collections chasing.|
|3||Daybook reports summarizing the activities of the day and presenting general ledger information.|
|4||Product and Package reports giving details of the products in a database and the packages available in a particular billing/rating catalogue.|
|5||Interconnect Agreement Accounting (IAA) reports that facilitate the reconciliation of outbound interconnect CDRs.|
|6||Total number of activation, termination, port-in, or port-out on a daily basis.|
|7||Total number of accounts breaching their credit limit on daily basis and how much revenue is going in credit breach.|
|8||Report about the number of events, which were successfully rated, posted internally and posted uncosted for a particular period of time.|
|9||Duplicate events report for a particular service or for all the services (i.e., voice, SMS, MMS, etc.)|
|10||Rejected events report for a particular service or for all the services (i.e., voice, SMS, MMS, etc.)|
There could be a list of reports, which is required on monthly, weekly, or daily basis. So, such type of reports are developed if they are not available and scheduled within the system, so that they can be sent in end user's e-mail box without any manual intervention.
There will a demand of different reports time to time based on some requirements, such type of reports cannot be imagined and developed in advance. So these reports are developed and sent based on demand from different users.
Starting from the next chapter, we will cover different types of billing; for example, retail, wholesale, MVNO, roaming, etc.
Most of the operators provide two options to their customers, to go for a postpaid or a prepaid connection. A Postpaid as well as prepaid connections have their own advantages and disadvantages.
Usually, an operator will have 70%-80% customer base comprising of pre-paid customers and rest of the customer base will come from post-paid side. For an operator, it is always good to have more post-paid customers.
You might be willing to know about the differences between the two types of customers, services and systems. Let us list down a few major differences between the two −
Service Payments − This is the most important factor, which differentiates between two customer bases. Pre-paid customers make payment in advance before using the service, whereas post-paid customers use offered services throughout of the month, and at the end of the month, customer receives the bill to pay within the given time frame.
Charging & Billing − For pre-paid customer, it is required to charge the customer in real time for all the usage whereas post-paid customers can be charged at the end of the month.
Service Offerings − Post-paid billing systems provide more flexibilities in comparison of real time charging systems. For example, real time charging system is not flexible to maintain a complex business customers' hierarchy, where as a post-paid billing system can handle a customer hierarchy up to N level.
Support & Maintenance − An operator needs to give same at tention to both the businesses. If, for a pre-paid business, operator needs to have skilled manpower to control the operation, same time operator needs a great staff to handle post-paid customer's queries related to their charging, bills, and fixing operational issues.
Supported Network − A long time ago, the network of the prepaid and the postpaid connections were different. This used to invoke complaints that the prepaid connection would offer better connectivity than the postpaid or vice versa. This is the age of convergent billing and operators are running their business with the same network without compromising communication quality.
Network elements (like switches, SMSC) produce raw usage called Usage Detail Records (UDRs) or Call Detail Records (CDRs), which contain information required by the billing system −
Calling number (A number)
Called number (the number receiving the call) (B number)
when the call started (date and time)
Call Type (MOC, MTC, etc., MOC stands for Mobile Originated Call and MTC stands for Mobile Terminated Call)
The above raw UDRs from network elements and also from other service providers are received by the billing system and the billing system converts these into a format understandable by the system. The above formatted/converted UDR is then guided to find the customer/account to which the call should be charged and then rate the event accordingly.
The above rated UDRs are then stored in the billing data store, and on the billing cycle date, the billing process picks up these rated UDRs and processes these and renders bill/invoice, taking into account, the payments, taxes, discounts, etc.
The customer then pays the bill and the billing system is updated with the payment details. Following is the diagram showing the above standard billing process −
Steps involved in prepaid billing in brief are as follows −
When customer makes a call, prepaid switching gateway captures the calling number and sends the account information to the real time billing system.
Real time billing systems using the above information, authenticates the identity of the user, calculates the customer account's remaining balance using the rating tariff table and maximum allowable duration of the call, and sends this information to the prepaid gateway.
The gateway establishes the call.
During the call, gateway monitors the call so that the user do not exceed the maximum allowable call duration.
When the call is over, the gateway sends the actual call duration to the prepaid billing system, which then calculates the actual call cost and updates the account balance, decreasing the remaining balance.
The following figure shows the general prepaid billing scenario −
Prepaid billing process involves the following important steps along with account information gathering and updating account after the call is completed −
Authenticating − Authentication is the process of verifying that a user is who he or she claims to be. The user supplies a user ID and an authentication credential, such as a password. The system accepts these as inputs and verifies that the user is valid and has access to the system.
Authorizing − Authorization is the process of verifying what an authenticated user is allowed to do. Generally, Remote Access Dial In User Server (RADIUS) protocol is used to limit access to the system to registered and authorized customers.
Providing advice of charge (AOC) − This gives information about the actual cost of the call either prior to or after the event. AOC provides the ability of a telecommunications system to advice of the actual costs of the event either prior to or after the occurrence of the event.
When we talk about telecom billing then by default it is about retail billing. As discussed earlier, telecom retail billing is defined as follows −
"Telecom Billing is a process of collecting usage, aggregating it, applying required usage and rental charges, and finally generating invoices for the customers. Telecom Billing process also includes receiving and recording payments from the customers."
Retail billing deals directly with the end customer and comes with lots of challenges to meet the end customer expectations and regulatory obligations. A billing is assumed to be successful as long as it is fulfilling the following criteria −
Timely Billing − End customer's invoice is being generated on time, i.e., nominal date. There may be some circumstances when the end customer does not get his/her invoices on time because of some logistic issues, but it is IT's responsibility to generate all the due bills on due date.
Billing Accuracy − This is the most important factor for the customer satisfaction and from regulatory obligation point of view. If billing system is not generating accurate bills, then it can lead to serious business issues from legality point of view as well as leaving a customer in unhappy state.
Retail billing deals with the end customer and billing an individual customer, whereas wholesale billing deals with billing to the following entities depending on situation and nature of business −
Billing resellers associated with a telecom operator.
Billing interconnect partners for providing interconnection to make calls to another operator's customers.
Billing roaming partners for providing services to their customers when they roamed in an operator's coverage area.
Wholesale billing is easy in comparison to retail billing and allows a big level of threshold of tolerance, whereas retail billing always needs to be 100% accurate. Wholesale billing can never be 100% accurate because of various reasons like difference in prices configured in two operators' systems or difference in number of calls rated because some of the calls may get missed at any network element.
There are specialized billing systems, which are being used to handle retail billing like Convergys and Amdocs Billing systems are famous for retail billing, whereas ASCADE and INTEC billing systems are famous for wholesale billing.
Wholesale billing can also be settled using retail billing systems by using simple reports because they do not deal with too many discounts and promotion types, whereas retail billing needs all these complications and can not be handled using wholesale billing systems.
All the concepts discussed so far in this tutorial were related to retail billing and subsequent chapters will discuss about interconnect billing, roaming billing, and other billing types.
Interconnect is the process of handling calls for other service providers. This allows the customers of one service provider to communicate with the customers of another service provider.
If two operators A and B are not interconnect partners, then it would not be possible for a customer of Operator A to communicate with a customer of operator B.
Usually, operators keep their agreements with each other to allow their customers to communicate with each other. This gives good business opportunity to all the operators engaged in interconnection. Any interconnection point at which the parties agree to connect their respective Networks is called "Interconnection Point".
Examples of interconnection include −
Two adjacent, non-competing telephone networks interconnect so that subscribers on one network can call those on the other.
Long-distance carriers obtain access to the facilities of a local service provider and compete against that provider in providing long-distance services to a common customer base.
Traditional wireline telephone and new wireless mobile carriers interconnect so that subscribers of the traditional phone service can call wireless subscribers, and vice versa.
New competitive local telephone carriers interconnect with the incumbent carrier so that they can attract subscribers in the common service territory and enable those subscribers to call subscribers on the incumbent's network.
Customers of the incumbent telephone carrier make calls to their dial-up Internet Service Provider, which in turn is a customer of a competing local carrier.
This is process of the production of invoices to send to an interconnect partner relating to incoming interconnect call detail records (CDR).
Interconnect Billing concerned with calculating the amounts to be paid to and received from each of the network operators that our infrastructure connects in order for the successful call origination and termination. The CDR for interconnecting calls keep the call routing information as a group of valid values to identify the carrier and the country details.
Note that the set of Interconnect CDRs includes the following details −
CDRs are those billable to retail and wholesale customers. It is revenue for the telecom provider. It is also referred as local billing.
CDRs that are only billable for Interconnect providers. Eg: Outgoing calls, Outgoing Transit calls, Incoming calls, etc. The Outgoing calls are the expense and Incoming calls are the revenue for the Telecom Provider.
Interconnect Billing systems do pricing of all incoming and outgoing interconnect CDRs. Usually, an interconnect price is determined for both incoming and outgoing interconnect CDRs on the basis of the incoming or outgoing trunk interconnect route that carries the call. Most commonly, a trunk ID represents a unique interconnect partner in the interconnect Billing System.
The Settlement Process will be used to settle the Network Operator/Carrier involved in carrying calls from Interconnect Owner to Other Network Operator destination or vice versa.
The Process will bring the Outgoing (Expense to Interconnect Owner) and Incoming (Revenue to Interconnect Owner) traffic for the settlement.
Settlement can be done on monthly or bi-weekly basis using manual or automated process. It depends on billing system to billing system how it supports partner's settlement.
Netting used to perform after the settlement is completed for the agreed Provider/Carrier. The netting is done by multiple settlement period for the multiple services, which it supports the same currency in Operator level.
There are two types of netting methods −
AFTER − After for Netting of Operator's Interconnecting cost after subtracting the amount between operator and Provider/Carrier
BEFORE − Before for Netting of Operator's Interconnecting cost without any subtracting of the amount between operator and Provider/Carrier.
This is the process of the reconciliation of invoices coming from an interconnect partner which relate to outgoing CDRs.
Every month interconnect partners exchange their CDRs for reconciliation purpose. It is very common to have discrepancies in the CDRs provided by the two partners.
Billing Systems provide reports facilitating reconciliation of incoming and outgoing interconnect CDRs. These reports keep parameters such as call type, destination, cost band, and duration so that these CDRs can be used by both operators to match those parameters and identify missing CDRs.
There may be a situation, when some CDRs are found missing at either of the operators' side. After doing required reconciliation if matter does not settle, then various negotiations happen between the partners, and finally, matter is settled by paying some nominal amount to the impacted interconnect partner.
There could be various interconnect call scenarios depending on type of agreement between different operators. Let us try to cover a few most commonly used −
Operator A's customer makes national call to Operator B's customer. In this case operator A will pay some amount to operator B.
Operator A's customer makes international call through Operator B, because operator A does not have direct agreement with any international operator. In this case, operator A will pay some amount to operator B and operator B will take care of settling down international operator.
Operator A's customer makes international call directly using an international operator. In this case, operator A will pay some amount to international operator directly.
All the above calls could be voice, SMS, MMS, and data, etc.
To have a successful interconnection, the following issues should be dealt with in the interconnection agreement or by rule or order from the regulatory authority −
Prices and adjustments − This includes the initial level of interconnection charges, a definition of the currency in which interconnection charges are to be paid and how prices will adjust over the term of the agreement to account for exchange rate changes and inflation.
Points of interconnection − The physical locations, where interconnection will take place and the technical standards to be employed in the interconnection are defined.
Transport and traffic routing − Some definition must be made for how calls will be routed and what will be transported to deliver the calls.
Quality of service − Quality standards are defined, particularly for time to provision circuits and for call blocking levels, and remedies are defined for when those standards are not met.
Billing and collection − When and how to collect traffic data, when and how to exchange bills, and when and how to make payment should be specified.
Reconciliation − A process for reconciling traffic data and for making inquiries to the other party and for handling claims also should be incorporated. A procedure for resolving discrepancies is useful which often involves seeking recourse to arbitration, the regulator, or to the courts.
Numbering Plan − Access of each operator to the country's numbering plan and numbering resources must be defined.
Traffic Load − Capacity to deliver and receive the traffic that flows between the interconnecting networks should be discussed and documented.
Operators can have different types of agreements to exchange their traffic. Most commonly used agreements are listed below −
Bi-Lateral Agreement − Under this agreement, each party agrees to exchange digital communications traffic with the other party over its Network at the Interconnection Points and/or in one or more direct interconnections. Payment settlement among different partners happens on monthly or bi-monthly basis as per the agreement. As per this agreement, both the operators can originate and terminate their calls in each other's network.
Uni-Lateral Agreement − Under this agreement, one party sends his traffic to other party's Network at the Interconnection and does not take traffic back from other party. Payment settlement among different partners happens on monthly or bi-monthly basis as per the agreement.
Roaming is the ability for a customer of mobile communications to automatically make and receive telephone calls, send and receive data, or access other services while travelling outside the geographical coverage area of the home network, by means of using a network of another operator.
Roaming can be either national roaming or international roaming. National roaming means that mobile subscribers make use of another network in geographical areas, where their own operator does not have coverage. This is, for example, used by operators, who do not have complete coverage in a country. International roaming is used when mobile subscribers travel abroad and make use of the network of an operator in the foreign country.
How does it actually take place? If a service provider does not have a network coverage in a particular city or country, then this service provider makes a roaming agreement with another service provider having network in that city or country. As per this agreement, another service provider provides all the available services to the roaming customer of first service provider.
CDRs generated in one roaming partner's area are collected and rated by that roaming partner and finally they are sent to the actual service provider of the roaming customer. Actual service provider charges the end customer for all the roaming services provided based on their predefined service charges.
Two roaming partners settle their financials on monthly basis by exchanging actual roaming CDRs and reports based on those CDRs.
The Home Public Mobile Network is the network from the operator by which a mobile subscriber has a subscription. The term is used as opposed to Visited Public Mobile Network (VPMN).
The Visited Public Mobile Network is the network used by a mobile subscriber while roaming. The term is used as opposed to Home Public Mobile Network (HPMN).
There are well known bodies like MACH who interface between different roaming partners to help them to exchange their CDRs, setting up roaming agreements and resolving any dispute.
Clearing houses receive billing records from one roaming partner for the inbound roamers and submit billing records to another roaming partner for which this roamer would be called outbound roamer.
Transferred Account Procedure version 3 (TAP3) is the process that allows a visited network operator (VPMN) to send billing records of roaming subscribers to their respective home network operator (HPMN). TAP3 is the latest version of the standard and will enable billing for a host of new services that networks intend to offer their customers.
Clearing house uses TAP3 protocol to exchange all the CDRs between different roaming partners. TAP3 defines how and what information on roamed usage must be passed between Network Operators. These files are exchanged using simple FTP connection.
There are different versions of TAP. TAP evolved from TAP1 through TAP2 and TAP2+ to TAP3. The latest release, TAP3, includes support for inter-standard roaming in a satellite network, WLAN and UMTS and other 3G technologies.
GSM TAP Standard TD.57 − GSM Transferred Account Procedure (TAP) defines the format and validation rules for transferring roaming usage information between mobile operators in different countries. TAP3 is the third specification version of the standard. The files transferred are termed TAP files.
GSM RAP Standard TD.32 − GSM Returned Accounts Procedure (RAP) defines the format for returning information on errors found within transferred TAP files/events and thereby rejecting financial liability for those files/events. The files transferred are termed RAP files.
Mobile subscriber travels to another country and creates usage on the foreign network. In order to bill the subscriber, this information has to be passed back to the subscriber's home network. The foreign network will collect information on the usage from it's switches, etc., and then creates TAP files containing the information set out in the standard.
The files are then EXPORTED (on a regular basis, generally at least one file per day) to the home operator, who will IMPORT them and then use the information to invoice the subscriber. The foreign operator will rate the calls and then charge the subscribers home network for all the calls within a file. The home operator can mark up or re-rate the calls in order to make revenue.
MVNO stands for Mobile Virtual Network Operator. A mobile virtual network operator (MVNO) is a company that provides mobile phone services, but does not have its own licensed frequency allocation of radio spectrum, nor does it necessarily have all of the infrastructure required to provide mobile telephone service.
MVNE stands for Mobile Virtual Network Enabler, which is a company that provides services to mobile virtual network operators such as billing, network element provisioning, administration, operations, support of base station subsystems and operations support systems, and provision of back end network elements, to enable provision of mobile network services like cellular phone connectivity.
An MVNO in reality is a reseller of mobile products and services from an actual operator, but under a different brand.
For example, there is an operator A having all the infrastructure including network, switches, billing systems, provisioning system and customer care systems, etc. Now, if someone wants to start a telecom business by doing some minimum investment, then MVNO is the option to proceed.
An MVNO will buy services in bulk from a well-established operator and change the brand name as per their convenience and market those products and services as an operator. Actual operator would remain transparent from the end customer and customer will have feeling like to be an end customer of MVNO.
Depending on the situation, an MVNO can buy one or more infrastructure components from an operator and pay them accordingly. For example, an MVNO may like to use only network from the operator or an MVNO can use network and charging system from the operator and rest of the components like customer care, provisioning, etc., can be set up by the MVNO.
MVNO's have full control over the SIM card, branding, marketing, billing, and customer care operations.
The first commercially successful MVNO in the UK was Virgin Mobile UK,  launched in the United Kingdom in 1999 and now has over 4 million customers in the UK.
MVNOs typically do not have their own infrastructure, but some leading MVNO's deploy their own mobile IN infrastructure in order to facilitate the means to offer value-added services. MNVO's can treat incumbent infrastructure such as radio equipment as a commodity, while the MVNO offers its own advanced and differentiated services based on exploitation of their own intelligent network infrastructure.
In this way, each MVNO and the network operator could focus on their own niche markets and form customized detailed services that would expand their customer reach and brand.
Most of the MVNOs come in the market to target only pre-paid customers and provide them only pre-paid services like voice, SMS, MMS, data, broadband, etc., with some nice value-added services.
Assuming an incumbent operator sells their infrastructure to an MVNO, there could be different business models and agreements between incumbent and MVNO. Following are the most commonly used −
MVNO can brand their services and sell them in the market and MVNE will help in providing those services to the end customer. Here, a fixed percent of commission will go to the MVNE.
MVNO can buy products and services in bulk at special discounted prices and then brand them with their name and sell in the market.
MVNO sells the products and services, and based on the usage generated by the end customers, MVNO pays an amount to the MVNE.
In all the cases, MVNO may be required to pay some amount of security deposit to the MVNE and then monthly settlement happens using simple reports generated by the MVNE.
An MVNE can add an MVNO in its billing system as a corporate customer as long as MVNO is providing post-paid services and can add all the products and services provided to MVNO. By the end of every month or usually after every two weeks, invoice can be generated and collection can be followed up.
But usually, most of the MVNOs provide pre-paid services, which are handled in Pre-Paid system. In such a case, MVNO functionality is achieved either using built-in functionality in the pre-paid system or by simply defining a separate service class. All the usage CDRs and other information is dumped into data warehouse from where reports can be generated to prepare invoice.
Assume an operator is providing different services mobile voice, fixed voice, data, IPTV, broadband, pre-paid, and post-paid, etc. A customer can have one or more of these services from the same operator. A typical customer would definitely like to have single invoice and single view of his account.
A convergent billing is the integration of all service charges onto a single customer invoice and a unified view of the customer. Customer should call a call center and should get complete account information for all the services opted. Customer receives a single bill and makes a single payment for all the services.
A truly Convergent Billing System should be able to consolidate any number and combination of products and services onto a single bill, regardless of the type of product and market segment, i.e., prepaid and postpaid services.
Another important parameter contributing in convergent billing is a single product and price catalogue for pre-paid as well as post-paid customers.
Convergent billing would help operators in achieving the following major benefits −
Single product and service catalogue gives better time to market and reduced cost of implementation.
A unified bill enables cross-service discounts, so that customers who order multiple services can receive preferential pricing.
Convergent billing enables multi-service packaging and pricing, whereby existing customers are enticed to add new services and new customers are attracted by innovative service bundles.
Centralized customer care and support for both type of customers ( pre-paid and post-paid).
So far, it has been a dream of all the big telecom operators to achieve true convergence. May be tomorrow some billing system would come which will support true convergence of all the product and services, but today it has the following obstacles to achieve real convergence −
Real time Charging Systems like Ericsson IN or Nokia Siemens Charging System are very popular systems to provide solution for pre-paid product and services. These systems are not flexible enough to handle various functionalities required for post-paid customers for example: complex customer hierarchies, CDR re-rating, volume discounts, flexible reporting, roaming charging, interconnect charging, etc.
Post paid billing systems like Convergys Infinys or Amdocs Billing Systems are great for post-paid product and services. These systems are not capable to handle pre-paid traffic and charge the calls in real time. Importantly these systems can not be made highly available because of their base architecture.
Keeping the two above-mentioned constraints together, if we merge both the systems by doing a kind of interfacing between pre-paid and post-paid systems, then it may be possible to achieve a true convergence. Companies like Convergys and Ericsson are working in the same direction to merge the two systems and use required functionalities from both type of systems and make them single Convergent Billing System.
Support and maintenance is an integral and the most important part of a telecom operation. Customer satisfaction directly depends on how efficient and how good support is being provided to them. If customer is being put in the loop and he is not getting good response for the problem/issue raised, simply customer would switch to another available operator.
Support and maintenance covers the following major areas −
System support and maintenance − This includes keeping the BSS (Business Support Systems) and OSS (Operation Support Systems) running in good health. If there is any issue in any of the systems ( Billing, Provisioning, Network, Mediation, Customer Care, etc.,), then it is looked by the specialists and fixed within a minimum time frame.
Customer Support − This includes fixing all the issues related to customers. A customer complains through customer care or call center and then issue flows at different stages. This issue could be related to signals, call drop, voice or data download quality, wrong bill, some dispute, service activation, or termination, etc.
System upgrades − This includes upgrading an existing system with the latest version to provide more stability and flexibility in the business. New version of any system comes along with new features to cater new business requirements. This also includes hardware upgrade to maintain system performance and for more storage as well.
There are always different levels of support kept in place by the service providers. These levels handle different types of issues depending on their nature and severity. Most commonly used support levels are as follows −
Level 1 − Customer contacts the customer support, which could be a call center and customer support specialist listens to customer problem and suggests a solution on the spot. For example, there could be some problems, which can be resolved by simply restarting the phone. So, an efficient customer care specialist knows about such type of problems and can suggest a solution without escalating the issue (usually called a trouble ticket) to the next level.
Level 2 − If a customer care specialist is not able to resolve a problem, then issue is escalated to second level support, which is a group of technical specialists. These specialists belong to Information Technology (IT) department, and if they are able to understand the problem, then they can suggest a solution and send the issue back to level 1, otherwise they check the nature of issue to understand if issue is related to network or billing system or provisioning system or hardware, etc., and based on the nature of the issue, issue is assigned to next level, i.e., department.
Level 3 − These are different departments specialized in their areas like core engineering, radio planning, billing, provisioning, order management, etc. If issue is escalated to them, then they analyze the problem and try to find out the root cause of the problem. Most of the times, issue will be diagnosed and fixed by third level support because they are highly skilled engineers specialized in their area. There may be situation, when issue cannot be fixed at 3rd level support because it may be related to core functionality of the system, which is not modifiable by 3rd level support. In such a case, issue is further escalated to 4th level support.
Level 4 − These are actual vendors of the systems supporting business, for example, billing system, network switch, provisioning system, etc. So, if issue is found to be related to the core functionality of billing system, for example, billing system is not able to apply correct discount, then it would be escalated to the billing system vendor, and if issue is related to the core functionality of the provisioning system, then it would be escalated to the provisioning system vendor.
Support departments always work with a predefined service level agreement called SLA. These SLAs are defined and kept in place keeping various parameters in mind. For example −
Severity of the issue or operational task.
Business impact of the issue or operational task.
Whether issue or operational task is impacting a single customer or multiple customers.
Whether the issue or operational task is directly related to revenue loss or customer satisfaction.
Based on such type of parameters, different priorities are defined and assigned to different issues or operational tasks. Operational task could be report generation, invoice generation, database cleanup activities, or backup activities.
Finally, each issue and operational task comes along with an assigned priority and each priority will have associated SLA. For example, if there is a problem in creating customer order, then it would be assumed a high priority issue because it is directly impacting business. Such type of issues need to be resolved as soon as possible by the assigned department. So, a very tight SLA is defined for high priority issue.
SLAs are discussed and finalized with mutual agreement keeping business need on top priority. Usually, an SLA keeps the following information −
Parameters to qualify the nature of the issue whether it is priority 1st issue or 2nd priority issue or 3rd or 4th priority issue. Lower the priority number, higher is the criticality of the issue.
For a given type of priority and severity, how much time it would take to resolve the issue.
In case of failure of an SLA, what penalty would be applied.
Contact points of escalation for each level of support.
Process flow and communication medium during issue resolution.
Infrastructure availability and other constraints impacting the issue resolution.
SLAs can be defined between different departments, between vendor and operator and between different operators as well in case of interconnection.
The following diagram shows a typical architecture of a Billing System. This chapter will give a brief introduction of all the interfacing systems starting from top to bottom.
This is the first system from where a customer order is captured and customer is created into the system. CRM stand for Customer Relationship Management and OMOF stands for Order Management and Order Fulfilment.
There are systems like Siebel, which provides modules for CRM as well as OMOF. The CRM system keeps customer-related information along with product and services. The OMOF module is responsible to track order starting from its creation till its completion.
Here, we have two possibilities −
CRM (Customer Relationship Management)/OMOF (Order Management and Order Fulfilment) system contacts with the billing system and billing system contacts with provisioning system to provision the services and network inventory system as well to assign phone numbers or IP addresses, etc.
Second possibility could be that CRM/OMOF system itself contacts with provisioning system to provision the services and network inventory system as well to assign phone numbers or IP addresses, etc.
This system takes commands either from the Billing System or CRM/OMOF System to activate, deactivate and suspend the services. Both the architectures are valid and depend on how architect designs the whole setup.
After taking provisioning commands, this system contacts with core network system to activate, deactivate or suspend the services. After a successful provisioning, this system sends a response back to either the Billing System or the CRM system depending on who sent it the last command.
This system maintains all the network identifiers like phone numbers, MSISDN, IP addresses, e-mail addresses, etc., and technically it is called Network Inventory System.
Depending on the system architecture, either CRM/OMOF or Billing System contacts NIS to obtain a required network identifier and assigns it to the customer at the time of order creation.
This system is responsible to maintain the life cycle of network identifiers, which starts with available and then flows through different stages like activation, suspend, terminate, quarantine, and again available.
Generally, Billing System does not interact with network switches. Network switches are responsible to provide all the services to the end customers based on what services have been provisioned for the customer. These systems are responsible for controlling calls, data download, SMS transfer, etc., and finally generating Call Detail Records.
Network Switches include MSC, SMSC, GGSN and MMSC. For more information on GSM, MSC, SMS, SMSC, GGSN, MMS, MMSC, please refer to our GSM tutorials.
The Mediation System collects CDRs from different network elements in different formats. Various network elements generate CDRs in ASN.1 format and some network elements have their own proprietary format of CDRs.
The Mediation System processes all the CDRs and converts them into a format compatible to the downstream system, which is usually a Billing System. The Mediation System applies various rules on CDRs to process them; for example, mediation system marks the international calls based on the dialed number (B-Number), same way mediation system marks the on-net calls based on A-Number and B-Number.
There may be a requirement to filter out all the calls, which are having call duration less than 5 seconds, the best place to filter out such type of calls will be at Mediation System level. Same way, if some extra information is required in the CDRs, which is critical to billing, then Mediation System will help in providing such information based on some other attributes available within the CDRs.
Once the collected CDRs are processed, Mediation System pushes all the CDRs to the Billing System using FTP because usually Mediation and Billing systems run on different machines.
This is a downstream system for the Billing System and usually keeps tons of historical data related to the customers. Billing System dumps various customer information into the DWH system. This information includes service usage, invoices, payments, discounts and adjustments, etc.
All this information is used to generate various types of management reports and for business intelligence and forecast.
DWH system is always meant to work on bulk and huge data, and if there is a need for any small report, then it is always worth to generate it from the billing system directly instead of abusing DWH for a small task.
An Enterprise Resource Planning (ERP) system provides modules to handle Financials, Human Resources and Supply Chain Management, etc.
Billing System interface with this system is used to post all the financial transactions like invoices, payments, and adjustments.
This system works like a general ledger for the finance department and gives complete revenue information at any point in time it is required.
As such, this is not necessarily a complete system, but it could be a kind of custom component, which sits in between the Billing System and different payment channels like banks, credit card gateway, shops, and retailers, etc.
All the payment channels use payment gateway to post payments to the billing system to settle down customer invoices.
Usually, Payment gateway exposes a kind of API (Application Programming Interface) to the outside world to post the payments to the Billing System. The API can be used by any external resource to post the payment.