OdooWiki OCA HUB

Sales Cancel Confirm

sale_cancel_confirm folder_open OCA/sale-workflow open_in_new
Usability License: AGPL-3

This module adds an optional free-text reason to Odoo's native sales order cancellation dialog. The reason, user, and date are stored on the cancelled sales order.

Unlike sale_cancel_reason, which uses a predefined list of reasons, this module lets the user enter the reason as free text. Normally only one of these modules is needed.

auto_awesome What this module does

AI-generated from the code · Odoo 18.0

Lets companies ask for an optional free-text reason when cancelling a sales order, and stores that reason, the user and the date on the cancelled order.

When enabled, cancelling a sales order opens a confirmation dialog that includes a free-text field where the user can type why the order is being cancelled. The reason is optional, so the cancellation can still go ahead without one.

  • The option is switched on per company in the Sales settings, under the quotation and order settings block, with the label "Sale Cancellation Reason".
  • Once enabled, the cancellation wizard shows a "Reason for cancellation..." field; the field is hidden when the option is off.
  • On confirmation, the reason, the cancelling user and the cancellation date are written onto the sales order, together with a flag marking that the cancellation was confirmed.
  • If the order is later reset to draft, the stored cancellation confirmation data is cleared.
  • The module extends the sales order, the cancellation wizard, the company settings and the general settings screen, and relies on the shared cancellation-confirmation behaviour from base_cancel_confirm.

The reason is free text rather than a predefined list, so users are not limited to a fixed set of choices.

Depends on

Models and fields (4)
  • sale.order · new modelcancel_confirm
  • res.company · extends an existing modelsale_cancel_confirm (Sale Cancellation Reason)
  • sale.order.cancel · extends an existing modelcancel_reason, sale_cancel_confirm
  • res.config.settings · extends an existing modelsale_cancel_confirm

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

Sources · Odoo 18.0

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

terminal Installation and usage

OCA documentation · Odoo 18.0

To ask for an optional cancellation reason, go to Sales > Configuration > Settings and enable Sale Cancellation Reason for each company where the feature is needed.

This module adds a free-text reason to Odoo's native sales order cancellation dialog. The native option to send a cancellation email remains available.

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.