One feature of WHMCS’s Invoicing settings is the option to allow clients to add funds to their WHMCS Account – to be used in payment for future invoices. In theory, this is a great option to have, but in practice, it’s simply not implemented correctly inside WHMCS to allow for any type of appropriate accounting handling.
When a user attempts to add funds to their account, an invoice is created for this amount, and they’re asked to pay it. WHMCS then specially tracks this invoice, takes the payment and applies it as credit to their account against the invoice they just paid. Technically, this does serve the purpose in WHMCS, however it’s a very illogical accounting practice. You now have an invoice, a payment, a negative credit to the invoice and a positive credit to the account – when in reality, all you needed was one payment representing a positive credit to the account.
When attempting to sync this conglomeration of data over to QuickBooks Online, we have found it’s simply not consistently and scalably possible. There’s no way to keep consistent track of open WHMCS credits, due to the lack of WHMCS hooks surrounding this, and there’s no way to sync the WHMCS invoice & payment over to QuickBooks Online to accurately represent an open balance on the WHMCS clients account.
As such we highly recommend the Add Funds feature is turned OFF in WHMCS until they are better able to handle the addition of client funds in a generally accepted accounting practice. If you still wish to enable this, the extent that our module handles Add Funds invoices is the following:
- We block the syncing of the invoice over to QuickBooks Online.
- We sync the payment of the invoice over to QuickBooks Online as an unapplied payment. (logged as: Add Fund for Invoice#0000)
- When that outstanding credit is applied to a future invoice in WHMCS, the unapplied payment would need to be also applied to that invoice manually in QuickBooks Online.