TIP: You can type at any time to perform a new search.
Account Payment Mode
account_payment_mode · OCA/bank-payment
- Repository
- OCA/bank-payment · module folder · Try on Runboat
- Module version
- 1.1.0
- Category
- Banking addons
- Folder size
- 0.59 MB
- License
- AGPL-3
- Application
- No
- Auto-installable
- No
- Website
- https://github.com/OCA/bank-payment
- Last tracking update
- 2026-08-07 09:06:34
- Authors
- Akretion, Odoo Community Association (OCA), Tecnativa
- Maintainers
- Akretion, Odoo Community Association (OCA), Tecnativa
- Committers
- Pedro M. Baeza, Enric Tobella, Miquel Raïch, Weblate, Ruchir Shukla, OCA-git-bot, oca-ci, JasminSForgeFlow
- Odoo dependencies
- Python dependencies
- None
- System dependencies
- None
- Required by
- account_due_list_payment_mode, account_payment_order, account_payment_purchase, account_payment_sale, contract_payment_mode, l10n_es_facturae
- Description
This module adds a new object *account.payment.mode*, that is used to better classify and route incoming/outgoing payment orders with the banks. This module adds several fields: - the *Supplier Payment Mode* and *Customer Payment Mode* on Partners, - the *Payment Mode* on Invoices. - the *Show bank account* on Payment Mode. - the *\# of digits for customer bank account* on Payment Mode. - the *Bank account from journals* on Payment Mode. - the *Payment mode* on Invoices Analysis. On a Payment Order, in the wizard *Select Invoices to Pay*, the invoices will be filtered per Payment Mode. Allows to print in the invoice to which account number the payment (via SEPA direct debit) is going to be charged so the customer knows that information, but there are some customers that don't want that everyone looking at the invoice sees the full account number (and even GDPR can say a word about that), so that's the reason behind the several options.
Code Analysis ⓘ
Views touched (16)
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
account_payment_method_form |
account_payment_method.form | account.payment.method | form | New |
account_payment_method_search |
account_payment_method.search | account.payment.method | search | New |
account_payment_method_tree |
account_payment_method.list | account.payment.method | list | New |
account_payment_mode_form |
account.payment.mode.form | account.payment.mode | form | New |
account_payment_mode_search |
account.payment.mode.search | account.payment.mode | search | New |
account_payment_mode_tree |
account.payment.mode.list | account.payment.mode | list | New |
report_invoice_payment_mode |
report_invoice_payment_mode | ir.ui.view | qweb | Inherits account.report_invoice_document |
res_config_settings_view_form |
res.config.settings.account.payment.mode | res.config.settings | form | Inherits account.res_config_settings_view_form |
view_account_invoice_filter |
account_payment_partner.account_invoice_search | account.move | search | Inherits account.view_account_invoice_filter |
view_account_invoice_report_search |
account.invoice.report.search | account.invoice.report | search | Inherits account.view_account_invoice_report_search |
view_account_journal_form |
usability.account_journal.form | account.journal | form | Inherits account.view_account_journal_form |
view_invoice_tree |
account_payment_partner.view_invoice_tree | account.move | tree | Inherits account.view_invoice_tree |
view_move_form |
account_payment_partner.view_move_form | account.move | form | Inherits account.view_move_form |
view_move_line_form |
account_payment_partner.move_line_form | account.move.line | form | Inherits account.view_move_line_form |
view_move_line_tree |
account.move.line.tree - Add payment mode | account.move.line | tree | Inherits account.view_move_line_tree |
view_partner_property_form |
account_partner_payment.partner_form | res.partner | form | Inherits account.view_partner_property_form |
HTTP endpoints (0)
No HTTP endpoints found for this module.
Models touched (9)
New fields (1)
-
payment_mode_idMany2one → account.payment.modecomodel_name='account.payment.mode'readonly=Truestring='Payment mode'
No public methods.
New fields (0)
No new fields.
Public methods (1)-
company_id_account_payment_mode_constrains(self)@api.constrains('company_id')
New fields (5)
-
bank_account_requiredBooleanreadonly=Truerelated='payment_mode_id.payment_method_id.bank_account_required' -
has_reconciled_itemsBooleancompute='_compute_has_reconciled_items'help='Technical field for supporting the editability of the payment mode' -
partner_bank_filter_type_domainMany2one → res.partnercomodel_name='res.partner'compute='_compute_partner_bank_filter_type_domain' -
payment_mode_filter_type_domainCharcompute='_compute_payment_mode_filter_type_domain' -
payment_mode_idMany2one → account.payment.modecheck_company=Truecomodel_name='account.payment.mode'compute='_compute_payment_mode_id'ondelete='restrict'precompute=Truereadonly=Falsestore=Truetracking=True
-
create(self, vals_list)@api.model_create_multi -
partner_banks_to_show(self)
New fields (1)
-
payment_mode_idMany2one → account.payment.modecomodel_name='account.payment.mode'compute='_compute_payment_mode'index=Trueondelete='restrict'readonly=Falsestore=True
-
write(self, vals)Propagate up to the move the payment mode if applies.
New fields (4)
-
activeBooleandefault=True -
bank_account_requiredBooleanhelp='Activate this option if this payment method requires you to know the bank account number of your customer or supplier.' -
codeCharhelp='This code is used in the code of the Odoo module that handles this payment method. Therefore, if you change it, the generation of the payment file may fail.'string='Code (Do Not Modify)' -
payment_mode_idsOne2many → account.payment.modecomodel_name='account.payment.mode'inverse_name='payment_method_id'string='Payment modes'
No public methods.
New fields (15)
-
activeBooleandefault=True -
bank_account_linkSelectionhelp="For payment modes that are always attached to the same bank account of your company (such as wire transfer from customers or SEPA direct debit from suppliers), select 'Fixed'. For payment modes that are not always attached to the same bank account (such as SEPA Direct debit for customers, wire transfer to suppliers), you should select 'Variable', which means that you will select the bank account on the payment order. If your company only has one bank account, you should always select 'Fixed'."required=Truestring='Link to Bank Account' args: [('fixed', 'Fixed'), ('variable', 'Variable')] -
company_idMany2one → res.companydefault=<expr>ondelete='restrict'required=Truestring='Company' args: 'res.company' -
fixed_journal_idMany2one → account.journalcheck_company=Truedomain="[('company_id', '=', company_id), ('type', 'in', ('bank', 'cash'))]"ondelete='restrict'string='Fixed Bank Journal' args: 'account.journal' -
nameCharrequired=Truetranslate=True -
noteHtmltranslate=True -
payment_method_codeCharreadonly=Truerelated='payment_method_id.code'store=True -
payment_method_idMany2one → account.payment.methodondelete='restrict'required=Truestring='Payment Method' args: 'account.payment.method' -
payment_typeSelectionreadonly=Truerelated='payment_method_id.payment_type'store=True -
refund_payment_mode_idMany2one → account.payment.modecomodel_name='account.payment.mode'domain="[('payment_type', '!=', payment_type)]"help='This payment mode will be used when doing refunds coming from the current payment mode.'string='Payment mode for refunds' -
sequenceIntegerdefault=10 -
show_bank_accountSelectiondefault='full'help='Show in invoices partial or full bank account number'selection=[('full', 'Full'), ('first', 'First n chars'), ('last', 'Last n chars'), ('no', 'No')] -
show_bank_account_charsIntegerstring='# of digits for customer bank account' -
show_bank_account_from_journalBooleanstring='Bank account from journals' -
variable_journal_idsMany2many → account.journalcolumn1='payment_mode_id'column2='journal_id'comodel_name='account.journal'domain="[('company_id', '=', company_id), ('type', 'in', ('bank', 'cash'))]"relation='account_payment_mode_variable_journal_rel'string='Allowed Bank Journals'
-
account_invoice_company_constrains(self)@api.constrains('company_id') -
account_move_line_company_constrains(self)@api.constrains('company_id') -
bank_account_link_constrains(self)@api.constrains('bank_account_link', 'fixed_journal_id', 'payment_method_id') -
company_id_variable_journal_ids_constrains(self)@api.constrains('company_id', 'variable_journal_ids')
New fields (1)
-
keep_partner_bank_without_payment_modeBooleandefault=Falsehelp='When enabled, invoices without a payment mode will keep the bank account auto-selected by Odoo. When disabled, the bank account will be cleared if no payment mode is set.'string='Keep Bank Account Without Payment Mode'
No public methods.
New fields (1)
-
keep_partner_bank_without_payment_modeBooleanreadonly=Falserelated='company_id.keep_partner_bank_without_payment_mode'
No public methods.
New fields (2)
-
customer_payment_mode_idMany2one → account.payment.modecheck_company=Truecomodel_name='account.payment.mode'company_dependent=Truedomain="[('payment_type', '=', 'inbound'),('company_id', '=', current_company_id)]"help='Select the default payment mode for this customer.' -
supplier_payment_mode_idMany2one → account.payment.modecheck_company=Truecomodel_name='account.payment.mode'company_dependent=Truedomain="[('payment_type', '=', 'outbound'),('company_id', '=', current_company_id)]"help='Select the default payment mode for this supplier.'
No public methods.
Loading…
Loading…
Loading…
Loading…
Loading…
Loading…
Loading…
Loading…
Loading…
Loading…