Account Payment Batch Processing

account_payment_batch_process
REPOSITORY
REPOSITORYOCA/account-payment
GIT
GIThttps://github.com/OCA/account-payment.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/account-payment/tree/16.0/account_payment_batch_process
VERSION
VERSION 1.0.1
CATEGORY
CATEGORYExtra
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), Open Source Integrators
MAINTAINERS
MAINTAINERSOpen Source Integrators
COMMITTERS
COMMITTERSJordi Ballester Alomar, Weblate, OCA-git-bot, oca-ci, Robin Keunen
WEBSITE
WEBSITEhttps://github.com/OCA/account-payment
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:53:56
ODOO DEPENDENCIES
ODOO DEPENDENCIES OCA/bank-payment:
    - account_payment_order
    - account_payment_partner
    - account_payment_mode
odoo/odoo:
    - account_check_printing
    - account
    - base_setup
    - base
    - web
    - product
    - mail
    - bus
    - web_tour
    - uom
    - analytic
    - portal
    - web_editor
    - http_routing
    - auth_signup
    - digest
    - resource
    - base_iban
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES num2words
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (3)
XML IDNameModelTypeStatus
batch_move_supplier_tree account.move.batch.supplier.tree account.move field Inherits account.view_in_invoice_tree
view_account_payment_from_invoices_batch_inherited account.payment.register.wizard.batch.inherited account.payment.register xpath Inherits account.view_account_payment_register_form
view_account_payment_tree_nocreate account.payment.tree.nocreate account.payment tree New
Models touched (3)

New fields (5)
  • cheque_amount Float
    compute='_compute_cheque_amount' readonly=False required=True store=True args: 'Batch Payment Total'
  • invoice_payments One2many → invoice.payment.line
    string='Payments' args: 'invoice.payment.line', 'wizard_id'
  • is_auto_fill Char
    string='Auto-Fill Pay Amount'
  • is_customer Boolean
    string='Is Customer?'
  • total_amount Float
    compute='_compute_total' args: 'Total Invoices:'
Public methods (13)
  • auto_fill_payments(self)
  • default_get(self, fields_list)
    @api.model
  • get_amount(self, memo, group_data, line)
  • get_batch_payment_amount(self, invoice=None, payment_date=None)
  • get_invoice_payment_line(self, invoice)
  • get_invoice_payments(self, invoices)
  • get_invoice_payments_remaining_amount(self, remaining_amount, count)
  • get_memo(self, memo, group_data, partner_id, data_get)
  • get_payment_invoice_value(self, name, data_get)
  • get_payment_values(self, group_data=None)
  • make_payments(self)
  • total_amount_in_words(self, data_get, old_total=0)
  • update_group_pay_data(self, partner_id, group_data, data_get, check_amount_in_words)

New fields (11)
  • amount Float
    required=True
  • balance Float
    required=True args: 'Balance Amount'
  • check_amount_in_words Char
    string='Amount in Words'
  • invoice_id Many2one → account.move
    required=True string='Supplier Invoice' args: 'account.move'
  • note Text
  • partner_id Many2one → res.partner
    required=True string='Supplier Name' args: 'res.partner'
  • payment_difference Float
    compute='_compute_payment_difference' string='Difference Amount'
  • payment_difference_handling Selection
    copy=False default='open' string='Action' args: [('open', 'Keep open'), ('reconcile', 'Mark invoice as fully paid')]
  • reason_code Many2one → payment.adjustment.reason
    args: 'payment.adjustment.reason'
  • wizard_id Many2one → account.payment.register
    string='Wizard' args: 'account.payment.register'
  • writeoff_account_id Many2one → account.account
    copy=False domain=[('deprecated', '!=', True)] string='Account' args: 'account.account'
Public methods (0)

No public methods.

New fields (3)
  • account_id Many2one → account.account
    args: 'account.account'
  • code Char
    copy=False required=True
  • reason Text
    copy=False
Public methods (1)
  • name_get(self)
