JI QuickBooks (Drupal QuickBooks module) is created to use existing systems. It comes with advanced features and capabilities so there is no need for external dependencies and complicated installation processes. A Drupal and QuickBooks integration is a module that works with Commerce and Ubercart. By using Drupal QuickBooks integration, you can sync data to QuickBooks Online once the customer successfully checks out.
If you are willing to proceed with Drupal Commerce QuickBooks integration, this guide is made for you. Here, we will highlight the main features, requirements, and the process of integrating Drupal with QuickBooks Online and Desktop versions.
Features of Drupal QuickBooks Integration
By integrating Drupal with QuickBooks, there are numerous features one can take advantage of. Following are the main features you will get once integrating Drupal and QuickBooks.
- QuickBooks and Drupal integration works with Commerce and Ubercart modules.
- Users can send orders, customers, payment transactions, and taxes after checkout.
- If you use the Commerce Stripe module, you can refund within Commerce that void the payment and invoice within your QuickBooks account.
- Users can also make the installation process stress-free and easy using the Commerce or Ubercart interface.
- The report window is also available to display what all orders could not sync. Although these failed syncs will be reattempted when the next configured cron runs.
- Drupal also has an OpenID feature to communicate with the QuickBooks platform. This will also make the procedure easy to connect Drupal to QuickBooks.
- Users can also use the latest QuickBooks API.
Requirements for Integrating Drupal with QuickBooks
To get started with Drupal QuickBooks integration, you will have to prepare the prerequisites. It includes a QuickBooks account set up, QuickBooks SDK, web server, and Commerce or Ubercart module. Let’s know more what exactly is required for successfully integrating Drupal with QuickBooks:
- First of all, you will have set up the QuickBooks account on Intuit Developer Portal.
- Then, download the QuickBooks SDK from here.
Important Note: It is not suggested to directly download the QuickBooks SDK from Intuit as Drupal also has added new features and fixes.
The web server should also be installed with the PHP OAuth extension. Make sure, it is not the Drupal OAuth module.
Besides that, you should either have Commerce or Ubercart as the Drupal QuickBooks integration module will work with any of these.
How to Implement Drupal 7 or 8?
Drupal 8 version has been released and is now stable. However, if you want to use Drupal 7, you can use the old method to download it. To implement Drupal 7 or Drupal 8, the following information can be followed:
Drupal 7
If you have Drupal 7 and want to integrate with QuickBooks, first you will have to download QuickBooks SDK. This can be downloaded from GitHub.com and make sure you place it within your library’s directory. Let’s find out what all steps you need to follow:
- First of all, download the QuickBooks Online SDK from GitHub.
- Then, place the qbosdk3260 folder in the web_root/sites/all/libraries/
- After that, you can download JI QuickBooks modules such as Commerce or Ubercart.
Drupal 8
Since Drupal 8 has been released, you can download it to get new and advanced features. Although Drupal 8 can be downloaded using the old method, you can still use a different method. For instance, by using Composer, you can smoothly install JI QuickBooks. All you have to do is execute the command (composer require drupal/ji_quickbooks).
How to Set Up Drupal QuickBooks Integration for Online Version?
As stated earlier, you need to create the QuickBooks account on Intuit Developer Portal for Drupal QuickBooks integration. If you are already having this account, the process will be much smoother. Once the account is ready, log in to the account and follow the instructions given below. This will enable the test companies so you don’t need to use the love data.
- Go to the “My Apps” menu.
- When you see the “Create new app” screen, click on the “Select APIs” option.
- Then, choose “Accounting” from the “Select API” page.
- Click on the “Create app” option.
- From the “Development Dashboard” screen, select the “Test with OAuth Playground” option located under the “Get your app ready for submission”.
- Here, you will get the “Consumer Secret” and “Consumer Key” on the “OAuth Playground” screen. Now, put these keys in the (/sites/all/libraries/qbosdk3260/App.config) file.
- After this, select the “Access Token Duration”. Make sure the duration is about five months in seconds.
Please Note: Before the duration runs out or the website stops communicating with QuickBooks, you need to refresh the keys. Upcoming releases of the JI QuickBooks will apply an automatic token refresh feature so that you just need to set this feature for once.
- Then, click on the “Connect to QuickBooks” option.
- When you see the popup showing “Authorize the Sharing of Your Data Between Untitled and Intuit” message, select the “Authorize” option.
- At this point, you will see where your “Access Token Secret”, “Realmld” and “Access Token” values are provided. You can copy all of these to the “App.config file”.
As you follow the aforementioned steps, the Drupal website successfully connects with QuickBooks Online.
How to Test the QuickBooks Data?
If required you can create sandbox accounts that will let you test QuickBooks data. To do so, you can perform the following steps:
- Go to the “Intuit Developer Portal”.
- Then, click on the “Hello YOURUSERNAME” drop-down option located near the search bar.
- From here, you can choose the “Sandbox” option.
- Now, check the “Company ID” from the “Company Name” option which we call “Realmld”.
This should be noted when you click on the Go to Company, it connects with the recently logged in QBO company. To change the company in QuickBooks Online, select the Gear icon and click on the Switch Company option.
How to Connect JI QuickBooks to Live QuickBooks?
When your account is ready, connect the JI QuickBooks with live QuickBooks. The process will be quite similar to what we discussed above. Let;s follow the steps mentioned below:
- To get started, open the “Intuit Developer Portal”.
- Then, click on the “My Apps”.
- After this, select the app representing the live account.
- Now, select the “Productions” option.
- Click on the “Keys”.
- Once done, copy the “Consumer Secret” and “Consumer Key” and paste it in the (/sites/all/libraries/qbosdk3260/App.config) file. Please note that the “OAuth Consumer Key” directly goes to the “ConsumerKey” while the “OAuth Consumer Secret goes to the “ConsumerSecret.
- Now, go back to the “Development” and select the “Test with OAuth Playground”.
- From the “OAuth Playground” screen, you can paste your “OAuth Consumer Secret” and “OAuth Consumer key” on the place where the “Consumer Secret” and “Consumer Key” are. At this point, you can select the “Access Token Duration” and select the “Connect to QuickBooks”.
- Once completed, you will receive the “Access Token Secret” and “Access Token” that you need to copy so you can paste it to the (/sites/all/libraries/qbosdk3260/App.config) file.
By executing these steps, you can connect your JI QuickBooks to the live QuickBooks. Make sure you perform each step carefully. You will also have to configure the App.config file.
How to Set Up the Drupal Commerce QuickBooks Integration for Desktop Version?
To integrate Drupal Commerce in QuickBooks Desktop, you need to set up the account with the right configurations. Thereafter, you can sync the data with QuickBooks Desktop. Let us show you how to get started with Drupal Commerce QuickBooks Integration:
- First of all, download and install the “QuickBooks Desktop”.
- Then, set up all the accounting details in QuickBooks.
- Once done, click on the “Payments” menu.
- Now, select the “PMT. Method”. Here ,you can add the payment methods based on the payment gateways that are enabled on the website.
- After that, you can download “QuickBooks Web Connector 2.2.0.80” and install it on your computer.
- Once done, download the module of Drupal “Commerce_qb_webconnect”. All you have to do is execute the command ($ composer require drupal/commerce_qb_webconnect).
Please Note: When you execute the command, the module has the alpha version of 8.x2.0 and it has the required functionality to receive the commerce data into QuickBooks.
- Now, proceed with the Drupal installation. Keep in mind if it is a local installation then the URL should have the work localhost, e.g., http://localhost, else if it is a public website then the URL must have https certificate.
- Once done, switch to the “/admin.people” and enter the password for your quickbooks_user in Drupal. Make sure you note this password as you will need to use the same password in your Web Connector app.
- After that, navigate to the “/admin/commerce/config/commerce_quickbooks_enterprise/qwc.
- Now, you need to download the “QuickBooks Web Connector” file by clicking on the “Download QWC File” button.
- As you open the “QuickBooks Web Connector”, select the “Add an application” button.
- Then, upload your “.qwc” file and press the “Yes” button to the given prompts on your screen.
- When your file successfully uploaded, navigate to the “/admin/commerce/config/commerce_quickbooks_enterprise/quickbooksadmin”.
- Here, you can place the checkmarks for the “Export Configuration”.
After following these steps, you need to be sure that you replace COGS, Income, and other Assets accounts with the ones that are matching with the accounting details.
How to Sync the Data with QuickBooks?
Now that you have set up the Drupal Commerce QuickBooks integration, continue syncing the data with QuickBooks Desktop. Here are the instructions you should look after:
- For instance, you have created some products on the website. You need to add these products to your card, complete the checkout, and finish the order.
- After that, you can click on the “/admin/reports/dblog”. Here, you will receive a message stating “Added Invoice Order to export queue”.
- Now, click on the “Web Connector” and choose the app you just uploaded with a “.qwc file” and press the “Update Selected” option. Be careful when you add the password; the password should be the same that you used earlier.
- The product, invoice/sales receipt, customer, payment, and product will be imported automatically to the QuickBooks Desktop.
- Later, you will have to check if all these have been added successfully. To do so, you can click on the “Customer” and find the order name. Similarly, move to the “Recent Transactions” and “Invoice/Sales Receipt” option. Besides that, you can check the product from the “Item” section, check the payment from the “Payment” section by selecting the “Received From” and choose the order name.
When everything is done, all the information from your new transaction will be synced in the QuickBooks Desktop. The process will save time as it avoids manual entry.
To Sum Up
Drupal QuickBooks integration is easy. All you have to be aware of is the requirements for integration so that you can implement Drupal 7 or Drupal 8. Here, we have shared some procedures for integrating Drupal with QuickBooks Online and Drupal Commerce with QuickBooks Desktop. Let’s integrate and sync the data now!
If you are looking for other apps to integrate with QuickBooks account, the following guides can be very helpful.
- WePay QuickBooks Integration
- Squarespace Integration with QuickBooks