Changes for Odoo 19: What You Need to Know
With the release of Odoo 19, QuickBooks Online connector now uses a new background processing system: integration_queue_job . This replaces the previously used OCA Job Queue (queue_job). Because of this, additional preparation is required for upgrade.
Migration: How Is It Handled?
Before Starting the Migration
Deploy the latest VentorTech connector versions for your current Odoo version
Update any custom connector extensions
Ensure your Production environment is stable and error-free
1. Create and Prepare an Odoo 19 Migration Branch
This method ensures a clean migration without causing build failures on Odoo.sh.
Create a new branch from Production
Name it anything, e.g. 19.0-migration
Do not switch the branch to Odoo 19 yet – otherwise Odoo will be built (for version v19.0) with module for Odoo v18.0 still present – causing errors. We avoid this by preparing all code before the version switch.
2. Prepare the Odoo 19 Codebase
In the migration branch:
Replace QuickBook connector module with Odoo 19 version,
Remove queue_job module,
Add integration_queue_job module.
This step is purely a Git-level change.
3. Add Shim Modules and Migration Script
To ensure a smooth transition, we use additional component – Shim Module. This module is used to safely preserve existing job data and maintain compatibility during migration
Add the following shim modules to the same branch:
queue_job (shim – always required):
queue_job_subscribe (shim – only if it was installed previously):
The shim modules contain:
No models
No data files
A migration script that helps to overwrite models in database.
Their purpose is to keep the upgrade service from trying to uninstall old queue_job modules (which would break connector data).
Add the dependency of queue_job into the integration_queue_job. This will help the upgrade process to run migration script before the integration_queue_job will be installed.
Add the dependency in
requirements.txt:git+https://github.com/OCA/openupgradelib.git@master
It is mandatory for the migration script located in queue_job shim module.
Commit and push.
At this point your branch:
Still shows as “Old version”
Contains fully prepared Odoo 19.0 code
Includes the shim modules
Is ready for the upgrade process
This is exactly what we want.
4. Upgrade to Odoo 19
You can now safely run the standard Odoo.sh upgrade to Odoo 19 using this staging branch.
5. After the Upgrade Is Completed
Once the system is availabe on Odoo 19:
Remove the dependency of
queue_jobfrom theintegration_queue_jobmoduleGo to Apps and uninstall Shim module (
queue_job,queue_job_subscribe)The Shim modules and Upgrade Helper can be safely removed from the branch
They are no longer needed after the migration. Removing them will not affect data or connector functionality
Edit the configuration file.
Replacequeue_jobwithintegration_queue_jobinserver_wide_modulesoption. Also the existed options should be renamed in Odoo 19.
Location of the config file: /home/odoo/.config/odoo/odoo.conf
The example of the updated configuration file:
server_wide_modules = web,rpc,base,quickbooks_online,<connector_name> queue_job_channels = root:1 queue_job_scheme = https queue_job_host = <your_odoo_host> queue_job_port = 443
IMPORTANT:
Replace
<your_odoo_host>with your actual domain name (e.g.,myhost.odoo.com).
After editing the configuration file, run the following command in the shell:
odoosh-restart http
When the upgrade process is completed you might notice an issue that jobs try to reach localhost. To fix this, you need to restart the cron workers.
odoosh-restart cron