diff --git a/modules/account_payment_sepa/payment.py b/modules/account_payment_sepa/payment.py index b4967aaf9f..a935168753 100644 --- a/modules/account_payment_sepa/payment.py +++ b/modules/account_payment_sepa/payment.py @@ -435,7 +435,7 @@ class Payment(metaclass=PoolMeta): if self.sepa_mandate: return self.sepa_mandate.account_number else: - for account in self.party.bank_accounts: + for account in self.party.bank_accounts_used: for number in account.numbers: if number.type == 'iban': return number diff --git a/modules/account_payment_sepa/tests/test_module.py b/modules/account_payment_sepa/tests/test_module.py index 2458385a72..4162bdebd9 100644 --- a/modules/account_payment_sepa/tests/test_module.py +++ b/modules/account_payment_sepa/tests/test_module.py @@ -274,7 +274,7 @@ class AccountPaymentSepaTestCase(CompanyTestMixin, ModuleTestCase): bank_account = BankAccount( numbers=[other_account_number, iban_account_number]) party = Party( - bank_accounts=[bank_account]) + bank_accounts_used=[bank_account]) payment = Payment(kind='payable', party=party) self.assertEqual(id(payment.sepa_bank_account_number), diff --git a/modules/bank/party.py b/modules/bank/party.py index 51a5c0d9c7..607ed09dbc 100644 --- a/modules/bank/party.py +++ b/modules/bank/party.py @@ -8,7 +8,9 @@ from trytond.transaction import Transaction class Party(metaclass=PoolMeta): __name__ = 'party.party' bank_accounts = fields.Many2Many( - 'bank.account-party.party', 'owner', 'account', "Bank Accounts", + 'bank.account-party.party', 'owner', 'account', "Bank Accounts") + bank_accounts_used = fields.Many2Many( + 'bank.account-party.party', 'owner', 'account', "Bank Accounts Used", filter=[('active', '=', True)]) @classmethod