Cancel invoices and payments, the reconciliation-safe way every time
A guided wizard that cancels posted invoices, bills, and their linked payments together — with a before/after preview, clear cancel-vs-credit-note guidance, and a full audit trail. Built for Odoo 19.
The problem
Once an invoice is posted and a payment is registered against it, Odoo locks both to protect the audit trail. Fixing a simple keying error means manually unreconciling the payment, cancelling it, then cancelling the invoice — or issuing a full credit note when a straightforward correction would do. Bookkeepers lose time, and mistakes creep in when the unwind order is wrong.
The solution
Cancel Invoice + Payment gives bookkeepers one guided action that unwinds the payment and the invoice together in the correct, reconciliation-safe order. Pick a strategy for the invoice and one for the payment, preview exactly what will happen, and confirm — with in-context guidance on when to cancel and when a credit note is the right call.
Everything a bookkeeper needs to undo a posted invoice
Every capability below is implemented in the module.
One guided cancel action
Cancel a posted invoice or vendor bill and its linked payment together from a single header button or bulk action, instead of unwinding each record by hand.
Three selectable strategies
Choose Cancel only, Cancel + reset to draft, or Cancel + delete — independently for the invoice and for the payment, so the correction always matches the situation.
Reconciliation-safe ordering
The wizard always unwinds the linked payment before touching the invoice, preventing the broken reconciliation a manual, out-of-order fix can cause.
Before/after preview
See a plain-language preview of the resulting invoice, payment, and reconciliation state before you confirm anything.
Cancel vs. credit note guidance
In-context guidance explains when a straightforward cancel is appropriate and when a compliant credit-note reversal is the correct choice instead.
Bulk cancellation from list views
Select multiple invoices or payments from the list view and cancel them in one action via the Actions menu — built for volume correction work.
Dedicated access-rights groups
A User group covers Cancel and Reset to draft; a Manager group is required for the Delete and compliant Reverse strategies, so destructive actions stay governed.
Immutable cancellation audit log
Every cancellation records who acted, when, on which document, and under which strategy — a per-record trail most competitors do not provide.
Auto-cancel orphaned SO invoices
Optionally cancel an invoice automatically when its source sales order is cancelled, toggled from Sales settings, so open invoices never get left behind.
How it works
Open the wizard
From a posted invoice, bill, or payment, click Cancel Invoice + Payment, or select several records and use the bulk action from the list view.
Choose your strategies
Pick Cancel, Reset to draft, or Delete for the invoice and, independently, for its linked payment.
Review the preview
Check the before/after preview and the cancel-vs-credit-note guidance, then confirm the safety dialog.
Done, and logged
The payment unwinds first, then the invoice updates per your strategy, and the action is recorded in the Cancellation Log for later review.
Frequently asked
No sales fog. If your question isn't here, email us and we'll answer it the same way.
Use cancellation for straightforward corrections such as a keying error, wrong customer, or wrong payment method, where no external document has been shared for legal or tax purposes. Use a credit note when a compliant, auditable reversal is required. The wizard surfaces this guidance in context so you can decide with confidence.
Buy it on the Odoo App Store
Purchase, download and install directly from the official Odoo Apps Store — you'll always get the latest supported build.
Cancel Invoice + Payment
One guided cancel action with three selectable strategies that unreconciles, reverses and cancels in the safe order — with a before/after preview, cancel-versus-credit-note guidance and an immutable log.
Buy on Odoo App Store