Account Invoice Merge

account_invoice_merge
REPOSITORY
REPOSITORYOCA/account-invoicing
GIT
GIThttps://github.com/OCA/account-invoicing.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/account-invoicing/tree/18.0/account_invoice_merge
VERSION
VERSION 1.0.1
CATEGORY
CATEGORYFinance
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), Elico Corp
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Elico Corp
COMMITTERS
COMMITTERSWeblate, OCA-git-bot, François Honoré, oca-ci
WEBSITE
WEBSITEhttps://github.com/OCA/account-invoicing
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 19:30:06
ODOO DEPENDENCIES
ODOO DEPENDENCIES odoo/odoo:
    - account
    - base_setup
    - base
    - web
    - onboarding
    - product
    - mail
    - bus
    - web_tour
    - html_editor
    - 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 module adds an action in the invoices list to merge invoices. Here
are the conditions to allow merging:

- Type should be the same (Customer Invoice, Supplier Invoice, Customer
  Refund or Supplier Refund)
- Partner should be the same
- Currency should be the same
- Account receivable account should be the same

Code Analysis

Views touched (1)
XML IDNameModelTypeStatus
view_invoice_merge Merger Partner Invoice invoice.merge form New
Models touched (2)

New fields (0)

No new fields.

Public methods (4)
  • do_merge(self, keep_references=True, date_invoice=False, remove_empty_invoice_lines=True)
    To merge similar type of account invoices. Invoices will only be merged if: * Account invoices are in draft * Account invoices belong to the same partner * Account invoices are have same company, partner, address, currency, journal, currency, salesman, account, type Lines will only be merged if: * Invoice lines are exactly the same except for the quantity and unit @param self: The object pointer. @param keep_references: If True, keep reference of original invoices @return: new account invoice id
  • make_key(self, br, fields)
    Return a hashable key
  • merge_callback(self, invoices_info, old_invoices)
    @api.model
  • order_line_update_invoice_lines(todos, all_old_inv_line)
    @staticmethod

New fields (3)
  • date_invoice Date
    args: 'Invoice Date'
  • error_message Text
  • keep_references Boolean
    default=True args: 'Keep references from original invoices'
Public methods (2)
  • default_get(self, default_fields)
    @api.model
    If we're creating a new account through a many2one, there are chances that we typed the account code instead of its name. In that case, switch both fields values.
  • merge_invoices(self)
    To merge similar type of account invoices. @param self: The object pointer. @return: account invoice action
REPOSITORY
REPOSITORYOCA/account-invoicing
GIT
GIThttps://github.com/OCA/account-invoicing.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/account-invoicing/tree/16.0/account_invoice_merge
VERSION
VERSION 1.0.1
CATEGORY
CATEGORYFinance
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), Elico Corp
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Elico Corp
COMMITTERS
COMMITTERSWeblate, OCA-git-bot, Rodrigo, oca-ci, Minh Chien
WEBSITE
WEBSITEhttps://github.com/OCA/account-invoicing
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:53:52
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 (1)
XML IDNameModelTypeStatus
view_invoice_merge Merger Partner Invoice invoice.merge form New
Models touched (2)

New fields (0)

No new fields.

Public methods (4)
  • do_merge(self, keep_references=True, date_invoice=False, remove_empty_invoice_lines=True)
    To merge similar type of account invoices. Invoices will only be merged if: * Account invoices are in draft * Account invoices belong to the same partner * Account invoices are have same company, partner, address, currency, journal, currency, salesman, account, type Lines will only be merged if: * Invoice lines are exactly the same except for the quantity and unit @param self: The object pointer. @param keep_references: If True, keep reference of original invoices @return: new account invoice id
  • make_key(self, br, fields)
    Return a hashable key
  • merge_callback(self, invoices_info, old_invoices)
    @api.model
  • order_line_update_invoice_lines(todos, all_old_inv_line)
    @staticmethod

New fields (3)
  • date_invoice Date
    args: 'Invoice Date'
  • error_message Text
  • keep_references Boolean
    default=True args: 'Keep references from original invoices'
Public methods (2)
  • default_get(self, default_fields)
    @api.model
    If we're creating a new account through a many2one, there are chances that we typed the account code instead of its name. In that case, switch both fields values.
  • merge_invoices(self)
    To merge similar type of account invoices. @param self: The object pointer. @return: account invoice action
