1. 13 june 2018
  2. Billing Extension

As you probably already know, starting from 7th of March we are refactoring Billing Extension, our most popular module. First off we want to thank all customers that are actively helping us in this stage by sending suggestions and requests from our Lab. Now we would like to show what we have been able to to develop so far.

VIES live checks

If your company is based in EU you'll love all these new features. Billing Extension is now capable of verifying the validity of VAT Numbers provided by European customers when:
  • Customers register on your website
  • Customers change their VAT Number or Country from clientarea
  • Administrators update VAT Number or Country on behalf of a customer
  • Administrators perform manual checks
  • With Cron Job when the latest check performed against VIES is too old
It all works in real time. Billing Extension can also automatically change the Tax Exempt status (Yes/No) depending on the response from VIES. This feature is bulletproof! It properly detects Intra/Extra EU, companies/individuals. It also identifies customers from your own country and handles them accordingly. Take a look at this clip to get an idea of how easily Administrators can perform manual checks.



Here you can find more details. Below you can see how it works for customers.

Proforma, Invoice, Credit Note

WHMCS only handles proformas and invoices but we managed to add credit notes (or "reverse invoices"). This feature is already part of the old Billing Extension, so what's more? If you have a long experience with WHMCS you probably already know how tricky it is to deal with invoices and proformas.

In WHMCS invoices and proformas have different numbers, proformas could have an ID, an ID with number or just a number. As a consequence when you export invoices to PDF or CSV you may find invoices and proformas mixed together for no apparent reason.

Why is it so confusing? The short answer is that WHMCS is unable to distinguish accurately between proformas and invoices. In practical terms for WHMCS they're both the same. They are interpreted as one or the other based on rules that sometimes don't work as expected. Generally speaking if a document has a number WHMCS reads it as an invoice. For similar reasons even adding "Invoice #" or "Proforma #" prefixes before sequential numbers is not an easy task.

To solve this issue we developed a system that marks proformas, invoices and credit notes. We called this new parameter Document Type that can be used to view, filter and export exactly the type of documents you are looking for. We included this new precious information on Invoice view and in the following table.



Each document type (proforma, invoice, credit note) have dedicated sequential number, increment and format.

It is also possibile to convert a proforma into an invoice or a credit note in one click. As for refunds, there's an option to refund an invoice creating a credit note. Both documents will be linked forever as you can see from this screenshot.

Extended Snapshots

WHMCS already stores client data snapshot (preserve client details upon invoice generation to prevent profile changes for existing invoices), but it doesn't store currencies and there's no way to update these values. In Billing Extension we overcome both issues giving you the following features.

There's more! We made your own company details (name, address, Pay to Text, logo) a snapshot linked to invoices. That means that in case your company name changes or you move to a new address, you can create a new company profile. Billing Extension will apply the new profile only to newer invoices as follows. Click here to see an example of a Company Profile.

Warning System

Tired of fixing invoicing problems when they have already occurred? Billing Extension performs several checks to detect problems in your billing system upfront. At the moment of writing the module can detect the following errors:
  • Gaps in Invoice Number sequence. Review missing invoice numbers and their expected date
  • Duplicate Invoice Number. Find duplicate invoice numbers and how many duplicates exist
It also reports you warnings that may require your attention:
  • VIES. You're notified every time the Tax Exempt status of a customer changes due to VIES response
  • Orphan Snapshots. You're notified when a snapshot is missing the related invoice
Click here to take a deeper look at this new page.

Renewals made simple

Let's suppose a customer has the following products with you:
  • Domain example.com + ID Shield
  • Hosting for example.com + Antispam + Antivirus
  • SSL for example.com
  • Dedicated SMTP for example.com
As a customer is not easy to manage all these things from WHMCS:
  • My Domains > example.com
  • My Domains > example.com > Addons > ID Shield
  • My Services > Hosting - example.com
  • My Services > Hosting - example.com > Addons > Antispam
  • My Services > Hosting - example.com > Addons > Antivirus
  • My Services > SSL - example.com
  • My Services > Dedicated SMTP - example.com
Here we have 2 tables and 7 pages to manage products for the same domain. Customer has to continuously move back and forth multiple times to perform simple actions. We made things a lot easier (look here). Now you can just type "example.com" and click to expand all products/services related to this domain.

Invoice Suppression

You can configure Billing Extension to suppress unwanted invoices (e.g. zero amount, full discount, fully paid by credit etc.). In their place you'll find a new page that shows you all information. For example you can view items and transactions involved, the reason why it has been suppressed and so on. Click here for more details.

Avoid software conflicts

As developers we know that some features and options of third-party modules could cause conflicts with WHMCS. To bring you a module without hassle we removed from admin area unnecessary options that can be managed directly from Billing Extension (example).

Tax Settings

We created a new page where everything related to taxes can be managed in one place. The new Tax Rules page lets you configure general settings and define country-specific tax names and rates (level 1 and 2) with an intuitive interface.
The new Billing Extension is about 60% complete. Presumably it will be ready at the end of summer. Stay tuned and don't forget that you can send us suggestions and request features.

Written by

Davide - Founder, Developer