Purpose

Install a 3rd party tool to setup the configuration of Razor's QuickBooks Integration


High-Level Steps

  1. Install QuickBooks on a server or machine that is available 24 hours a day 7 days a week.
    1. Estimate Time: 1 hour
    2. Team Responsible: IT/Infrastructure Team
  2. On the public firewall, forward all traffic on ports 8166 and 4500 to the server that has QuickBooks installed in step #1 above
    1. Estimated Time: 30 minutes
    2. Team Responsible: IT/Infrastructure Team
  3. Configure nSoftware's QbConnector, QODBC and Razor to use client's QuickBooks using the instructions described below.
    1. Estimated Time: 2 hours
    2. Team Responsible: IT/Infrastructure Team
    3. Notes: This configuration process may include one or more computer restarts so it is best done outside normal business hours.


Prerequisites

  1. Valid installation of QuickBooks (Enterprise, not cloud version)
  2. Please turn automatic installation of Windows Updates off. If you have this setting turned on the machine could be updated, restarted and then the appropriate services are not running after the restart. It is recommended to have this Windows Update setting turned off or at least ensure all necessary services are automatically started on every reboot (the best option).
  3. Added "Razor" user designated for exclusive (not share) access to QuickBooks
  4. You will see many references in this document to demo.razorerp.com; however, you need to use your own company's instance such as company123.razorerp.com. If you do not have your own company instance than you cannot complete this integration setup.
  5. Your QuickBooks company file must be set "Multi-User" mode by clicking the "File > Switch to Multi-User Mode" in the QuickBooks top menu.
  6. Ensure your QuickBooks preferences is set to true for the option "Inventory and purchase orders are active."



7.  Ensure your QuickBooks preferences is set to true for the option "Use class tracking for transactions."




Integration Background & Properties

Please familiarize yourself with the various attributes necessary for the QuickBooks integration. If you don't have some of the "required" pieces of information below, please be sure to retrieve them from your IT administrator before configuring this integration.



