fix: Add order data
diff --git a/erpnext/hooks.py b/erpnext/hooks.py
index 9e271c9..7eaa146 100644
--- a/erpnext/hooks.py
+++ b/erpnext/hooks.py
@@ -79,9 +79,8 @@
 	"supplier",
 ]
 demo_transaction_doctypes = [
-	"purchase_invoice",
-	"sales_invoice",
-	"payment_entry",
+	"purchase_order",
+	"sales_order",
 ]
 
 jinja = {
diff --git a/erpnext/setup/demo.py b/erpnext/setup/demo.py
index bb64ba1..78b31e4 100644
--- a/erpnext/setup/demo.py
+++ b/erpnext/setup/demo.py
@@ -9,8 +9,10 @@
 from frappe import _
 from frappe.utils import add_days, getdate
 
-import erpnext
+from erpnext.accounts.doctype.payment_entry.payment_entry import get_payment_entry
 from erpnext.accounts.utils import get_fiscal_year
+from erpnext.buying.doctype.purchase_order.purchase_order import make_purchase_invoice
+from erpnext.selling.doctype.sales_order.sales_order import make_sales_invoice
 from erpnext.setup.setup_wizard.operations.install_fixtures import create_bank_account
 
 
@@ -88,8 +90,8 @@
 
 
 def make_transactions(company):
-	start_date = get_fiscal_year(date=getdate())[1]
 	frappe.db.set_single_value("Stock Settings", "allow_negative_stock", 1)
+	start_date = get_fiscal_year(date=getdate())[1]
 
 	for doctype in frappe.get_hooks("demo_transaction_doctypes"):
 		data = read_data_file_using_hooks(doctype)
@@ -97,55 +99,63 @@
 			for item in json.loads(data):
 				create_transaction(item, company, start_date)
 
+	convert_order_to_invoices()
+	frappe.db.set_single_value("Stock Settings", "allow_negative_stock", 0)
+
 
 def create_transaction(doctype, company, start_date):
+	document_type = doctype.get("doctype")
 	warehouse = get_warehouse(company)
-	posting_date = (
-		start_date if doctype.get("doctype") == "Purchase Invoice" else get_random_date(start_date)
-	)
-	bank_account, default_receivable_account = frappe.db.get_value(
-		"Company", company, ["default_bank_account", "default_receivable_account"]
-	)
-	bank_field = "paid_to" if doctype.get("party_type") == "Customer" else "paid_from"
+
+	if document_type == "Purchase Order":
+		posting_date = get_random_date(start_date, 1, 30)
+	else:
+		posting_date = get_random_date(start_date, 31, 365)
 
 	doctype.update(
 		{
 			"company": company,
 			"set_posting_time": 1,
-			"posting_date": posting_date,
+			"transaction_date": posting_date,
+			"schedule_date": posting_date,
+			"delivery_date": posting_date,
 			"set_warehouse": warehouse,
-			bank_field: bank_account,
-			"reference_date": posting_date,
 		}
 	)
 
-	income_account, expense_account = frappe.db.get_value(
-		"Company", company, ["default_income_account", "default_expense_account"]
-	)
-
-	if doctype in ("Purchase Invoice", "Sales Invoice"):
-		for item in doctype.get("items") or []:
-			item.update(
-				{
-					"cost_center": erpnext.get_default_cost_center(company),
-					"income_account": income_account,
-					"expense_account": expense_account,
-				}
-			)
-	elif doctype == "Journal Entry":
-		pass
-		# update_accounts(doctype, bank_account, default_receivable_account)
-
 	doc = frappe.get_doc(doctype)
 	doc.save(ignore_permissions=True)
 	doc.submit()
 
 
-# def update_accounts(doctype, company, bank_account):
+def convert_order_to_invoices():
+	for document in ["Purchase Order", "Sales Order"]:
+		# Keep some orders intentionally unbilled/unpaid
+		for i, order in enumerate(
+			frappe.db.get_all(
+				document, filters={"docstatus": 1}, fields=["name", "transaction_date"], limit=6
+			)
+		):
+
+			if document == "Purchase Order":
+				invoice = make_purchase_invoice(order.name)
+			elif document == "Sales Order":
+				invoice = make_sales_invoice(order.name)
+
+			invoice.set_posting_time = 1
+			invoice.posting_date = order.transaction_date
+			invoice.due_date = order.transaction_date
+			invoice.update_stock = 1
+			invoice.submit()
+
+			if i % 2 != 0:
+				payment = get_payment_entry(invoice.doctype, invoice.name)
+				payment.reference_no = invoice.name
+				payment.submit()
 
 
-def get_random_date(start_date):
-	return add_days(start_date, randint(1, 365))
+def get_random_date(start_date, start_range, end_range):
+	return add_days(start_date, randint(start_range, end_range))
 
 
 def create_transaction_deletion_record(company):
@@ -164,9 +174,9 @@
 
 
 def clear_demo_record(document):
-	doc_type = document.get("doctype")
+	document_type = document.get("doctype")
 	del document["doctype"]
-	doc = frappe.get_doc(doc_type, document)
+	doc = frappe.get_doc(document_type, document)
 	frappe.delete_doc(doc.doctype, doc.name, ignore_permissions=True)
 
 
@@ -184,7 +194,5 @@
 
 
 def get_warehouse(company):
-	abbr = frappe.db.get_value("Company", company, "abbr")
-	warehouse = "Stores - {0}".format(abbr)
-
-	return warehouse
+	warehouses = frappe.db.get_all("Warehouse", {"company": company, "is_group": 0})
+	return warehouses[randint(0, 3)].name
diff --git a/erpnext/setup/demo_data/purchase_invoice.json b/erpnext/setup/demo_data/purchase_order.json
similarity index 69%
rename from erpnext/setup/demo_data/purchase_invoice.json
rename to erpnext/setup/demo_data/purchase_order.json
index 7d5e97d..42ffa88 100644
--- a/erpnext/setup/demo_data/purchase_invoice.json
+++ b/erpnext/setup/demo_data/purchase_order.json
@@ -1,12 +1,12 @@
 [
     {
         "conversion_rate": 1.0,
-        "supplier": "DQ Industries",
-        "doctype": "Purchase Invoice",
+        "supplier": "Zuckerman Security Ltd.",
+        "doctype": "Purchase Order",
         "update_stock": 1,
         "items": [
             {
-                "doctype": "Purchase Invoice Item",
+                "doctype": "Purchase Order Item",
                 "item_code": "SKU001",
                 "parentfield": "items",
                 "qty": 100.0,
@@ -18,11 +18,11 @@
     {
         "conversion_rate": 1.0,
         "supplier": "MA Inc.",
-        "doctype": "Purchase Invoice",
+        "doctype": "Purchase Order",
         "update_stock": 1,
         "items": [
             {
-                "doctype": "Purchase Invoice Item",
+                "doctype": "Purchase Order Item",
                 "item_code": "SKU002",
                 "parentfield": "items",
                 "qty": 50.0,
@@ -33,15 +33,15 @@
     },
     {
         "conversion_rate": 1.0,
-        "supplier": "KC Corp.",
-        "doctype": "Purchase Invoice",
+        "supplier": "Summit Traders Ltd.",
+        "doctype": "Purchase Order",
         "update_stock": 1,
         "items": [
             {
-                "doctype": "Purchase Invoice Item",
+                "doctype": "Purchase Order Item",
                 "item_code": "SKU003",
                 "parentfield": "items",
-                "qty": 75.0,
+                "qty": 200.0,
                 "rate": 523.0,
                 "conversion_factor": 1
             }
@@ -49,12 +49,12 @@
     },
     {
         "conversion_rate": 1.0,
-        "supplier": "DQ Industries",
-        "doctype": "Purchase Invoice",
+        "supplier": "Zuckerman Security Ltd.",
+        "doctype": "Purchase Order",
         "update_stock": 1,
         "items": [
             {
-                "doctype": "Purchase Invoice Item",
+                "doctype": "Purchase Order Item",
                 "item_code": "SKU004",
                 "parentfield": "items",
                 "qty": 60.0,
@@ -66,14 +66,14 @@
     {
         "conversion_rate": 1.0,
         "supplier": "MA Inc.",
-        "doctype": "Purchase Invoice",
+        "doctype": "Purchase Order",
         "update_stock": 1,
         "items": [
             {
-                "doctype": "Purchase Invoice Item",
+                "doctype": "Purchase Order Item",
                 "item_code": "SKU005",
                 "parentfield": "items",
-                "qty": 82.0,
+                "qty": 182.0,
                 "rate": 222.0,
                 "conversion_factor": 1
             }
@@ -81,15 +81,15 @@
     },
     {
         "conversion_rate": 1.0,
-        "supplier": "KC Corp.",
-        "doctype": "Purchase Invoice",
+        "supplier": "Summit Traders Ltd.",
+        "doctype": "Purchase Order",
         "update_stock": 1,
         "items": [
             {
-                "doctype": "Purchase Invoice Item",
+                "doctype": "Purchase Order Item",
                 "item_code": "SKU006",
                 "parentfield": "items",
-                "qty": 50.0,
+                "qty": 250.0,
                 "rate": 420.0,
                 "conversion_factor": 1
             }
@@ -97,15 +97,15 @@
     },
     {
         "conversion_rate": 1.0,
-        "supplier": "DQ Industries",
-        "doctype": "Purchase Invoice",
+        "supplier": "Zuckerman Security Ltd.",
+        "doctype": "Purchase Order",
         "update_stock": 1,
         "items": [
             {
-                "doctype": "Purchase Invoice Item",
+                "doctype": "Purchase Order Item",
                 "item_code": "SKU007",
                 "parentfield": "items",
-                "qty": 90.0,
+                "qty": 190.0,
                 "rate": 375.0,
                 "conversion_factor": 1
             }
@@ -114,11 +114,11 @@
     {
         "conversion_rate": 1.0,
         "supplier": "MA Inc.",
-        "doctype": "Purchase Invoice",
+        "doctype": "Purchase Order",
         "update_stock": 1,
         "items": [
             {
-                "doctype": "Purchase Invoice Item",
+                "doctype": "Purchase Order Item",
                 "item_code": "SKU008",
                 "parentfield": "items",
                 "qty": 121.0,
@@ -129,12 +129,12 @@
     },
     {
         "conversion_rate": 1.0,
-        "supplier": "KC Corp.",
-        "doctype": "Purchase Invoice",
+        "supplier": "Summit Traders Ltd.",
+        "doctype": "Purchase Order",
         "update_stock": 1,
         "items": [
             {
-                "doctype": "Purchase Invoice Item",
+                "doctype": "Purchase Order Item",
                 "item_code": "SKU009",
                 "parentfield": "items",
                 "qty": 76.0,
@@ -145,12 +145,12 @@
     },
     {
         "conversion_rate": 1.0,
-        "supplier": "DQ Industries",
-        "doctype": "Purchase Invoice",
+        "supplier": "Zuckerman Security Ltd.",
+        "doctype": "Purchase Order",
         "update_stock": 1,
         "items": [
             {
-                "doctype": "Purchase Invoice Item",
+                "doctype": "Purchase Order Item",
                 "item_code": "SKU010",
                 "parentfield": "items",
                 "qty": 78.0,
diff --git a/erpnext/setup/demo_data/sales_invoice.json b/erpnext/setup/demo_data/sales_order.json
similarity index 69%
rename from erpnext/setup/demo_data/sales_invoice.json
rename to erpnext/setup/demo_data/sales_order.json
index 6bbfcbe..d390637 100644
--- a/erpnext/setup/demo_data/sales_invoice.json
+++ b/erpnext/setup/demo_data/sales_order.json
@@ -1,87 +1,87 @@
 [
     {
         "conversion_rate": 1.0,
-        "customer": "ABC Enterprises",
-        "doctype": "Sales Invoice",
+        "customer": "Grant Plastics Ltd.",
+        "doctype": "Sales Order",
         "update_stock": 1,
         "items": [
             {
-                "doctype": "Sales Invoice Item",
+                "doctype": "Sales Order Item",
                 "item_code": "SKU004",
                 "parentfield": "items",
                 "qty": 20.0,
-                "rate": 500.0,
+                "rate": 1000.0,
                 "conversion_factor": 1
             }
         ]
     },
     {
         "conversion_rate": 1.0,
-        "customer": "XYZ Corporation",
-        "doctype": "Sales Invoice",
+        "customer": "West View Software Ltd.",
+        "doctype": "Sales Order",
         "update_stock": 1,
         "items": [
             {
-                "doctype": "Sales Invoice Item",
+                "doctype": "Sales Order Item",
                 "item_code": "SKU001",
                 "parentfield": "items",
                 "qty": 25.0,
-                "rate": 600.0,
+                "rate": 800.0,
                 "conversion_factor": 1
             },
             {
-                "doctype": "Sales Invoice Item",
+                "doctype": "Sales Order Item",
                 "item_code": "SKU002",
                 "parentfield": "items",
                 "qty": 15.0,
-                "rate": 300.0,
+                "rate": 800.0,
                 "conversion_factor": 1
             }
         ]
     },
     {
         "conversion_rate": 1.0,
-        "customer": "XYZ Corporation",
-        "doctype": "Sales Invoice",
+        "customer": "West View Software Ltd.",
+        "doctype": "Sales Order",
         "update_stock": 1,
         "items": [
             {
-                "doctype": "Sales Invoice Item",
+                "doctype": "Sales Order Item",
                 "item_code": "SKU003",
                 "parentfield": "items",
                 "qty": 100,
-                "rate": 300.0,
+                "rate": 500.0,
                 "conversion_factor": 1
             },
             {
-                "doctype": "Sales Invoice Item",
+                "doctype": "Sales Order Item",
                 "item_code": "SKU006",
                 "parentfield": "items",
                 "qty": 100,
-                "rate": 300.0,
+                "rate": 890.0,
                 "conversion_factor": 1
             },
             {
-                "doctype": "Sales Invoice Item",
+                "doctype": "Sales Order Item",
                 "item_code": "SKU007",
                 "parentfield": "items",
                 "qty": 100,
-                "rate": 300.0,
+                "rate": 900.0,
                 "conversion_factor": 1
             }
         ]
     },
     {
         "conversion_rate": 1.0,
-        "customer": "KJPR Pvt. Ltd.",
-        "doctype": "Sales Invoice",
+        "customer": "Palmer Productions Ltd.",
+        "doctype": "Sales Order",
         "update_stock": 1,
         "items": [
             {
-                "doctype": "Sales Invoice Item",
+                "doctype": "Sales Order Item",
                 "item_code": "SKU005",
                 "parentfield": "items",
-                "qty": 200.0,
+                "qty": 150.0,
                 "rate": 100.0,
                 "conversion_factor": 1
             }
@@ -89,12 +89,12 @@
     },
     {
         "conversion_rate": 1.0,
-        "customer": "ABC Enterprises",
-        "doctype": "Sales Invoice",
+        "customer": "Grant Plastics Ltd.",
+        "doctype": "Sales Order",
         "update_stock": 1,
         "items": [
             {
-                "doctype": "Sales Invoice Item",
+                "doctype": "Sales Order Item",
                 "item_code": "SKU008",
                 "parentfield": "items",
                 "qty": 20.0,
@@ -102,7 +102,7 @@
                 "conversion_factor": 1
             },
             {
-                "doctype": "Sales Invoice Item",
+                "doctype": "Sales Order Item",
                 "item_code": "SKU009",
                 "parentfield": "items",
                 "qty": 40.0,
@@ -110,7 +110,7 @@
                 "conversion_factor": 1
             },
             {
-                "doctype": "Sales Invoice Item",
+                "doctype": "Sales Order Item",
                 "item_code": "SKU010",
                 "parentfield": "items",
                 "qty": 50.0,