CGRateS (www.cgrates.org) is a powerful and flexible carrier grade rating engine that is also open source.
It handles rating for any type of service you can think of, and supports real-time or offline session-based and event-based charging. It easily supports prepaid and postpaid charging schemes and also has the capability to support bundles and shared accounts/rating pools, time based tariffs, LCR support, and QoS measurement. You can output rated CDRs in batch or real-time, and you can use “Derived Charging” to fork a rating flow to allow it to be rated multiple times in parallel, for instance if you need to create a differently rated wholesale CDR alongside credit-based retail prepay billing.
CGRateS also has ground-up multi-tenancy support.
Just recently, they have added Resource Limiters to the product which allows the rating process to be driven by resource consumption. This can also be run independently of rating to support pure resource limiting, such as limiting the number of simultaneous calls on a trunk.
CGRateS is modular, scale-able, and easily integrated with other components via the API or supplied hooks into common telephony platforms such as Asterisk, Freeswitch and Kamailio. It also supports Diameter Credit Control. Tariff plans can be pushed to it via CSV files or using an API, allowing it to be integrated into other tools.
If you are a Kamailio, Asterisk or Freeswitch user, you should definitely check it out.
Hopefully we will be blogging about CGRateS some more in the near future.