General

  1. Your Public IP Address
    1. Required
    2. Description – This is the public IP address of your company that is used to access the internet.
    3. Determination – Open a local session on the server that has QuickBooks installed and navigate in a browser to whatismyip.com. This site will tell you what IP address the server uses to access the internet.
  2. Port
    1. Required
    2. Description – This is the port used by the main/outbound QuickBooks connection using nSoftware's QbConnector tool. The default port is 8166.
    3. Determination – Use 8166 as the default unless that port is already occupied by a service on your company's WAN or LAN networks.
  3. Qb User Name
    1. Required
    2. Description – This is the user's name that has access to your company's QuickBooks file.
    3. Determination – In QuickBooks you should setup a new user exclusively used by Razor to access your company's QuickBooks file.
  4. Qb User Password
    1. Required
    2. Description – This is the user's password that has access to your company's QuickBooks file.
    3. Determination – This is assigned to the user account created (#4 above) when that user is designated for exclusive access to the company's QuickBooks file.
  5. File Path
    1. Required
    2. Description – The local file path where your company's QuickBooks file is stored.
    3. Determination – Open up QuickBooks and find where the company file is saved on the local file system or network.


Integration

  1. Export Starting from Order Date
    1. Optional
    2. Description – Assigns the starting date from which all orders and invoices from that date forward are considered for integration.
    3. Determination – This is usually left empty which means all orders will be synchronized with QuickBooks. However, in the event that you only want orders synchronized from some assigned date forward, you would enter that date in this TextBox.
  2. Export All Inventory as Non-Inventory Parts
    1. Required
    2. Description – This selection decides whether to import your inventory as non-inventory parts (does not need to match inventory to allocated line items on orders) or inventory (inventory needs to match allocated line items on orders).
    3. Determination – Most companies choose "Yes" so that inventory is not considered in QuickBooks.
  3. Create one Customer per
    1. Required
    2. Description – This creates a new customer for each marketplace or order. The advantage to this is it eliminates the needs to have numerous customers for marketplaces such as eBay where it is better to not add thousands of new customers into QuickBooks from eBay when it is not needed. One customer per Order would create a new customer in QuickBooks for each order created.
    3. Determination – Most company's choose by Marketplace to ensure that all eBay customers are masked by one generic "eBay Customer" so various superfluous customers are not added to QuickBooks.


Default Accounts

  1. Income Account
    1. Required
    2. Description – The income account that is associated to a transaction.
    3. Determination – This is determined by your company's accounting procedures.
  2. Asset Account
    1. Required
    2. Description – The asset account that is associated to a transaction.
    3. Determination – This is determined by your company's accounting procedures.
  3. COGS Account
    1. Required
    2. Description – The cost of goods sold account that is associated to a transaction.
    3. Determination – This is determined by your company's accounting procedures.


Connection

  1. Inbound
    1. Optional
    2. Description – This Razor connection tests the success or failure of your configuration's ability to import data from Razor to your company's QuickBooks installation. This is not needed to be successful for the QuickBooks installation to work properly. Only Outbound (#2 below) is necessary for a successful QuickBooks installation.
    3. Determination – If your configuration is correct and the infrastructure is setup properly on your company's network than this should test successfully.
  2. Outbound
    1. Required
    2. Description – This Razor connection tests the success or failure of your configuration's ability to export data from Razor to your company's QuickBooks installation.
    3. Determination – If your configuration is correct and the infrastructure is setup properly on your company's network than this should test successfully.



Configuration – Inbound

Configuration – Preparing

Download archive QuickBooks.zip and extract it. Archive contain installer QODBC Driver - “qodbc_18.00.00.326.exe” and folder with “RemoteConnector”

Configuration – Inbound

These are the steps necessary to configure your company’s QuickBooks integration to receive data into Razor.

  1. Once the archive is downloaded to your QuickBooks server and extracted, double-click the executable file (qodbc_18.00.00.326.exe) and it should launch a screen like below.

2.  Click "Next >"

3.  Click "Next >" (Change your QuickBooks region of necessary)

4.  Click "Next >"

5.  Click "Next >"

6.  Click "Next >"

7.  Click "Next >" and the program will begin to install like in the screenshot below.

8. Once complete the program will render the screen below where you may click “Finish” to complete the installation. Your computer may ask you to restart it, so please do so if it does request a restart.

9.  Once the installation is complete and the server is restarted if it is needed, then we can continue with the configuration. Navigate to the program files indicated in the screenshot below and launch the program "Configure QODBC Data Source."

10.  Click the "System DSN" tab and navigate to the data source name titled "QuickBooks Data."

11.  A new window will open that looks like the screen below. First, populate the TextBox titled "Locate a company file" with the full path of the company file. An example is listed below. Then choose "Multi-user mode" from the "Mode when opening" radio button area near the bottom of the screen.

    1. Example Company File path
      1. C:\Users\Public\Documents\Intuit\QuickBooks\Company Files\RazorERP.qbw

12.  Next, click the "Test Connection to QuickBooks" button. After you click this you should see a box like this below. That is okay.

13.  Next, ensure that the QuickBooks application is launched and running under the QuickBooks Admin account user. Then, go back to your Start  Program Files and find the program titled "VB Demo" you can launch this and choose "Connections > Add New Connection." Then click the "Machine Data Source" tab and choose "QuickBooks Data" then click the "OK" button. Go to the QuickBooks program which is already open and you will see a dialog box like the one in the screenshot below. Choose to link this access to the "Razor" user you created in QuickBooks and click the "Continue" button.

14.  Another small dialog will pop up like the one in the screenshot below and choose "Yes" to confirm this connection's access. Click the "Done" button to complete this confirmation process.]



This completes the inbound connection configuration for Razor's QuickBooks integration. If you return to the System Settings in your company's instance of RazorERP, you should have a successful inbound connection now configured to Razor's servers.




Configuration – Outbound

These are the steps necessary to configure your company's QuickBooks integration to accept data from Razor.


  1. First, on the Windows machine where QuickBooks is installed, open up TCP port 8166 for Inbound traffic using Windows Firewall with Advanced Security program.

  2.  Place folder “RemoteConnector” to root of disk “C:\”
  3. Run C:\RemoteConnector\RemoteConnector.exe
  4. Click “Add user” on “Users” list, type “User”, “Password” and “Company File”. Click “Test Connection”. On the issue of "Autorize now?" answer "Yes"
  5. Open QuickBooks as an administrator.
  6. Click “OK” on Application Autorization on QBConnector
  7. You will see the prompt below asking you to assign the privileges and user to the user who is not trying to connect to QuickBooks (the user that you setup in step #7 above).  Choose “Yes, always” and assign the Login user as the user that you created explicitly for accessing QuickBooks such as “qb_user” or “razor” or whatever is the name of the user you setup for the
  8. You will be asked one final time to confirm this access and just click DONE.
  9. Change port on base to 8166
  10. Finally, launch the QuickBooks program and with the correct settings in place you should be able to push Finance objects at your company’s path below into your QuickBooks installation.
    1. https://demo.razorerp.com/Admin/Finance.aspx
    2. Also, you may test your integration’s configuration by going to the System Settings page where you configured the integration in Razor and by using the TEST CONNECTION button to ensure the connection is successful. If it is successful, you will see the messages below.




Troubleshooting

  1. Why can't I connect Razor to my QuickBooks?
  2. I followed your guide but I still can't connect Razor to our company's Quickbooks