Bank Statement Operation Rules

account_statement_operation_rule
REPOSITORY
REPOSITORYOCA/account-reconcile
GIT
GIThttps://github.com/OCA/account-reconcile.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/account-reconcile/tree/8.0/account_statement_operation_rule
VERSION
VERSION 1.0.0
CATEGORY
CATEGORYAccounting & Finance
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSCamptocamp
MAINTAINERS
MAINTAINERSCamptocamp
COMMITTERS
COMMITTERSGuewen Baconnier, Stéphane Bidoul (ACSONE), OCA Transbot, oca-travis, Weblate, OCA-git-bot
WEBSITE
WEBSITEhttp://www.camptocamp.com
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:11:26
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
assets_backend account assets ir.ui.view qweb Inherits account.assets_backend
view_account_statement_operation_rule_form account.statement.operation.rule.form account.statement.operation.rule form New
view_account_statement_operation_rule_search account.statement.operation.rule.search account.statement.operation.rule search New
view_account_statement_operation_rule_tree account.statement.operation.rule.tree account.statement.operation.rule tree New
Models touched (2)

New fields (0)

No new fields.

Public methods (1)
  • currency_for_rules(self)
    @api.multi

New fields (7)
  • amount_max Float
    digits=dp.get_precision('Account') string='Max. Amount'
  • amount_min Float
    digits=dp.get_precision('Account') string='Min. Amount'
  • currencies Many2many → res.currency
    comodel_name='res.currency' help="For 'Currencies' rules, you can choose for which currencies the rule will be applicable." string='Currencies'
  • name Char
  • operations Many2many → account.statement.operation.template
    comodel_name='account.statement.operation.template' relation='account_statement_oper_rule_rel'
  • rule_type Selection
    default='rounding' required=True selection=[('rounding', 'Roundings'), ('currency', 'Currencies')] string='Type'
  • sequence Integer
    default=20 help='If several rules match, the first one is used.'
Public methods (3)
  • find_first_rule(self, statement_line, move_lines)
    @api.model
    Find the rules that apply to a statement line and a selection of move lines. :param statement_line: the line to reconcile :param move_lines: the selected move lines for reconciliation
  • is_valid(self, statement_line, move_lines, balance)
    @api.multi
    Returns True if a rule applies to a group of statement_line + move lines. This is the public method where the rule is evaluated whatever its type is. When a rule returns True, it means that it is a candidate for the current reconciliation. The rule with the lowest number in the ``sequence`` field is chosen. :param statement_line: the line to reconcile :param move_lines: the selected move lines for reconciliation :param balance: the balance between the statement_line and the move_lines. It could be computed here but it is computed before to avoid to compute it for each rule when called on multiple rules.
  • operations_for_reconciliation(self, statement_line_id, move_line_ids)
    @api.model@api.returns('account.statement.operation.template')
    Find the rule for the current reconciliation and returns the ``account.statement.operation.template`` of the found rule. Called from the javascript reconciliation view.