Account Reversal

account_reversal
REPOSITORY
REPOSITORYOCA/account-financial-tools
GIT
GIThttps://github.com/OCA/account-financial-tools.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/account-financial-tools/tree/16.0/account_reversal
VERSION
VERSION 1.0.0
CATEGORY
CATEGORYAccounting & Finance
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSTecnativa, Odoo Community Association (OCA), Akretion, Camptocamp, ACSONE SA/NV
MAINTAINERS
MAINTAINERSTecnativa, Odoo Community Association (OCA), Akretion, Camptocamp, ACSONE SA/NV
COMMITTERS
COMMITTERSStéphane Bidoul, Weblate, OCA-git-bot, oca-ci
WEBSITE
WEBSITEhttps://github.com/OCA/account-financial-tools
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:53:47
ODOO DEPENDENCIES
ODOO DEPENDENCIES odoo/odoo:
    - account
    - base_setup
    - base
    - web
    - product
    - mail
    - bus
    - web_tour
    - uom
    - analytic
    - portal
    - web_editor
    - http_routing
    - auth_signup
    - digest
    - resource
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (4)
XML IDNameModelTypeStatus
view_account_move_filter Add to_be_reversed filter account.move filter Inherits account.view_account_move_filter
view_account_move_reversal account.move.reversal.form (in account_reversal) account.move.reversal field Inherits account.view_account_move_reversal
view_move_form Add to_be_reversed and reversal_id fields account.move xpath Inherits account.view_move_form
view_move_tree Add to_be_reversed column account.move field Inherits account.view_move_tree
Models touched (2)

New fields (2)
  • reversal_id Many2one → account.move
    compute='_compute_reversal_id' readonly=True string='Reversal Entry' args: 'account.move'
  • to_be_reversed Boolean
    copy=False help='Check this box if your entry has to be reversed at the end of period.'
Public methods (0)

No public methods.

New fields (1)
  • line_reason Char
    help='Prefix that will be added to the Label of the reversal entry items. If empty, Odoo uses the same label as the reversed item. (NOTE: a space and a colon added after the prefix).'
Public methods (1)
  • reverse_moves(self)
REPOSITORY
REPOSITORYOCA/account-financial-tools
GIT
GIThttps://github.com/OCA/account-financial-tools.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/account-financial-tools/tree/11.0/account_reversal
VERSION
VERSION 1.0.0
CATEGORY
CATEGORYAccounting & Finance
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSTecnativa, Odoo Community Association (OCA), Akretion, Camptocamp, ACSONE SA/NV
MAINTAINERS
MAINTAINERSTecnativa, Odoo Community Association (OCA), Akretion, Camptocamp, ACSONE SA/NV
COMMITTERS
COMMITTERSPedro M. Baeza, Enric Tobella, Stéphane Bidoul (ACSONE), Cas Vissers, Bhavesh Odedra, Jordi Ballester, OCA Transbot, oca-travis, Weblate, ougc27
WEBSITE
WEBSITEhttps://github.com/OCA/account-financial-tools
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:23:58
ODOO DEPENDENCIES
ODOO DEPENDENCIES odoo/odoo:
    - account
    - base_setup
    - base
    - web
    - product
    - decimal_precision
    - mail
    - bus
    - web_tour
    - analytic
    - web_planner
    - portal
    - http_routing
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (4)
XML IDNameModelTypeStatus
view_account_move_filter Add to_be_reversed filter account.move field Inherits account.view_account_move_filter
view_account_move_reverse account.move.reverse.form account.move.reverse form New
view_move_form Add to_be_reversed and reversal_id fields account.move xpath Inherits account.view_move_form
view_move_tree Add to_be_reversed column account.move field Inherits account.view_move_tree
Models touched (2)

New fields (2)
  • reversal_id Many2one → account.move
    comodel_name='account.move' ondelete='set null' readonly=True string='Reversal Entry'
  • to_be_reversed Boolean
    copy=False help='Check this box if your entry has to be reversed at the end of period.' string='To Be Reversed'
