Drupal 7 as powerful Client Management and Billing Solution for ITSP

Drupal 7 can be used as a client management, billing, and e-commerce solution for online businesses. Simple additions to the existing contributed modules can be utilized for greater benefit in terms of re-usability. We have demonstrated how to use a powerful Drupal e-commerce solution, Ubercart, for billing and client management for ITSPs (Internet Telephony Service Providers).

We have developed Drupal 7 modules and integrated these modules with Ubercart e-commerce solution for drupal 7 and ICTBroadcast, a unified communication autodialer software. Ubercart provides billing-related functionality for the products. But we achieved to used Ubercart for service subscription and time duration based access to the service portal. When allowed duration completes, the access to the service portal is blocked. The following image shows the allowed services list. When a service is expired its row (access links) becomes invisible to the user and he no longer can access these services.

This client and billing solution for ITSP has the following modules and rules: client module, ICTservice module, a rate list module, and rules for Ubercart. Client module handles client's user interfaces, subscribed service details, service links, list of available add-ons, and current balance. Another module, ICTService creates simple rules that add the top-up, purchase of add-on, assign/revoke permission, create and assign agent/extensions. ICTService also manages a form that allows new customers to choose a package to subscribe to. The rate list module directly connects with the service portal's rate list and imports the complete rate list in the Drupal table for the rate list. This whole process is enabled through the REST APIs of the service portal.

You can download the source code for this solution from Sourceforge.

You can also show products (addons) using views. We have developed a simple and elegant way of displaying the addons in a grid style using views.

These modules are written specifically for Drupal 7 and ICTBroadcast. Using them for the same might require minor modifications in REST API calls and the creation of products like topup, fax broadcast, SMS broadcast, voice broadcast, etc. For Drupal 7 developers, these modules will provide significant insight on how to integrate it with ICTBroadcast using the REST APIs.