Account Mass Reconcile

account_mass_reconcile
REPOSITORY
REPOSITORYOCA/account-reconcile
GIT
GIThttps://github.com/OCA/account-reconcile.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/account-reconcile/tree/17.0/account_mass_reconcile
VERSION
VERSION 1.0.1
CATEGORY
CATEGORYFinance
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), Akretion, Camptocamp
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Akretion, Camptocamp
COMMITTERS
COMMITTERSPedro M. Baeza, Weblate, OCA-git-bot, oca-ci, JasminSForgeFlow
WEBSITE
WEBSITEhttps://github.com/OCA/account-reconcile
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 19:20:00
ODOO DEPENDENCIES
ODOO DEPENDENCIES odoo/odoo:
    - account
    - base_setup
    - base
    - web
    - onboarding
    - 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
This is a shared work between Akretion and Camptocamp in order to
provide:

- Reconciliation facilities for big volume of transactions.
- Setup different profiles of reconciliation by account.
- Each profile can use many methods of reconciliation.
- This module is also a base to create others reconciliation methods
  which can plug in the profiles.
- A profile a reconciliation can be run manually or by a cron.
- Monitoring of reconciliation runs with an history which keep track of
  the reconciled Journal items.

2 simple reconciliation methods are integrated in this module, the
simple reconciliations works on 2 lines (1 debit / 1 credit) and do not
allow partial reconciliation, they also match on 1 key, partner or
Journal item name. There is also an option for 'most recent move line'
or 'oldest move line' which is used to choose the move to be reconciled
if more than one is found.

Code Analysis

Views touched (7)
XML IDNameModelTypeStatus
account_mass_reconcile_form account.mass.reconcile.form account.mass.reconcile form New
account_mass_reconcile_method_tree account.mass.reconcile.method.tree account.mass.reconcile.method tree New
account_mass_reconcile_tree account.mass.reconcile.tree account.mass.reconcile tree New
mass_reconcile_history_form mass.reconcile.history.form mass.reconcile.history form New
mass_reconcile_history_tree mass.reconcile.history.tree mass.reconcile.history tree New
view_account_config account settings res.config.settings xpath Inherits account.res_config_settings_view_form
view_mass_reconcile_history_search mass.reconcile.history.search mass.reconcile.history search New
Models touched (14)

New fields (7)
  • account Many2one → account.account
    required=True args: 'account.account'
  • company_id Many2one → res.company
    string='Company' args: 'res.company'
  • history_ids One2many → mass.reconcile.history
    readonly=True string='History' args: 'mass.reconcile.history', 'mass_reconcile_id'
  • last_history Many2one → mass.reconcile.history
    compute='_compute_last_history' readonly=True string='Last history' args: 'mass.reconcile.history'
  • name Char
    required=True
  • reconcile_method One2many → account.mass.reconcile.method
    string='Method' args: 'account.mass.reconcile.method', 'task_id'
  • unreconciled_count Integer
    compute='_compute_total_unrec' string='Unreconciled Items'
Public methods (4)
  • last_history_reconcile(self)
    Get the last history record for this reconciliation profile and return the action which opens move lines reconciled
  • open_unreconcile(self)
    Open the view of move line with the unreconciled move lines
  • run_reconcile(self)
  • run_scheduler(self, run_all=None)
    @api.model
    Launch the reconcile with the oldest run This function is mostly here to be used with cron task :param run_all: if set it will ignore lookup and launch all reconciliation :returns: True in case of success or raises an exception

New fields (4)
  • company_id Many2one → res.company
    readonly=True related='task_id.company_id' store=True string='Company' args: 'res.company'
  • name Selection
    required=True string='Type' args: '_selection_name'
  • sequence Integer
    default=1 help='The sequence field is used to order the reconcile method' required=True
  • task_id Many2one → account.mass.reconcile
    ondelete='cascade' required=True string='Task' args: 'account.mass.reconcile'
Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (2)
  • account_id Many2one → account.account
    required=True string='Account' args: 'account.account'
  • partner_ids Many2many → res.partner
    comodel_name='res.partner' string='Restrict on partners'
Public methods (2)
  • automatic_reconcile(self)
    Reconciliation method called from the view. :return: list of reconciled ids
  • create_write_off(self, lines, amount, amount_curr, same_curr)

New fields (5)
  • company_id Many2one → res.company
    readonly=True related='mass_reconcile_id.company_id' store=True string='Company' args: 'res.company'
  • date Datetime
    readonly=True required=True string='Run date'
  • mass_reconcile_id Many2one → account.mass.reconcile
    readonly=True string='Reconcile Profile' args: 'account.mass.reconcile'
  • reconcile_ids Many2many → account.full.reconcile
    comodel_name='account.full.reconcile' readonly=True relation='account_full_reconcile_history_rel' string='Full Reconciliations'
  • reconcile_line_ids Many2many → account.move.line
    comodel_name='account.move.line' compute='_compute_reconcile_line_ids' relation='account_move_line_history_rel' string='Reconciled Items'
Public methods (1)
  • open_reconcile(self)
    For an history record, open the view of move line with the reconciled move lines :param history_ids: id of the record as int or long Accept a list with 1 id too to be used from the client.

New fields (6)
  • _filter Char
    string='Filter'
  • account_lost_id Many2one → account.account
    string='Account Lost' args: 'account.account'
  • account_profit_id Many2one → account.account
    string='Account Profit' args: 'account.account'
  • date_base_on Selection
    default='newest' required=True string='Date of reconciliation' args: '_get_rec_base_date'
  • journal_id Many2one → account.journal
    string='Journal' args: 'account.journal'
  • write_off Float
    default=0.0 args: 'Write off allowed'
Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (1)
  • rec_auto_lines_simple(self, lines)

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (1)
  • reconciliation_commit_every Integer
    help='Leave zero to commit only at the end of the process.' string='How often to commit when performing automatic reconciliation.'
Public methods (0)

No public methods.

New fields (1)
  • reconciliation_commit_every Integer
    help='Leave zero to commit only at the end of the process.' readonly=False related='company_id.reconciliation_commit_every' string='How often to commit when performing automatic reconciliation.'
Public methods (0)

No public methods.