REPOSITORY
REPOSITORYOCA/account-invoicing
GIT
GIThttps://github.com/OCA/account-invoicing.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/account-invoicing/tree/15.0/account_invoice_merge
VERSION
VERSION 1.0.0
CATEGORY
CATEGORYFinance
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), Elico Corp
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Elico Corp
COMMITTERS
COMMITTERSWeblate, oca-ci, Freni Patel
WEBSITE
WEBSITEhttps://github.com/OCA/account-invoicing
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:46:38
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 (1)
XML IDNameModelTypeStatus
view_invoice_merge Merger Partner Invoice invoice.merge form New
Models touched (2)

New fields (0)

No new fields.

Public methods (1)
  • do_merge(self, keep_references=True, date_invoice=False, remove_empty_invoice_lines=True)
    To merge similar type of account invoices. Invoices will only be merged if: * Account invoices are in draft * Account invoices belong to the same partner * Account invoices are have same company, partner, address, currency, journal, currency, salesman, account, type Lines will only be merged if: * Invoice lines are exactly the same except for the quantity and unit @param self: The object pointer. @param keep_references: If True, keep reference of original invoices @return: new account invoice id

New fields (2)
  • date_invoice Date
    args: 'Invoice Date'
  • keep_references Boolean
    default=True args: 'Keep references from original invoices'
Public methods (2)
  • fields_view_get(self, view_id=None, view_type='form', toolbar=False, submenu=False)
    @api.model
    Changes the view dynamically @param self: The object pointer. @return: New arch of view.
  • merge_invoices(self)
    To merge similar type of account invoices. @param self: The object pointer. @return: account invoice action
REPOSITORY
REPOSITORYOCA/account-invoicing
GIT
GIThttps://github.com/OCA/account-invoicing.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/account-invoicing/tree/14.0/account_invoice_merge
VERSION
VERSION 1.0.1
CATEGORY
CATEGORYFinance
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), Elico Corp
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Elico Corp
COMMITTERS
COMMITTERSOCA Transbot, Weblate, oca-ci, Xavier Bouquiaux
WEBSITE
WEBSITEhttps://github.com/OCA/account-invoicing
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:41:05
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 (1)
XML IDNameModelTypeStatus
view_invoice_merge Merger Partner Invoice invoice.merge form New
Models touched (2)

New fields (0)

No new fields.

Public methods (1)
  • do_merge(self, keep_references=True, date_invoice=False, remove_empty_invoice_lines=True)
    To merge similar type of account invoices. Invoices will only be merged if: * Account invoices are in draft * Account invoices belong to the same partner * Account invoices are have same company, partner, address, currency, journal, currency, salesman, account, move_type Lines will only be merged if: * Invoice lines are exactly the same except for the quantity and unit @param self: The object pointer. @param keep_references: If True, keep reference of original invoices @return: new account invoice id

New fields (2)
  • date_invoice Date
    args: 'Invoice Date'
  • keep_references Boolean
    default=True args: 'Keep references from original invoices'
Public methods (2)
  • fields_view_get(self, view_id=None, view_type='form', toolbar=False, submenu=False)
    @api.model
    Changes the view dynamically @param self: The object pointer. @param cr: A database cursor @param uid: ID of the user currently logged in @param context: A standard dictionary @return: New arch of view.
  • merge_invoices(self)
    To merge similar type of account invoices. @param self: The object pointer. @param cr: A database cursor @param uid: ID of the user currently logged in @param ids: the ID or list of IDs @param context: A standard dictionary @return: account invoice action
REPOSITORY
REPOSITORYOCA/account-invoicing
GIT
GIThttps://github.com/OCA/account-invoicing.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/account-invoicing/tree/12.0/account_invoice_merge
VERSION
VERSION 1.0.3
CATEGORY
CATEGORYFinance
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), Elico Corp
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Elico Corp
COMMITTERS
COMMITTERSSylvain LE GAL, OCA Transbot, oca-travis, Weblate, OCA-git-bot, Sylvain Van Hoof, sergiocorato, Mourad
WEBSITE
WEBSITEhttps://github.com/OCA/account-invoicing
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:29:21
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 (1)
XML IDNameModelTypeStatus
view_invoice_merge Merger Partner Invoice invoice.merge form New
Models touched (2)

New fields (0)

No new fields.

