Installation and setup
Requirements
Section titled “Requirements”- CS-Cart or Multi-Vendor 4.17.2 or later (tested up to 4.21.2), PHP 7.4 to 8.3.
- Administrator access to the store’s admin panel.
- A QuickBooks Online company. You use your own Intuit developer app, so no account with us and no third-party service is involved: orders travel from your store straight to QuickBooks.
- A free Intuit developer account (https://developer.intuit.com) to create the app. A sandbox company, created in the developer portal, is the place to test.
- A cron job on your server (see step 8).
Install the add-on
Section titled “Install the add-on”- Download the
kv_quickbooks-<version>.zippackage from your Kavio Labs or CS-Cart Marketplace account. - In the admin panel, open Add-ons > Manage add-ons.
- Click the gear button and choose Manual installation, then upload the archive.
- Find QuickBooks Online Sync in the list and make sure its status is Active.
- Enter your license key under Settings > License (Kavio Labs downloads) and click Check now.
Create your Intuit app and sandbox company (once)
Section titled “Create your Intuit app and sandbox company (once)”- Sign in at https://developer.intuit.com and open Dashboard > Create an app; choose the QuickBooks Online and Payments platform and the scope com.intuit.quickbooks.accounting.
- Open the app’s Keys and credentials page. The Development keys work with sandbox companies; the Production keys work with real companies (Intuit asks for an app questionnaire before it gives production keys).
- Under Redirect URIs add the address shown on the add-on’s Connection page under Redirect URI. It must match exactly. Production keys need
httpsaddresses. - Copy the Client ID and Client Secret of the key set you use.
- For testing, a sandbox company is created for you in the developer portal (Dashboard > Sandbox). Its data is made up.
Connect QuickBooks
Section titled “Connect QuickBooks”- Open Orders > QuickBooks sync > Connection (or Add-ons > Manage add-ons > QuickBooks Online Sync > Settings and click Connection).
- Pick Test (sandbox company) mode, enter the client ID and the client secret of the Development keys, press Save.
- Press Connect to QuickBooks. Intuit asks you to choose the company and to allow the access; use the sandbox company for the first run.
- You are sent back to the store. The company id (realm) is stored for you; Test connection shows the company name, country and home currency.
- Open the Mapping page (see Configuration): press Load items, accounts and tax codes from QuickBooks, choose the default item and shipping item, the deposit account and the tax codes (Fill the tax codes suggested for my country fills TAX and NON for United States companies), and save.
- Choose the order statuses that start the work and the document type (invoice or sales receipt). Set Sync orders from to the first day of the period you want in QuickBooks.
- Place a test order, move it to the invoice status and watch Orders > QuickBooks sync and Jobs.
- Add the cron job from the settings page (Cron section), every minute is fine. Overlapping runs are prevented.
- For live books: switch Mode to Live, enter the Production keys, Connect to QuickBooks again and repeat the mapping for that company. In the company’s settings switch on Custom transaction numbers if you want the order number (WEB-1042) as the document number.
The connection renews itself: the refresh token lasts 100 days and every refresh gives a new one; the add-on refreshes whenever it works and when the store has been quiet for 30 days. If the store is switched off for more than 100 days, press Connect to QuickBooks again.
Multi-Vendor
Section titled “Multi-Vendor”By default the marketplace owner connects one QuickBooks company for all vendors (Marketplace owner mode on): the owner’s books get every vendor order. Per-vendor books are not part of 1.0. Switching the mode off lets each vendor connect their own company in the vendor panel; use that only if you accept the limits described in Usage.
Update
Section titled “Update”- Upload the new package the same way. Your settings, credentials and data are kept.
- The add-on adds missing tables and settings by itself on the first request after the update.
See CHANGELOG for what changed in each version.
Uninstall
Section titled “Uninstall”Open Add-ons > Manage add-ons, click the add-on’s gear button and choose Uninstall. This removes the add-on’s settings, language variables and database tables, including the stored credentials and tokens. Documents already in QuickBooks stay there. You can also remove the app’s access in QuickBooks under Apps (connected apps) in the company’s settings.