Integration Queue Job
by VentorTech https://github.com/ventor-dev/integration-queue , Odoo Community Association (OCA) https://github.com/ventor-dev/integration-queue , ACSONE SA/NV https://github.com/ventor-dev/integration-queue , Camptocamp https://github.com/ventor-dev/integration-queueAvailability |
Odoo Online
Odoo.sh
On Premise
|
Odoo Apps Dependencies |
Discuss (mail)
|
Lines of code | 3355 |
Technical Name |
integration_queue_job |
License | LGPL-3 |
Website | https://github.com/ventor-dev/integration-queue |
Availability |
Odoo Online
Odoo.sh
On Premise
|
Odoo Apps Dependencies |
Discuss (mail)
|
Lines of code | 3355 |
Technical Name |
integration_queue_job |
License | LGPL-3 |
Website | https://github.com/ventor-dev/integration-queue |
Integration Job Queue
VentorTech fork of OCA queue_job
It provides a background job queue for Odoo, used to run asynchronous tasks outside of normal user transactions.
License: LGPL-3.0-or-later
Technical name: integration_queue_job

Why this fork?
The original OCA queue_job
is powerful and feature-rich. Many of our customers, however, only need a focused subset for
day-to-day integrations. This fork keeps things simple and lightweight, remains compatible with our
integration_* connectors, and is maintained in step with current Odoo versions.
Learn more about our connectors: https://ecosystem.ventor.tech/
Key capabilities
- Postpone any model method with
with_delay()
; jobs run in a separate transaction - Channels & capacity limits; priorities, ETA, retries & retry patterns
- Related record actions (open record, retry job, mark done)
- Concise error summary with optional full traceback
- PostgreSQL-backed storage with a dedicated, NOTIFY-driven runner
Usage example
Delay any method call; the job will be executed by the runner:
from odoo import models
class MyModel(models.Model):
_name = "my.model"
def my_method(self, value):
_logger.info("Executed with value: %s", value)
class MyOtherModel(models.Model):
_name = "my.other.model"
def button_do_stuff(self):
self.env["my.model"].with_delay(priority=10).my_method("Hello")
Tip: run Odoo with workers and load the module server-wide (e.g., server_wide_modules = web,integration_queue_job
).
Questions or issues?
Open a ticket on our support portal and we’ll get back to you.
https://support.ventor.tech
Credits & License
Fork of OCA’s queue_job
— original authors: ACSONE SA/NV, Camptocamp SA, Odoo Community Association (OCA).
Fork & modifications: © 2025 VentorTech
License: LGPL-3.0-or-later
Integration Queue Job
Overview
The Integration Queue Job module is a lightweight fork of the OCA queue_job addon. It provides background job processing for Odoo, optimized to work seamlessly with VentorTech's e-commerce connectors (https://ecosystem.ventor.tech/).
This fork keeps only the features needed for our connectors, simplifying the codebase while remaining compatible with the original queue_job. You can safely use either module with our connectors.
Why this fork?
- Focused and simplified job queue system (reduced complexity).
- Fully compatible with VentorTech e-commerce connectors.
- Preserves compatibility with the original OCA queue_job.
- Easier maintenance across Odoo versions.
Usage Example
You can postpone method calls to be executed asynchronously:
class MyModel(models.Model): _name = 'my.model' def my_method(self, a, k=None): _logger.info("executed with a=%s, k=%s", a, k) class MyOtherModel(models.Model): _name = 'my.other.model' def button_do_stuff(self): # This will run in the background self.env['my.model'].with_delay().my_method('a', k=2)
Release Notes
- 1.0.0 (2025-09-16)
- Initial release (forked from OCA/queue, cleaned up for VentorTech connectors).
Credits
Original Authors (queue_job): - Camptocamp - ACSONE SA/NV - Odoo Community Association (OCA)
Maintained Fork (integration_queue_job): - VentorTech (https://ventor.tech)
License
LGPL-3.0 or later (http://www.gnu.org/licenses/lgpl.html)
Please log in to comment on this module