Purchase Work Acceptance - Late Delivery Fines

purchase_work_acceptance_late_fines
REPOSITORY
REPOSITORYOCA/purchase-workflow
GIT
GIThttps://github.com/OCA/purchase-workflow.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/purchase-workflow/tree/15.0/purchase_work_acceptance_late_fines
VERSION
VERSION 1.1.0
CATEGORY
CATEGORYPurchase Management
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), Ecosoft
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Ecosoft
COMMITTERS
COMMITTERSWeblate, OCA-git-bot, oca-ci, Saran440, ps-tubtim
WEBSITE
WEBSITEhttps://github.com/OCA/purchase-workflow
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:46:40
ODOO DEPENDENCIES
ODOO DEPENDENCIES OCA/purchase-workflow:
    - purchase_work_acceptance
odoo/odoo:
    - purchase_stock
    - stock_account
    - stock
    - product
    - base
    - mail
    - base_setup
    - web
    - bus
    - web_tour
    - uom
    - barcodes
    - digest
    - portal
    - web_editor
    - http_routing
    - auth_signup
    - resource
    - account
    - analytic
    - purchase
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (5)
XML IDNameModelTypeStatus
res_config_settings_view_form_purchase res.config.settings.view.form.inherit.purchase res.config.settings xpath Inherits purchase.res_config_settings_view_form_purchase
view_move_form account.move.form account.move xpath Inherits account.view_move_form
view_wa_create_fines Create Fines Invoice/Refund work.acceptance.create.fines form New
view_work_acceptance_fines_late_tab_form work.acceptance.late.fines.tab.form work.acceptance xpath Inherits purchase_work_acceptance.view_work_acceptance_form
view_work_acceptance_search work.acceptance.search work.acceptance xpath Inherits purchase_work_acceptance.view_work_acceptance_search
Models touched (5)

New fields (1)
  • late_wa_id Many2one → work.acceptance
    comodel_name='work.acceptance' domain=<expr> help='For the supplier with late penalty (from work acceptance), choosing the late WA to get the amount this partner need to pay.' index=True ondelete='restrict' string='Late WA'
Public methods (0)

No public methods.

New fields (2)
  • wa_fines_late_account_id Many2one → account.account
    comodel_name='account.account' string='Late Delivery Fines Revenue Account'
  • wa_fines_rate Monetary
    string='Fines Rate'
Public methods (0)

No public methods.

New fields (3)
  • group_enable_fines_on_wa Boolean
    implied_group='purchase_work_acceptance_late_fines.group_enable_fines_on_wa' string='Enable Late Delivery Fines on Work Acceptance'
  • wa_fines_late_account_id Many2one → account.account
    comodel_name='account.account' readonly=False related='company_id.wa_fines_late_account_id' string='Late Delivery Fines Revenue Account'
  • wa_fines_rate Monetary
    readonly=False related='company_id.wa_fines_rate' string='Fines Rate'
Public methods (0)

No public methods.

New fields (5)
  • fines_invoice_count Integer
    compute='_compute_fines_invoice_count'
  • fines_invoice_ids One2many → account.move
    comodel_name='account.move' inverse_name='late_wa_id' string='Fines Invoices'
  • fines_late Monetary
    help='Computed amount. Can be overwritten' readonly=True states={'draft': [('readonly', False)]} string='Fines Amount' tracking=True
  • fines_rate Monetary
    default=<expr> help='Default fines per day. Can be overwritten' readonly=True states={'draft': [('readonly', False)]} tracking=True
  • late_days Integer
    help='Late day(s) from Received Date - Due Date' readonly=True states={'draft': [('readonly', False)]} tracking=True
Public methods (2)
  • action_create_fines_invoice(self, move_type='out_invoice')
  • action_view_invoice(self)

New fields (1)
  • move_type Selection
    default='out_invoice' required=True selection=[('out_invoice', 'Customer Invoice'), ('in_refund', 'Vendor Refund')] string='Type'
Public methods (1)
  • action_create_fines(self)
