Stock Partner Delivery Window

stock_partner_delivery_window
REPOSITORY
REPOSITORYOCA/stock-logistics-workflow
GIT
GIThttps://github.com/OCA/stock-logistics-workflow.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/stock-logistics-workflow/tree/19.0/stock_partner_delivery_window
VERSION
VERSION 1.0.1
CATEGORY
CATEGORYInventory
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), Camptocamp, ACSONE SA/NV, BCIM
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Camptocamp, ACSONE SA/NV, BCIM
COMMITTERS
COMMITTERSOCA-git-bot, oca-ci, Maksym Yankin
WEBSITE
WEBSITEhttps://github.com/OCA/stock-logistics-workflow
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 19:40:49
ODOO DEPENDENCIES
ODOO DEPENDENCIES OCA/partner-contact:
    - partner_tz
OCA/server-tools:
    - base_time_window
odoo/odoo:
    - base
    - stock
    - product
    - mail
    - base_setup
    - web
    - bus
    - web_tour
    - html_editor
    - uom
    - barcodes_gs1_nomenclature
    - barcodes
    - digest
    - portal
    - http_routing
    - auth_signup
    - resource
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION
This module allows to define time scheduling preference for delivery
orders on partners, in order to raise a warning when changing a
scheduled date to a time window that is not preferred by this customer.

Code Analysis

Views touched (2)
XML IDNameModelTypeStatus
view_partner_form_inherit res.partner.form.inherit res.partner xpath Inherits base.view_partner_form
view_picking_form_inherit stock.picking.form.inherit stock.picking xpath Inherits stock.view_picking_form
Models touched (3)

New fields (2)
  • partner_id Many2one → res.partner
    index=True ondelete='cascade' required=True args: 'res.partner'
  • tz Selection
    related='partner_id.tz'
Public methods (1)
  • check_window_no_overlaps(self)
    @api.constrains('partner_id')

New fields (2)
  • delivery_time_preference Selection
    default='anytime' help='Define the scheduling preference for delivery orders:\n\n* Any time: Do not postpone deliveries\n* Fixed time windows: Postpone deliveries to the next preferred time window\n* Weekdays: Postpone deliveries to the next weekday' required=True string='Delivery time schedule preference' args: [('anytime', 'Any time'), ('time_windows', 'Fixed time windows'), ('workdays', 'Weekdays (Monday to Friday)')]
  • delivery_time_window_ids One2many → partner.delivery.time.window
    string='Delivery time windows' args: 'partner.delivery.time.window', 'partner_id'
Public methods (3)
  • copy_data(self, default=None)
  • delivery_time_weekdays(self)
    @property
  • delivery_window_tz(self)
    @property
    Return the timezone used to interpret partner delivery windows.

New fields (1)
  • partner_delivery_window_warning Text
    compute='_compute_partner_delivery_window_warning'
Public methods (0)

No public methods.

REPOSITORY
REPOSITORYOCA/stock-logistics-workflow
GIT
GIThttps://github.com/OCA/stock-logistics-workflow.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/stock-logistics-workflow/tree/18.0/stock_partner_delivery_window
VERSION
VERSION 1.2.1
CATEGORY
CATEGORYInventory
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), Camptocamp, ACSONE SA/NV, BCIM
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Camptocamp, ACSONE SA/NV, BCIM
COMMITTERS
COMMITTERSJacques-Etienne Baudoux, Sébastien Alix, Ruchir Shukla, Weblate, OCA-git-bot, oca-ci, ArnauCForgeFlow, thien
WEBSITE
WEBSITEhttps://github.com/OCA/stock-logistics-workflow
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 19:30:15
ODOO DEPENDENCIES
ODOO DEPENDENCIES OCA/partner-contact:
    - partner_tz
OCA/server-tools:
    - base_time_window
odoo/odoo:
    - base
    - stock
    - product
    - mail
    - base_setup
    - web
    - bus
    - web_tour
    - html_editor
    - uom
    - barcodes_gs1_nomenclature
    - barcodes
    - digest
    - portal
    - web_editor
    - http_routing
    - auth_signup
    - resource
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION
This module allows to define time scheduling preference for delivery
orders on partners, in order to raise a warning when changing a
scheduled date to a time window that is not preferred by this customer.