REPOSITORY
REPOSITORYOCA/account-payment
GIT
GIThttps://github.com/OCA/account-payment.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/account-payment/tree/15.0/account_payment_batch_process
VERSION
VERSION 1.0.0
CATEGORY
CATEGORYExtra
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), Open Source Integrators
MAINTAINERS
MAINTAINERSOpen Source Integrators
COMMITTERS
COMMITTERSDenis Leemann, Weblate, OCA-git-bot, oca-ci, cyrilmanuel
WEBSITE
WEBSITEhttps://github.com/OCA/account-payment
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:46:41
ODOO DEPENDENCIES
ODOO DEPENDENCIES OCA/bank-payment:
    - account_payment_order
    - account_payment_partner
    - account_payment_mode
odoo/odoo:
    - account_check_printing
    - account
    - base_setup
    - base
    - web
    - product
    - mail
    - bus
    - web_tour
    - uom
    - analytic
    - portal
    - web_editor
    - http_routing
    - auth_signup
    - digest
    - resource
    - base_iban
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES num2words
lxml
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (3)
XML IDNameModelTypeStatus
batch_move_supplier_tree account.move.batch.supplier.tree account.move field Inherits account.view_in_invoice_tree
view_account_payment_from_invoices_batch_inherited account.payment.register.wizard.batch.inherited account.payment.register xpath Inherits account.view_account_payment_register_form
view_account_payment_tree_nocreate account.payment.tree.nocreate account.payment tree New
Models touched (3)

New fields (5)
  • cheque_amount Float
    compute='_compute_cheque_amount' readonly=False required=True store=True args: 'Batch Payment Total'
  • invoice_payments One2many → invoice.payment.line
    string='Payments' args: 'invoice.payment.line', 'wizard_id'
  • is_auto_fill Char
    string='Auto-Fill Pay Amount'
  • is_customer Boolean
    string='Is Customer?'
  • total_amount Float
    compute='_compute_total' args: 'Total Invoices:'
Public methods (13)
  • auto_fill_payments(self)
  • default_get(self, fields_list)
    @api.model
  • get_amount(self, memo, group_data, line)
  • get_batch_payment_amount(self, invoice=None, payment_date=None)
  • get_invoice_payment_line(self, invoice)
  • get_invoice_payments(self, invoices)
  • get_invoice_payments_remaining_amount(self, remaining_amount, count)
  • get_memo(self, memo, group_data, partner_id, data_get)
  • get_payment_invoice_value(self, name, data_get)
  • get_payment_values(self, group_data=None)
  • make_payments(self)
  • total_amount_in_words(self, data_get, old_total=0)
  • update_group_pay_data(self, partner_id, group_data, data_get, check_amount_in_words)

New fields (11)
  • amount Float
    required=True
  • balance Float
    required=True args: 'Balance Amount'
  • check_amount_in_words Char
    string='Amount in Words'
  • invoice_id Many2one → account.move
    required=True string='Supplier Invoice' args: 'account.move'
  • note Text
  • partner_id Many2one → res.partner
    required=True string='Supplier Name' args: 'res.partner'
  • payment_difference Float
    compute='_compute_payment_difference' string='Difference Amount'
  • payment_difference_handling Selection
    copy=False default='open' string='Action' args: [('open', 'Keep open'), ('reconcile', 'Mark invoice as fully paid')]
  • reason_code Many2one → payment.adjustment.reason
    args: 'payment.adjustment.reason'
  • wizard_id Many2one → account.payment.register
    string='Wizard' args: 'account.payment.register'
  • writeoff_account_id Many2one → account.account
    copy=False domain=[('deprecated', '!=', True)] string='Account' args: 'account.account'
Public methods (0)

No public methods.

New fields (3)
  • account_id Many2one → account.account
    args: 'account.account'
  • code Char
    copy=False required=True
  • reason Text
    copy=False
Public methods (1)
  • name_get(self)
REPOSITORY
REPOSITORYOCA/account-payment
GIT
GIThttps://github.com/OCA/account-payment.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/account-payment/tree/14.0/account_payment_batch_process
VERSION
VERSION 1.2.0
CATEGORY
CATEGORYExtra
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), Open Source Integrators
MAINTAINERS
MAINTAINERSOpen Source Integrators
COMMITTERS
COMMITTERSoca-travis, Weblate, OCA-git-bot, oca-ci, Murtuza Saleh, Giovanni, oca-git-bot
WEBSITE
WEBSITEhttps://github.com/OCA/account-payment
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:41:09
ODOO DEPENDENCIES
ODOO DEPENDENCIES OCA/bank-payment:
    - account_payment_order
    - account_payment_partner
    - account_payment_mode
