diff --git a/erpnext/accounts/report/purchase_register/purchase_register.py b/erpnext/accounts/report/purchase_register/purchase_register.py
index 8a845cf..4b4c5cb 100644
--- a/erpnext/accounts/report/purchase_register/purchase_register.py
+++ b/erpnext/accounts/report/purchase_register/purchase_register.py
@@ -29,6 +29,8 @@
 	include_payments = filters.get("include_payments")
 	invoice_list = get_invoices(filters, additional_query_columns)
 	if filters.get("include_payments"):
+		if not filters.get("supplier"):
+			frappe.throw(_("Please select a supplier for fetching payments."))
 		invoice_list += get_payments(filters, additional_query_columns)
 	columns, expense_accounts, tax_accounts, unrealized_profit_loss_accounts = get_columns(
 		invoice_list, additional_table_columns, include_payments
@@ -291,7 +293,6 @@
 		party="supplier",
 		party_name="supplier_name",
 		additional_query_columns="" if not additional_query_columns else additional_query_columns,
-		party_type="Supplier",
 		conditions=conditions,
 	)
 	payment_entries = get_payment_entries(filters, args)
diff --git a/erpnext/accounts/report/sales_register/sales_register.py b/erpnext/accounts/report/sales_register/sales_register.py
index 5965a1a..76611a0 100644
--- a/erpnext/accounts/report/sales_register/sales_register.py
+++ b/erpnext/accounts/report/sales_register/sales_register.py
@@ -30,6 +30,8 @@
 	include_payments = filters.get("include_payments")
 	invoice_list = get_invoices(filters, additional_query_columns)
 	if filters.get("include_payments"):
+		if not filters.get("customer"):
+			frappe.throw(_("Please select a customer for fetching payments."))
 		invoice_list += get_payments(filters, additional_query_columns)
 	columns, income_accounts, tax_accounts, unrealized_profit_loss_accounts = get_columns(
 		invoice_list, additional_table_columns, include_payments
@@ -451,7 +453,6 @@
 		party="customer",
 		party_name="customer_name",
 		additional_query_columns="" if not additional_query_columns else additional_query_columns,
-		party_type="Customer",
 		conditions=conditions,
 	)
 	payment_entries = get_payment_entries(filters, args)
diff --git a/erpnext/accounts/report/utils.py b/erpnext/accounts/report/utils.py
index c6b98835..474ae34 100644
--- a/erpnext/accounts/report/utils.py
+++ b/erpnext/accounts/report/utils.py
@@ -199,13 +199,13 @@
 		je.bill_no, je.bill_date, je.remark, je.total_amount as base_net_total,
 		je.total_amount as base_grand_total, je.mode_of_payment, jea.project {3}
 		from `tabJournal Entry` je left join `tabJournal Entry Account` jea on jea.parent=je.name
-		where je.voucher_type='Journal Entry' and jea.party_type='{4}' {5}
+		where je.voucher_type='Journal Entry' and jea.party='{4}' {5}
 		order by je.posting_date desc, je.name desc""".format(
 			args.account,
 			args.party,
 			args.party_name,
 			args.additional_query_columns,
-			args.party_type,
+			filters.get(args.party),
 			args.conditions,
 		),
 		filters,
@@ -221,13 +221,13 @@
 		paid_amount as base_net_total, paid_amount_after_tax as base_grand_total,
 		mode_of_payment, project, cost_center {3}
 		from `tabPayment Entry`
-		where party_type='{4}' {5}
+		where party='{4}' {5}
 		order by posting_date desc, name desc""".format(
 			args.account,
 			args.party,
 			args.party_name,
 			args.additional_query_columns,
-			args.party_type,
+			filters.get(args.party),
 			args.conditions,
 		),
 		filters,
