diff --git a/erpnext/accounts/doctype/payment_entry/payment_entry.py b/erpnext/accounts/doctype/payment_entry/payment_entry.py index 9cb2fdd8823..85c0342df21 100644 --- a/erpnext/accounts/doctype/payment_entry/payment_entry.py +++ b/erpnext/accounts/doctype/payment_entry/payment_entry.py @@ -1082,20 +1082,32 @@ class PaymentEntry(AccountsController): self.base_paid_amount + deductions_to_consider ): self.unallocated_amount = ( - self.base_paid_amount - + deductions_to_consider - - self.base_total_allocated_amount - - included_taxes - ) / self.source_exchange_rate + flt( + ( + self.base_paid_amount + + deductions_to_consider + - self.base_total_allocated_amount + - included_taxes + ), + self.precision("unallocated_amount"), + ) + / self.source_exchange_rate + ) elif self.payment_type == "Pay" and self.base_total_allocated_amount < ( self.base_received_amount - deductions_to_consider ): self.unallocated_amount = ( - self.base_received_amount - - deductions_to_consider - - self.base_total_allocated_amount - - included_taxes - ) / self.target_exchange_rate + flt( + ( + self.base_received_amount + - deductions_to_consider + - self.base_total_allocated_amount + - included_taxes + ), + self.precision("unallocated_amount"), + ) + / self.target_exchange_rate + ) def set_exchange_gain_loss(self): exchange_gain_loss = flt(