Product rating: 4 out of 5 stars
Website: www.dotnetinvoice.com
Price: Starts from $99


Billing is one of the most important aspects of any business, and providers of .NET developer or web-hosting services are no exception. A business could develop a billing system from scratch, but doing so would take a lot of time and effort, and the business would also have to hire experienced developers to upgrade and maintain the application. For many businesses, a better solution is to purchase a third-party application, such as DotNetInvoice from The Numa Group.

As its name implies, the product is based on the .NET Framework and requires a server running .NET 3.5 or later, such as SQL Server 2008 or 2005. DotNetInvoice was developed by using the .NET Framework exclusively, and it is available in C# and Visual Basic versions. DotNetInvoice has added substantial new features and improvements to the product since I last reviewed it in "DotNetInvoice v2.1: An ASP.NET-based Billing Solution."

Installing and Using DotNetInvoice
I tested the latest version, DotNetInvoice 2.6, on a SQL Server 2008–based computer, and the installation process went smoothly. As soon the installation process is finished, you log on to the Administrator Dashboard and provide the information needed to configure the application. I found it very easy to work with the various options because the UI is based on AJAX. The software includes a .pdf file that explains how to set up the product, and the source code package has in-code comments that are helpful if you want to customize DotNetInvoice.

Out of the box, DotNetInvoice can create recurring invoices, as shown in Figure 1.

136182_Fig1_DotNetInvoice_0
Figure 1: DotNetInvoice's recurring invoice interface

If you bill the client monthly, you can also configure invoices so that payments are automatically charged to the client's credit card. DotNetInvoice supports nine different currencies, including the US dollar, Indian rupee, Australian dollar, and Japanese yen. And it’s easy to add more currencies by tweaking the source code file.

Another nice feature allows administrators to quickly generate reports and view the results as charts. The admin panel lets clients view and print invoices for their records. You can even integrate the product into your website by modifying the structure of your original template.

Wish List
Like DotNetInvoice 2.1, version 2.6 requires administrators to provide each client's details and to create invoices manually. In a future version of DotNetInvoice, I would like to see a form for users to directly input their information, so that it can be automatically added to the back end of the product. I'd also like to see the product include an installation wizard to allow queries to run in the background and to automatically populate the initial data, rather than requiring the user to manually run the SQL queries. Finally, I would like to see an option in the Administrator Dashboard that allows the business send mass emails to clients and an option that generates coupon codes for clients.

Because of the product's simple design, even inexperienced users will find it easy to learn to use DotNetInvoice. I highly recommend DotNetInvoice, especially for web-hosting providers.

Anand Narayanaswamy (visualanand@gmail.com) is a Microsoft MVP and ASPInsider who works as an independent consultant based in Trivandrum, India. He is the author of Community Server Quickly (Packt Publishing) and runs www.learnxpress.com and www.dotnetalbum.com. Follow him on Twitter @anandenclave.