test: Update tests
diff --git a/erpnext/accounts/doctype/payment_entry/payment_entry.py b/erpnext/accounts/doctype/payment_entry/payment_entry.py
index d23afb1..752d22a 100644
--- a/erpnext/accounts/doctype/payment_entry/payment_entry.py
+++ b/erpnext/accounts/doctype/payment_entry/payment_entry.py
@@ -97,29 +97,37 @@
 		book_advance_payments_as_liability = frappe.get_value(
 			"Company", {"company_name": self.company}, "book_advance_payments_as_liability"
 		)
+
 		if not book_advance_payments_as_liability:
 			return
+
 		account_type = frappe.get_value(
 			"Account", {"name": self.party_account, "company": self.company}, "account_type"
 		)
+
 		if (account_type == "Payable" and self.party_type == "Customer") or (
 			account_type == "Receivable" and self.party_type == "Supplier"
 		):
 			return
+
 		if self.unallocated_amount == 0:
 			for d in self.references:
 				if d.reference_doctype in ["Sales Order", "Purchase Order"]:
 					break
 			else:
 				return
+
 		liability_account = get_party_account(
 			self.party_type, self.party, self.company, include_advance=True
 		)[1]
+
 		self.set(self.party_account_field, liability_account)
+
 		msg = "Book Advance Payments as Liability option is chosen. Paid From account changed from {0} to {1}.".format(
 			frappe.bold(self.party_account),
 			frappe.bold(liability_account),
 		)
+
 		frappe.msgprint(_(msg), alert=True)
 
 	def on_cancel(self):
@@ -921,12 +929,12 @@
 
 		self.set("remarks", "\n".join(remarks))
 
-	def build_gl_map(self, is_reconcile=True):
+	def build_gl_map(self):
 		if self.payment_type in ("Receive", "Pay") and not self.get("party_account_field"):
 			self.setup_party_account_field()
 
 		gl_entries = []
-		self.add_party_gl_entries(gl_entries, is_reconcile)
+		self.add_party_gl_entries(gl_entries)
 		self.add_bank_gl_entries(gl_entries)
 		self.add_deductions_gl_entries(gl_entries)
 		self.add_tax_gl_entries(gl_entries)
@@ -937,7 +945,7 @@
 		gl_entries = process_gl_map(gl_entries)
 		make_gl_entries(gl_entries, cancel=cancel, adv_adj=adv_adj)
 
-	def add_party_gl_entries(self, gl_entries, is_reconcile):
+	def add_party_gl_entries(self, gl_entries):
 		if self.party_account:
 			if self.payment_type == "Receive":
 				against_account = self.paid_to
@@ -957,7 +965,7 @@
 				},
 				item=self,
 			)
-			is_advance = self.get_advance_flag()
+			is_advance = self.is_advance_entry()
 
 			for d in self.get("references"):
 				gle = party_dict.copy()
@@ -967,30 +975,24 @@
 				if (
 					d.reference_doctype in ["Sales Invoice", "Purchase Invoice"]
 					and book_advance_payments_as_liability
-					and (is_advance or is_reconcile)
+					and is_advance
 				):
 					self.make_invoice_liability_entry(gl_entries, d)
-					gle.update(
-						{
-							"against_voucher_type": "Payment Entry",
-							"against_voucher": self.name,
-						}
-					)
+					against_voucher_type = "Payment Entry"
+					against_voucher = self.name
+				else:
+					against_voucher_type = d.reference_doctype
+					against_voucher = d.reference_name
 
 				allocated_amount_in_company_currency = self.calculate_base_allocated_amount_for_reference(d)
 				gle.update(
 					{
 						dr_or_cr: allocated_amount_in_company_currency,
 						dr_or_cr + "_in_account_currency": d.allocated_amount,
+						"against_voucher_type": against_voucher_type,
+						"against_voucher": against_voucher,
 					}
 				)
-				if not gle.get("against_voucher_type"):
-					gle.update(
-						{
-							"against_voucher_type": d.reference_doctype if is_advance else "Payment Entry",
-							"against_voucher": d.reference_name if is_advance else self.name,
-						}
-					)
 				gl_entries.append(gle)
 
 			if self.unallocated_amount:
@@ -1009,9 +1011,9 @@
 
 				gl_entries.append(gle)
 
-	def get_advance_flag(self):
+	def is_advance_entry(self):
 		for d in self.get("references"):
-			if d.reference_doctype == "Sales Order":
+			if d.reference_doctype in ("Sales Order", "Purchase Order"):
 				return True
 		if self.unallocated_amount > 0:
 			return True
diff --git a/erpnext/accounts/doctype/purchase_invoice/test_purchase_invoice.py b/erpnext/accounts/doctype/purchase_invoice/test_purchase_invoice.py
index 02d60dc..569a48a 100644
--- a/erpnext/accounts/doctype/purchase_invoice/test_purchase_invoice.py
+++ b/erpnext/accounts/doctype/purchase_invoice/test_purchase_invoice.py
@@ -1698,12 +1698,16 @@
 		pi.submit()
 
 		self.assertEqual(pi.advances[0].allocated_amount, 500)
+
+		# Check GL Entry against payment doctype
 		expected_gle = [
-			["Creditors - _TC", 500, 1000, nowdate()],
+			["Cash - _TC", 0.0, 500, nowdate()],
+			["Creditors - _TC", 500, 0.0, nowdate()],
+			["Creditors - _TC", 500, 0.0, nowdate()],
 			["Debtors - _TC", 0.0, 500, nowdate()],
-			["Stock Received But Not Billed - _TC", 1000, 0.0, nowdate()],
 		]