REPOSITORY
REPOSITORYOCA/account-reconcile
GIT
GIThttps://github.com/OCA/account-reconcile.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/account-reconcile/tree/16.0/account_mass_reconcile
VERSION
VERSION 1.1.3
CATEGORY
CATEGORYFinance
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), Akretion, Camptocamp
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Akretion, Camptocamp
COMMITTERS
COMMITTERSGitHub, Florian da Costa, Weblate, OCA-git-bot, oca-ci, Aritz Olea, sonhd91, Sergio Bustamante
WEBSITE
WEBSITEhttps://github.com/OCA/account-reconcile
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:53:56
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 (7)
XML IDNameModelTypeStatus
account_mass_reconcile_form account.mass.reconcile.form account.mass.reconcile form New
account_mass_reconcile_method_tree account.mass.reconcile.method.tree account.mass.reconcile.method tree New
account_mass_reconcile_tree account.mass.reconcile.tree account.mass.reconcile tree New
mass_reconcile_history_form mass.reconcile.history.form mass.reconcile.history form New
mass_reconcile_history_tree mass.reconcile.history.tree mass.reconcile.history tree New
view_account_config account settings res.config.settings xpath Inherits account.res_config_settings_view_form
view_mass_reconcile_history_search mass.reconcile.history.search mass.reconcile.history search New
Models touched (14)

New fields (7)
  • account Many2one → account.account
    required=True args: 'account.account'
  • company_id Many2one → res.company
    string='Company' args: 'res.company'
  • history_ids One2many → mass.reconcile.history
    readonly=True string='History' args: 'mass.reconcile.history', 'mass_reconcile_id'
  • last_history Many2one → mass.reconcile.history
    compute='_compute_last_history' readonly=True string='Last history' args: 'mass.reconcile.history'
  • name Char
    required=True
  • reconcile_method One2many → account.mass.reconcile.method
    string='Method' args: 'account.mass.reconcile.method', 'task_id'
  • unreconciled_count Integer
    compute='_compute_total_unrec' string='Unreconciled Items'
Public methods (4)
  • last_history_reconcile(self)
    Get the last history record for this reconciliation profile and return the action which opens move lines reconciled
  • open_unreconcile(self)
    Open the view of move line with the unreconciled move lines
  • run_reconcile(self)
  • run_scheduler(self, run_all=None)
    @api.model
    Launch the reconcile with the oldest run This function is mostly here to be used with cron task :param run_all: if set it will ignore lookup and launch all reconciliation :returns: True in case of success or raises an exception

New fields (4)
  • company_id Many2one → res.company
    readonly=True related='task_id.company_id' store=True string='Company' args: 'res.company'
  • name Selection
    required=True string='Type' args: '_selection_name'
  • sequence Integer
    default=1 help='The sequence field is used to order the reconcile method' required=True
  • task_id Many2one → account.mass.reconcile
    ondelete='cascade' required=True string='Task' args: 'account.mass.reconcile'
Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (2)
  • account_id Many2one → account.account
    required=True string='Account' args: 'account.account'
  • partner_ids Many2many → res.partner
    comodel_name='res.partner' string='Restrict on partners'
Public methods (2)
  • automatic_reconcile(self)
    Reconciliation method called from the view. :return: list of reconciled ids
  • create_write_off(self, lines, amount, amount_curr, same_curr)

New fields (5)
  • company_id Many2one → res.company
    readonly=True related='mass_reconcile_id.company_id' store=True string='Company' args: 'res.company'
  • date Datetime
    readonly=True required=True string='Run date'
  • mass_reconcile_id Many2one → account.mass.reconcile
    readonly=True string='Reconcile Profile' args: 'account.mass.reconcile'
  • reconcile_ids Many2many → account.full.reconcile
    comodel_name='account.full.reconcile' readonly=True relation='account_full_reconcile_history_rel' string='Full Reconciliations'
  • reconcile_line_ids Many2many → account.move.line
    comodel_name='account.move.line' compute='_compute_reconcile_line_ids' relation='account_move_line_history_rel' string='Reconciled Items'
Public methods (1)
  • open_reconcile(self)
    For an history record, open the view of move line with the reconciled move lines :param history_ids: id of the record as int or long Accept a list with 1 id too to be used from the client.

New fields (6)
  • _filter Char
    string='Filter'
  • account_lost_id Many2one → account.account
    string='Account Lost' args: 'account.account'
  • account_profit_id Many2one → account.account
    string='Account Profit' args: 'account.account'
  • date_base_on Selection
    default='newest' required=True string='Date of reconciliation' args: '_get_rec_base_date'
  • journal_id Many2one → account.journal
    string='Journal' args: 'account.journal'
  • write_off Float
    default=0.0 args: 'Write off allowed'
Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (1)
  • rec_auto_lines_simple(self, lines)

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (1)
  • reconciliation_commit_every Integer
    help='Leave zero to commit only at the end of the process.' string='How often to commit when performing automatic reconciliation.'
Public methods (0)

No public methods.

New fields (1)
  • reconciliation_commit_every Integer
    help='Leave zero to commit only at the end of the process.' readonly=False related='company_id.reconciliation_commit_every' string='How often to commit when performing automatic reconciliation.'
Public methods (0)

No public methods.

REPOSITORY
REPOSITORYOCA/account-reconcile
GIT
GIThttps://github.com/OCA/account-reconcile.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/account-reconcile/tree/15.0/account_mass_reconcile
VERSION
VERSION 1.0.0
CATEGORY
CATEGORYFinance
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), Akretion, Camptocamp
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Akretion, Camptocamp
COMMITTERS
COMMITTERSMiquel Raïch, Weblate, OCA-git-bot, oca-ci
WEBSITE
WEBSITEhttps://github.com/OCA/account-reconcile
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:46:41
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 (7)
XML IDNameModelTypeStatus
account_mass_reconcile_form account.mass.reconcile.form account.mass.reconcile form New
account_mass_reconcile_method_tree account.mass.reconcile.method.tree account.mass.reconcile.method tree New
account_mass_reconcile_tree account.mass.reconcile.tree account.mass.reconcile tree New
mass_reconcile_history_form mass.reconcile.history.form mass.reconcile.history form New
mass_reconcile_history_tree mass.reconcile.history.tree mass.reconcile.history tree New
view_account_config account settings res.config.settings xpath Inherits account.res_config_settings_view_form
view_mass_reconcile_history_search mass.reconcile.history.search mass.reconcile.history search New
Models touched (14)

