diff --git a/erpnext/accounts/doctype/bank_reconciliation_tool/bank_reconciliation_tool.py b/erpnext/accounts/doctype/bank_reconciliation_tool/bank_reconciliation_tool.py
index 777e315..7e2f763 100644
--- a/erpnext/accounts/doctype/bank_reconciliation_tool/bank_reconciliation_tool.py
+++ b/erpnext/accounts/doctype/bank_reconciliation_tool/bank_reconciliation_tool.py
@@ -131,7 +131,7 @@
 	bank_transaction = frappe.db.get_values(
 		"Bank Transaction",
 		bank_transaction_name,
-		fieldname=["name", "deposit", "withdrawal", "bank_account"],
+		fieldname=["name", "deposit", "withdrawal", "bank_account", "currency"],
 		as_dict=True,
 	)[0]
 	company_account = frappe.get_value("Bank Account", bank_transaction.bank_account, "account")
@@ -149,10 +149,12 @@
 	company_account_currency = frappe.get_cached_value("Account", company_account, "account_currency")
 	second_account_currency = frappe.get_cached_value("Account", second_account, "account_currency")
 
+	# determine if multi-currency Journal or not
 	is_multi_currency = (
 		True
 		if company_default_currency != company_account_currency
 		or company_default_currency != second_account_currency
+		or company_default_currency != bank_transaction.currency
 		else False
 	)
 
@@ -176,11 +178,16 @@
 		"cost_center": get_default_cost_center(company),
 	}
 
+	# convert transaction amount to company currency
 	if is_multi_currency:
-		exc_rate = get_exchange_rate(company_account_currency, company_default_currency, posting_date)
+		exc_rate = get_exchange_rate(bank_transaction.currency, company_default_currency, posting_date)
 		withdrawal_in_company_currency = flt(exc_rate * abs(bank_transaction.withdrawal))
 		deposit_in_company_currency = flt(exc_rate * abs(bank_transaction.deposit))
+	else:
+		withdrawal_in_company_currency = bank_transaction.withdrawal
+		deposit_in_company_currency = bank_transaction.deposit
 
+	# if second account is of foreign currency, convert and set debit and credit fields.
 	if second_account_currency != company_default_currency:
 		exc_rate = get_exchange_rate(second_account_currency, company_default_currency, posting_date)
 		second_account_dict.update(
@@ -188,6 +195,8 @@
 				"exchange_rate": exc_rate,
 				"credit": deposit_in_company_currency,
 				"debit": withdrawal_in_company_currency,
+				"credit_in_account_currency": flt(deposit_in_company_currency / exc_rate) or 0,
+				"debit_in_account_currency": flt(withdrawal_in_company_currency / exc_rate) or 0,
 			}
 		)
 	else:
@@ -201,6 +210,7 @@
 			}
 		)
 
+	# if company account is of foreign currency, convert and set debit and credit fields.
 	if company_account_currency != company_default_currency:
 		exc_rate = get_exchange_rate(company_account_currency, company_default_currency, posting_date)
 		company_account_dict.update(
@@ -210,6 +220,16 @@
 				"debit": deposit_in_company_currency,
 			}
 		)
+	else:
+		company_account_dict.update(
+			{
+				"exchange_rate": 1,
+				"credit": withdrawal_in_company_currency,
+				"debit": deposit_in_company_currency,
+				"credit_in_account_currency": withdrawal_in_company_currency,
+				"debit_in_account_currency": deposit_in_company_currency,
+			}
+		)
 
 	accounts.append(second_account_dict)
 	accounts.append(company_account_dict)
