FAQ

Installation

I’m migrating this module from my dev site to my test site. Why do I get a 500 Server Error after I migrate?
Your module uses OAUTH to connect to QBO, so your dev site URL was passed to QuickBooks Online to confirm where the data was coming from. Since you’ve moved to a new URL, this is causing an authorization error. Either Disconnect the module from QBO before you migrate, or simply clear the contents of all of the ‘quickbooks*’ tables in your new database, and re-connect the module.

Why do I get a blank page / 500 server error when I try to connect the module to QuickBooks Online?
Ensure that OAuth and MCrypt are installed by visiting your PHP info page. Enable error reporting in your PHP.INI file to see if any errors show on this page. Also check your error logs to find any corresponding entries. If you’re still stuck, contact us and we can employ more advanced troubleshooting techniques.

Syncing

What if the invoice numbers I have in WHMCS already exist in QuickBooks Online for different invoices?
Unfortunately, this is a common issue for some of our clients who did not start using WHMCS and QuickBooks Online at the same time. Luckily, we have a very stable solution for this. Enabling our module option “Use QuickBooks Online Invoice # Ordering” will instruct our module to use the next available QuickBooks Online invoice # when syncing over a WHMCS invoice, instead of relying on the original WHMCS Invoice #. After syncing the invoice into QuickBooks Online, our module will then go back and update the WHMCS invoice # to match this new # in QuickBooks Online – thus keeping the invoices in sync at all times. This will basically eliminate any invoice numbering overlap otherwise occurring – and keep your QuickBooks Online invoices in perfect order.

How does Manual Pushing work?
Because real-time syncing only syncs data when it is actually created, it won’t sync over any past data that already exists in WHMCS. This is also for your protection, so as to disrupt as little QuickBooks Online data as possible. However, this is where Manual syncing comes into play. Using any one of our Manual Push pages, you can manually choose invoices, clients, payments or products to push over to QuickBooks Online. This is helpful to push data that previously existed in WHMCS before the module was installed over to QuickBooks Online – for example, everything since the beginning of the year. Since we give you multiple ways to sort and filter this data before you push it over, Manual pushing will be a breeze.

How does the module actually handle the syncing of data?
Syncing can happen in one of two ways: Real-time sync or Manual push.

Right after I install and activate this module, what does it do to my QuickBooks and WHMCS existing data?
Absolutely nothing. After you configure and activate the module, then connect it to QuickBooks Online, you will be ready to sync, but no existing data will be added, synced, moved or deleted. We respect the various accounting setups our clients may have, and we leave the module functionality as flexible as possible to accommodate all setups. To start syncing data, see the questions below.

Functionality

How about connecting multiple WHMCS installs to individual QuickBooks Online companies?
Absolutely! You’d just need one instance of our module per WHMCS install.

Can multiple WHMCS installations sync to one QuickBooks Online company with your module?
You sure can! If you want to connect multiple WHMCS installs to one QuickBooks Online company, you can connect up to 10 WHMCS installs to the same QuickBooks Online company with our module. You obviously would need one instance of our module per WHMCS install. We have class tracking built into our module, so if you do connect all companies to one QuickBooks Online account, you can easily keep track of them all using Classes.

My invoices aren’t syncing over to QBO?
Because of the many variables in the configuration of the module, there are a few commonly missed steps that result in the blocking of the invoice syncing. Not to worry though – there are a few things to check below:

Check your Module Connection page – ensure that you are connected to QBO.
Check your Cron Job – ensure it’s running every 5 minutes.
Check your Module Log page – see if any relevant errors are present.
Check your Module Configuration – ensure every dropdown has a value.
Check your Tax Mapping page – ensure you have a value mapped to every tax.
How fast does the syncing work?
Very fast. We use our SyncSmart method to real-time create and update invoices and clients.

Can I still sync pre-existing WHMCS invoices, though?
Certainly! To push existing invoices from WHMCS to QBO, go to the Invoice Sync module page.

How does this module treat my existing clients and invoices in WHMCS and QBO?
In order to accommodate as many unique users as possible, this module doesn’t touch any data that exists prior to the module installation. Once the module is installed, however – going forward; all invoices & clients created will be synced.

Credit Card Processor Batch Support

That’s super! But what if my Card Processor pulls transaction fees out of their deposits to me every day?
We also feature transaction fee support, so if enabled, our module will deduct transaction fees from this deposit (and record to an expense account of your choosing), so it will exactly match your processor’s deposit into your bank account, if they pull fees out every deposit.

How does your module deal with my WHMCS credit card processor gateway that batch deposit daily sales into my account?
We’re excited to announce that as of v1.8.6 of our module, we fully support this functionality! Although our module has already been able to sync payments into QuickBooks Online, it did so individually – so you’d have to match 10 payments to 1 batch deposit pulled in from your bank, for example. NOW, you can turn on batch support for specific WHMCS gateways, and our module will record invoice payments to an Undeposited Funds account in QuickBooks Online, then record a batch deposit into your bank account at the end of the day, corresponding to the deposit your processor will make.

Module Cron Job

What exactly does the module cron job do?
Because all syncing (explained above) happens either real-time or manually, the cron job itself doesn’t perform any syncing. Instead, it simply refreshes background data that the module uses to match clients, invoice line items, etc. For this reason, we recommend you run the cron job once a day. Running the cron job will never create any data or disrupt any data that exists in WHMCS or QuickBooks Online.

Taxes

I have to charge GST – how should I set up my Tax Mappings?
In our module config, set the 0% Tax rate to “GST-free non-capital”. In our Configure Mappings > Tax Rules, set the GST tax mapping to “GST”.

I’m in Australia – how does my tax mapping work?
Since all your prices are marketed as including tax, you’ll simply choose the Inclusive tax option in our module config – and map your WHMCS tax rule to the QBO tax rule “GST”. Then set your 0% Tax Rule in the module config to “GST FREE”.

PayPal

I have a PayPal account – how do I connect this to its corresponding QuickBooks Online bank account to be compatible with your module?
Great question! When you connect a QuickBooks Online bank account, it gives you two options.

  1. To receive payments from customers. Do not choose this option. This allows PayPal to automatically record payments received in your PayPal account into QuickBooks Online for you. Since our module already syncs invoice payments made with PayPal in WHMCS over to QuickBooks Online, this will cause extreme duplication, as PayPal records everything, regardless of what invoice it’s paying or if it already exists. We highly discourage the use of this option in any scenario – it’s very messy.
  2. To pay for services and product from vendors. Choose this option. It simply connects to PayPal and pulls in transactions from your PayPal account into the queue for you to Add (if it’s an expense or income not received through WHMCS), Match (to match to a payment our module has already recorded for reconciliation ease), or Exclude.

Updated on July 31, 2017

Was this article helpful?