OdooWiki OCA HUB

Account Cut-off Accrual Sale

account_cutoff_accrual_sale folder_open OCA/account-closing open_in_new
Accounting & Finance License: AGPL-3

This module extends the functionality of account_cutoff_accrual_order_base to allow the computation of revenue cutoffs on sales orders.

The accrual is computed by comparing on the order, the quantity delivered/received and the quantity invoiced. In case, some deliveries or invoices have occurred after the cutoff date, those quantities can be affected and are recomputed. This allows to quickly generate a cutoff snapshot by processing few lines.

For SO, you can make the difference between:

  • invoice to generate (delivered qty > invoiced qty)
  • goods to send (prepayment) (delivered qty < invoiced qty)

At each end of period, a cron job generates the cutoff entries for the revenues (based on SO).

Orders forced in status invoiced won't have cutoff entries.

Once the cutoff lines have been generated but the accounting entries are not yet created, you are still able to create or modify invoices before the accounting butoff date. The cutoff lines will be adapted automatically to reflect the new situation.

Once the cutoff accounting entries are generated you cannot create or modify invoices before the accounting cutoff date.

auto_awesome What this module does

AI-generated from the code · Odoo 16.0

Lets accountants compute accrued revenue cut-offs from sales orders by comparing delivered and invoiced quantities, then generate the corresponding journal entry in one click.

This module adds a dedicated screen for preparing revenue accruals based on sales orders. It appears under the Cut-off menu as "Accrued Revenue on Sales Orders", where a new accrual is created with the sales order line type and the accrued revenue type already filled in.

When the accrual is computed, Odoo looks at sales order lines that are confirmed or done and not just section/note lines. For stock products it compares delivered quantity with invoiced quantity; for services it uses the quantity still to invoice, and only when the order is in "to invoice" status (or the line is a down payment). Lines created after the cut-off date are ignored, and invoices dated after the cut-off date are taken into account so quantities are recomputed.

  • Each cut-off line shows the related sales order and sales order line.
  • Orders flagged as "force invoiced" are excluded from the accrual, and this is applied automatically to existing lines when the module is installed.
  • Changing the force-invoiced flag or putting an order back to "to invoice" refreshes the cut-off lines of that order.
  • A monthly scheduled job prepares the accrual for sales order lines at the start of each month.

It touches account.cutoff, account.cutoff.line, sale.order, sale.order.line and account.move.

Required by other modules

Menus it adds

account_accrual_menu
Models and fields (5)
  • sale.order · extends an existing model
  • account.move · extends an existing model
  • account.cutoff · extends an existing modelorder_line_model
  • sale.order.line · new modelaccount_cutoff_line_ids (Account Cutoff Lines), is_cutoff_accrual_excluded
  • account.cutoff.line · extends an existing modelsale_line_id (Sales Order Line), sale_order_id

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/account-closing.

terminal Installation and usage

OCA documentation · Odoo 16.0

To configure this module, you need to:

  • Go to the accounting settings to select the journals and accounts used for the cutoff.
  • Analytic accounting needs to be enable in Accounting - Settings.
  • If you want to also accrue the taxes, you need in Accounting - Taxes, for each type of taxes an accrued tax account.

No verified information in OCA: Installation, Usage.

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.