Changelog Latest release 2 days ago

First off take a look at the galley on the left. It's full of images that shows you how we implemented the concept of Split Payment in WHMCS. Learn how to use it reading the documentation.

Secondly we made an important change to how we deal with missing or incorrect billing details provided by customers. Initially we wanted to adopt a strict approach forcing customers to provide such details but based on your feedback we changed our mind.

In such cases instead of stalling all the opertations, the module will issue the electronic invoices with the available data. For example if a customer says "I am a company" but refuses to provide his company name and/or a valid VAT Number, the electronic invoice will be registered to an individual.

The basic principle is that it's not your responsibility if customers do not provide you complete billing details. If they are interested in receiving correct invoicing they need to update their details accordingly.

Don't miss developer notes below.

New 4
  • Split Payment support for Public Administrations and state-owned companies
  • Billing details for Electronic Invoicing. All pages has been updated to support Split Payment functionalities
  • VIES panel (client profile) for Italian customers now shows the exact business type / entity
  • We added a several fallbacks to help you issuing XML files even for customers with missing or incorrect billing details
Improved 2
  • Added checks and validations for Zipcodes in Electronic Invoicing
  • Tax ID and VAT Number can be both present in the XML if customer provided both details
Changed 1
  • VIES doesn't change Tax Exempt status when the customer is Italian with Split Payment enabled
Fixed 1
  • In particular conditions "IdFiscaleIVA" node in the XML file was showing wrongly

Developer notes

In next release we'll focus on perfecting "Nature of the transaction" for tax-exemped customers.

Moreover in next few days we can finally link you the website of the Intermediario that is fully compatible with Billing Extension and FTP node. Before the end of the year we will also publish a very detailed news with relevant information you need for Electronic Invoicing to start 2019 without any trouble.

We introduce you a new page from which Italian-based Providers can request their customers billing details required for the upcoming Electronic Invoicing.

Users will be asked to update their details in line with the new regulations from a simple interface that helps them with clear messages. Once profiles has been correctly updated, they can easily review their status from clientarea.

More information about the new page and what kind of validations are involved, are described in this new section of documentation.

New 7
  • New page that helps customers to provide billing details for Electronic Invoicing
  • Option that shows a new sidebar that helps even further understanding Electronic Invoicing
  • Formal validation for Italian Partita IVA including last character control digit plus VIES
  • Formal validation for Italian Codice Fiscale including Firstname and Lastname checking
  • Validation of Italian Codice Destinatario
  • Conditional billing requirements depending on business type / entity
  • New table that stores business type for each customer (Company, Public Administration, Individual, Professional)
Improved 1
  • Improved English and Italian translations

Developer notes

In next release we'll focus on Split Payment for Public Administrations and to correct remaining issues with the content of XML files.


We keep perfecting Electronic Invoicing adding new useful features and improving some aspects reported by customers.

New 2
  • Electronic Invoicing. The module reports also System Requirements errors on Invoice View
  • Electronic Invoicing. Error reporting on Invoice View now reports all errors and not just the first found
Improved 3
  • VIES Scheduled Checks now runs slightly faster
  • Electronic Invoicing. Warnings don't show up on invoices older than date limit set in the plugin
  • The deactivation of Electronic Invoicing now removes all its existing warnings
Fixed 1
  • Warning System. Electronic Invoicing > System Requirements. FTP-related errors not showing


Billing Extension gives you detailed information when it fails to generate an XML for Electronic Invoicing. This information is accessible from the integrated Warning System but starting from this release it's also possibile to read details about errors directly on invoice view (preview).

We've also added an handy feature to intercept and override the XML before Billing Extension uploads and save it. For more details take a look at core/BillingExtension_Admin/resources/einvoiceit/__Overrides.php file. The script is open source and commented in Italian. Documentation is not available at the moment. Please do not use it if you are not a developer.

New 2
  • Electronic Invoicing. Overrides mode is now available
  • Overrides class has some methods included: UploadXML, RegisterXML, Truncate, Replace, TimeStamp
Improved 1
  • Electronic Invoicing. Codice Destinatario 0000000 and XXXXXXX are not applied more correctly
Fixed 1
  • Invoices page. Filter by Overdue was not returning any results


Billing Extension is now fully compatibile also with v4 Admin template in addition to blend (preview). The release also includes minor improvements.

New 1
  • Billing Extension supports v4 template (backend)
Improved 1
  • Electronic Invoicing. Dedicated script to handle VAT Number, Tax ID and Codice Destinatario
Deprecated 1
  • Removed a feature that was "too strict" with Custom Fields


Some clients were experiencing an "Oops" page soon after fully paying a proforma with credit balance when Invoice Suppression > Fully Paid by Credit is Enabled. Now this issue has been fixed.

Improved 1
  • The module catches potential "Oops" pages more accurately


Some tweaks and corrections. Sadly in the previous release we forgot to remove a testing routine that caused issues to clients using OneInvoice. In this release we removed that function.

Improved 2
  • Installer. Online Contract table automatically populated with all registered accounts including inactive and closed ones
  • Issuing Credit Notes on systems where Proformas are disabled, is now slightly faster
Fixed 2
  • VIES Scheduled Checks were triggering unnecessarily also for customers with no VAT Number
  • OneInvoice. Sadly we forgot to remove a debug function that caused issues with invoices and cron job

