diff --git a/addons/sale/models/sale_order.py b/addons/sale/models/sale_order.py index c133b9f8cbf..d71d4eeb770 100644 --- a/addons/sale/models/sale_order.py +++ b/addons/sale/models/sale_order.py @@ -742,6 +742,12 @@ Reason(s) of this behavior could be: if not grouped: new_invoice_vals_list = [] invoice_grouping_keys = self._get_invoice_grouping_keys() + invoice_vals_list = sorted( + invoice_vals_list, + key=lambda x: [ + x.get(grouping_key) for grouping_key in invoice_grouping_keys + ] + ) for grouping_keys, invoices in groupby(invoice_vals_list, key=lambda x: [x.get(grouping_key) for grouping_key in invoice_grouping_keys]): origins = set() payment_refs = set()