Delivery Carrier Preference

delivery_carrier_preference
REPOSITORY
REPOSITORYOCA/wms
GIT
GIThttps://github.com/OCA/wms.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/wms/tree/14.0/delivery_carrier_preference
VERSION
VERSION 1.1.4
CATEGORY
CATEGORYOperations/Inventory/Delivery
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), Camptocamp
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Camptocamp
COMMITTERS
COMMITTERSOCA Transbot, Sébastien Alix, Sébastien BEAU, oca-travis, Weblate, OCA-git-bot, Simone Orsi, Matthieu Méquignon, Hai Lang, KV, Mmequignon
WEBSITE
WEBSITEhttps://github.com/OCA/wms
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:41:12
ODOO DEPENDENCIES
ODOO DEPENDENCIES OCA/product-attribute:
    - product_total_weight_from_packaging
    - product_packaging_dimension
    - product_logistics_uom
OCA/stock-logistics-warehouse:
    - stock_packaging_calculator
OCA/stock-logistics-workflow:
    - stock_picking_group_by_partner_by_carrier
    - delivery_procurement_group_carrier
    - stock_move_assign_picking_hook
OCA/wms:
    - sale_stock_available_to_promise_release
    - stock_available_to_promise_release
odoo/odoo:
    - delivery
    - sale_stock
    - sale
    - sales_team
    - base
    - mail
    - base_setup
    - web
    - bus
    - web_tour
    - payment
    - account
    - product
    - uom
    - analytic
    - portal
    - web_editor
    - http_routing
    - auth_signup
    - digest
    - resource
    - utm
    - stock_account
    - stock
    - barcodes
    - sale_management
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (6)
XML IDNameModelTypeStatus
delivery_carrier_preference_form_view delivery.carrier.preference.form.view delivery.carrier.preference form New
delivery_carrier_preference_tree_view delivery.carrier.preference.tree.view delivery.carrier.preference tree New
stock_location_route_form_view stock.location.route.form stock.location.route field Inherits stock.stock_location_route_form_view
view_move_form stock.move.form stock.move group Inherits stock.view_move_form
view_move_tree stock.move field Inherits sale_stock_available_to_promise_release.view_move_release_tree
view_picking_withcarrier_out_form delivery.stock.picking_withcarrier.form.view stock.picking group Inherits delivery.view_picking_withcarrier_out_form
Models touched (5)

New fields (9)
  • carrier_id Many2one → delivery.carrier
    ondelete='cascade' args: 'delivery.carrier'
  • company_id Many2one → res.company
    default=<expr> required=True args: 'res.company'
  • max_weight Float
    help='Leave empty for no limit' args: 'Max weight'
  • max_weight_uom_id Many2one → uom.uom
    compute='_compute_max_weight_uom_id' default=<expr> readonly=True args: 'uom.uom'
  • max_weight_uom_name Char
    readonly=True related='max_weight_uom_id.display_name' string='Max weight UOM'
  • name Char
    compute='_compute_name' readonly=True
  • picking_domain Char
    default='[]' help='Domain to restrict application of this preference for carrier selection on pickings'
  • preference Selection
    default='carrier' required=True args: [('carrier', 'Defined carrier'), ('partner', 'Partner carrier')]
  • sequence Integer
    default=10 index=True required=True
Public methods (1)
  • onchange_preference(self)
    @api.onchange('preference')

New fields (1)
  • picking_ids One2many → stock.picking
    comodel_name='stock.picking' inverse_name='group_id' readonly=True
Public methods (0)

No public methods.

New fields (1)
  • force_recompute_preferred_carrier_on_release Boolean
    help='Mark this box to trigger a recomputation of preferred carrier on the release of operations.' string='Force recomputation of preferred carrier.'
Public methods (0)

No public methods.

New fields (1)
  • estimated_shipping_weight Float
    compute='_compute_estimated_shipping_weight' help='Total weight available to promise calculated according to the quantity available to promise and weight defined on packagings for this product.' string='Estimated shipping weight'