odoo/odoo:
    - account_check_printing
    - account
    - base_setup
    - base
    - web
    - product
    - mail
    - bus
    - web_tour
    - uom
    - analytic
    - portal
    - web_editor
    - http_routing
    - auth_signup
    - digest
    - resource
    - base_iban
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES num2words
lxml
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (3)
XML IDNameModelTypeStatus
batch_move_supplier_tree account.move.batch.supplier.tree account.move field Inherits account.view_in_invoice_tree
view_account_payment_from_invoices_batch_inherited account.payment.register.wizard.batch.inherited account.payment.register xpath Inherits account.view_account_payment_register_form
view_account_payment_tree_nocreate account.payment.tree.nocreate account.payment tree New
Models touched (3)

New fields (6)
  • cheque_amount Float
    compute='_compute_cheque_amount' readonly=False required=True store=True args: 'Batch Payment Total'
  • group_by_partner Boolean
    default=False help='Enable grouping payments by partner' string='Group By Partner'
  • invoice_payments One2many → invoice.payment.line
    string='Payments' args: 'invoice.payment.line', 'wizard_id'
  • is_auto_fill Char
    string='Auto-Fill Pay Amount'
  • is_customer Boolean
    string='Is Customer?'
  • total_amount Float
    compute='_compute_total' args: 'Total Invoices:'
Public methods (13)
  • auto_fill_payments(self)
  • default_get(self, fields_list)
    @api.model
  • get_amount(self, memo, group_data, line)
  • get_batch_payment_amount(self, invoice=None, payment_date=None)
  • get_invoice_payment_line(self, invoice)
  • get_invoice_payments(self, invoices)
  • get_invoice_payments_remaining_amount(self, remaining_amount, count)
  • get_memo(self, memo, group_data, partner_id, data_get)
  • get_payment_invoice_value(self, name, data_get)
  • get_payment_values(self, group_data=None)
  • make_payments(self)
  • total_amount_in_words(self, data_get, old_total=0)
  • update_group_pay_data(self, group_id, group_data, data_get, check_amount_in_words)

New fields (11)
  • amount Float
    required=True args: 'Amount'
  • balance Float
    required=True args: 'Balance Amount'
  • check_amount_in_words Char
    string='Amount in Words'
  • invoice_id Many2one → account.move
    required=True string='Supplier Invoice' args: 'account.move'
  • note Text
    args: 'Note'
  • partner_id Many2one → res.partner
    required=True string='Supplier Name' args: 'res.partner'
  • payment_difference Float
    compute='_compute_payment_difference' string='Difference Amount'
  • payment_difference_handling Selection
    copy=False default='open' string='Action' args: [('open', 'Keep open'), ('reconcile', 'Mark invoice as fully paid')]
  • reason_code Many2one → payment.adjustment.reason
    string='Reason Code' args: 'payment.adjustment.reason'
  • wizard_id Many2one → account.payment.register
    string='Wizard' args: 'account.payment.register'
  • writeoff_account_id Many2one → account.account
    copy=False domain=[('deprecated', '!=', True)] string='Account' args: 'account.account'
Public methods (0)

No public methods.

New fields (3)
  • account_id Many2one → account.account
    string='Account' args: 'account.account'
  • code Char
    copy=False required=True string='Code'
  • reason Text
    copy=False string='Reason'
Public methods (1)
  • name_get(self)