New fields (7)
  • account Many2one → account.account
    required=True args: 'account.account'
  • company_id Many2one → res.company
    string='Company' args: 'res.company'
  • history_ids One2many → mass.reconcile.history
    readonly=True string='History' args: 'mass.reconcile.history', 'mass_reconcile_id'
  • last_history Many2one → mass.reconcile.history
    compute='_compute_last_history' readonly=True string='Last history' args: 'mass.reconcile.history'
  • name Char
    required=True
  • reconcile_method One2many → account.mass.reconcile.method
    string='Method' args: 'account.mass.reconcile.method', 'task_id'
  • unreconciled_count Integer
    compute='_compute_total_unrec' string='Unreconciled Items'
Public methods (4)
  • last_history_reconcile(self)
    Get the last history record for this reconciliation profile and return the action which opens move lines reconciled
  • open_unreconcile(self)
    Open the view of move line with the unreconciled move lines
  • run_reconcile(self)
  • run_scheduler(self, run_all=None)
    @api.model
    Launch the reconcile with the oldest run This function is mostly here to be used with cron task :param run_all: if set it will ignore lookup and launch all reconciliation :returns: True in case of success or raises an exception

New fields (4)
  • company_id Many2one → res.company
    readonly=True related='task_id.company_id' store=True string='Company' args: 'res.company'
  • name Selection
    required=True string='Type' args: '_selection_name'
  • sequence Integer
    default=1 help='The sequence field is used to order the reconcile method' required=True
  • task_id Many2one → account.mass.reconcile
    ondelete='cascade' required=True string='Task' args: 'account.mass.reconcile'
Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (2)
  • account_id Many2one → account.account
    required=True string='Account' args: 'account.account'
  • partner_ids Many2many → res.partner
    comodel_name='res.partner' string='Restrict on partners'
Public methods (2)
  • automatic_reconcile(self)
    Reconciliation method called from the view. :return: list of reconciled ids
  • create_write_off(self, lines, amount, amount_curr, same_curr)

New fields (5)
  • company_id Many2one → res.company
    readonly=True related='mass_reconcile_id.company_id' store=True string='Company' args: 'res.company'
  • date Datetime
    readonly=True required=True string='Run date'
  • mass_reconcile_id Many2one → account.mass.reconcile
    readonly=True string='Reconcile Profile' args: 'account.mass.reconcile'
  • reconcile_ids Many2many → account.full.reconcile
    comodel_name='account.full.reconcile' readonly=True relation='account_full_reconcile_history_rel' string='Full Reconciliations'
  • reconcile_line_ids Many2many → account.move.line
    comodel_name='account.move.line' compute='_compute_reconcile_line_ids' relation='account_move_line_history_rel' string='Reconciled Items'
Public methods (1)
  • open_reconcile(self)
    For an history record, open the view of move line with the reconciled move lines :param history_ids: id of the record as int or long Accept a list with 1 id too to be used from the client.

New fields (6)
  • _filter Char
    string='Filter'
  • account_lost_id Many2one → account.account
    string='Account Lost' args: 'account.account'
  • account_profit_id Many2one → account.account
    string='Account Profit' args: 'account.account'
  • date_base_on Selection
    default='newest' required=True string='Date of reconciliation' args: '_get_rec_base_date'
  • journal_id Many2one → account.journal
    string='Journal' args: 'account.journal'
  • write_off Float
    default=0.0 args: 'Write off allowed'
Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (1)
  • rec_auto_lines_simple(self, lines)

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (1)
  • reconciliation_commit_every Integer
    help='Leave zero to commit only at the end of the process.' string='How often to commit when performing automatic reconciliation.'
Public methods (0)

No public methods.

New fields (1)
  • reconciliation_commit_every Integer
    help='Leave zero to commit only at the end of the process.' readonly=False related='company_id.reconciliation_commit_every' string='How often to commit when performing automatic reconciliation.'
Public methods (0)

No public methods.

REPOSITORY
REPOSITORYOCA/account-reconcile
GIT
GIThttps://github.com/OCA/account-reconcile.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/account-reconcile/tree/14.0/account_mass_reconcile
VERSION
VERSION 1.1.2
CATEGORY
CATEGORYFinance
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), Akretion, Camptocamp
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Akretion, Camptocamp
COMMITTERS
COMMITTERSEnric Tobella, Akim Juillerat, Jordi Ballester Alomar, OCA Transbot, Miquel Raïch, Florian da Costa, oca-travis, Weblate, OCA-git-bot, oca-ci, Kitti U, Yannick Payot, oca-git-bot
WEBSITE
WEBSITEhttps://github.com/OCA/account-reconcile
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:41:10
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 (7)
XML IDNameModelTypeStatus
account_mass_reconcile_form account.mass.reconcile.form account.mass.reconcile form New
account_mass_reconcile_method_tree account.mass.reconcile.method.tree account.mass.reconcile.method tree New
account_mass_reconcile_tree account.mass.reconcile.tree account.mass.reconcile tree New
mass_reconcile_history_form mass.reconcile.history.form mass.reconcile.history form New
mass_reconcile_history_tree mass.reconcile.history.tree mass.reconcile.history tree New
view_account_config account settings res.config.settings xpath Inherits account.res_config_settings_view_form
view_mass_reconcile_history_search mass.reconcile.history.search mass.reconcile.history search New
Models touched (14)

New fields (7)
  • account Many2one → account.account
    required=True string='Account' args: 'account.account'
  • company_id Many2one → res.company
    string='Company' args: 'res.company'
  • history_ids One2many → mass.reconcile.history
    readonly=True string='History' args: 'mass.reconcile.history', 'mass_reconcile_id'
  • last_history Many2one → mass.reconcile.history
    compute='_compute_last_history' readonly=True string='Last history' args: 'mass.reconcile.history'
  • name Char
    required=True string='Name'
  • reconcile_method One2many → account.mass.reconcile.method
    string='Method' args: 'account.mass.reconcile.method', 'task_id'
  • unreconciled_count Integer
    compute='_compute_total_unrec' string='Unreconciled Items'
Public methods (4)
  • last_history_reconcile(self)
    Get the last history record for this reconciliation profile and return the action which opens move lines reconciled
  • open_unreconcile(self)
    Open the view of move line with the unreconciled move lines
  • run_reconcile(self)
  • run_scheduler(self, run_all=None)
    @api.model
    Launch the reconcile with the oldest run This function is mostly here to be used with cron task :param run_all: if set it will ingore lookup and launch all reconciliation :returns: True in case of success or raises an exception

