Training Paths: All Users
< Back to Article List120. QuickBooks: Integration Overview & Guide
Last updated: 23 April 2026 at 08:45:47 UTC by Administrator
This article explains how the Junari QuickBooks Link works inside your JAMS system (Odoo), how to connect your company to QuickBooks Online, sync data, post invoices or credit notes, and use the QuickBooks fields on Contacts, Products or Services, Taxes, and related screens. All features described here are now available in JAMS.
Make sure you’re in Developer Mode so you can see all the configuration options.
You can enable it by going to:
Users & Settings > Settings > General Settings > Activate the developer mode (at the bottom of the page).
1) Prerequisites and Access
You manage the QuickBooks Online connection from:
Settings → Companies → select your Company → Junari QuickBooks Link tab
Only users with ERP Manager access can see this page. The following buttons are available:
-
Connect to QuickBooks
-
Test Connection
-
Disconnect
Optional settings
Within the same tab you also have:
-
Use Sandbox - Enables connection to a QuickBooks sandbox company for safe testing.
-
Connected QB Company Name and ID - Displayed once authenticated.
-
Use QuickBooks Document Numbers - If enabled, QuickBooks controls invoice and credit note numbering. (Ensure “Custom transaction numbers” is disabled inside QuickBooks.)
-
Include Customer Name - When enabled, the QuickBooks document will include the company name alongside the billing address. Once enabled, the company name will always appear with the billing address.
No granular permissions exist in JAMS. All QuickBooks actions require ERP Manager-level access.
2) Connect and Verify the Link
Navigate to:
Settings → Companies → your Company → Junari QuickBooks Link
Click Connect to QuickBooks and complete the OAuth login. Approve the connection request from QuickBooks Online.
After connecting:
-
Click Test Connection to verify. You will receive an in-app notification confirming which QuickBooks company you are linked to.
-
If the token has expired, you will be prompted to log in again.
To reset everything at any point, click Disconnect. This also clears cached authorisation tokens.
3) Choose Background Sync Users
JAMS allows scheduled background syncing using cron.
In the Junari QuickBooks Link tab:
-
Set Run Background Sync As
-
You may select one or more ERP Manager-level users who have QuickBooks Online access.
The scheduler will:
-
Attempt to connect as the first user.
-
If unsuccessful, proceed through the list.
-
Run a full sync once authenticated.
-
Log errors if no user can connect.
This ensures that scheduled syncing continues even if a user changes their QuickBooks password or loses access.
4) What Data Syncs (and How)
From the Company’s QuickBooks page you can run each sync manually. Each section displays Last Completed and a Sync Now button.
Customers and Account Balances
-
Pulls all QuickBooks Customers.
-
Updates balances, currency, notes, and status.
-
Deactivates Odoo QuickBooks Customer records if they no longer exist in QuickBooks.
Pulls all QuickBooks Customers.
Updates balances, currency, notes, and status.
Deactivates Odoo QuickBooks Customer records if they no longer exist in QuickBooks.
Products and Services
-
Pulls QuickBooks Items.
-
Includes type, SKU, description, unit price, and active status.
-
Stores them as QuickBooks Items inside JAMS.
-
Used for invoice posting and product mapping.
Pulls QuickBooks Items.
Includes type, SKU, description, unit price, and active status.
Stores them as QuickBooks Items inside JAMS.
Used for invoice posting and product mapping.
Tax Codes
-
Pulls QuickBooks Tax Codes.
-
Stores purchase rate, sales rate, active status.
-
Used when mapping JAMS Tax Codes to QuickBooks.
Pulls QuickBooks Tax Codes.
Stores purchase rate, sales rate, active status.
Used when mapping JAMS Tax Codes to QuickBooks.
Full Sync
Runs:
-
Customers
-
Products and Services
-
Tax Codes
This is the same sequence used by the scheduler.
Deactivation Handling
If an Item, Tax Code, or Customer is deleted or made inactive in QuickBooks, JAMS:
-
Marks the JAMS QuickBooks record inactive
-
Keeps all historical mappings intact
-
Avoids breaking historical invoices or audit records
5) Working with QuickBooks Customers in Contacts
Viewing and linking
On a top-level Company record you will see a QuickBooks Link section showing:
-
Linked QuickBooks Customer
-
Status
-
Currency
-
Balance
-
Notes
-
Last updated
-
Buttons for:
-
Create QuickBooks Customer
-
Refresh QuickBooks Balance and Status
-
This appears only for users with ERP Manager rights.
Creating a new QuickBooks Customer
Click Create QuickBooks Customer.
JAMS validates the Invoice Address. It must include:
-
Name
-
Street
-
Postcode
-
Email
-
Phone
If any are missing, JAMS displays a clear error message listing exactly what needs fixing. After correction, retry the creation.
Once successful:
-
The Customer is created in QuickBooks
-
A QuickBooks Customer record is created in JAMS
-
The two records are linked
-
The mapping is visible in the Contact form
Refreshing Customer data
Click Refresh QuickBooks Balance and Status to:
Update the balance
Update currency
Refresh status notes
Pull account status from QuickBooks
6) Working with QuickBooks Products and Services
All JAMS Products and Services (templates or variants) include a QuickBooks Product or Service lookup.
You can:
-
View the linked QuickBooks Item
-
Select the appropriate item after syncing
-
Use the mapping when generating invoices for QuickBooks posting
The QuickBooks Item record stores:
-
Type
-
SKU
-
Description
-
Unit price
-
Active status
-
Currency (always the QuickBooks company currency)
The QuickBooks Item form in JAMS is read-only.
7) Working with Tax Codes
JAMS Tax Codes include a QuickBooks Tax Code field, visible in:
-
List view
-
Form view
You cannot open or edit the QuickBooks Tax Code record from here. The QuickBooks Tax Code holds:
-
Active status
-
Purchase rate
-
Sales rate
After the initial sync:
-
Map each JAMS Tax Code to the correct QuickBooks Tax Code
-
Deactivate any unused imported QuickBooks Tax Codes if needed
Correct mapping ensures accurate tax posting when sending invoices from JAMS to QuickBooks.
8) Scheduler (Automatic Syncing)
A scheduled job attempts to sync every connected company.
Process:
-
Attempts login as the first configured user
-
If authentication fails, moves to the next
-
Once authenticated, runs a full sync
-
Logs any issues if no users can connect
You can adjust sync frequency from the standard Odoo scheduler settings if required.
9) Troubleshooting
“You may only link the top-level Company record”
The contact must be the commercial partner. Open the Company record or convert the contact to a company.
Validation error when creating a customer
Ensure the Invoice Address contains Name, Street, Postcode, Email, Phone. Correct and retry.
Test Connection opens QuickBooks login
Your QuickBooks token expired. Log in again to refresh the token.
Document numbers do not match QuickBooks
Ensure “Use QuickBooks Document Numbers” is enabled in JAMS and “Custom transaction numbers” is disabled in QuickBooks.
Invoices not appearing in QuickBooks
Check:
-
Product or Service mapping
-
Tax Code mapping
-
Customer mapping
-
Whether the QuickBooks connection is authenticated
-
Whether the user posting the invoice has ERP Manager access
Payments not appearing in JAMS
Refresh the Customer record or run a manual sync. Payment updates come from the Customer and Invoice sync.