[fix] Billed Amt does not get updated in Purchase Receipt, if Invoice exists and item has been returned once before
diff --git a/erpnext/buying/doctype/purchase_order/purchase_order.py b/erpnext/buying/doctype/purchase_order/purchase_order.py
index b3bbb92..7e5020a 100644
--- a/erpnext/buying/doctype/purchase_order/purchase_order.py
+++ b/erpnext/buying/doctype/purchase_order/purchase_order.py
@@ -270,6 +270,9 @@
 	doc = get_mapped_doc("Purchase Order", source_name,	{
 		"Purchase Order": {
 			"doctype": "Purchase Receipt",
+			"field_map": {
+				"per_billed": "per_billed"
+			},
 			"validation": {
 				"docstatus": ["=", 1],
 			}
diff --git a/erpnext/stock/doctype/purchase_receipt/purchase_receipt.py b/erpnext/stock/doctype/purchase_receipt/purchase_receipt.py
index 647eb67..f60eb6a 100644
--- a/erpnext/stock/doctype/purchase_receipt/purchase_receipt.py
+++ b/erpnext/stock/doctype/purchase_receipt/purchase_receipt.py
@@ -119,7 +119,8 @@
 		frappe.db.set(self, 'status', 'Submitted')
 
 		self.update_prevdoc_status()
-		self.update_billing_status()
+		if self.per_billed < 100:
+			self.update_billing_status()
 
 		if not self.is_return:
 			update_last_purchase_rate(self, 1)