New fields (4)
  • company_id Many2one → res.company
    readonly=True related='task_id.company_id' store=True string='Company' args: 'res.company'
  • name Selection
    required=True string='Type' args: '_selection_name'
  • sequence Integer
    default=1 help='The sequence field is used to order the reconcile method' required=True string='Sequence'
  • task_id Many2one → account.mass.reconcile
    ondelete='cascade' required=True string='Task' args: 'account.mass.reconcile'
Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (2)
  • account_id Many2one → account.account
    required=True string='Account' args: 'account.account'
  • partner_ids Many2many → res.partner
    comodel_name='res.partner' string='Restrict on partners'
Public methods (2)
  • automatic_reconcile(self)
    Reconciliation method called from the view. :return: list of reconciled ids
  • create_write_off(self, lines, amount, amount_curr, same_curr)

New fields (5)
  • company_id Many2one → res.company
    readonly=True related='mass_reconcile_id.company_id' store=True string='Company' args: 'res.company'
  • date Datetime
    readonly=True required=True string='Run date'
  • mass_reconcile_id Many2one → account.mass.reconcile
    readonly=True string='Reconcile Profile' args: 'account.mass.reconcile'
  • reconcile_ids Many2many → account.full.reconcile
    comodel_name='account.full.reconcile' readonly=True relation='account_full_reconcile_history_rel' string='Full Reconciliations'
  • reconcile_line_ids Many2many → account.move.line
    comodel_name='account.move.line' compute='_compute_reconcile_line_ids' relation='account_move_line_history_rel' string='Reconciled Items'
Public methods (1)
  • open_reconcile(self)
    For an history record, open the view of move line with the reconciled move lines :param history_ids: id of the record as int or long Accept a list with 1 id too to be used from the client.

New fields (6)
  • _filter Char
    string='Filter'
  • account_lost_id Many2one → account.account
    string='Account Lost' args: 'account.account'
  • account_profit_id Many2one → account.account
    string='Account Profit' args: 'account.account'
  • date_base_on Selection
    default='newest' required=True string='Date of reconciliation' args: '_get_rec_base_date'
  • journal_id Many2one → account.journal
    string='Journal' args: 'account.journal'
  • write_off Float
    default=0.0 args: 'Write off allowed'
Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (1)
  • rec_auto_lines_simple(self, lines)

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (1)
  • reconciliation_commit_every Integer
    help='Leave zero to commit only at the end of the process.' string='How often to commit when performing automatic reconciliation.'
Public methods (0)

No public methods.

New fields (1)
  • reconciliation_commit_every Integer
    help='Leave zero to commit only at the end of the process.' readonly=False related='company_id.reconciliation_commit_every' string='How often to commit when performing automatic reconciliation.'
Public methods (0)

No public methods.

REPOSITORY
REPOSITORYOCA/account-reconcile
GIT
GIThttps://github.com/OCA/account-reconcile.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/account-reconcile/tree/13.0/account_mass_reconcile
VERSION
VERSION 1.0.2
CATEGORY
CATEGORYFinance
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), Akretion, Camptocamp
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Akretion, Camptocamp
COMMITTERS
COMMITTERSPedro M. Baeza, OCA Transbot, Miquel Raïch, oca-travis, Weblate, OCA-git-bot, Kitti U, hveficent
WEBSITE
WEBSITEhttps://github.com/OCA/account-reconcile
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:34:19
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 (7)
XML IDNameModelTypeStatus
account_mass_reconcile_form account.mass.reconcile.form account.mass.reconcile form New
account_mass_reconcile_method_tree account.mass.reconcile.method.tree account.mass.reconcile.method tree New
account_mass_reconcile_tree account.mass.reconcile.tree account.mass.reconcile tree New
mass_reconcile_history_form mass.reconcile.history.form mass.reconcile.history form New
mass_reconcile_history_tree mass.reconcile.history.tree mass.reconcile.history tree New
view_account_config account settings res.config.settings xpath Inherits account.res_config_settings_view_form
view_mass_reconcile_history_search mass.reconcile.history.search mass.reconcile.history search New
Models touched (13)

New fields (7)
  • account Many2one → account.account
    required=True string='Account' args: 'account.account'
  • company_id Many2one → res.company
    string='Company' args: 'res.company'
  • history_ids One2many → mass.reconcile.history
    readonly=True string='History' args: 'mass.reconcile.history', 'mass_reconcile_id'
  • last_history Many2one → mass.reconcile.history
    compute='_compute_last_history' readonly=True string='Last history' args: 'mass.reconcile.history'
  • name Char
    required=True string='Name'
  • reconcile_method One2many → account.mass.reconcile.method
    string='Method' args: 'account.mass.reconcile.method', 'task_id'
  • unreconciled_count Integer
    compute='_compute_total_unrec' string='Unreconciled Items'
Public methods (4)
  • last_history_reconcile(self)
    Get the last history record for this reconciliation profile and return the action which opens move lines reconciled
  • open_unreconcile(self)
    Open the view of move line with the unreconciled move lines
  • run_reconcile(self)
  • run_scheduler(self, run_all=None)
    @api.model
    Launch the reconcile with the oldest run This function is mostly here to be used with cron task :param run_all: if set it will ingore lookup and launch all reconciliation :returns: True in case of success or raises an exception

New fields (4)
  • company_id Many2one → res.company
    readonly=True related='task_id.company_id' store=True string='Company' args: 'res.company'
  • name Selection
    required=True string='Type' args: '_selection_name'
  • sequence Integer
    default=1 help='The sequence field is used to order the reconcile method' required=True string='Sequence'
  • task_id Many2one → account.mass.reconcile
    ondelete='cascade' required=True string='Task' args: 'account.mass.reconcile'
Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (2)
  • account_id Many2one → account.account
    required=True string='Account' args: 'account.account'
  • partner_ids Many2many → res.partner
    comodel_name='res.partner' string='Restrict on partners'
Public methods (1)
  • automatic_reconcile(self)
    Reconciliation method called from the view. :return: list of reconciled ids