Public methods (2)
  • create_reversals(self, date=False, journal=False, move_prefix=False, line_prefix=False, reconcile=False)
    @api.multi
    Create the reversal of one or multiple moves :param self: moves to reverse :param date: when the reversal must be input (use original if empty) :param journal: journal on which create the move (use original if empty) :param move_prefix: prefix for the move's name :param line_prefix: prefix for the move line's names :param reconcile: reconcile lines (if account with reconcile = True) :return: Returns a recordset of the created reversal moves
  • move_reverse_reconcile(self)
    @api.multi

New fields (5)
  • date Date
    default=_default_date help='Enter the date of the reversal account entries. By default, Odoo proposes the same date of the move to reverse.' required=True string='Reversal Date'
  • journal_id Many2one → account.journal
    comodel_name='account.journal' default=_default_journal_id help='Enter the journal of the reversal account entries. If empty, Odoo uses the same journal of the move to reverse.' string='Reversal Journal'
  • line_prefix Char
    help="Prefix that will be added to the 'Name' of the reversal account entrie items. If empty, Odoo uses the same name of the move line to reverse. (NOTE: A space is added after the prefix)." string='Items Name Prefix'
  • move_prefix Char
    help="Prefix that will be added to the 'Ref' of the reversal account entries. If empty, Odoo uses the Ref of the move to reverse. (NOTE: A space is added after the prefix)." string='Entries Ref. Prefix'
  • reconcile Boolean
    default=True help='Mark this if you want to reconcile items of both moves.' string='Reconcile'
Public methods (1)
  • action_reverse(self)
    @api.multi
REPOSITORY
REPOSITORYOCA/account-financial-tools
GIT
GIThttps://github.com/OCA/account-financial-tools.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/account-financial-tools/tree/10.0/account_reversal
VERSION
VERSION 1.0.0
CATEGORY
CATEGORYAccounting & Finance
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSTecnativa, Odoo Community Association (OCA), Akretion, Camptocamp, ACSONE SA/NV
MAINTAINERS
MAINTAINERSTecnativa, Odoo Community Association (OCA), Akretion, Camptocamp, ACSONE SA/NV
COMMITTERS
COMMITTERSMaxime Chambreuil, Pedro M. Baeza, GitHub, Stéphane Bidoul (ACSONE), OCA Transbot, oca-travis, Weblate, ougc27
WEBSITE
WEBSITEhttps://odoo-community.org/
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:19:57
ODOO DEPENDENCIES
ODOO DEPENDENCIES odoo/odoo:
    - account
    - base_setup
    - base
    - web_kanban
    - web
    - product
    - decimal_precision
    - mail
    - bus
    - web_tour
    - report
    - analytic
    - web_planner
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (4)
XML IDNameModelTypeStatus
view_account_move_filter Add to_be_reversed filter account.move field Inherits account.view_account_move_filter
view_account_move_reverse account.move.reverse.form account.move.reverse form New
view_move_form Add to_be_reversed and reversal_id fields account.move button Inherits account.view_move_form
view_move_tree Add to_be_reversed column account.move field Inherits account.view_move_tree
Models touched (2)

New fields (2)
  • reversal_id Many2one → account.move
    comodel_name='account.move' ondelete='set null' readonly=True string='Reversal Entry'
  • to_be_reversed Boolean
    copy=False help='Check this box if your entry has to be reversed at the end of period.' string='To Be Reversed'
Public methods (2)
  • create_reversals(self, date=False, journal=False, move_prefix=False, line_prefix=False, reconcile=False)
    @api.multi
    Create the reversal of one or multiple moves :param self: moves to reverse :param date: when the reversal must be input (use original if empty) :param journal: journal on which create the move (use original if empty) :param move_prefix: prefix for the move's name :param line_prefix: prefix for the move line's names :param reconcile: reconcile lines (if account with reconcile = True) :return: Returns a recordset of the created reversal moves
  • move_reverse_reconcile(self)
    @api.multi