Code Analysis

Views touched (2)
XML IDNameModelTypeStatus
view_partner_form_inherit res.partner.form.inherit res.partner xpath Inherits base.view_partner_form
view_picking_form_inherit stock.picking.form.inherit stock.picking xpath Inherits stock.view_picking_form
Models touched (3)

New fields (2)
  • partner_id Many2one → res.partner
    index=True ondelete='cascade' required=True args: 'res.partner'
  • tz Selection
    related='partner_id.tz'
Public methods (1)
  • check_window_no_overlaps(self)
    @api.constrains('partner_id')

New fields (2)
  • delivery_time_preference Selection
    default='anytime' help='Define the scheduling preference for delivery orders:\n\n* Any time: Do not postpone deliveries\n* Fixed time windows: Postpone deliveries to the next preferred time window\n* Weekdays: Postpone deliveries to the next weekday' required=True string='Delivery time schedule preference' args: [('anytime', 'Any time'), ('time_windows', 'Fixed time windows'), ('workdays', 'Weekdays (Monday to Friday)')]
  • delivery_time_window_ids One2many → partner.delivery.time.window
    string='Delivery time windows' args: 'partner.delivery.time.window', 'partner_id'
Public methods (4)
  • copy_data(self, default=None)
  • delivery_time_weekdays(self)
    @property
  • get_delivery_windows(self, day_name=None)
    Return the list of delivery windows by partner id for the given day :param day: The day name (see time.weekday, ex: 0,1,2,...) :return: dict partner_id: delivery_window recordset
  • is_in_delivery_window(self, date)
    Checks if provided date is in a delivery window for actual partner :param date: Datetime or Date object :return: Boolean

New fields (1)
  • partner_delivery_window_warning Text
    compute='_compute_partner_delivery_window_warning'
Public methods (0)

No public methods.

REPOSITORY
REPOSITORYOCA/stock-logistics-workflow
GIT
GIThttps://github.com/OCA/stock-logistics-workflow.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/stock-logistics-workflow/tree/16.0/stock_partner_delivery_window
VERSION
VERSION 1.1.0
CATEGORY
CATEGORYInventory
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), Camptocamp, ACSONE SA/NV
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Camptocamp, ACSONE SA/NV
COMMITTERS
COMMITTERSPedro M. Baeza, Jacques-Etienne Baudoux, Weblate, OCA-git-bot, oca-ci, chien
WEBSITE
WEBSITEhttps://github.com/OCA/stock-logistics-workflow
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:53:51
ODOO DEPENDENCIES
ODOO DEPENDENCIES OCA/partner-contact:
    - partner_tz
OCA/server-tools:
    - base_time_window
odoo/odoo:
    - base
    - stock
    - product
    - mail
    - base_setup
    - web
    - bus
    - web_tour
    - uom
    - barcodes_gs1_nomenclature
    - barcodes
    - digest
    - portal
    - web_editor
    - http_routing
    - auth_signup
    - resource
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (1)
XML IDNameModelTypeStatus
view_partner_form_inherit res.partner.form.inherit res.partner xpath Inherits base.view_partner_form
Models touched (3)

New fields (2)
  • partner_id Many2one → res.partner
    index=True ondelete='cascade' required=True args: 'res.partner'
  • tz Selection
    readonly=True related='partner_id.tz'
Public methods (1)
  • check_window_no_overlaps(self)
    @api.constrains('partner_id')

New fields (2)
  • delivery_time_preference Selection
    default='anytime' help='Define the scheduling preference for delivery orders:\n\n* Any time: Do not postpone deliveries\n* Fixed time windows: Postpone deliveries to the next preferred time window\n* Weekdays: Postpone deliveries to the next weekday' required=True string='Delivery time schedule preference' args: [('anytime', 'Any time'), ('time_windows', 'Fixed time windows'), ('workdays', 'Weekdays (Monday to Friday)')]
  • delivery_time_window_ids One2many → partner.delivery.time.window
    string='Delivery time windows' args: 'partner.delivery.time.window', 'partner_id'
