diff --git a/account_payment_order/models/account_payment_order.py b/account_payment_order/models/account_payment_order.py index 236fe3049..02d7aca16 100644 --- a/account_payment_order/models/account_payment_order.py +++ b/account_payment_order/models/account_payment_order.py @@ -420,6 +420,7 @@ class AccountPaymentOrder(models.Model): return True def _prepare_move(self, bank_lines=None): + move_date = False if self.payment_type == "outbound": ref = _("Payment order %s") % self.name else: @@ -428,6 +429,8 @@ class AccountPaymentOrder(models.Model): ref += " - " + bank_lines.name if self.payment_mode_id.offsetting_account == "bank_account": journal_id = self.journal_id.id + if bank_lines: + move_date = bank_lines[0].date elif self.payment_mode_id.offsetting_account == "transfer_account": journal_id = self.payment_mode_id.transfer_journal_id.id vals = { @@ -436,6 +439,8 @@ class AccountPaymentOrder(models.Model): "payment_order_id": self.id, "line_ids": [], } + if move_date: + vals.update({"date": move_date}) total_company_currency = total_payment_currency = 0 for bline in bank_lines: total_company_currency += bline.amount_company_currency diff --git a/account_payment_order/tests/test_payment_order_outbound.py b/account_payment_order/tests/test_payment_order_outbound.py index b49a2a53a..d37541953 100644 --- a/account_payment_order/tests/test_payment_order_outbound.py +++ b/account_payment_order/tests/test_payment_order_outbound.py @@ -140,6 +140,7 @@ class TestPaymentOrderOutbound(TransactionCase): order.draft2open() order.open2generated() order.generated2uploaded() + self.assertEqual(order.move_ids[0].date, order.bank_line_ids[0].date) order.action_done() self.assertEqual(order.state, "done")