New fields (5)
  • date Date
    default=_default_date help='Enter the date of the reversal account entries. By default, Odoo proposes the same date of the move to reverse.' required=True string='Reversal Date'
  • journal_id Many2one → account.journal
    comodel_name='account.journal' default=_default_journal_id help='Enter the date of the reversal account entries. If empty, Odoo uses the same journal of the move to reverse.' string='Reversal Journal'
  • line_prefix Char
    help="Prefix that will be added to the 'Name' of the reversal account entrie items. If empty, Odoo uses the same name of the move line to reverse. (NOTE: A space is added after the prefix)." string='Items Name Prefix'
  • move_prefix Char
    help="Prefix that will be added to the 'Ref' of the reversal account entries. If empty, Odoo uses the Ref of the move to reverse. (NOTE: A space is added after the prefix)." string='Entries Ref. Prefix'
  • reconcile Boolean
    default=True help='Mark this if you want to reconcile items of both moves.' string='Reconcile'
Public methods (1)
  • action_reverse(self)
    @api.multi
REPOSITORY
REPOSITORYOCA/account-financial-tools
GIT
GIThttps://github.com/OCA/account-financial-tools.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/account-financial-tools/tree/9.0/account_reversal
VERSION
VERSION 1.0.0
CATEGORY
CATEGORYAccounting & Finance
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSTecnativa, Odoo Community Association (OCA), Akretion, Camptocamp, ACSONE SA/NV
MAINTAINERS
MAINTAINERSTecnativa, Odoo Community Association (OCA), Akretion, Camptocamp, ACSONE SA/NV
COMMITTERS
COMMITTERSPedro M. Baeza, GitHub, Stéphane Bidoul (ACSONE), OCA Transbot, Florian da Costa, oca-travis, Weblate
WEBSITE
WEBSITEhttps://odoo-community.org/
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:15:20
ODOO DEPENDENCIES
ODOO DEPENDENCIES odoo/odoo:
    - account
    - base_setup
    - base
    - web_kanban
    - web
    - product
    - decimal_precision
    - mail
    - bus
    - report
    - analytic
    - web_tip
    - web_planner
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (4)
XML IDNameModelTypeStatus
view_account_move_filter Add to_be_reversed filter account.move field Inherits account.view_account_move_filter
view_account_move_reverse account.move.reverse.form account.move.reverse form New
view_move_form Add to_be_reversed and reversal_id fields account.move button Inherits account.view_move_form
view_move_tree Add to_be_reversed column account.move field Inherits account.view_move_tree
Models touched (2)

New fields (2)
  • reversal_id Many2one → account.move
    comodel_name='account.move' ondelete='set null' readonly=True string='Reversal Entry'
  • to_be_reversed Boolean
    help='Check this box if your entry has to be reversed at the end of period.' string='To Be Reversed'
Public methods (2)
  • create_reversals(self, date=False, journal=False, move_prefix=False, line_prefix=False, post=False, reconcile=False)
    @api.multi
    Create the reversal of one or multiple moves :param self: moves to reverse :param date: when the reversal must be input (use original if empty) :param journal: journal on which create the move (use original if empty) :param move_prefix: prefix for the move's name :param line_prefix: prefix for the move line's names :param reconcile: reconcile lines (if account with reconcile = True) :return: Returns a recordset of the created reversal moves
  • move_reverse_reconcile(self)
    @api.multi