REPOSITORY
REPOSITORYOCA/account-payment
GIT
GIThttps://github.com/OCA/account-payment.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/account-payment/tree/11.0/account_payment_batch_process
VERSION
VERSION 1.0.0
CATEGORY
CATEGORYGeneric Modules/Payment
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), Open Source Integrators
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Open Source Integrators
COMMITTERS
COMMITTERSOCA Transbot, oca-travis, OCA-git-bot, Murtuza Saleh
WEBSITE
WEBSITEhttps://github.com/OCA/account-payment
LAST TRACKING UPDATE
LAST TRACKING UPDATE2026-07-06 00:24:01
ODOO DEPENDENCIES
ODOO DEPENDENCIES odoo/odoo:
    - account_check_printing
    - account
    - base_setup
    - base
    - web
    - product
    - decimal_precision
    - mail
    - bus
    - web_tour
    - analytic
    - web_planner
    - portal
    - http_routing
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (4)
XML IDNameModelTypeStatus
batch_invoice_supplier_tree account.invoice.batch.supplier.tree account.invoice field Inherits account.invoice_supplier_tree
view_account_payment_from_invoices_batch_inherited account.register.payments.wizard.batch.inherited account.register.payments xpath Inherits account.view_account_payment_from_invoices
view_account_payment_from_invoices_inherited_batch account.register.payments.form.inherited.batch account.register.payments xpath Inherits account_check_printing.view_account_payment_from_invoices_inherited
view_account_supplier_payment_tree_nocreate account.supplier.payment.tree.nocreate account.payment tree New
Models touched (4)

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (7)
  • cheque_amount Float
    default=0.0 required=True args: 'Check Amount'
  • invoice_customer_payments One2many → invoice.customer.payment.line
    string='Receipts' args: 'invoice.customer.payment.line', 'wizard_id'
  • invoice_payments One2many → invoice.payment.line
    string='Payments' args: 'invoice.payment.line', 'wizard_id'
  • is_auto_fill Char
    string='Auto-Fill Pay Amount'
  • is_customer Boolean
    string='Is Customer?'
  • total_customer_pay_amount Float
    compute='_compute_customer_pay_total' args: 'Total Invoices'
  • total_pay_amount Float
    compute='_compute_pay_total' args: 'Total Invoices'
Public methods (6)
  • auto_fill_payments(self)
    @api.multi
    Action auto fill payments
  • default_get(self, pfields)
    @api.model
    Get list of bills to pay
  • get_payment_batch_vals(self, group_data=None)
    Get values to save in the batch payment
  • make_payments(self)
    @api.multi
    Action make payments
  • make_payments_customer(self)
    @api.multi
    Dictionary for the payment to each customer invoice
  • make_payments_supplier(self)
    @api.multi
    Dictionary for the payment to each supplier invoice

New fields (10)
  • balance_amt Float
    required=True args: 'Invoice Balance'
  • check_amount_in_words Char
    string='Amount in Words'
  • handling Selection
    copy=False default='open' string='Action' args: [('open', 'Keep open'), ('reconcile', 'Mark invoice as fully paid')]
  • invoice_id Many2one → account.invoice
    required=True string='Customer Invoice' args: 'account.invoice'
  • partner_id Many2one → res.partner
    required=True string='Customer Name' args: 'res.partner'
  • payment_difference Float
    string='Difference Amount'
  • payment_method_id Many2one → account.payment.method
    string='Payment Type' args: 'account.payment.method'
  • receiving_amt Float
    required=True args: 'Receive Amount'
  • wizard_id Many2one → account.register.payments
    string='Wizard' args: 'account.register.payments'
  • writeoff_account_id Many2one → account.account
    copy=False domain=[('deprecated', '=', False)] string='Account' args: 'account.account'
Public methods (0)

No public methods.

New fields (6)
  • balance_amt Float
    required=True args: 'Balance Amount'
  • check_amount_in_words Char
    string='Amount in Words'
  • invoice_id Many2one → account.invoice
    required=True string='Supplier Invoice' args: 'account.invoice'
  • partner_id Many2one → res.partner
    required=True string='Supplier Name' args: 'res.partner'
  • paying_amt Float
    required=True args: 'Pay Amount'
  • wizard_id Many2one → account.register.payments
    string='Wizard' args: 'account.register.payments'
Public methods (0)

No public methods.

