OdooWiki OCA HUB

Purchase Work Acceptance - Late Delivery Fines

purchase_work_acceptance_late_fines folder_open OCA/purchase-workflow open_in_new
Purchase Management License: AGPL-3

This module extends Purchase Work Acceptance by adding the ability to calculate late delivery fines to vendor.

auto_awesome What this module does

AI-generated from the code · Odoo 18.0

Adds late delivery fines to work acceptances: Odoo computes how many days late a receipt is, multiplies it by a daily rate, and lets you create a customer invoice or vendor refund for that amount.

When this module is enabled, work acceptances gain a Late Fines tab where you can see and adjust the fine for a late delivery.

  • Odoo automatically calculates the number of late days from the difference between the received date and the due date, and multiplies it by a daily fines rate to get the fines amount. Both the days and the rate can be changed by hand, and the amount recalculates.
  • The daily rate comes from a company setting; you also choose there the account used for the fines revenue. Both are set in Purchase settings under the work acceptance options.
  • On an accepted work acceptance with a fines amount, a Create Fines button opens a small window where you choose to create either a customer invoice or a vendor refund. The invoice is pre-filled with the partner, the fines amount and the configured account.
  • A smart button on the work acceptance shows how many fines invoices exist and opens them. The work acceptance list can be filtered to show only those with fines.
  • On invoices of type customer invoice or vendor refund, a Late WA field lets you pick a work acceptance with unpaid fines; choosing it fills the invoice lines automatically. A work acceptance can only be used once, and fines amounts must be zero or positive.

Required by other modules

Models and fields (5)
  • res.company · extends an existing modelwa_fines_rate (Fines Rate), wa_fines_late_account_id (Late Delivery Fines Revenue Account)
  • account.move · extends an existing modellate_wa_id (Late WA)
  • work.acceptance · extends an existing modellate_days, fines_late (Fines Amount), fines_rate, fines_invoice_ids (Fines Invoices), fines_invoice_count
  • res.config.settings · extends an existing modelwa_fines_rate (Fines Rate), group_enable_fines_on_wa (Enable Late Delivery Fines on Work Acceptance), wa_fines_late_account_id (Late Delivery Fines Revenue Account)
  • work.acceptance.create.fines · new modelmove_type (Type)

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: 3 confirmed, 6 with no information of 9 versions.

Sources · Odoo 18.0

Confirmed on 2026-11-03 in branch 18.0 of OCA/purchase-workflow.

terminal Installation and usage

OCA documentation · Odoo 18.0

Show Fines Tab on Work Acceptance

  • Go to Purchase \> Configuration \> Settings
  • Check 'Enable Late Delivery Fines on Work Acceptance'
  • Add the account and default fines rate (per day)

Usual process of Purchasing with Work Acceptance

  • Create a Purchase Order \> Work Acceptance
  • Set Due Date on Work Acceptance
  • It will calculate Late Days and Fines Amount automatic (adjustable)
  • Accept the Work Acceptance
  • Generate Fines Invoice by clicking "Create Fines Invoice" button, which includes the configured default account code.
  • Normally process

Create Fines from Work Acceptance

  • Go to Purchase \> Orders \> Work Acceptance
  • In List View, Select all you have to create fines invoice \> Action \> Create Fines Invoice
  • In Form View, Select work acceptance \> click Create Fines Invoice button

Create Fines from Invoice

  • Go to Invoicing \> Customers \> Invoices \> Create
  • Select Late WA (wa is delivery late)
  • It will automatically generate lines.

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.