REPOSITORY
REPOSITORYOCA/purchase-workflow
GIT
GIThttps://github.com/OCA/purchase-workflow.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/purchase-workflow/tree/14.0/purchase_work_acceptance_late_fines
VERSION
VERSION 1.1.0
CATEGORY
CATEGORYPurchase Management
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), Ecosoft
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Ecosoft
COMMITTERS
COMMITTERSSébastien Alix, oca-travis, Weblate, OCA-git-bot, oca-ci, Kitti U, ps-tubtim, oca-git-bot
WEBSITE
WEBSITEhttps://github.com/OCA/purchase-workflow
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:41:08
ODOO DEPENDENCIES
ODOO DEPENDENCIES OCA/purchase-workflow:
    - purchase_work_acceptance
odoo/odoo:
    - purchase_stock
    - stock_account
    - stock
    - product
    - base
    - mail
    - base_setup
    - web
    - bus
    - web_tour
    - uom
    - barcodes
    - digest
    - portal
    - web_editor
    - http_routing
    - auth_signup
    - resource
    - account
    - analytic
    - purchase
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (5)
XML IDNameModelTypeStatus
res_config_settings_view_form_purchase res.config.settings.view.form.inherit.purchase res.config.settings xpath Inherits purchase.res_config_settings_view_form_purchase
view_move_form account.move.form account.move xpath Inherits account.view_move_form
view_wa_create_fines Create Fines Invoice/Refund work.acceptance.create.fines form New
view_work_acceptance_fines_late_tab_form work.acceptance.late.fines.tab.form work.acceptance xpath Inherits purchase_work_acceptance.view_work_acceptance_form
view_work_acceptance_search work.acceptance.search work.acceptance xpath Inherits purchase_work_acceptance.view_work_acceptance_search
Models touched (5)

New fields (1)
  • late_wa_id Many2one → work.acceptance
    comodel_name='work.acceptance' domain=<expr> help='For the supplier with late penalty (from work acceptance), choosing the late WA to get the amount this partner need to pay.' index=True ondelete='restrict' string='Late WA'
Public methods (0)

No public methods.

New fields (2)
  • wa_fines_late_account_id Many2one → account.account
    comodel_name='account.account' string='Late Delivery Fines Revenue Account'
  • wa_fines_rate Monetary
    string='Fines Rate'
Public methods (0)

No public methods.

New fields (3)
  • group_enable_fines_on_wa Boolean
    implied_group='purchase_work_acceptance_late_fines.group_enable_fines_on_wa' string='Enable Late Delivery Fines on Work Acceptance'
  • wa_fines_late_account_id Many2one → account.account
    comodel_name='account.account' readonly=False related='company_id.wa_fines_late_account_id' string='Late Delivery Fines Revenue Account'
  • wa_fines_rate Monetary
    readonly=False related='company_id.wa_fines_rate' string='Fines Rate'
Public methods (0)

No public methods.

New fields (5)
  • fines_invoice_count Integer
    compute='_compute_fines_invoice_count' string='Fines Invoice Count'
  • fines_invoice_ids One2many → account.move
    comodel_name='account.move' inverse_name='late_wa_id' string='Fines Invoices'
  • fines_late Monetary
    help='Computed amount. Can be overwritten' readonly=True states={'draft': [('readonly', False)]} string='Fines Amount' tracking=True
  • fines_rate Monetary
    default=<expr> help='Default fines per day. Can be overwritten' readonly=True states={'draft': [('readonly', False)]} string='Fines Rate' tracking=True
  • late_days Integer
    help='Late day(s) from Received Date - Due Date' readonly=True states={'draft': [('readonly', False)]} string='Late Days' tracking=True
Public methods (2)
  • action_create_fines_invoice(self, move_type='out_invoice')
  • action_view_invoice(self)

New fields (1)
  • move_type Selection
    default='out_invoice' required=True selection=[('out_invoice', 'Customer Invoice'), ('in_refund', 'Vendor Refund')] string='Type'
Public methods (1)
  • action_create_fines(self)
STATUS
STATUSOpen migration PR - not merged yet for this version
REPOSITORY
REPOSITORYOCA/purchase-workflow
PULL REQUEST
PULL REQUEST[18.0][MIG] purchase_work_acceptance_late_fine: Migration to version 18.0 (#3098)