New fields (6)
  • date Date
    default=_default_date help='Enter the date of the reversal account entries. By default, Odoo proposes the same date of the move to reverse.' required=True string='Reversal Date'
  • journal_id Many2one → account.journal
    comodel_name='account.journal' default=_default_journal_id help='Enter the date of the reversal account entries. If empty, Odoo uses the same journal of the move to reverse.' string='Reversal Journal'
  • line_prefix Char
    default='REV:' help="Prefix that will be added to the 'Name' of the reversal account entrie items. If empty, Odoo uses the same name of the move line to reverse. (NOTE: A space is added after the prefix)." string='Items Name Prefix'
  • move_prefix Char
    default='REV:' help="Prefix that will be added to the 'Ref' of the reversal account entries. If empty, Odoo uses the Ref of the move to reverse. (NOTE: A space is added after the prefix)." string='Entries Ref. Prefix'
  • post Boolean
    default=True help='Mark this if you want to post reversal move' string='Post'
  • reconcile Boolean
    default=True help='Mark this if you want to reconcile items of both moves.' string='Reconcile'
Public methods (1)
  • action_reverse(self)
    @api.multi
REPOSITORY
REPOSITORYOCA/account-financial-tools
GIT
GIThttps://github.com/OCA/account-financial-tools.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/account-financial-tools/tree/8.0/account_reversal
VERSION
VERSION 1.1.1
CATEGORY
CATEGORYGeneric Modules/Accounting
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), Akretion, Camptocamp
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Akretion, Camptocamp
COMMITTERS
COMMITTERSStéphane Bidoul, Yannick Vaucher, Guewen Baconnier, Alexandre Fayolle, Stefan Rijnhart, Leonardo Pistone, Sandy Carter, Pedro M. Baeza, Nicolas Bessi, GitHub, Stéphane Bidoul (ACSONE), OCA Transbot, Adrien Peiffer (ACSONE), oca-travis, Weblate
WEBSITE
WEBSITEhttp://www.akretion.com/
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:11:22
ODOO DEPENDENCIES
ODOO DEPENDENCIES odoo/odoo:
    - account
    - base_setup
    - base
    - web_kanban
    - web
    - product
    - decimal_precision
    - mail
    - report
    - analytic
    - board
    - edi
    - email_template
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (4)
XML IDNameModelTypeStatus
view_account_move_reversal_filter account.move.reversal.select account.move xpath Inherits account.view_account_move_filter
view_account_move_reverse account.move.reverse.form account.move.reverse form New
view_move_reversal_form account.move.reversal.form account.move xpath Inherits account.view_move_form
view_move_reversal_tree account.move.reversal.tree account.move field Inherits account.view_move_tree
Models touched (2)

New fields (2)
  • reversal_id Many2one → account.move
    copy=False ondelete='set null' readonly=True args: 'account.move', 'Reversal Entry'
  • to_be_reversed Boolean
    help='Check this box if your entry has to bereversed at the end of period.' args: 'To Be Reversed'
Public methods (2)
  • create_reversals(self, reversal_date, reversal_period_id=False, reversal_journal_id=False, move_prefix=False, move_line_prefix=False, reconcile=False)
    @api.multi
    Create the reversal of one or multiple moves :param reversal_date: when the reversal must be input :param reversal_period_id: facultative period to write on the move (use the period of the date if empty :param reversal_journal_id: facultative journal on which create the move :param move_prefix: prefix for the move's name :param move_line_prefix: prefix for the move line's names :return: Returns a list of ids of the created reversal moves
  • validate(self)
    @api.multi

New fields (0)

No new fields.

Public methods (1)
  • action_reverse(self, cr, uid, ids, context=None)
REPOSITORY
REPOSITORYOCA/account-financial-tools
GIT
GIThttps://github.com/OCA/account-financial-tools.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/account-financial-tools/tree/7.0/account_reversal
VERSION
VERSION 1.0
CATEGORY
CATEGORYGeneric Modules/Accounting
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), Akretion, Camptocamp
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Akretion, Camptocamp
COMMITTERS
COMMITTERSStéphane Bidoul, Alexis de Lattre, Yannick Vaucher, Guewen Baconnier, Alexandre Fayolle, Pedro M. Baeza, Nicolas Bessi, Launchpad Translations on behalf of account-core-editors, OCA Transbot, Rudolf Schnapka
WEBSITE
WEBSITEhttp://www.akretion.com/
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:07:14
ODOO DEPENDENCIES
ODOO DEPENDENCIES odoo/odoo:
    - account
    - base_setup
    - base
    - web_kanban
    - web
    - product
    - process
    - decimal_precision
    - mail
    - analytic
    - board
    - edi
    - email_template
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION
Account Reversal
================