New fields (5)
  • company_id Many2one → res.company
    readonly=True related='mass_reconcile_id.company_id' store=True string='Company' args: 'res.company'
  • date Datetime
    readonly=True required=True string='Run date'
  • mass_reconcile_id Many2one → account.mass.reconcile
    readonly=True string='Reconcile Profile' args: 'account.mass.reconcile'
  • reconcile_ids Many2many → account.full.reconcile
    comodel_name='account.full.reconcile' readonly=True relation='account_full_reconcile_history_rel' string='Full Reconciliations'
  • reconcile_line_ids Many2many → account.move.line
    comodel_name='account.move.line' compute='_compute_reconcile_line_ids' relation='account_move_line_history_rel' string='Reconciled Items'
Public methods (1)
  • open_reconcile(self)
    For an history record, open the view of move line with the reconciled move lines :param history_ids: id of the record as int or long Accept a list with 1 id too to be used from the client.

New fields (8)
  • _filter Char
    string='Filter'
  • account_lost_id Many2one → account.account
    string='Account Lost' args: 'account.account'
  • account_profit_id Many2one → account.account
    string='Account Profit' args: 'account.account'
  • date_base_on Selection
    default='newest' required=True string='Date of reconciliation' args: '_get_rec_base_date'
  • expense_exchange_account_id Many2one → account.account
    string='Loss Exchange Rate Account' args: 'account.account'
  • income_exchange_account_id Many2one → account.account
    string='Gain Exchange Rate Account' args: 'account.account'
  • journal_id Many2one → account.journal
    string='Journal' args: 'account.journal'
  • write_off Float
    default=0.0 args: 'Write off allowed'
Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (1)
  • rec_auto_lines_simple(self, lines)

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (1)
  • reconciliation_commit_every Integer
    help='Leave zero to commit only at the end of the process.' string='How often to commit when performing automatic reconciliation.'
Public methods (0)

No public methods.

New fields (1)
  • reconciliation_commit_every Integer
    help='Leave zero to commit only at the end of the process.' readonly=False related='company_id.reconciliation_commit_every' string='How often to commit when performing automatic reconciliation.'
Public methods (0)

No public methods.

REPOSITORY
REPOSITORYOCA/account-reconcile
GIT
GIThttps://github.com/OCA/account-reconcile.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/account-reconcile/tree/12.0/account_mass_reconcile
VERSION
VERSION 1.0.0
CATEGORY
CATEGORYFinance
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), Akretion, Camptocamp
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Akretion, Camptocamp
COMMITTERS
COMMITTERSYannick Vaucher, GitHub, Akim Juillerat, OCA Transbot, Miquel Raïch, oca-travis, Weblate, OCA-git-bot, Iryna Vyshnevska, Iryna Vushnevska, Adrià Gil Sorribes
WEBSITE
WEBSITEhttps://github.com/OCA/account-reconcile
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:29:24
ODOO DEPENDENCIES
ODOO DEPENDENCIES odoo/odoo:
    - account
    - base_setup
    - base
    - web
    - product
    - decimal_precision
    - mail
    - bus
    - web_tour
    - uom
    - analytic
    - portal
    - http_routing
    - digest
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (7)
XML IDNameModelTypeStatus
account_mass_reconcile_form account.mass.reconcile.form account.mass.reconcile form New
account_mass_reconcile_method_tree account.mass.reconcile.method.tree account.mass.reconcile.method tree New
account_mass_reconcile_tree account.mass.reconcile.tree account.mass.reconcile tree New
mass_reconcile_history_form mass.reconcile.history.form mass.reconcile.history form New
mass_reconcile_history_tree mass.reconcile.history.tree mass.reconcile.history tree New
view_account_config account settings res.config.settings xpath Inherits account.res_config_settings_view_form
view_mass_reconcile_history_search mass.reconcile.history.search mass.reconcile.history search New
Models touched (13)

New fields (7)
  • account Many2one → account.account
    required=True string='Account' args: 'account.account'
  • company_id Many2one → res.company
    string='Company' args: 'res.company'
  • history_ids One2many → mass.reconcile.history
    readonly=True string='History' args: 'mass.reconcile.history', 'mass_reconcile_id'
  • last_history Many2one → mass.reconcile.history
    compute='_last_history' readonly=True string='Last history' args: 'mass.reconcile.history'
  • name Char
    required=True string='Name'
  • reconcile_method One2many → account.mass.reconcile.method
    string='Method' args: 'account.mass.reconcile.method', 'task_id'
  • unreconciled_count Integer
    compute='_get_total_unrec' string='Unreconciled Items'
Public methods (4)
  • last_history_reconcile(self)
    Get the last history record for this reconciliation profile and return the action which opens move lines reconciled
  • open_unreconcile(self)
    @api.multi
    Open the view of move line with the unreconciled move lines
  • run_reconcile(self)
    @api.multi
  • run_scheduler(self, run_all=None)
    @api.model
    Launch the reconcile with the oldest run This function is mostly here to be used with cron task :param run_all: if set it will ingore lookup and launch all reconciliation :returns: True in case of success or raises an exception

New fields (4)
  • company_id Many2one → res.company
    readonly=True related='task_id.company_id' store=True string='Company' args: 'res.company'
  • name Selection
    required=True string='Type' args: '_selection_name'
  • sequence Integer
    default=1 help='The sequence field is used to order the reconcile method' required=True string='Sequence'
  • task_id Many2one → account.mass.reconcile
    ondelete='cascade' required=True string='Task' args: 'account.mass.reconcile'
Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (2)
  • account_id Many2one → account.account
    required=True string='Account' args: 'account.account'
  • partner_ids Many2many → res.partner
    comodel_name='res.partner' string='Restrict on partners'
Public methods (1)
  • automatic_reconcile(self)
    @api.multi
    Reconciliation method called from the view. :return: list of reconciled ids

New fields (5)
  • company_id Many2one → res.company
    readonly=True related='mass_reconcile_id.company_id' store=True string='Company' args: 'res.company'
  • date Datetime
    readonly=True required=True string='Run date'
  • mass_reconcile_id Many2one → account.mass.reconcile
    readonly=True string='Reconcile Profile' args: 'account.mass.reconcile'
  • reconcile_ids Many2many → account.full.reconcile
    comodel_name='account.full.reconcile' readonly=True relation='account_full_reconcile_history_rel' string='Full Reconciliations'
  • reconcile_line_ids Many2many → account.move.line
    comodel_name='account.move.line' compute='_get_reconcile_line_ids' relation='account_move_line_history_rel' string='Reconciled Items'
Public methods (1)
  • open_reconcile(self)
    @api.multi
    For an history record, open the view of move line with the reconciled move lines :param history_ids: id of the record as int or long Accept a list with 1 id too to be used from the client.