REPOSITORY
REPOSITORYOCA/account-payment
GIT
GIThttps://github.com/OCA/account-payment.git
GIT FOLDER
GIT FOLDERhttps://github.com/OCA/account-payment/tree/10.0/account_payment_batch_process
VERSION
VERSION 1.0.1
CATEGORY
CATEGORYGeneric Modules/Payment
LICENSE
LICENSEAGPL-3
APPLICATION
APPLICATIONNo
AUTO-INSTALLABLE
AUTO-INSTALLABLENo
AUTHORS
AUTHORSOdoo Community Association (OCA), Ursa Information Systems
MAINTAINERS
MAINTAINERSOdoo Community Association (OCA), Ursa Information Systems
COMMITTERS
COMMITTERSMaxime Chambreuil, Pedro M. Baeza, GitHub, OCA Transbot, oca-travis, Vincent Prime
WEBSITE
WEBSITEhttp://www.ursainfosystems.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
    - account_check_printing
PYTHON DEPENDENCIES
PYTHON DEPENDENCIES Not have
SYSTEM DEPENDENCIES
SYSTEM DEPENDENCIES Not have
DESCRIPTION
DESCRIPTION

Code Analysis

Views touched (4)
XML IDNameModelTypeStatus
batch_invoice_supplier_tree account.invoice.batch.supplier.tree account.invoice field Inherits account.invoice_supplier_tree
view_account_payment_from_invoices_batch_inherited account.register.payments.wizard.batch.inherited account.register.payments xpath Inherits account.view_account_payment_from_invoices
view_account_payment_from_invoices_inherited_batch account.register.payments.form.inherited.batch account.register.payments xpath Inherits account_check_printing.view_account_payment_from_invoices_inherited
view_account_supplier_payment_tree_nocreate account.supplier.payment.tree.nocreate account.payment tree New
Models touched (4)

New fields (0)

No new fields.

Public methods (0)

No public methods.

New fields (7)
  • cheque_amount Float
    required=True args: 'Check Amount'
  • invoice_customer_payments One2many → invoice.customer.payment.line
    string='Receipts' args: 'invoice.customer.payment.line', 'wizard_id'
  • invoice_payments One2many → invoice.payment.line
    string='Payments' args: 'invoice.payment.line', 'wizard_id'
  • is_auto_fill Char
    string='Auto-Fill Pay Amount'
  • is_customer Boolean
    string='Is Customer?'
  • total_customer_pay_amount Float
    compute='_compute_customer_pay_total' args: 'Total Invoices'
  • total_pay_amount Float
    compute='_compute_pay_total' args: 'Total Invoices'
Public methods (4)
  • auto_fill_payments(self)
    @api.multi
  • default_get(self, fields)
    @api.model
  • get_payment_batch_vals(self, inv_payment=False, group_data=None)
  • make_payments(self)
    @api.multi

New fields (10)
  • balance_amt Float
    required=True args: 'Invoice Balance'
  • check_amount_in_words Char
    string='Amount in Words'
  • handling Selection
    copy=False default='open' string='Action' args: [('open', 'Keep open'), ('reconcile', 'Mark invoice as fully paid')]
  • invoice_id Many2one → account.invoice
    required=True string='Customer Invoice' args: 'account.invoice'
  • partner_id Many2one → res.partner
    required=True string='Customer Name' args: 'res.partner'
  • payment_difference Float
    readonly=True string='Difference Amount'
  • payment_method_id Many2one → account.payment.method
    string='Payment Type' args: 'account.payment.method'
  • receiving_amt Float
    required=True args: 'Receive Amount'
  • wizard_id Many2one → account.register.payments
    string='Wizard' args: 'account.register.payments'
  • writeoff_account_id Many2one → account.account
    copy=False domain=[('deprecated', '=', False)] string='Account' args: 'account.account'
Public methods (0)

No public methods.

New fields (6)
  • balance_amt Float
    required=True args: 'Balance Amount'
  • check_amount_in_words Char
    string='Amount in Words'
  • invoice_id Many2one → account.invoice
    required=True string='Supplier Invoice' args: 'account.invoice'
  • partner_id Many2one → res.partner
    required=True string='Supplier Name' args: 'res.partner'
  • paying_amt Float
    required=True args: 'Pay Amount'
  • wizard_id Many2one → account.register.payments
    string='Wizard' args: 'account.register.payments'
Public methods (0)

No public methods.