TIP: You can type at any time to perform a new search.
Account Banking - Payments Export Infrastructure
account_banking_payment_export · OCA/bank-payment
Security findings
Migration considerations
- Imports from the old `openerp` namespace: renamed to `odoo` since Odoo 10.0. migration-openerp-import · source
- Imports from the old `openerp` namespace: renamed to `odoo` since Odoo 10.0. migration-openerp-import · source
- Uses the old workflow engine (base.workflow / `trg_validate`): removed in Odoo 11.0, must be rewritten as state-field transitions. migration-workflow · source
- Imports from the old `openerp` namespace: renamed to `odoo` since Odoo 10.0. migration-openerp-import · source
- Imports from the old `openerp` namespace: renamed to `odoo` since Odoo 10.0. migration-openerp-import · source
- Imports from the old `openerp` namespace: renamed to `odoo` since Odoo 10.0. migration-openerp-import · source
- Imports from the old `openerp` namespace: renamed to `odoo` since Odoo 10.0. migration-openerp-import · source
- Imports from the old `openerp.addons.decimal_precision` namespace: renamed to `odoo` since Odoo 10.0. migration-openerp-import · source
- Imports from the old `openerp` namespace: renamed to `odoo` since Odoo 10.0. migration-openerp-import · source
- Imports from the old `openerp` namespace: renamed to `odoo` since Odoo 10.0. migration-openerp-import · source
- Imports from the old `openerp.addons.account_payment.account_payment` namespace: renamed to `odoo` since Odoo 10.0. migration-openerp-import · source
- Uses the old workflow engine (base.workflow / `trg_validate`): removed in Odoo 11.0, must be rewritten as state-field transitions. migration-workflow · source
- Imports from the old `openerp` namespace: renamed to `odoo` since Odoo 10.0. migration-openerp-import · source
- Imports from the old `openerp` namespace: renamed to `odoo` since Odoo 10.0. migration-openerp-import · source
- Imports from the old `openerp.exceptions` namespace: renamed to `odoo` since Odoo 10.0. migration-openerp-import · source
- For a target of Odoo 10.0+: use the `__manifest__.py` manifest name instead of `__openerp__.py`. The filename alone does not establish module age or compatibility. migration-openerp-manifest · source
view_create_payment_order— For a target of Odoo 17.0+: view 'view_create_payment_order' uses `attrs=`/`states=`, which are no longer supported. Convert modifiers to direct Python boolean expressions in `invisible`/`readonly`/`required`; preserve the original AND/OR logic. migration-view-attrs-states · sourceview_payment_order_form— For a target of Odoo 17.0+: view 'view_payment_order_form' uses `attrs=`/`states=`, which are no longer supported. Convert modifiers to direct Python boolean expressions in `invisible`/`readonly`/`required`; preserve the original AND/OR logic. migration-view-attrs-states · source- Raw `cr.execute()` INSERT/UPDATE/DELETE bypasses the ORM (no compute/constrains/tracking/mail): `UPDATE ir_model_data SET module='account_banking_payment_export' WHERE module='account_banking' AND name='manual_bank_tranfer' AND model='payment.mode.type'` - re-check the table/column names still match after upgrading. migration-raw-sql-write · source
bank_payment_line_tree— View 'bank_payment_line_tree' is defined with a `<tree>` root tag: renamed to `<list>` in Odoo 18.0. migration-view-tree-tag · sourcepayment_order_populate_view_move_line_tree— View 'payment_order_populate_view_move_line_tree' is defined with a `<tree>` root tag: renamed to `<list>` in Odoo 18.0. migration-view-tree-tag · sourceview_payment_mode_type_tree— View 'view_payment_mode_type_tree' is defined with a `<tree>` root tag: renamed to `<list>` in Odoo 18.0. migration-view-tree-tag · source
Migration review checklist, not a compatibility verdict. No target version is selected: apply version-specific advice only when migrating to that version or later.
- Repository
- OCA/bank-payment · module folder · Try on Runboat
- Module version
- 0.3.0
- Category
- Banking addons
- Folder size
- 1.37 MB
- License
- AGPL-3
- Application
- No
- Auto-installable
- No
- Website
- https://github.com/OCA/bank-payment
- Last tracking update
- 2026-08-07 07:03:12
- Authors
- ACSONE SA/NV, Odoo Community Association (OCA), Therp BV, Serv. Tecnol. Avanzados - Pedro M. Baeza
- Maintainers
- ACSONE SA/NV, Odoo Community Association (OCA), Therp BV, Serv. Tecnol. Avanzados - Pedro M. Baeza
- Committers
- Yannick Vaucher, Alexis de Lattre, Stéphane Bidoul, Alexandre Fayolle, Holger Brunn, Pedro M. Baeza, GitHub, Stéphane Bidoul (ACSONE), Adrien Peiffer, Weblate, OCA Transbot, Emanuel Cino, Laurent Mignon (aka lmi), Danimar Ribeiro, Adrien Peiffer (ACSONE), beau sebastien, oca-travis, AngelMoya-Domatix, Philippe Schmidt
- Odoo dependencies
- Python dependencies
- None
- System dependencies
- None
- Required by
- account_banking_mandate, account_banking_pain_base, account_banking_payment_transfer, account_direct_debit, account_payment_blocking, account_payment_include_draft_move, account_payment_mode_term, account_payment_partner, account_payment_return_import_sepa_pain, account_payment_unece, l10n_br_account_banking_payment
- Description
Code Analysis
Views touched (14)
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
bank_payment_line_form |
bank.payment.line.form | bank.payment.line | form | New |
bank_payment_line_tree |
bank.payment.line.tree | bank.payment.line | tree | New |
payment_order_populate_view_move_line_tree |
payment.order.populate.account.move.line.tree | account.move.line | tree | New |
view_create_payment_order |
payment.order.create.form.export | payment.order.create | form | Inherits account_payment.view_create_payment_order |
view_create_payment_order_lines |
add.context.to.display.maturity.date | payment.order.create | Inherits account_payment.view_create_payment_order_lines | |
view_create_payment_order_lines |
add.context.to.display.maturity.date | payment.order.create | Inherits account_payment.view_create_payment_order_lines | |
view_payment_manual_form |
Form for manual payment wizard | payment.manual | form | New |
view_payment_manual_form |
Form for manual payment wizard | payment.manual | form | New |
view_payment_mode_form_inherit |
payment.mode.form.inherit | payment.mode | form | Inherits account_payment.view_payment_mode_form |
view_payment_mode_tree_inherit |
payment.mode.tree.inherit | payment.mode | tree | Inherits account_payment.view_payment_mode_tree |
view_payment_mode_type_form |
view.payment.mode.type.form | payment.mode.type | form | New |
view_payment_mode_type_tree |
view.payment.mode.type.tree | payment.mode.type | tree | New |
view_payment_order_form |
account.payment.order.form.banking-1 | payment.order | form | Inherits account_payment.view_payment_order_form |
view_payment_order_tree |
account_banking_payment_export.payment.order.tree | payment.order | tree | Inherits account_payment.view_payment_order_tree |
HTTP endpoints (0)
No HTTP endpoints found for this module.
Models touched (11)
New fields (0)
No new fields.
Public methods (1)-
fields_view_get(self, view_id=None, view_type=False, toolbar=False, submenu=False)@api.modelThis adds the field 'reference_type' only if the view doesn't contain this field (this is for customer invoice and with l10n_be_invoice_bba not installed).
New fields (1)
-
journal_entry_refCharcompute=_get_journal_entry_refstring='Journal Entry Ref'
-
get_balance(self)@api.multiReturn the balance of any set of move lines. Not to be confused with the 'balance' field on this model, which returns the account balance that the move line applies to.
New fields (11)
-
amount_currencyFloatcompute='_compute_amount'digits=dp.get_precision('Account')store=Truestring='Amount' -
bank_idMany2one → res.partner.bankrelated='payment_line_ids.bank_id'string='Bank Account' args: 'res.partner.bank' -
communicationCharrequired=Truestring='Communication' -
company_idMany2one → res.companyreadonly=Truerelated='order_id.company_id'store=Truestring='Company' args: 'res.company' -
currencyMany2one → res.currencyrelated='payment_line_ids.currency'required=Truestring='Currency' args: 'res.currency' -
dateDaterelated='payment_line_ids.date'string='Payment Date' -
nameCharrequired=Truestring='Bank Payment Line Ref' -
order_idMany2one → payment.orderondelete='cascade'select=Truestring='Order' args: 'payment.order' -
partner_idMany2one → res.partnerrelated='payment_line_ids.partner_id'string='Partner' args: 'res.partner' -
payment_line_idsOne2many → payment.linestring='Payment Lines' args: 'payment.line', 'bank_line_id' -
stateSelectionrelated='payment_line_ids.state'string='Communication Type'
-
create(self, vals)@api.model@api.returns('self') -
same_fields_payment_line_and_bank_payment_line(self)@api.modelThis list of fields is used both to compute the grouping hashcode and to copy the values from payment line to bank payment line The fields must have the same name on the 2 objects
New fields (1)
-
bank_line_idMany2one → bank.payment.linestring='Bank Payment Line' args: 'bank.payment.line'
-
payment_line_hashcode(self)@api.multi
New fields (0)
No new fields.
Public methods (1)-
button_ok(self)@api.multi
New fields (11)
-
activeBooleandefault=Truestring='Active' -
default_date_typeSelectiondefault='due'string='Type of Date Filter' args: [('due', 'Due'), ('move', 'Move')] -
default_invoiceBooleandefault=Falsestring='Linked to an Invoice or Refund' -
default_journal_idsMany2many → account.journalstring='Journals Filter' args: 'account.journal' -
default_populate_resultsBooleanstring='Populate Results Directly' -
group_linesBooleandefault=Truehelp='If this mark is checked, the payment order lines will be grouped when validating the payment order before exporting the bank file. The grouping will be done only if the following fields matches:\n* Partner\n* Currency\n* Destination Bank Account\n* Communication Type (structured, free)\n* Payment Date\n(other modules can set additional fields to restrict the grouping.)'string='Group lines in payment orders' -
noteTextstring='Note'translate=True -
payment_order_typeSelectionhelp='This field, that comes from export type, determines if this mode can be selected for customers or suppliers.'readonly=Truerelated='type.payment_order_type'string='Order Type' -
purchase_okBooleandefault=Truestring='Selectable on purchase operations' -
sale_okBooleandefault=Truestring='Selectable on sale operations' -
typeMany2one → payment.mode.typehelp='Select the Export Payment Type for the Payment Mode.'required=Truestring='Export type' args: 'payment.mode.type'
-
suitable_bank_types(self, cr, uid, payment_mode_id=None, context=None)Reinstates functional code for suitable bank type filtering. Current code in account_payment is disfunctional. -
type_on_change(self)@api.onchange('type')
New fields (6)
-
activeBooleandefault=Truestring='Active' -
codeCharhelp='Specify the Code for Payment Type'required=Truesize=64 args: 'Code' -
ir_model_idMany2one → ir.modeldomain=[('osv_memory', '=', True)]help='Select the Payment Wizard for payments of this type. Leave empty for manual processing'string='Payment wizard' args: 'ir.model' -
nameCharhelp='Payment Type'required=Truesize=64 args: 'Name' -
payment_order_typeSelectiondefault='payment'help='This field determines if this type applies to customers (Debit) or suppliers (Payment)'required=Truestring='Order type' args: [('payment', 'Payment'), ('debit', 'Debit')] -
suitable_bank_typesMany2many → res.partner.bank.typecolumn1='pay_type_id'column2='bank_type_id'comodel_name='res.partner.bank.type'relation='bank_type_payment_type_rel'required=Truestring='Suitable bank types'
No public methods.
New fields (5)
-
bank_line_countIntegercompute='_bank_line_count'string='Number of Bank Lines' -
bank_line_idsOne2many → bank.payment.linereadonly=Truestring='Bank Payment Lines' args: 'bank.payment.line', 'order_id' -
mode_typeMany2one → payment.mode.typerelated='mode.type'string='Payment Type' args: 'payment.mode.type' -
payment_order_typeSelectiondefault='payment'readonly=Truerequired=Truestates={'draft': [('readonly', False)]} args: [('payment', 'Payment'), ('debit', 'Direct debit')], 'Payment order type' -
totalFloatcompute='_compute_total'store=True
-
action_cancel(self)@api.multi -
action_done(self)@api.multi -
action_open(self)@api.multiCalled when you click on the 'Confirm' button Set the 'date' on payment line depending on the 'date_prefered' setting of the payment.order Re-generate the bank payment lines -
launch_wizard(self)@api.multiSearch for a wizard to launch according to the type. If type is manual. just confirm the order. Previously (pre-v6) in account_payment/wizard/wizard_pay.py -
unlink(self)@api.multi
New fields (7)
-
date_typeSelectionrequired=Truestring='Type of Date Filter' args: [('due', 'Due Date'), ('move', 'Move Date')] -
duedateDaterequired=False -
invoiceBooleanstring='Linked to an Invoice or Refund' -
journal_idsMany2many → account.journalstring='Journals Filter' args: 'account.journal' -
move_dateDatedefault=fields.Date.context_todaystring='Move Date' -
partner_idsMany2many → res.partnercomodel_name='res.partner'string='Partners' -
populate_resultsBooleanstring='Populate Results Directly'
-
create_payment(self)@api.multiThis method is a slightly modified version of the existing method on this model in account_payment. - pass the payment mode to line2bank() - allow invoices to create influence on the payment process: not only 'Free' references are allowed, but others as well - check date_to_pay is not in the past. -
default_get(self, field_list)@api.model -
extend_payment_order_domain(self, payment_order, domain)@api.multi -
filter_lines(self, lines)@api.multiFilter move lines before proposing them for inclusion in the payment order. This implementation filters out move lines that are already included in draft or open payment orders. This prevents the user to include the same line in two different open payment orders. When the payment order is sent, it is assumed that the move will be reconciled soon (or immediately with account_banking_payment_transfer), so it will not be proposed anymore for payment. See also https://github.com/OCA/bank-payment/issues/93. :param lines: recordset of move lines :returns: list of move line ids -
search_entries(self)@api.multiThis method taken from account_payment module. We adapt the domain based on the payment_order_type
New fields (0)
No new fields.
Public methods (1)-
check_bic_length(self)@api.multi@api.constrains('bic')
New fields (0)
No new fields.
Public methods (1)-
check_bic_length(self)@api.multi@api.constrains('bank_bic')
Loading…
Loading…