Public methods (2)
  • read_group(self, domain, fields, groupby, offset=0, limit=None, orderby=False, lazy=True)
    @api.model
  • release_available_to_promise(self)

New fields (1)
  • estimated_shipping_weight Float
    compute='_compute_estimated_shipping_weight' help='This weight is calculated according to the move quantity available to promise and existing product packagings weight for each product on the moves.' string='Estimated shipping weight'
Public methods (2)
  • add_preferred_carrier(self)
  • get_preferred_carriers(self)
REPOSITORY
REPOSITORYOCA/wms
GIT
GIThttps://github.com/OCA/wms.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/wms/tree/13.0/delivery_carrier_preference
VERSION
VERSION 1.5.0
CATEGORY
CATEGORYOperations/Inventory/Delivery
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), Camptocamp
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Camptocamp
COMMITTERS
COMMITTERSGuewen Baconnier, OCA Transbot, oca-travis, Weblate, OCA-git-bot
WEBSITE
WEBSITEhttps://github.com/OCA/wms
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:34:20
ODOO DEPENDENCIES
ODOO DEPENDENCIES OCA/product-attribute:
    - product_total_weight_from_packaging
    - product_packaging_dimension
OCA/stock-logistics-warehouse:
    - stock_packaging_calculator
OCA/stock-logistics-workflow:
    - stock_picking_group_by_partner_by_carrier
    - stock_move_assign_picking_hook
OCA/wms:
    - stock_available_to_promise_release
odoo/odoo:
    - delivery
    - sale_stock
    - sale
    - sales_team
    - base
    - mail
    - base_setup
    - web
    - bus
    - web_tour
    - payment
    - account
    - product
    - uom
    - analytic
    - portal
    - web_editor
    - http_routing
    - auth_signup
    - digest
    - resource
    - utm
    - stock_account
    - stock
    - barcodes
    - sale_management
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (5)
XML IDNameModelTypeStatus
delivery_carrier_preference_form_view delivery.carrier.preference.form.view delivery.carrier.preference form New
delivery_carrier_preference_tree_view delivery.carrier.preference.tree.view delivery.carrier.preference tree New
stock_location_route_form_view stock.location.route.form stock.location.route field Inherits stock.stock_location_route_form_view
view_move_form stock.move.form stock.move group Inherits stock.view_move_form
view_picking_withcarrier_out_form delivery.stock.picking_withcarrier.form.view stock.picking group Inherits delivery.view_picking_withcarrier_out_form
Models touched (5)

New fields (9)
  • carrier_id Many2one → delivery.carrier
    ondelete='cascade' args: 'delivery.carrier'
  • company_id Many2one → res.company
    default=<expr> required=True args: 'res.company'
  • max_weight Float
    help='Leave empty for no limit' args: 'Max weight'
  • max_weight_uom_id Many2one → uom.uom
    compute='_compute_max_weight_uom_id' default=<expr> readonly=True args: 'uom.uom'
  • max_weight_uom_name Char
    readonly=True related='max_weight_uom_id.display_name' string='Max weight UOM'
  • name Char
    compute='_compute_name' readonly=True
  • picking_domain Char
    default='[]' help='Domain to restrict application of this preference for carrier selection on pickings'
  • preference Selection
    default='carrier' required=True args: [('carrier', 'Defined carrier'), ('partner', 'Partner carrier')]
  • sequence Integer
    default=10 index=True required=True
Public methods (1)
  • onchange_preference(self)
    @api.onchange('preference')

New fields (1)
  • picking_ids One2many → stock.picking
    comodel_name='stock.picking' inverse_name='group_id' readonly=True
Public methods (0)

No public methods.

New fields (1)
  • force_recompute_preferred_carrier_on_release Boolean
    help='Mark this box to trigger a recomputation of preferred carrier on the release of operations.' string='Force recomputation of preferred carrier.'
Public methods (0)

No public methods.

New fields (1)
  • estimated_shipping_weight Float
    compute='_compute_estimated_shipping_weight' help='Total weight available to promise calculated according to the quantity available to promise and weight defined on packagings for this product.' string='Estimated shipping weight'