New fields (8)
  • _filter Char
    oldname='filter' string='Filter'
  • account_lost_id Many2one → account.account
    string='Account Lost' args: 'account.account'
  • account_profit_id Many2one → account.account
    string='Account Profit' args: 'account.account'
  • date_base_on Selection
    default='newest' required=True string='Date of reconciliation' args: '_get_rec_base_date'
  • expense_exchange_account_id Many2one → account.account
    string='Loss Exchange Rate Account' args: 'account.account'
  • income_exchange_account_id Many2one → account.account
    string='Gain Exchange Rate Account' args: 'account.account'
  • journal_id Many2one → account.journal
    string='Journal' args: 'account.journal'
  • write_off Float
    default=0.0 args: 'Write off allowed'
Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (1)
  • rec_auto_lines_simple(self, lines)
    @api.multi

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (1)
  • reconciliation_commit_every Integer
    help='Leave zero to commit only at the end of the process.' string='How often to commit when performing automatic reconciliation.'
Public methods (0)

No public methods.

New fields (1)
  • reconciliation_commit_every Integer
    help='Leave zero to commit only at the end of the process.' readonly=False related='company_id.reconciliation_commit_every' string='How often to commit when performing automatic reconciliation.'
Public methods (0)

No public methods.

REPOSITORY
REPOSITORYOCA/account-reconcile
GIT
GIThttps://github.com/OCA/account-reconcile.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/account-reconcile/tree/11.0/account_mass_reconcile
VERSION
VERSION 1.0.1
CATEGORY
CATEGORYFinance
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), Akretion, Camptocamp
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Akretion, Camptocamp
COMMITTERS
COMMITTERSPedro M. Baeza, mreficent, Akim Juillerat, Jordi Ballester Alomar, OCA Transbot, oca-travis, Weblate, OCA-git-bot, mpanarin, Iryna Vyshnevska
WEBSITE
WEBSITEhttps://github.com/OCA/account-reconcile
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:24:01
ODOO DEPENDENCIES
ODOO DEPENDENCIES odoo/odoo:
    - account_invoicing
    - 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 (7)
XML IDNameModelTypeStatus
account_mass_reconcile_form account.mass.reconcile.form account.mass.reconcile form New
account_mass_reconcile_method_tree account.mass.reconcile.method.tree account.mass.reconcile.method tree New
account_mass_reconcile_tree account.mass.reconcile.tree account.mass.reconcile tree New
mass_reconcile_history_form mass.reconcile.history.form mass.reconcile.history form New
mass_reconcile_history_tree mass.reconcile.history.tree mass.reconcile.history tree New
view_account_config account settings res.config.settings xpath Inherits account.res_config_settings_view_form
view_mass_reconcile_history_search mass.reconcile.history.search mass.reconcile.history search New
Models touched (13)

New fields (7)
  • account Many2one → account.account
    required=True string='Account' args: 'account.account'
  • company_id Many2one → res.company
    string='Company' args: 'res.company'
  • history_ids One2many → mass.reconcile.history
    readonly=True string='History' args: 'mass.reconcile.history', 'mass_reconcile_id'
  • last_history Many2one → mass.reconcile.history
    compute='_last_history' readonly=True string='Last history' args: 'mass.reconcile.history'
  • name Char
    required=True string='Name'
  • reconcile_method One2many → account.mass.reconcile.method
    string='Method' args: 'account.mass.reconcile.method', 'task_id'
  • unreconciled_count Integer
    compute='_get_total_unrec' string='Unreconciled Items'
Public methods (4)
  • last_history_reconcile(self)
    Get the last history record for this reconciliation profile and return the action which opens move lines reconciled
  • open_unreconcile(self)
    @api.multi
    Open the view of move line with the unreconciled move lines
  • run_reconcile(self)
    @api.multi
  • run_scheduler(self, run_all=None)
    @api.model
    Launch the reconcile with the oldest run This function is mostly here to be used with cron task :param run_all: if set it will ingore lookup and launch all reconciliation :returns: True in case of success or raises an exception

New fields (4)
  • company_id Many2one → res.company
    readonly=True related='task_id.company_id' store=True string='Company' args: 'res.company'
  • name Selection
    required=True string='Type' args: '_selection_name'
  • sequence Integer
    default=1 help='The sequence field is used to order the reconcile method' required=True string='Sequence'
  • task_id Many2one → account.mass.reconcile
    ondelete='cascade' required=True string='Task' args: 'account.mass.reconcile'
Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (2)
  • account_id Many2one → account.account
    required=True string='Account' args: 'account.account'
  • partner_ids Many2many → res.partner
    comodel_name='res.partner' string='Restrict on partners'
Public methods (1)
  • automatic_reconcile(self)
    @api.multi
    Reconciliation method called from the view. :return: list of reconciled ids

New fields (5)
  • company_id Many2one → res.company
    readonly=True related='mass_reconcile_id.company_id' store=True string='Company' args: 'res.company'
  • date Datetime
    readonly=True required=True string='Run date'
  • mass_reconcile_id Many2one → account.mass.reconcile
    readonly=True string='Reconcile Profile' args: 'account.mass.reconcile'
  • reconcile_ids Many2many → account.full.reconcile
    comodel_name='account.full.reconcile' readonly=True relation='account_full_reconcile_history_rel' string='Full Reconciliations'
  • reconcile_line_ids Many2many → account.move.line
    comodel_name='account.move.line' compute='_get_reconcile_line_ids' relation='account_move_line_history_rel' string='Reconciled Items'
Public methods (1)
  • open_reconcile(self)
    @api.multi
    For an history record, open the view of move line with the reconciled move lines :param history_ids: id of the record as int or long Accept a list with 1 id too to be used from the client.

New fields (8)
  • _filter Char
    oldname='filter' string='Filter'
  • account_lost_id Many2one → account.account
    string='Account Lost' args: 'account.account'
  • account_profit_id Many2one → account.account
    string='Account Profit' args: 'account.account'
  • date_base_on Selection
    default='newest' required=True string='Date of reconciliation' args: '_get_rec_base_date'
  • expense_exchange_account_id Many2one → account.account
    string='Loss Exchange Rate Account' args: 'account.account'
  • income_exchange_account_id Many2one → account.account
    string='Gain Exchange Rate Account' args: 'account.account'
  • journal_id Many2one → account.journal
    string='Journal' args: 'account.journal'
  • write_off Float
    default=0.0 args: 'Write off allowed'
Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (1)
  • rec_auto_lines_simple(self, lines)
    @api.multi

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (1)
  • reconciliation_commit_every Integer
    help='Leave zero to commit only at the end of the process.' string='How often to commit when performing automatic reconciliation.'
