fix: set is_return & return_against in POS Invoice Reference table
diff --git a/erpnext/patches.txt b/erpnext/patches.txt
index 3199912..a135484 100644
--- a/erpnext/patches.txt
+++ b/erpnext/patches.txt
@@ -361,3 +361,4 @@
 erpnext.patches.v14_0.update_employee_advance_status
 erpnext.patches.v13_0.add_cost_center_in_loans
 erpnext.patches.v13_0.remove_unknown_links_to_prod_plan_items
+erpnext.patches.v13_0.set_return_against_in_pos_invoice_references
\ No newline at end of file
diff --git a/erpnext/patches/v13_0/set_return_against_in_pos_invoice_references.py b/erpnext/patches/v13_0/set_return_against_in_pos_invoice_references.py
new file mode 100644
index 0000000..6c24f52
--- /dev/null
+++ b/erpnext/patches/v13_0/set_return_against_in_pos_invoice_references.py
@@ -0,0 +1,38 @@
+import frappe
+
+
+def execute():
+	'''
+	Fetch and Set is_return & return_against from POS Invoice in POS Invoice References table.
+	'''
+
+	POSClosingEntry = frappe.qb.DocType("POS Closing Entry")
+	open_pos_closing_entries = (
+		frappe.qb
+			.from_(POSClosingEntry)
+			.select(POSClosingEntry.name)
+			.where(POSClosingEntry.docstatus == 0)
+			.run(pluck=True)
+		)
+
+	if not open_pos_closing_entries:
+		return
+
+	POSInvoiceReference = frappe.qb.DocType("POS Invoice Reference")
+	POSInvoice = frappe.qb.DocType("POS Invoice")
+	pos_invoice_references = (
+		frappe.qb
+			.from_(POSInvoiceReference)
+			.join(POSInvoice)
+			.on(POSInvoiceReference.pos_invoice == POSInvoice.name)
+			.select(POSInvoiceReference.name, POSInvoice.is_return, POSInvoice.return_against)
+			.where(POSInvoiceReference.parent.isin(open_pos_closing_entries))
+			.run(as_dict=True)
+	)
+
+	for row in pos_invoice_references:
+		frappe.db.set_value("POS Invoice Reference", row.name, "is_return", row.is_return)
+		if row.is_return:
+			frappe.db.set_value("POS Invoice Reference", row.name, "return_against", row.return_against)
+		else:
+			frappe.db.set_value("POS Invoice Reference", row.name, "return_against", None)