PortaBilling is a carrier-grade converged billing/provisioning system for communication service providers. It communicates with elements of your network core components (such as VoIP gateways or WiFi/DSL access points HSS, P-GW, IMS), provides these nodes with authentication or authorization (determining whether a customer should be admitted and provided with a service), and gathers billing events, i.e. data about services rendered to your customers. Based on this information, it performs rating for the services, creates transaction records (also called xDRs – eXtensible Detail Records), and modifies customers’ balances accordingly.
All this happens in real time, so the billing data is updated as soon as a session is completed (e.g., the customer hangs up his phone, or an SMS message has been sent). PortaBilling provides a unified platform for multiple services, which allows you to use it to charge clients for their voice calls, messages, and data transfer, thus effectively deploying triple-play on your network.
PortaBilling will act as the nerve center of your network. After you have entered information about your services, rates, customers and so on via the web interface, PortaBilling will communicate in real time with elements of your network to supply information regarding which customers the service should be provided to (and which not), as well as exactly how it should be provided. Customers whose balance has run out will be disconnected immediately after exceeding the maximum session duration and (since billing happens in real time) funds will be withdrawn from their account and service denied if they make another attempt to use the service.
As shown in the diagram above, multiple types of network equipment can work in conjunction with PortaBilling. The easiest and best method of integration is via the RADIUS Diameter protocol. However, if a certain type of switch or server does not support RADIUS Diameter, integration can be done by other means, for instance XML API.