Public methods (0)

No public methods.

New fields (1)
  • reconciliation_commit_every Integer
    help='Leave zero to commit only at the end of the process.' related='company_id.reconciliation_commit_every' string='How often to commit when performing automatic reconciliation.'
Public methods (0)

No public methods.

REPOSITORY
REPOSITORYOCA/account-reconcile
GIT
GIThttps://github.com/OCA/account-reconcile.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/account-reconcile/tree/10.0/account_mass_reconcile
VERSION
VERSION 2.0.0
CATEGORY
CATEGORYFinance
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), Akretion, Camptocamp
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Akretion, Camptocamp
COMMITTERS
COMMITTERSPedro M. Baeza, GitHub, mreficent, Akim Juillerat, Stéphane Bidoul (ACSONE), OCA Transbot, Sébastien BEAU, oca-travis, Weblate
WEBSITE
WEBSITEhttp://www.akretion.com/
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:20:01
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 (7)
XML IDNameModelTypeStatus
account_mass_reconcile_form account.mass.reconcile.form account.mass.reconcile form New
account_mass_reconcile_method_tree account.mass.reconcile.method.tree account.mass.reconcile.method tree New
account_mass_reconcile_tree account.mass.reconcile.tree account.mass.reconcile tree New
mass_reconcile_history_form mass.reconcile.history.form mass.reconcile.history form New
mass_reconcile_history_tree mass.reconcile.history.tree mass.reconcile.history tree New
view_account_config account settings account.config.settings group Inherits account.view_account_config_settings
view_mass_reconcile_history_search mass.reconcile.history.search mass.reconcile.history search New
Models touched (13)

New fields (1)
  • reconciliation_commit_every Integer
    help='Leave zero to commit only at the end of the process.' related='company_id.reconciliation_commit_every' string='How often to commit when performing automatic reconciliation.'
Public methods (0)

No public methods.

New fields (7)
  • account Many2one → account.account
    required=True string='Account' args: 'account.account'
  • company_id Many2one → res.company
    string='Company' args: 'res.company'
  • history_ids One2many → mass.reconcile.history
    readonly=True string='History' args: 'mass.reconcile.history', 'mass_reconcile_id'
  • last_history Many2one → mass.reconcile.history
    compute='_last_history' readonly=True string='Last history' args: 'mass.reconcile.history'
  • name Char
    required=True string='Name'
  • reconcile_method One2many → account.mass.reconcile.method
    string='Method' args: 'account.mass.reconcile.method', 'task_id'
  • unreconciled_count Integer
    compute='_get_total_unrec' string='Unreconciled Items'
Public methods (5)
  • last_history_partial_reconcile(self)
    @api.multi
    Get the last history record for this reconciliation profile and return the action which opens move lines reconciled
  • last_history_reconcile(self)
    @api.multi
    Get the last history record for this reconciliation profile and return the action which opens move lines reconciled
  • open_unreconcile(self)
    @api.multi
    Open the view of move line with the unreconciled move lines
  • run_reconcile(self)
    @api.multi
  • run_scheduler(self, run_all=None)
    @api.model
    Launch the reconcile with the oldest run This function is mostly here to be used with cron task :param run_all: if set it will ingore lookup and launch all reconciliation :returns: True in case of success or raises an exception

New fields (4)
  • company_id Many2one → res.company
    readonly=True related='task_id.company_id' store=True string='Company' args: 'res.company'
  • name Selection
    required=True string='Type' args: '_get_rec_method'
  • sequence Integer
    default=1 help='The sequence field is used to order the reconcile method' required=True string='Sequence'
  • task_id Many2one → account.mass.reconcile
    ondelete='cascade' required=True string='Task' args: 'account.mass.reconcile'
Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (2)
  • account_id Many2one → account.account
    required=True string='Account' args: 'account.account'
  • partner_ids Many2many → res.partner
    comodel_name='res.partner' string='Restrict on partners'
Public methods (1)
  • automatic_reconcile(self)
    @api.multi
    Reconciliation method called from the view. :return: list of reconciled ids

New fields (6)
  • company_id Many2one → res.company
    readonly=True related='mass_reconcile_id.company_id' store=True string='Company' args: 'res.company'
  • date Datetime
    readonly=True required=True string='Run date'
  • mass_reconcile_id Many2one → account.mass.reconcile
    readonly=True string='Reconcile Profile' args: 'account.mass.reconcile'
  • partial_reconcile_ids Many2many → account.partial.reconcile
    comodel_name='account.partial.reconcile' readonly=True string='Partial reconciliations'
  • reconcile_ids Many2many → account.full.reconcile
    comodel_name='account.full.reconcile' readonly=True relation='account_full_reconcile_history_rel' string='Full Reconciliations'
  • reconcile_line_ids Many2many → account.move.line
    comodel_name='account.move.line' compute='_get_reconcile_line_ids' relation='account_move_line_history_rel' string='Reconciled Items'
Public methods (2)
  • open_partial_reconcile(self)
    @api.multi
  • open_reconcile(self)
    @api.multi
    For an history record, open the view of move line with the reconciled move lines :param history_ids: id of the record as int or long Accept a list with 1 id too to be used from the client.

New fields (8)
  • account_lost_id Many2one → account.account
    string='Account Lost' args: 'account.account'
  • account_profit_id Many2one → account.account
    string='Account Profit' args: 'account.account'
  • date_base_on Selection
    default='newest' required=True string='Date of reconciliation' args: '_get_rec_base_date'
  • expense_exchange_account_id Many2one → account.account
    string='Loss Exchange Rate Account' args: 'account.account'
  • filter Char
    string='Filter'
  • income_exchange_account_id Many2one → account.account
    string='Gain Exchange Rate Account' args: 'account.account'
  • journal_id Many2one → account.journal
    string='Journal' args: 'account.journal'
  • write_off Float
    default=0.0 args: 'Write off allowed'
Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (1)
  • rec_auto_lines_simple(self, lines)
    @api.multi

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (1)
  • reconciliation_commit_every Integer
    help='Leave zero to commit only at the end of the process.' string='How often to commit when performing automatic reconciliation.'