Public methods (1)
  • do_merge(self, keep_references=True, date_invoice=False, remove_empty_invoice_lines=True)
    @api.multi
    To merge similar type of account invoices. Invoices will only be merged if: * Account invoices are in draft * Account invoices belong to the same partner * Account invoices are have same company, partner, address, currency, journal, currency, salesman, account, type Lines will only be merged if: * Invoice lines are exactly the same except for the quantity and unit @param self: The object pointer. @param keep_references: If True, keep reference of original invoices @return: new account invoice id

New fields (2)
  • date_invoice Date
    args: 'Invoice Date'
  • keep_references Boolean
    default=True args: 'Keep references from original invoices'
Public methods (2)
  • fields_view_get(self, view_id=None, view_type='form', toolbar=False, submenu=False)
    @api.model
    Changes the view dynamically @param self: The object pointer. @param cr: A database cursor @param uid: ID of the user currently logged in @param context: A standard dictionary @return: New arch of view.
  • merge_invoices(self)
    @api.multi
    To merge similar type of account invoices. @param self: The object pointer. @param cr: A database cursor @param uid: ID of the user currently logged in @param ids: the ID or list of IDs @param context: A standard dictionary @return: account invoice action
REPOSITORY
REPOSITORYOCA/account-invoicing
GIT
GIThttps://github.com/OCA/account-invoicing.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/account-invoicing/tree/10.0/account_invoice_merge
VERSION
VERSION 1.0.1
CATEGORY
CATEGORYFinance
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), Elico Corp
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Elico Corp
COMMITTERS
COMMITTERSArnaud Pineux, Pedro M. Baeza, GitHub, Cédric Pigeon, mreficent, Stéphane Bidoul (ACSONE), OCA Transbot, oca-travis, Weblate, Eric @ Elico Corp, Benoit Aimont
WEBSITE
WEBSITEhttp://www.openerp.net.cn
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:19:59
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 (1)
XML IDNameModelTypeStatus
view_invoice_merge Merger Partner Invoice invoice.merge form New
Models touched (2)

New fields (0)

No new fields.

Public methods (1)
  • do_merge(self, keep_references=True, date_invoice=False, remove_empty_invoice_lines=True)
    @api.multi
    To merge similar type of account invoices. Invoices will only be merged if: * Account invoices are in draft * Account invoices belong to the same partner * Account invoices are have same company, partner, address, currency, journal, currency, salesman, account, type Lines will only be merged if: * Invoice lines are exactly the same except for the quantity and unit @param self: The object pointer. @param keep_references: If True, keep reference of original invoices @return: new account invoice id

New fields (2)
  • date_invoice Date
    args: 'Invoice Date'
  • keep_references Boolean
    default=True args: 'Keep references from original invoices'
Public methods (2)
  • fields_view_get(self, view_id=None, view_type='form', toolbar=False, submenu=False)
    @api.model
    Changes the view dynamically @param self: The object pointer. @param cr: A database cursor @param uid: ID of the user currently logged in @param context: A standard dictionary @return: New arch of view.
  • merge_invoices(self)
    @api.multi
    To merge similar type of account invoices. @param self: The object pointer. @param cr: A database cursor @param uid: ID of the user currently logged in @param ids: the ID or list of IDs @param context: A standard dictionary @return: account invoice action
REPOSITORY
REPOSITORYOCA/account-invoicing
GIT
GIThttps://github.com/OCA/account-invoicing.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/account-invoicing/tree/9.0/account_invoice_merge
VERSION
VERSION 1.0.2
CATEGORY
CATEGORYFinance
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), Elico Corp
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Elico Corp
COMMITTERS
COMMITTERSPedro M. Baeza, GitHub, Stéphane Bidoul (ACSONE), OCA Transbot, oca-travis, Weblate, OCA-git-bot, Isaac Gallart Bochons
WEBSITE
WEBSITEhttps://github.com/OCA/account-invoicing/
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:15:22
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 (1)
XML IDNameModelTypeStatus
view_invoice_merge Merger Partner Invoice invoice.merge form New
Models touched (2)

New fields (0)

No new fields.

Public methods (1)
  • do_merge(self, keep_references=True, date_invoice=False, remove_empty_invoice_lines=True)
    @api.multi
    To merge similar type of account invoices. Invoices will only be merged if: * Account invoices are in draft * Account invoices belong to the same partner * Account invoices are have same company, partner, address, currency, journal, currency, salesman, account, type Lines will only be merged if: * Invoice lines are exactly the same except for the quantity and unit @param self: The object pointer. @param keep_references: If True, keep reference of original invoices @return: new account invoice id