Developer notes

As for Electronic Invoicing, please continue submitting your feedback using Lab or opening a ticket. It helps us a lot since we focusing on a major update to make the process of issuing XML files easier.


This release is pretty much big. We managed to address some long-standing issues that have been reported during the last few weeks. We had to recreate big portions of some core features. Below you can find more details about issues we solved:

New 1
  • OneInvoice. Reference and link between suppressed invoices and their relative invoices
Improved 7
  • Integration Code has been hugely improved to handle more data sets and encodings on PDF and View Invoice
  • Invoice PDF. When Company Logo is set from BX, it automatically overrides the default one of WHMCS
  • The script that handles invoice suppression is now more accurate in providing details
  • Installer. Possible loop caused by an invalid value for General Settings > Invoices > Invoice # Incrementation
  • Major tweaks to OneInvoice to solve some potential issues
  • The module now logs more activities in the Activity Log of WHMCS
  • Billing Extensioin Widget. Backward compatibility for WHMCS\Carbon and Carbon\Carbon classes
Fixed 2
  • Invoice PDF and View Invoice. Custom fields based on Snapshots were not always shown properly
  • VIES Scheduled Checks. Activity Log wasn't logging user IDs

Developer notes

For the entire month of December we are going to invest our time in making Electronic Invocing for Italian companies more reliable to use. We received a lot of feedback and there are many small details that we need to look into.

For many people Electronic Invoicing is still a cryptic argument. In fact it is. That's why we wrote a detailed tutorial. Please read it before opening a ticket. This will help us to focus on constructive feedback and to deliver updates faster.


This is a perfective release with some improvements and a minor bug fix.

New 1
  • Electronic Invoicing panel on Invoice View. New style and feature that doesn't let you generate XML files for old invoices
Improved 3
  • Electronic Invoicing. More accurate "pre flight checks" when generating XML files
  • VIES panel on Invoice View no longer shows up on Proformas to avoid any possibility of confusion
  • VIES panel on Invoice View is now more comprehensive and looks better
Fixed 1
  • Invoice View. Missing argument causing the "Generate Now" button to fail in creating XML file for Electronic Invoicing

We are glad to annonce that we've finally completed Invoice Sync that allows to share Invoice Numbering and Credit Note Numbering across multiple installations of WHMCS. Click here to see a preview of the new settings. For more details, read the documentation.

New 3
  • Invoice Sync. Share Invoice Numbers on multiple WHMCS
  • Invoice Sync works with Invoices and Credit Notes
  • Warning System detects and reports issues occurred during the process of synchronization


We developed a Widget from which you can monitor existing Warnings and suppressed invoices.

New 2
  • Widget to monitor Warnings and Suppressed Invoices
  • Notices for suppressed invoices can be dismissed in one click


We've added a new auto-tag {ID} for proformas and updated documentation accordingly. Moreover we added a some interesting features to ease Fatturazione Elettronica.

New 3
  • Fatturazione Elettronica. New option to turn on/off automatic creation of XML with daily Cron of WHMCS
  • Fatturazione Elettronica. New option to set a date starting from which invoices will be processed into XML files. The date is based on Invoice Date.
  • New auto-tag {ID} for proformas
Improved 1
  • Fatturazione Elettronica. Improved queries used to collect data from database
Changed 1
  • Fatturazione Elettronica. Some options have been rearranged in Settings page


This release contains a lot of refinements, new features and some bug-fixes.

New 6
  • Electronic Invoicing. Turn on/off formatted XML to save up to 30% disk space
  • Electronic Invoicing. Dedicated field for italian ID Code etc.
  • Electronic Invoicing. The WebService now also returns Invoicing errors and "raw" data
  • Electronic Invoicing. The module is capable of detecting even more errors
  • A new feature makes sure that invoice date for Invoices and Credit Notes can't be inadvertently updated
  • Snapshots. All Customfields can be edited including ones not originally included in the Snapshot
Improved 5
  • Plugin "Fatturazione Elettronica" not installing on MySQL servers with "innodb_large_prefix" enabled
  • Invoice View. The "Enable Edit" mode for Invoices and Credit Notes triggers more accurately
  • Electronic Invoicing. Additional arguments in the XML schema
  • Small improvements to HereLang and Italian translations
  • Payments page (Admin). Filter by Reference was not working as expected
Changed 1
  • Default sort order of Invoices table
Fixed 2
  • For a number of reasons VIES Check wasn't always working from Invoice View
  • HereLang. Ukranian and Iran flags not showing because of a typo


In this release we made big improvements to ease the installation of the module. We have totally renewed the system that preserves your settings and customizations defined in WHMCS and EU VAT Addon including the importation of complex Snapshots.

New 1
  • New feature that allows to "Force Import" of Snapshots
Improved 5
  • Importing Snapshot. The functionality has been totally renewed
  • Improved the interaction with EU VAT Addon during installation to preserve all your customizations
  • Big improvements for systems that are not using proformas involving sequential numbering, document type, dates and snapshot
  • False negative error occurring on View Order page
  • Small tweaks to Installer code


In this release we make possible to define custom MySQL ports to connect the module to your database.

Improved 1
  • The module now supports servers with custom MySQL ports