diff --git a/erpnext/controllers/accounts_controller.py b/erpnext/controllers/accounts_controller.py index 431eab59243..bb7e8527b92 100644 --- a/erpnext/controllers/accounts_controller.py +++ b/erpnext/controllers/accounts_controller.py @@ -364,8 +364,11 @@ class AccountsController(TransactionBase): diff = self.net_total_export - flt(last_tax.total / self.conversion_rate, self.precision("grand_total_export")) - if diff and abs(diff) <= (2.0 / 10**(self.precision("total", last_tax))): - last_tax.total = last_tax.total + flt(diff * self.conversion_rate, self.precision("total", last_tax)) + if diff and abs(diff) <= (2.0 / 10**(self.precision("tax_amount", last_tax))): + adjustment_amount = flt(diff * self.conversion_rate, self.precision("tax_amount", last_tax)) + last_tax.tax_amount += adjustment_amount + last_tax.tax_amount_after_discount_amount += adjustment_amount + last_tax.total += adjustment_amount def calculate_total_advance(self, parenttype, advance_parentfield): if self.doctype == parenttype and self.docstatus < 2: diff --git a/erpnext/selling/sales_common.js b/erpnext/selling/sales_common.js index f440315d918..e905de1470d 100644 --- a/erpnext/selling/sales_common.js +++ b/erpnext/selling/sales_common.js @@ -471,8 +471,11 @@ erpnext.selling.SellingController = erpnext.TransactionController.extend({ var diff = this.frm.doc.net_total_export - flt(last_tax.total / this.frm.doc.conversion_rate, precision("grand_total_export")); - if ( diff && Math.abs(diff) <= (2.0 / Math.pow(10, precision("total", last_tax)) ) { - last_tax.total += flt(diff * this.frm.doc.conversion_rate, precision("total", last_tax)); + if ( diff && Math.abs(diff) <= (2.0 / Math.pow(10, precision("tax_amount", last_tax))) ) { + var adjustment_amount = flt(diff * this.frm.doc.conversion_rate, precision("tax_amount", last_tax)); + last_tax.tax_amount += adjustment_amount; + last_tax.tax_amount_after_discount += adjustment_amount; + last_tax.total += adjustment_amount; } } }