Public methods (0)

No public methods.

REPOSITORY
REPOSITORYOCA/account-reconcile
GIT
GIThttps://github.com/OCA/account-reconcile.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/account-reconcile/tree/9.0/account_mass_reconcile
VERSION
VERSION 1.0.0
CATEGORY
CATEGORYFinance
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), Akretion, Camptocamp
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Akretion, Camptocamp
COMMITTERS
COMMITTERSMatthieu Dietrich, GitHub, mreficent, Stéphane Bidoul (ACSONE), Jordi Ballester Alomar, OCA Transbot, vrenaville, Florian da Costa, mdietrichc2c, oca-travis, Weblate, lreficent
WEBSITE
WEBSITEhttp://www.akretion.com/
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:15:24
ODOO DEPENDENCIES
ODOO DEPENDENCIES odoo/odoo:
    - account
    - base_setup
    - base
    - web_kanban
    - web
    - product
    - decimal_precision
    - mail
    - bus
    - report
    - analytic
    - web_tip
    - web_planner
    - account_full_reconcile
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (7)
XML IDNameModelTypeStatus
account_mass_reconcile_form account.mass.reconcile.form account.mass.reconcile form New
account_mass_reconcile_method_tree account.mass.reconcile.method.tree account.mass.reconcile.method tree New
account_mass_reconcile_tree account.mass.reconcile.tree account.mass.reconcile tree New
mass_reconcile_history_form mass.reconcile.history.form mass.reconcile.history form New
mass_reconcile_history_tree mass.reconcile.history.tree mass.reconcile.history tree New
view_account_config account settings account.config.settings group Inherits account.view_account_config_settings
view_mass_reconcile_history_search mass.reconcile.history.search mass.reconcile.history search New
Models touched (13)

New fields (1)
  • reconciliation_commit_every Integer
    help='Leave zero to commit only at the end of the process.' related='company_id.reconciliation_commit_every' string='How often to commit when performing automatic reconciliation.'
Public methods (0)

No public methods.

New fields (7)
  • account Many2one → account.account
    required=True string='Account' args: 'account.account'
  • company_id Many2one → res.company
    string='Company' args: 'res.company'
  • history_ids One2many → mass.reconcile.history
    readonly=True string='History' args: 'mass.reconcile.history', 'mass_reconcile_id'
  • last_history Many2one → mass.reconcile.history
    compute='_last_history' readonly=True string='Last history' args: 'mass.reconcile.history'
  • name Char
    required=True string='Name'
  • reconcile_method One2many → account.mass.reconcile.method
    string='Method' args: 'account.mass.reconcile.method', 'task_id'
  • unreconciled_count Integer
    compute='_get_total_unrec' string='Unreconciled Items'
Public methods (4)
  • last_history_reconcile(self)
    @api.multi
    Get the last history record for this reconciliation profile and return the action which opens move lines reconciled
  • open_unreconcile(self)
    @api.multi
    Open the view of move line with the unreconciled move lines
  • run_reconcile(self)
    @api.multi
  • run_scheduler(self, run_all=None)
    @api.model
    Launch the reconcile with the oldest run This function is mostly here to be used with cron task :param run_all: if set it will ingore lookup and launch all reconciliation :returns: True in case of success or raises an exception

New fields (4)
  • company_id Many2one → res.company
    readonly=True related='task_id.company_id' store=True string='Company' args: 'res.company'
  • name Selection
    required=True string='Type' args: '_get_rec_method'
  • sequence Integer
    default=1 help='The sequence field is used to order the reconcile method' required=True string='Sequence'
  • task_id Many2one → account.mass.reconcile
    ondelete='cascade' required=True string='Task' args: 'account.mass.reconcile'
Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (2)
  • account_id Many2one → account.account
    required=True string='Account' args: 'account.account'
  • partner_ids Many2many → res.partner
    comodel_name='res.partner' string='Restrict on partners'
Public methods (1)
  • automatic_reconcile(self)
    @api.multi
    Reconciliation method called from the view. :return: list of reconciled ids

New fields (5)
  • company_id Many2one → res.company
    readonly=True related='mass_reconcile_id.company_id' store=True string='Company' args: 'res.company'
  • date Datetime
    readonly=True required=True string='Run date'
  • mass_reconcile_id Many2one → account.mass.reconcile
    readonly=True string='Reconcile Profile' args: 'account.mass.reconcile'
  • reconcile_ids Many2many → account.full.reconcile
    comodel_name='account.full.reconcile' readonly=True relation='account_full_reconcile_history_rel' string='Full Reconciliations'
  • reconcile_line_ids Many2many → account.move.line
    comodel_name='account.move.line' compute='_get_reconcile_line_ids' relation='account_move_line_history_rel' string='Reconciled Items'
Public methods (1)
  • open_reconcile(self)
    @api.multi
    For an history record, open the view of move line with the reconciled move lines :param history_ids: id of the record as int or long Accept a list with 1 id too to be used from the client.

New fields (9)
  • account_lost_id Many2one → account.account
    string='Account Lost' args: 'account.account'
  • account_profit_id Many2one → account.account
    string='Account Profit' args: 'account.account'
  • analytic_account_id Many2one → account.analytic.account
    string='Analytic account for write-off' args: 'account.analytic.account'
  • date_base_on Selection
    default='newest' required=True string='Date of reconciliation' args: '_get_rec_base_date'
  • expense_exchange_account_id Many2one → account.account
    string='Loss Exchange Rate Account' args: 'account.account'
  • filter Char
    string='Filter'
  • income_exchange_account_id Many2one → account.account
    string='Gain Exchange Rate Account' args: 'account.account'
  • journal_id Many2one → account.journal
    string='Journal' args: 'account.journal'
  • write_off Float
    default=0.0 args: 'Write off allowed'
Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (1)
  • rec_auto_lines_simple(self, lines)
    @api.multi

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (1)
  • reconciliation_commit_every Integer
    help='Leave zero to commit only at the end of the process.' string='How often to commit when performing automatic reconciliation.'
Public methods (0)

No public methods.

STATUS
STATUSOpen migration PR - not merged yet for this version
REPOSITORY
REPOSITORYOCA/account-reconcile
PULL REQUEST
PULL REQUEST[18][MIG] account_mass_reconcile (#969)