Public methods (5)
  • copy_data(self, default=None)
  • delivery_time_weekdays(self)
    @property
  • get_delivery_time_description(self)
  • get_delivery_windows(self, day_name=None)
    Return the list of delivery windows by partner id for the given day :param day: The day name (see time.weekday, ex: 0,1,2,...) :return: dict partner_id: delivery_window recordset
  • is_in_delivery_window(self, date_time)
    Checks if provided date_time is in a delivery window for actual partner :param date_time: Datetime object :return: Boolean

New fields (0)

No new fields.

Public methods (0)

No public methods.

REPOSITORY
REPOSITORYOCA/stock-logistics-workflow
GIT
GIThttps://github.com/OCA/stock-logistics-workflow.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/stock-logistics-workflow/tree/15.0/stock_partner_delivery_window
VERSION
VERSION 1.0.0
CATEGORY
CATEGORYInventory
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), Camptocamp, ACSONE SA/NV
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Camptocamp, ACSONE SA/NV
COMMITTERS
COMMITTERSOCA-git-bot, oca-ci, PolComas
WEBSITE
WEBSITEhttps://github.com/OCA/stock-logistics-workflow
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:46:37
ODOO DEPENDENCIES
ODOO DEPENDENCIES OCA/partner-contact:
    - partner_tz
OCA/server-tools:
    - base_time_window
odoo/odoo:
    - base
    - stock
    - product
    - mail
    - base_setup
    - web
    - bus
    - web_tour
    - uom
    - barcodes
    - digest
    - portal
    - web_editor
    - http_routing
    - auth_signup
    - resource
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (1)
XML IDNameModelTypeStatus
view_partner_form_inherit res.partner.form.inherit res.partner xpath Inherits base.view_partner_form
Models touched (3)

New fields (2)
  • partner_id Many2one → res.partner
    index=True ondelete='cascade' required=True args: 'res.partner'
  • tz Selection
    readonly=True related='partner_id.tz'
Public methods (1)
  • check_window_no_overlaps(self)
    @api.constrains('partner_id')

New fields (2)
  • delivery_time_preference Selection
    default='anytime' help='Define the scheduling preference for delivery orders:\n\n* Any time: Do not postpone deliveries\n* Fixed time windows: Postpone deliveries to the next preferred time window\n* Weekdays: Postpone deliveries to the next weekday' required=True string='Delivery time schedule preference' args: [('anytime', 'Any time'), ('time_windows', 'Fixed time windows'), ('workdays', 'Weekdays (Monday to Friday)')]
  • delivery_time_window_ids One2many → partner.delivery.time.window
    string='Delivery time windows' args: 'partner.delivery.time.window', 'partner_id'
Public methods (4)
  • copy_data(self, default=None)
  • delivery_time_weekdays(self)
    @property
  • get_delivery_windows(self, day_name=None)
    Return the list of delivery windows by partner id for the given day :param day: The day name (see time.weekday, ex: 0,1,2,...) :return: dict partner_id: delivery_window recordset
  • is_in_delivery_window(self, date_time)
    Checks if provided date_time is in a delivery window for actual partner :param date_time: Datetime object :return: Boolean

New fields (0)

No new fields.

Public methods (0)

No public methods.

REPOSITORY
REPOSITORYOCA/stock-logistics-workflow
GIT
GIThttps://github.com/OCA/stock-logistics-workflow.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/stock-logistics-workflow/tree/14.0/stock_partner_delivery_window
VERSION
VERSION 1.2.2
CATEGORY
CATEGORYInventory
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), Camptocamp, ACSONE SA/NV
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Camptocamp, ACSONE SA/NV
COMMITTERS
COMMITTERSAlexandre Fayolle, Denis Roussel, Sébastien Alix, oca-travis, Weblate, OCA-git-bot, Hai Lang, Dũng (Trần Đình), MmeQuignon, dung.tran
WEBSITE
WEBSITEhttps://github.com/OCA/stock-logistics-workflow
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:41:04
ODOO DEPENDENCIES
ODOO DEPENDENCIES OCA/partner-contact:
    - partner_tz
OCA/server-tools:
    - base_time_window
odoo/odoo:
    - base
    - stock
    - product
    - mail
    - base_setup
    - web
    - bus
    - web_tour
    - uom
    - barcodes
    - digest
    - portal
    - web_editor
    - http_routing
    - auth_signup
    - resource
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (1)
XML IDNameModelTypeStatus
view_partner_form_inherit res.partner.form.inherit res.partner xpath Inherits base.view_partner_form
Models touched (3)