-		check_gl_entries(self, pi.name, expected_gle, nowdate())
+
+		check_gl_entries(self, pe.name, expected_gle, nowdate(), voucher_type="Payment Entry")
 		self.assertEqual(pi.outstanding_amount, 500)
 
 		set_advance_flag(company="_Test Company", flag=0, default_account="")
@@ -1735,18 +1739,18 @@
 	)
 
 
-def check_gl_entries(doc, voucher_no, expected_gle, posting_date):
+def check_gl_entries(doc, voucher_no, expected_gle, posting_date, voucher_type="Purchase Invoice"):
 	gl = frappe.qb.DocType("GL Entry")
 	q = (
 		frappe.qb.from_(gl)
 		.select(gl.account, gl.debit, gl.credit, gl.posting_date)
 		.where(
-			(gl.voucher_type == "Sales Invoice")
+			(gl.voucher_type == voucher_type)
 			& (gl.voucher_no == voucher_no)
 			& (gl.posting_date >= posting_date)
 			& (gl.is_cancelled == 0)
 		)
-		.orderby(gl.posting_date, gl.account)
+		.orderby(gl.posting_date, gl.account, gl.creation)
 	)
 	gl_entries = q.run(as_dict=True)
 
diff --git a/erpnext/accounts/doctype/sales_invoice/test_sales_invoice.py b/erpnext/accounts/doctype/sales_invoice/test_sales_invoice.py
index c23ef34..4cf3aba 100644
--- a/erpnext/accounts/doctype/sales_invoice/test_sales_invoice.py
+++ b/erpnext/accounts/doctype/sales_invoice/test_sales_invoice.py
@@ -3312,7 +3312,6 @@
 
 	def test_advance_entries_as_liability(self):
 		from erpnext.accounts.doctype.payment_entry.test_payment_entry import create_payment_entry
-		from erpnext.accounts.report.accounts_receivable.accounts_receivable import execute
 
 		set_advance_flag(company="_Test Company", flag=1, default_account="Creditors - _TC")
 
@@ -3344,12 +3343,16 @@
 		si.submit()
 
 		self.assertEqual(si.advances[0].allocated_amount, 500)
+
+		# Check GL Entry against payment doctype
 		expected_gle = [
+			["Cash - _TC", 1000, 0.0, nowdate()],
 			["Creditors - _TC", 500, 0.0, nowdate()],
-			["Debtors - _TC", 500, 500, nowdate()],
-			["Sales - _TC", 0.0, 500, nowdate()],
+			["Debtors - _TC", 0.0, 1000, nowdate()],
+			["Debtors - _TC", 0.0, 500, nowdate()],
 		]
-		check_gl_entries(self, si.name, expected_gle, nowdate())
+
+		check_gl_entries(self, pe.name, expected_gle, nowdate(), voucher_type="Payment Entry")
 		self.assertEqual(si.outstanding_amount, 0)
 
 		set_advance_flag(company="_Test Company", flag=0, default_account="")
@@ -3401,18 +3404,18 @@
 	return si
 
 
-def check_gl_entries(doc, voucher_no, expected_gle, posting_date):
+def check_gl_entries(doc, voucher_no, expected_gle, posting_date, voucher_type="Sales Invoice"):
 	gl = frappe.qb.DocType("GL Entry")
 	q = (
 		frappe.qb.from_(gl)
 		.select(gl.account, gl.debit, gl.credit, gl.posting_date)
 		.where(
-			(gl.voucher_type == "Sales Invoice")
+			(gl.voucher_type == voucher_type)
 			& (gl.voucher_no == voucher_no)
 			& (gl.posting_date >= posting_date)
 			& (gl.is_cancelled == 0)
 		)
-		.orderby(gl.posting_date, gl.account)
+		.orderby(gl.posting_date, gl.account, gl.creation)
 	)
 	gl_entries = q.run(as_dict=True)
 
diff --git a/erpnext/accounts/utils.py b/erpnext/accounts/utils.py
index e69dcd4..c1d3653 100644
--- a/erpnext/accounts/utils.py
+++ b/erpnext/accounts/utils.py
@@ -436,9 +436,7 @@
 	return cc.name
 
 
-def reconcile_against_document(
-	args, skip_ref_details_update_for_pe=False, is_reconcile=True
-):  # nosemgrep
+def reconcile_against_document(args, skip_ref_details_update_for_pe=False):  # nosemgrep
 	"""
 	Cancel PE or JV, Update against document, split if required and resubmit
 	"""
@@ -474,7 +472,7 @@
 		doc.save(ignore_permissions=True)
 		# re-submit advance entry
 		doc = frappe.get_doc(entry.voucher_type, entry.voucher_no)
-		gl_map = doc.build_gl_map(is_reconcile)
+		gl_map = doc.build_gl_map()
 		create_payment_ledger_entry(gl_map, update_outstanding="No", cancel=0, adv_adj=1)
 
 		# Only update outstanding for newly linked vouchers
diff --git a/erpnext/controllers/accounts_controller.py b/erpnext/controllers/accounts_controller.py
index dc499b9..80f8430 100644
--- a/erpnext/controllers/accounts_controller.py
+++ b/erpnext/controllers/accounts_controller.py
@@ -1025,7 +1025,7 @@
 						)
 					)
 
-	def update_against_document_in_jv(self, is_reconcile=True):
+	def update_against_document_in_jv(self):
 		"""
 		Links invoice and advance voucher:
 		        1. cancel advance voucher
@@ -1082,7 +1082,7 @@
 		if lst:
 			from erpnext.accounts.utils import reconcile_against_document
 
-			reconcile_against_document(lst, is_reconcile)
+			reconcile_against_document(lst)
 
 	def on_cancel(self):
 		from erpnext.accounts.utils import unlink_ref_doc_from_payment_entries