Public methods (1)
  • release_available_to_promise(self)

New fields (1)
  • estimated_shipping_weight Float
    compute='_compute_estimated_shipping_weight' help='This weight is calculated according to the move quantity available to promise and existing product packagings weight for each product on the moves.' string='Estimated shipping weight'
Public methods (2)
  • add_preferred_carrier(self)
  • get_preferred_carriers(self)
REPOSITORY
REPOSITORYOCA/wms
GIT
GIThttps://github.com/OCA/wms.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/wms/tree/10.0/delivery_carrier_preference
VERSION
VERSION 1.5.0
CATEGORY
CATEGORYOperations/Inventory/Delivery
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), Camptocamp
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Camptocamp
COMMITTERS
COMMITTERSGuewen Baconnier, Laurent Mignon (ACSONE), OCA Transbot, oca-travis, OCA-git-bot
WEBSITE
WEBSITEhttps://github.com/OCA/wms
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:20:03
ODOO DEPENDENCIES
ODOO DEPENDENCIES OCA/wms:
    - stock_available_to_promise_release
odoo/odoo:
    - delivery
    - sale_stock
    - sale
    - sales_team
    - base
    - mail
    - base_setup
    - web_kanban
    - web
    - bus
    - web_tour
    - account
    - product
    - decimal_precision
    - report
    - analytic
    - web_planner
    - procurement
    - stock_account
    - stock
    - barcodes
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (5)
XML IDNameModelTypeStatus
delivery_carrier_preference_form_view delivery.carrier.preference.form.view delivery.carrier.preference form New
delivery_carrier_preference_tree_view delivery.carrier.preference.tree.view delivery.carrier.preference tree New
stock_location_route_form_view stock.location.route.form stock.location.route field Inherits stock.stock_location_route_form_view
view_move_form stock.move.form stock.move group Inherits stock.view_move_form
view_picking_withcarrier_out_form delivery.stock.picking_withcarrier.form.view stock.picking group Inherits delivery.view_picking_withcarrier_out_form
Models touched (5)

New fields (9)
  • carrier_id Many2one → delivery.carrier
    ondelete='cascade' args: 'delivery.carrier'
  • company_id Many2one → res.company
    default=<expr> required=True args: 'res.company'
  • max_weight Float
    help='Leave empty for no limit' args: 'Max weight'
  • max_weight_uom_id Many2one → uom.uom
    compute='_compute_max_weight_uom_id' default=<expr> readonly=True args: 'uom.uom'
  • max_weight_uom_name Char
    readonly=True related='max_weight_uom_id.display_name' string='Max weight UOM'
  • name Char
    compute='_compute_name' readonly=True
  • picking_domain Char
    default='[]' help='Domain to restrict application of this preference for carrier selection on pickings'
  • preference Selection
    default='carrier' required=True args: [('carrier', 'Defined carrier'), ('partner', 'Partner carrier')]
  • sequence Integer
    default=10 index=True required=True
Public methods (1)
  • onchange_preference(self)
    @api.onchange('preference')

New fields (1)
  • picking_ids One2many → stock.picking
    comodel_name='stock.picking' inverse_name='group_id' readonly=True
Public methods (0)

No public methods.

New fields (1)
  • force_recompute_preferred_carrier_on_release Boolean
    help='Mark this box to trigger a recomputation of preferred carrier on the release of operations.' string='Force recomputation of preferred carrier.'
Public methods (0)

No public methods.

New fields (1)
  • estimated_shipping_weight Float
    compute='_compute_estimated_shipping_weight' help='Total weight available to promise calculated according to the quantity available to promise and weight defined on packagings for this product.' string='Estimated shipping weight'
Public methods (1)
  • release_available_to_promise(self)

New fields (1)
  • estimated_shipping_weight Float
    compute='_compute_estimated_shipping_weight' help='This weight is calculated according to the move quantity available to promise and existing product packagings weight for each product on the moves.' string='Estimated shipping weight'
Public methods (2)
  • add_preferred_carrier(self)
  • get_preferred_carriers(self)