New fields (2)
  • partner_id Many2one → res.partner
    index=True ondelete='cascade' required=True args: 'res.partner'
  • tz Selection
    readonly=True related='partner_id.tz'
Public methods (1)
  • check_window_no_overlaps(self)
    @api.constrains('partner_id')

New fields (2)
  • delivery_time_preference Selection
    default='anytime' help='Define the scheduling preference for delivery orders:\n\n* Any time: Do not postpone deliveries\n* Fixed time windows: Postpone deliveries to the next preferred time window\n* Weekdays: Postpone deliveries to the next weekday' required=True string='Delivery time schedule preference' args: [('anytime', 'Any time'), ('time_windows', 'Fixed time windows'), ('workdays', 'Weekdays (Monday to Friday)')]
  • delivery_time_window_ids One2many → partner.delivery.time.window
    string='Delivery time windows' args: 'partner.delivery.time.window', 'partner_id'
Public methods (4)
  • copy_data(self, default=None)
  • get_delivery_time_description(self)
  • get_delivery_windows(self, day_name=None)
    Return the list of delivery windows by partner id for the given day :param day: The day name (see time.weekday, ex: 0,1,2,...) :return: dict partner_id: delivery_window recordset
  • is_in_delivery_window(self, date_time)
    Checks if provided date_time is in a delivery window for actual partner :param date_time: Datetime object :return: Boolean

New fields (0)

No new fields.

Public methods (0)

No public methods.

REPOSITORY
REPOSITORYOCA/stock-logistics-workflow
GIT
GIThttps://github.com/OCA/stock-logistics-workflow.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/stock-logistics-workflow/tree/13.0/stock_partner_delivery_window
VERSION
VERSION 1.3.2
CATEGORY
CATEGORYInventory
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), Camptocamp, ACSONE SA/NV
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Camptocamp, ACSONE SA/NV
COMMITTERS
COMMITTERSPedro M. Baeza, Akim Juillerat, Sébastien Alix, oca-travis, OCA-git-bot, Simone Orsi, Matthieu Méquignon, ps-tubtim
WEBSITE
WEBSITEhttps://github.com/OCA/stock-logistics-workflow
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:34:16
ODOO DEPENDENCIES
ODOO DEPENDENCIES OCA/partner-contact:
    - partner_tz
OCA/server-tools:
    - base_time_window
odoo/odoo:
    - base
    - stock
    - product
    - mail
    - base_setup
    - web
    - bus
    - web_tour
    - uom
    - barcodes
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (1)
XML IDNameModelTypeStatus
view_partner_form_inherit res.partner.form.inherit res.partner xpath Inherits base.view_partner_form
Models touched (3)

New fields (2)
  • partner_id Many2one → res.partner
    index=True ondelete='cascade' required=True args: 'res.partner'
  • tz Selection
    readonly=True related='partner_id.tz' args: _tz_get
Public methods (1)
  • check_window_no_overlaps(self)
    @api.constrains('partner_id')

New fields (2)
  • delivery_time_preference Selection
    default='anytime' help='Define the scheduling preference for delivery orders:\n\n* Any time: Do not postpone deliveries\n* Fixed time windows: Postpone deliveries to the next preferred time window\n* Weekdays: Postpone deliveries to the next weekday' required=True string='Delivery time schedule preference' args: [('anytime', 'Any time'), ('time_windows', 'Fixed time windows'), ('workdays', 'Weekdays (Monday to Friday)')]
  • delivery_time_window_ids One2many → partner.delivery.time.window
    string='Delivery time windows' args: 'partner.delivery.time.window', 'partner_id'
Public methods (3)
  • get_delivery_time_description(self)
  • get_delivery_windows(self, day_name=None)
    Return the list of delivery windows by partner id for the given day :param day: The day name (see time.weekday, ex: 0,1,2,...) :return: dict partner_id: delivery_window recordset
  • is_in_delivery_window(self, date_time)
    Checks if provided date_time is in a delivery window for actual partner :param date_time: Datetime object :return: Boolean

New fields (0)

No new fields.

Public methods (0)

No public methods.