New fields (2)
  • date_invoice Date
    args: 'Invoice Date'
  • keep_references Boolean
    default=True args: 'Keep references from original invoices'
Public methods (2)
  • fields_view_get(self, view_id=None, view_type='form', toolbar=False, submenu=False)
    @api.model
    Changes the view dynamically @param self: The object pointer. @param cr: A database cursor @param uid: ID of the user currently logged in @param context: A standard dictionary @return: New arch of view.
  • merge_invoices(self)
    @api.multi
    To merge similar type of account invoices. @param self: The object pointer. @param cr: A database cursor @param uid: ID of the user currently logged in @param ids: the ID or list of IDs @param context: A standard dictionary @return: account invoice action
REPOSITORY
REPOSITORYOCA/account-invoicing
GIT
GIThttps://github.com/OCA/account-invoicing.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/account-invoicing/tree/8.0/account_invoice_merge
VERSION
VERSION 2.0.1
CATEGORY
CATEGORYFinance
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSTecnativa, Odoo Community Association (OCA), Noviat, Elico Corp, ACSONE A/V
MAINTAINERS
MAINTAINERSTecnativa, Odoo Community Association (OCA), Noviat, Elico Corp, ACSONE A/V
COMMITTERS
COMMITTERSStéphane Bidoul, Yannick Vaucher, Alexandre Fayolle, Ronald Portier, Holger Brunn, Pedro M. Baeza, GitHub, Cédric Pigeon, Stéphane Bidoul (ACSONE), Alex Comba, OCA Transbot, Adrien Peiffer (ACSONE), oca-travis, Weblate, OCA-git-bot, Javier Iniesta, Matjaž Mozetič, Tom Blauwendraat
WEBSITE
WEBSITEhttp://www.openerp.net.cn
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:11:24
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 (1)
XML IDNameModelTypeStatus
view_invoice_merge Merger Partner Invoice invoice.merge form New
Models touched (2)

New fields (0)

No new fields.

Public methods (1)
  • do_merge(self, keep_references=True, date_invoice=False)
    @api.multi
    To merge similar type of account invoices. Invoices will only be merged if: * Account invoices are in draft * Account invoices belong to the same partner * Account invoices are have same company, partner, address, currency, journal, currency, salesman, account, type Lines will only be merged if: * Invoice lines are exactly the same except for the quantity and unit @param self: The object pointer. @param keep_references: If True, keep reference of original invoices @return: new account invoice id

New fields (2)
  • date_invoice Date
    args: 'Invoice Date'
  • keep_references Boolean
    default=True string='Keep references from original invoices'
Public methods (2)
  • fields_view_get(self, view_id=None, view_type='form', toolbar=False, submenu=False)
    @api.model
    Changes the view dynamically @param self: The object pointer. @param cr: A database cursor @param uid: ID of the user currently logged in @param context: A standard dictionary @return: New arch of view.
  • merge_invoices(self)
    @api.multi
    To merge similar type of account invoices. @param self: The object pointer. @param cr: A database cursor @param uid: ID of the user currently logged in @param ids: the ID or list of IDs @param context: A standard dictionary @return: account invoice action
REPOSITORY
REPOSITORYOCA/account-invoicing
GIT
GIThttps://github.com/OCA/account-invoicing.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/account-invoicing/tree/7.0/account_invoice_merge
VERSION
VERSION 1.1.1
CATEGORY
CATEGORYFinance
LICENSE
LICENSELGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), Elico Corp
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Elico Corp
COMMITTERS
COMMITTERShelp, Yannick Vaucher, Romain Deheele, Guewen Baconnier, Alexandre Fayolle, Laetitia Gangloff (Acsone), Laetitia Gangloff, Stefan Rijnhart, Pedro M. Baeza, Stéphane Bidoul (ACSONE), unknown, Alex Comba, Launchpad Translations on behalf of account-core-editors, OCA Transbot, Rudolf Schnapka, moylop260, Loïc Faure-Lacroix, Daniel Dico
WEBSITE
WEBSITEhttp://www.openerp.net.cn
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:07:15
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
This module adds an action in the invoices lists to merge of invoices. Here are
the condition to allow merge:

- Type should be the same (customer Invoice, supplier invoice, Customer or
  Supplier Refund)
- Partner should be the same
- Currency should be the same
- Account receivable account should be the same
    

Code Analysis

Views touched (1)
XML IDNameModelTypeStatus
view_invoice_merge Merger Partner Invoice invoice.merge form New
Models touched (2)

New fields (0)

No new fields.

Public methods (1)
  • do_merge(self, cr, uid, ids, context=None)
    To merge similar type of account invoices. Invoices will only be merged if: * Account invoices are in draft * Account invoices belong to the same partner * Account invoices are have same company, partner, address, currency, journal, currency, salesman, account, type Lines will only be merged if: * Invoice lines are exactly the same except for the quantity and unit @param self: The object pointer. @param cr: A database cursor @param uid: ID of the user currently logged in @param ids: the ID or list of IDs @param context: A standard dictionary @return: new account invoice id

New fields (0)

No new fields.

Public methods (2)
  • fields_view_get(self, cr, uid, view_id=None, view_type='form', context=None, toolbar=False, submenu=False)
    Changes the view dynamically @param self: The object pointer. @param cr: A database cursor @param uid: ID of the user currently logged in @param context: A standard dictionary @return: New arch of view.
  • merge_invoices(self, cr, uid, ids, context=None)
    To merge similar type of account invoices. @param self: The object pointer. @param cr: A database cursor @param uid: ID of the user currently logged in @param ids: the ID or list of IDs @param context: A standard dictionary @return: account invoice view
REPOSITORY
REPOSITORYOCA/account-invoicing
GIT
GIThttps://github.com/OCA/account-invoicing.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/account-invoicing/tree/6.1/account_invoice_merge
VERSION
VERSION 1.2
CATEGORY
CATEGORYFinance
LICENSE
LICENSELGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), Camptocamp
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Camptocamp
COMMITTERS
COMMITTERSAlexandre Fayolle, Leonardo Pistone, Holger Brunn, Launchpad Translations on behalf of account-core-editors
WEBSITE
WEBSITEhttp://www.camptocamp.com
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:04:06
ODOO DEPENDENCIES
ODOO DEPENDENCIES odoo/odoo:
    - base
    - account
    - base_setup
    - 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 in the invoices lists to merge of invoices. Here are
the conditions to allow the merge:
- Type should be the same (customer Invoice, supplier invoice, Customer or
  Supplier Refund)
- Partner should be the same
- Currency should be the same
- Account receivable account should be the same
No merge is done at invoice line level.
    

Code Analysis

Views touched (1)
XML IDNameModelTypeStatus
view_invoice_merge Merger Partner Invoice invoice.merge form New
Models touched (2)

New fields (0)

No new fields.

Public methods (1)
  • do_merge(self, cr, uid, ids, context=None)
    To merge similar type of account invoices. Invoices will only be merged if: * Account invoices are in draft * Account invoices belong to the same partner * Account invoices are have same company, partner, currency, journal, currency, salesman, account, type Lines will only be merged if: * Invoice lines are exactly the same except for the quantity and unit @param self: The object pointer. @param cr: A database cursor @param uid: ID of the user currently logged in @param ids: the ID or list of IDs @param context: A standard dictionary @return: new account invoice id

New fields (0)

No new fields.

Public methods (2)
  • fields_view_get(self, cr, uid, view_id=None, view_type='form', context=None, toolbar=False, submenu=False)
    Changes the view dynamically @param self: The object pointer. @param cr: A database cursor @param uid: ID of the user currently logged in @param context: A standard dictionary @return: New arch of view.
  • merge_invoices(self, cr, uid, _ids, context=None)
    To merge similar type of account invoices. @param self: The object pointer. @param cr: A database cursor @param uid: ID of the user currently logged in @param ids: the ID or list of IDs @param context: A standard dictionary @return: account invoice view
STATUS
STATUSOpen migration PR - not merged yet for this version
REPOSITORY
REPOSITORYOCA/account-invoicing
PULL REQUEST
PULL REQUEST[17.0][MIG] account_invoice_merge: Migration to 17.0 (#1632)
STATUS
STATUSOpen migration PR - not merged yet for this version
REPOSITORY
REPOSITORYOCA/account-invoicing
PULL REQUEST
PULL REQUEST[19.0][MIG] account_invoice_merge: Migration to 19.0 (#2295)