This module adds an action "Reversal" on account moves,
to allow the accountant to create reversal account moves in 2 clicks.
Also add on account entries:
 - a checkbox and filter "to be reversed"
 - a link between an entry and its reversal entry

Module originally developped by Alexis de Lattre <alexis.delattre@akretion.com>
during the Akretion-Camptocamp code sprint of June 2011.

Code Analysis

Views touched (4)
XML IDNameModelTypeStatus
view_account_move_reversal_filter account.move.reversal.select account.move xpath Inherits account.view_account_move_filter
view_account_move_reverse account.move.reverse.form account.move.reverse form New
view_move_reversal_form account.move.reversal.form account.move xpath Inherits account.view_move_form
view_move_reversal_tree account.move.reversal.tree account.move field Inherits account.view_move_tree
Models touched (2)

New fields (0)

No new fields.

Public methods (1)
  • create_reversals(self, cr, uid, ids, reversal_date, reversal_period_id=False, reversal_journal_id=False, move_prefix=False, move_line_prefix=False, context=None)
    Create the reversal of one or multiple moves :param reversal_date: when the reversal must be input :param reversal_period_id: facultative period to write on the move (use the period of the date if empty :param reversal_journal_id: facultative journal on which create the move :param move_prefix: prefix for the move's name :param move_line_prefix: prefix for the move line's names :return: Returns a list of ids of the created reversal moves

New fields (0)

No new fields.

Public methods (1)
  • action_reverse(self, cr, uid, ids, context=None)
REPOSITORY
REPOSITORYOCA/account-financial-tools
GIT
GIThttps://github.com/OCA/account-financial-tools.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/account-financial-tools/tree/6.1/account_reversal
VERSION
VERSION 0.2
CATEGORY
CATEGORYGeneric Modules/Accounting
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), Akretion
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Akretion
COMMITTERS
COMMITTERSAlexandre Fayolle, Guewen Baconnier @ Camptocamp
WEBSITE
WEBSITEhttp://www.akretion.com/
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:04:06
ODOO DEPENDENCIES
ODOO DEPENDENCIES odoo/odoo:
    - account
    - base_setup
    - base
    - product
    - process
    - decimal_precision
    - analytic
    - board
    - edi
    - email_template
    - mail
    - base_tools
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION
This module adds an action "Reversal" on account moves, to allow the accountant to create reversal account moves in 2 clicks.
Also add on account entries :
 - a checkbox and filter "to be reversed"
 - a link between an entry and its reversal entry

Module developped by Alexis de Lattre <alexis.delattre@akretion.com> during the Akretion-Camptocamp code sprint of June 2011.

Code Analysis

Views touched (4)
XML IDNameModelTypeStatus
view_account_move_reversal_filter account.move.reversal.select account.move xpath Inherits account.view_account_move_filter
view_account_move_reverse account.move.reverse.form account.move.reverse form New
view_move_reversal_form account.move.reversal.form account.move xpath Inherits account.view_move_form
view_move_reversal_tree account.move.reversal.tree account.move field Inherits account.view_move_tree
Models touched (0)

No models found for this module.

STATUS
STATUSOpen migration PR - not merged yet for this version
REPOSITORY
REPOSITORYOCA/account-financial-tools
PULL REQUEST
PULL REQUEST[18.0][MIG] account_reversal: Migration to 18.0 (#2326)