OdooWiki OCA HUB

Stock Move Auto Assign

stock_move_auto_assign folder_open OCA/stock-logistics-reservation open_in_new
Stock Management License: AGPL-3

Automatically check availability of stock moves when a move is set to "done".

It uses queue jobs to verify the availability in order to have a minimal impact on the user operations.

The conditions to trigger the check are:

  • A move is marked as done
  • The destination locations of the move lines are internal
  • The move doesn't have successors in a chain of moves

At this point, jobs are generated:

  • One job per product
  • Any move waiting for stock in a parent (or same) location of the internal destination locations from the done move has its availability checked

Only one job is generated for an identical set of (product, locations).

auto_awesome What this module does

AI-generated from the code · Odoo 18.0

When goods are received into an internal location, Odoo automatically tries to reserve those products for waiting transfers, using background jobs so users are not slowed down.

This module makes Odoo automatically reserve stock for waiting transfers whenever goods arrive in an internal location. It works in the background using queue jobs, so the user's screen is not blocked.

What triggers the automatic reservation: - A stock move is marked as done (for example, a receipt is validated). - The destination of the move lines is an internal location. - The move has no successor moves in a chain.

When these conditions are met, Odoo creates one background job per product. Each job looks for stock moves for that product whose source location is the same as, or a parent of, the internal destination location, and which are waiting for stock (confirmed or partially available), are not linked to a previous move, and use the 'make to stock' procurement method. Those moves are then reserved automatically.

A similar check is triggered when a move with reserved quantities is cancelled: Odoo looks at the move's source location and tries to reserve other waiting moves there.

The module also adds a dedicated job channel called 'stock_auto_assign' and a retry pattern for the job, so failed attempts are retried with increasing delays. If another job is already working on the same transfers, the job waits and retries later instead of failing.

It affects stock.move and product.product and works together with the stock and queue_job modules.

Depends on

Required by other modules

Models and fields (2)
  • stock.move · extends an existing model
  • product.product · extends an existing model

Text generated by AI (DeepSeek) from reading the Odoo 18.0 code on GitHub; it may contain mistakes, so check the code before deciding. View the code on GitHub

Availability by version

Reviewed: 2026-11-03
Confirmed (verified in repository and branch) Estimated (unverified) No information

Confirmation status: 4 confirmed, 5 with no information of 9 versions.

Sources · Odoo 13.0

Confirmed on 2026-11-03 in branch 13.0 of OCA/stock-logistics-warehouse.

terminal Installation and usage

No verified information

Installation instructions, the distribution package, dependencies and configuration steps are not shown because they have not yet been verified in the module documentation for any version.

info

Data imported from GitHub: this sheet reflects the latest catalog review, not a live lookup. Always check the module documentation and staging before installing in production.