diff --git a/addons/account/models/account_move.py b/addons/account/models/account_move.py index 0b3f1c75e71..3cbef204750 100644 --- a/addons/account/models/account_move.py +++ b/addons/account/models/account_move.py @@ -330,7 +330,7 @@ class AccountMoveLine(models.Model): #we can only check the amount in company currency reconciled = False digits_rounding_precision = line.company_id.currency_id.rounding - if float_is_zero(amount, precision_rounding=digits_rounding_precision): + if (line.matched_debit_ids or line.matched_credit_ids) and float_is_zero(amount, precision_rounding=digits_rounding_precision): if line.currency_id and line.amount_currency: if float_is_zero(amount_residual_currency, precision_rounding=line.currency_id.rounding): reconciled = True @@ -948,7 +948,7 @@ class AccountMoveLine(models.Model): all_accounts.append(line.account_id) if (line.account_id.internal_type in ('receivable', 'payable')): partners.add(line.partner_id.id) - if line.reconciled: + if (line.matched_debit_ids or line.matched_credit_ids) and line.reconciled: raise UserError(_('You are trying to reconcile some entries that are already reconciled!')) if len(company_ids) > 1: raise UserError(_('To reconcile the entries company should be the same for all entries!'))