A generic billing system

Walking tree has strong experience in developing Billing Software. After developing billing for Telecom (Prepaid as well as postpaid), Trading and Cargo & Logistic management, Walking tree has developed a billing system which suits any business.
In any application involving billing, you will have three scenarios
1) You have all the components tightly integrated
2) You have all the components completely distributed
3) You have some of the systems integrated and others distributed

iBilling works for all these scenarios and more. The distributed compnents can communicate synchronously as well as asynchronously.

In addition, iBilling provides you a lot of flexibility by allowing you to configure the processes (components) that you want to be billed. You can do following:
1) Decide whether you want to store details about specific billed process or not
2) Allows you to categorize the bill details coming from a process as charge or financial transactions
3) You can decide about the billing order of the processes and their display order

Finally, it also allows you a way to integrate the system with the collections. Based on the billing activities, you can implement your own collection (treatment schedule) mechanism.

Overall, Walking tree has developed a billing system, which is gonna suit everyone. As a proof of concept — this has been used in their health care information system, where Walking Tree is having components like:

  1. Services
  2. Beds & OT usage
  3. Blood bank
  4. Laboratory Management (SmartLab)
  5. Accounting
  6. Pharmacy
  7. Diet

Finally, what is interesting about iBilling is that it is platform independent and if you are using this in the web applications then you can also expect browser independence.

And, did I mention, that KabOta is also integrated with this billing system? Oh yes, reporting and analysis has become really interesting.

So, what are you looking for?

Tagged with: , , , , ,
Posted in General
9 comments on “A generic billing system
  1. devrao says:

    It is interesting to have generic billing system which can bill any thing, but I have few questions

    1. is there a way to configure a billing period, because billing period varies based on the entity we try to bill.

    2. Is there a way to specify the input type i.e some one may want to provide data in xml format, some one in flat file or some in form of table?

    3. are you proving any generic adapter which reads some configurable data and the input data in a format matching to configuration and bill the data?

    • wtcindia says:

      Hi Devrao,
      Thanks for asking very good questions. Let me try to answer your questions:
      1) billing period – as you have correctly mentioned that bill period varies based on what we are trying to bill. So, it looks like something which will be driven by the core business process. However, I think, it will be good to have optional bill period setup to serve industry like Telecom, and financial services like credit card billing, voucher billing, etc. Specially, if we want to run billing in batches then it makes a lot of sense to have a concept of bill cycle configuration, where we can configure bill cycle code and bill cycle end date. Every accounts to be billed can be associated with a cycle code so that they will get picked-up during the billing process. However, at this moment, I will leave it to the customer management applications to decide about the account that needs to be billed. Once that is determined, the billing system will bill everything. Having said that, we would definitely pay attention to your suggestion and plan for this in the next release.
      2) specify the input type — it is the responsibility of the adapters to manage the different input types. Adapters will be implemented by the process owners. Hence, I can claim that you can use any data type as long as your process can understand that. For example – if you use our accounting module then we use RDBMS to persist the data.
      3) Generic adapters We do not provide generic adapters. Adapters need to be developed based on the processes. We register processes with billing systems and that is how billing know what to bill.

      I hope my answer helps you in taking more informed decision. Please contact us, if you need more details about generic billing or any other Walking Tree product / solutions.

    • Sula says:


      Looking at the way WTC’s iBilling works, it uses the abstraction level of Processes. Having said that, it is the responsibility of the individual Processes to implement the concept of Bill Periods, Bill Cycles, etc. because all iBilling will do is ask these registered processes to give it the data which needs to be billed. Now, whether the specific processes return the To Be Billed data to the billing system using Bill Cycle configuration or Bill Period configuration, it is completely abstracted from iBilling.

      Please correct me if my understanding is incorrect.

      • wtcindia says:

        Just to keep things simple, I will request that divide billing into two parts
        1) Determining accounts that needs to be billed
        2) Bill all these accounts

        The first part can be part of the billing system as well as it can be part of a process which uses billing system to bill an individual account. Currently, system is designed to bill a particular account. However, adding first part will be just an extension, if you make that as part of the billing system :-).

  2. Sula says:

    Thanks for the detail!

    Say, given my setup, I can extract the bill related information in a file and pass it on to the billing system. Is this feasible for the iBilling to work with these kind of systems? Important points are:

    1) I can provide the files when the data is ready on my end and they need to be billed (so kinda, On-demand billing)
    2) billing system will have to work with one or more files rather than an API interface

    • wtcindia says:

      As I explained earlier, it is the role of adapter to facilitate communication between the billing system and the processes. If the requirement is that you will be able to copy data files as and when you want; then whoever is responsible for running the bill must be aware about that. That awareness comes through the adapter logic.

  3. Sula says:

    How does this work in an offline environment where I have multiple standalone system running independent of each other?

    • wtcindia says:

      The offline, standalone system will fall in a completely distributed system. I will give you some insight about how iBilling works.
      1) You register the processes and specify whether the communication will be synchronous or asynchronous
      2) You write adapters based on the data required by iBilling

      In case you use the Walking Tree products like accounting, inventory management, pharmacy & other HCIS modules then you don’t even need to write an adapter for those processes.

      It is the role of the adapter to ensure communication. Since in your case all the systems are offline, obviously, it requires some manual interference to facilitate processes to interact with billing system. Your adapter should be able to understand that agreed manual behavior.

      Hope this was helpful.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s

We Have Moved Our Blog!

We have moved our blog to our company site. Check out https://walkingtree.tech/index.php/blog for all latest blogs.

Sencha Select Partner Sencha Training Partner
Xamarin Authorized Partner
Recent Publication
%d bloggers like this: