OdooWiki OCA HUB

Stock Location Release Channel Restriction

stock_location_release_channel_restriction folder_open OCA/stock-logistics-warehouse open_in_new
Uncategorised License: AGPL-3

This module allows to restrict input movements to be validated to locations that have pending output movements within another release channel.

auto_awesome What this module does

AI-generated from the code · Odoo 16.0

Restrict storage locations so they can only receive products belonging to the same release channel, preventing mixing of goods from different delivery channels in one location.

This module adds release channel restrictions to storage locations. On each location you can set a restriction rule: either 'mixed' (movements from different release channels are allowed) or 'same' (only movements from the same release channel are allowed). The rule can be set specifically on a location and is automatically inherited by its child locations.

When a location is restricted to 'same', the system remembers the release channel of the first incoming move and blocks any later move from a different channel. A warning banner appears on the location form showing which channel currently restricts it. You can also filter locations that have an active restriction from the location search view.

When a transfer is validated, the module automatically sets or removes the location restriction based on the release channel of the outgoing delivery. If all pending outgoing moves are completed, the restriction is removed. A wizard called 'Reset Release Channel' lets you manually clear the restriction on selected locations, optionally including other locations of the same family.

The module touches stock.location, stock.move.line and adds the wizard model stock.location.reset.release.channel. It adds fields and buttons to the location form and list views, and a server action 'Remove Release Channel' available from the location list.

Models and fields (3)
  • stock.location · extends an existing modelrelease_channel_restriction, parent_release_channel_restriction (Parent Location Release Channel Restriction), specific_release_channel_restriction, current_release_channel_restriction_id
  • stock.move.line · extends an existing modelhas_location_destination_release_channel_restriction
  • stock.location.reset.release.channel · new modellocation_ids, reset_family

Text generated by AI (DeepSeek) from reading the Odoo 16.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: 1 confirmed, 8 with no information of 9 versions.

Sources · Odoo 16.0

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

terminal Installation and usage

OCA documentation · Odoo 16.0
  • Go to Inventory > Configuration > Settings > Warehouse
  • Activate Storage Locations
  • Go to Inventory > Configuration > Warehouse Management > Locations
  • Check the 'Specific Release Channel Restriction' box if you want to restrict movements to have the same release channel in pending output ones and the one that is trying to be moved in that location. That parameter will be applied to children locations.
  • If you want to apply that restriction only on some specific locations, check the 'Specific Release Channel Restriction'. It won't be applied on children locations.
  • When transferring stock movements with assigned release channel to a location where the restriction feature is enabled, the next moves should have the same release channel in order to be allowed to be transferred.
  • When the last movement that restrict the location to a particular release channel has left the location, the release channel is removed on the location and all locations that belong to the same family and restriction: Output (No restriction) OUTPUT CASE 1 (Restriction) OUTPUT CASE 2 (Restriction) CASE A (Restriction) CASE B (Restriction) CASE C (R) CASE D (Restriction) So, when an outgoing move is leaving the CASE A, the release channel restriction is removed from CASE B and CASE C too if no outgoing move is waiting in those locations
  • To remove the restriction on some locations, select them in the list view and click on 'Remove Release Channel' action. It will force the restriction removal. If you select the 'Reset Family' option, the behaviour described here above is applied too.

No verified information in OCA: Installation.

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.