diff --git a/.travis.yml b/.travis.yml
index 0b3b49f..beab4e1 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -15,6 +15,8 @@
   - mysql
 
 install:
+  - pip install flake8==3.3.0
+  - flake8 . --count --select=E901,E999,F821,F822,F823 --show-source --statistics
   - sudo rm /etc/apt/sources.list.d/docker.list
   - sudo apt-get purge -y mysql-common mysql-server mysql-client
   - nvm install v7.10.0
diff --git a/README.md b/README.md
index 1fae1ce..74ea7fc 100644
--- a/README.md
+++ b/README.md
@@ -6,10 +6,9 @@
 
 Includes: Accounting, Inventory, Manufacturing, CRM, Sales, Purchase, Project Management, HRMS. Requires MariaDB.
 
-ERPNext is built on the [Frappe](https://github.com/frappe/frappe) Framework, a full-stack web app framework in Python & JavaScript.
+ERPNext is built on the [Frappé](https://github.com/frappe/frappe) Framework, a full-stack web app framework in Python & JavaScript.
 
-- [User Guide](https://frappe.github.io/erpnext/)
-- [Getting Help](http://erpnext.org/getting-help.html)
+- [User Guide](https://erpnext.org/docs/user)
 - [Discussion Forum](https://discuss.erpnext.com/)
 
 ---
@@ -34,7 +33,7 @@
 
 GNU/General Public License (see LICENSE.txt)
 
-The ERPNext code is licensed as GNU General Public License (v3) and the Documentation is licensed as Creative Commons (CC-BY-SA-3.0) and the copyright is owned by Frappe Technologies Pvt Ltd (Frappe) and Contributors.
+The ERPNext code is licensed as GNU General Public License (v3) and the Documentation is licensed as Creative Commons (CC-BY-SA-3.0) and the copyright is owned by Frappé Technologies Pvt Ltd (Frappé) and Contributors.
 
 ---
 
@@ -49,19 +48,19 @@
 
 ## Logo and Trademark
 
-The brand name ERPNext and the logo are trademarks of Frappe Technologies Pvt. Ltd.
+The brand name ERPNext and the logo are trademarks of Frappé Technologies Pvt. Ltd.
 
 ### Introduction
 
-Frappe Technologies Pvt. Ltd. (Frappe) owns and oversees the trademarks for the ERPNext name and logos. We have developed this trademark usage policy with the following goals in mind:
+Frappé Technologies Pvt. Ltd. (Frappé) owns and oversees the trademarks for the ERPNext name and logos. We have developed this trademark usage policy with the following goals in mind:
 
 - We’d like to make it easy for anyone to use the ERPNext name or logo for community-oriented efforts that help spread and improve ERPNext.
 - We’d like to make it clear how ERPNext-related businesses and projects can (and cannot) use the ERPNext name and logo.
 - We’d like to make it hard for anyone to use the ERPNext name and logo to unfairly profit from, trick or confuse people who are looking for official ERPNext resources.
 
-### Frappe Trademark Usage Policy
+### Frappé Trademark Usage Policy
 
-Permission from Frappe is required to use the ERPNext name or logo as part of any project, product, service, domain or company name.
+Permission from Frappé is required to use the ERPNext name or logo as part of any project, product, service, domain or company name.
 
 We will grant permission to use the ERPNext name and logo for projects that meet the following criteria:
 
@@ -72,7 +71,7 @@
 
 Use of the ERPNext name and logo is additionally allowed in the following situations:
 
-All other ERPNext-related businesses or projects can use the ERPNext name and logo to refer to and explain their services, but they cannot use them as part of a product, project, service, domain, or company name and they cannot use them in any way that suggests an affiliation with or endorsement by ERPNext or Frappe Technologies or the ERPNext open source project. For example, a consulting company can describe its business as “123 Web Services, offering ERPNext consulting for small businesses,” but cannot call its business “The ERPNext Consulting Company.”
+All other ERPNext-related businesses or projects can use the ERPNext name and logo to refer to and explain their services, but they cannot use them as part of a product, project, service, domain, or company name and they cannot use them in any way that suggests an affiliation with or endorsement by ERPNext or Frappé Technologies or the ERPNext open source project. For example, a consulting company can describe its business as “123 Web Services, offering ERPNext consulting for small businesses,” but cannot call its business “The ERPNext Consulting Company.”
 
 Similarly, it’s OK to use the ERPNext logo as part of a page that describes your products or services, but it is not OK to use it as part of your company or product logo or branding itself. Under no circumstances is it permitted to use ERPNext as part of a top-level domain name.
 
@@ -80,6 +79,6 @@
 
 Please note that it is not the goal of this policy to limit commercial activity around ERPNext. We encourage ERPNext-based businesses, and we would love to see hundreds of them.
 
-When in doubt about your use of the ERPNext name or logo, please contact Frappe Technologies for clarification.
+When in doubt about your use of the ERPNext name or logo, please contact Frappé Technologies for clarification.
 
 (inspired by WordPress)
diff --git a/attributions.md b/attributions.md
index 9cd6eb8..21a44fb 100644
--- a/attributions.md
+++ b/attributions.md
@@ -1,6 +1,6 @@
 ## ERPNext includes these public works
 
-For Frappe Framework, please see attributions.md at https://github.com/frappe/frappe/
+For Frappé Framework, please see attributions.md at https://github.com/frappe/frappe/
 
 #### Images
 
diff --git a/erpnext/accounts/doctype/account/chart_of_accounts/import_from_openerp.py b/erpnext/accounts/doctype/account/chart_of_accounts/import_from_openerp.py
index 9893a5b..cb95bd1 100644
--- a/erpnext/accounts/doctype/account/chart_of_accounts/import_from_openerp.py
+++ b/erpnext/accounts/doctype/account/chart_of_accounts/import_from_openerp.py
@@ -84,7 +84,7 @@
 					try:
 						csv_content.setdefault(file_type, [])\
 							.append(read_csv_content(csvfile.read()))
-					except Exception, e:
+					except Exception as e:
 						continue
 	return csv_content
 
diff --git a/erpnext/accounts/doctype/account/test_make_tax_account.js b/erpnext/accounts/doctype/account/test_make_tax_account.js
new file mode 100644
index 0000000..a0e09a1
--- /dev/null
+++ b/erpnext/accounts/doctype/account/test_make_tax_account.js
@@ -0,0 +1,46 @@
+QUnit.module('accounts');
+QUnit.test("test account", assert => {
+	assert.expect(3);
+	let done = assert.async();
+	frappe.run_serially([
+		() => frappe.set_route('Tree', 'Account'),
+		() => frappe.click_button('Expand All'),
+		() => frappe.click_link('Duties and Taxes - '+ frappe.get_abbr(frappe.defaults.get_default("Company"))),
+		() => {
+			if($('a:contains("CGST"):visible').length == 0){
+				return frappe.map_tax.make('CGST', 9);
+			}
+		},
+		() => {
+			if($('a:contains("SGST"):visible').length == 0){
+				return frappe.map_tax.make('SGST', 9);
+			}
+		},
+		() => {
+			if($('a:contains("IGST"):visible').length == 0){
+				return frappe.map_tax.make('IGST', 18);
+			}
+		},
+		() => {
+			assert.ok($('a:contains("CGST"):visible').length!=0, "CGST Checked");
+			assert.ok($('a:contains("SGST"):visible').length!=0, "SGST Checked");
+			assert.ok($('a:contains("IGST"):visible').length!=0, "IGST Checked");
+		},
+		() => done()
+	]);
+});
+
+
+frappe.map_tax = {
+	make:function(text,rate){
+		return frappe.run_serially([
+			() => frappe.click_button('Add Child'),
+			() => frappe.timeout(0.2),
+			() => cur_dialog.set_value('account_name',text),
+			() => cur_dialog.set_value('account_type','Tax'),
+			() => cur_dialog.set_value('tax_rate',rate),
+			() => cur_dialog.set_value('account_currency','INR'),
+			() => frappe.click_button('Create New'),
+		]);
+	}
+};
diff --git a/erpnext/accounts/doctype/payment_entry/payment_entry.js b/erpnext/accounts/doctype/payment_entry/payment_entry.js
index eb0f474..05986a0 100644
--- a/erpnext/accounts/doctype/payment_entry/payment_entry.js
+++ b/erpnext/accounts/doctype/payment_entry/payment_entry.js
@@ -28,7 +28,7 @@
 		frm.set_query("party_type", function() {
 			return{
 				"filters": {
-					"name": ["in",["Customer","Supplier"]],
+					"name": ["in",["Customer","Supplier", "Employee"]],
 				}
 			}
 		});
@@ -70,6 +70,8 @@
 				var doctypes = ["Sales Order", "Sales Invoice", "Journal Entry"];
 			} else if (frm.doc.party_type=="Supplier") {
 				var doctypes = ["Purchase Order", "Purchase Invoice", "Journal Entry"];
+			} else if (frm.doc.party_type=="Employee") {
+				var doctypes = ["Expense Claim", "Journal Entry"];
 			} else {
 				var doctypes = ["Journal Entry"];
 			}
@@ -82,12 +84,18 @@
 		frm.set_query("reference_name", "references", function(doc, cdt, cdn) {
 			child = locals[cdt][cdn];
 			filters = {"docstatus": 1, "company": doc.company};
-			party_type_doctypes = ['Sales Invoice', 'Sales Order', 'Purchase Invoice', 'Purchase Order'];
+			party_type_doctypes = ['Sales Invoice', 'Sales Order', 'Purchase Invoice', 
+				'Purchase Order', 'Expense Claim'];
 
 			if (in_list(party_type_doctypes, child.reference_doctype)) {
 				filters[doc.party_type.toLowerCase()] = doc.party;
 			}
 
+			if(child.reference_doctype == "Expense Claim") {
+				filters["status"] = "Approved";
+				filters["is_paid"] = 0;
+			}
+
 			return {
 				filters: filters
 			};
@@ -200,9 +208,15 @@
 			});
 		} else {
 			if(!frm.doc.party)
-				frm.set_value("party_type", frm.doc.payment_type=="Receive" ? "Customer" : "Supplier");
+			{
+				if (frm.doc.payment_type=="Receive"){
+					frm.set_value("party_type", "Customer");
+				}
+			}
 			else
+			{
 				frm.events.party(frm);
+			}
 
 			if(frm.doc.mode_of_payment)
 				frm.events.mode_of_payment(frm);
@@ -339,7 +353,8 @@
 					method: "erpnext.setup.utils.get_exchange_rate",
 					args: {
 						from_currency: frm.doc.paid_from_account_currency,
-						to_currency: company_currency
+						to_currency: company_currency,
+						transaction_date: frm.doc.posting_date
 					},
 					callback: function(r, rt) {
 						frm.set_value("source_exchange_rate", r.message);
@@ -486,7 +501,7 @@
 						c.reference_name = d.voucher_no;
 						c.total_amount = d.invoice_amount;
 						c.outstanding_amount = d.outstanding_amount;
-						if(!in_list(["Sales Order", "Purchase Order"], d.voucher_type)) {
+						if(!in_list(["Sales Order", "Purchase Order", "Expense Claim"], d.voucher_type)) {
 							if(flt(d.outstanding_amount) > 0)
 								total_positive_outstanding += flt(d.outstanding_amount);
 							else
@@ -501,14 +516,15 @@
 						} else {
 							c.exchange_rate = 1;
 						}
-						if (in_list(['Sales Invoice', 'Purchase Invoice'], d.reference_doctype)){
+						if (in_list(['Sales Invoice', 'Purchase Invoice', "Expense Claim"], d.reference_doctype)){
 							c.due_date = d.due_date;
 						}
 					});
 
 					if(
 						(frm.doc.payment_type=="Receive" && frm.doc.party_type=="Customer") ||
-						(frm.doc.payment_type=="Pay" && frm.doc.party_type=="Supplier")
+						(frm.doc.payment_type=="Pay" && frm.doc.party_type=="Supplier")  ||
+						(frm.doc.payment_type=="Pay" && frm.doc.party_type=="Employee")
 					) {
 						if(total_positive_outstanding > total_negative_outstanding)
 							frm.set_value("paid_amount",
@@ -553,7 +569,8 @@
 
 		var allocated_negative_outstanding = 0;
 		if((frm.doc.payment_type=="Receive" && frm.doc.party_type=="Customer") ||
-				(frm.doc.payment_type=="Pay" && frm.doc.party_type=="Supplier")) {
+				(frm.doc.payment_type=="Pay" && frm.doc.party_type=="Supplier") ||
+				(frm.doc.payment_type=="Pay" && frm.doc.party_type=="Employee")) {
 			if(total_positive_outstanding_including_order > paid_amount) {
 				var remaining_outstanding = total_positive_outstanding_including_order - paid_amount;
 				allocated_negative_outstanding = total_negative_outstanding < remaining_outstanding ?
@@ -694,6 +711,14 @@
 				frappe.msgprint(__("Row #{0}: Reference Document Type must be one of Purchase Order, Purchase Invoice or Journal Entry", [row.idx]));
 				return false;
 			}
+			
+			if(frm.doc.party_type=="Employee" &&
+				!in_list(["Expense Claim", "Journal Entry"], row.reference_doctype)
+			) {
+				frappe.model.set_value(row.doctype, row.name, "against_voucher_type", null);
+				frappe.msgprint(__("Row #{0}: Reference Document Type must be one of Expense Claim or Journal Entry", [row.idx]));
+				return false;
+			}
 		}
 
 		if (row) {
diff --git a/erpnext/accounts/doctype/payment_entry/payment_entry.py b/erpnext/accounts/doctype/payment_entry/payment_entry.py
index e9471b7..7bb9a52 100644
--- a/erpnext/accounts/doctype/payment_entry/payment_entry.py
+++ b/erpnext/accounts/doctype/payment_entry/payment_entry.py
@@ -12,27 +12,27 @@
 	import get_average_exchange_rate, get_default_bank_cash_account
 from erpnext.setup.utils import get_exchange_rate
 from erpnext.accounts.general_ledger import make_gl_entries
-
+from erpnext.hr.doctype.expense_claim.expense_claim import update_reimbursed_amount
 from erpnext.controllers.accounts_controller import AccountsController
 
 class InvalidPaymentEntry(ValidationError): pass
 
 class PaymentEntry(AccountsController):
-	def setup_party_account_field(self):		
+	def setup_party_account_field(self):
 		self.party_account_field = None
 		self.party_account = None
 		self.party_account_currency = None
-		
+
 		if self.payment_type == "Receive":
 			self.party_account_field = "paid_from"
 			self.party_account = self.paid_from
 			self.party_account_currency = self.paid_from_account_currency
-			
+
 		elif self.payment_type == "Pay":
 			self.party_account_field = "paid_to"
 			self.party_account = self.paid_to
 			self.party_account_currency = self.paid_to_account_currency
-							
+
 	def validate(self):
 		self.setup_party_account_field()
 		self.set_missing_values()
@@ -50,18 +50,20 @@
 		self.set_remarks()
 		self.validate_duplicate_entry()
 		self.validate_allocated_amount()
-		
+
 	def on_submit(self):
 		self.setup_party_account_field()
 		if self.difference_amount:
 			frappe.throw(_("Difference Amount must be zero"))
 		self.make_gl_entries()
 		self.update_advance_paid()
-		
+		self.update_expense_claim()
+
 	def on_cancel(self):
 		self.setup_party_account_field()
 		self.make_gl_entries(cancel=1)
 		self.update_advance_paid()
+		self.update_expense_claim()
 		self.delink_advance_entry_references()
 
 	def validate_duplicate_entry(self):
@@ -70,8 +72,8 @@
 			if (d.reference_doctype, d.reference_name) in reference_names:
 				frappe.throw(_("Row #{0}: Duplicate entry in References {1} {2}").format(d.idx, d.reference_doctype, d.reference_name))
 			reference_names.append((d.reference_doctype, d.reference_name))
-	
-	
+
+
 	def validate_allocated_amount(self):
 		for d in self.get("references"):
 			if (flt(d.allocated_amount))> 0:
@@ -87,111 +89,113 @@
 
 	def set_missing_values(self):
 		if self.payment_type == "Internal Transfer":
-			for field in ("party", "party_balance", "total_allocated_amount", 
+			for field in ("party", "party_balance", "total_allocated_amount",
 				"base_total_allocated_amount", "unallocated_amount"):
 					self.set(field, None)
 			self.references = []
 		else:
 			if not self.party_type:
 				frappe.throw(_("Party Type is mandatory"))
-				
+
 			if not self.party:
 				frappe.throw(_("Party is mandatory"))
-				
-			self.party_name = frappe.db.get_value(self.party_type, self.party, 
+
+			self.party_name = frappe.db.get_value(self.party_type, self.party,
 				self.party_type.lower() + "_name")
-		
+
 		if self.party:
 			if not self.party_balance:
 				self.party_balance = get_balance_on(party_type=self.party_type,
 					party=self.party, date=self.posting_date, company=self.company)
-			
+
 			if not self.party_account:
 				party_account = get_party_account(self.party_type, self.party, self.company)
 				self.set(self.party_account_field, party_account)
 				self.party_account = party_account
-				
+
 		if self.paid_from and not (self.paid_from_account_currency or self.paid_from_account_balance):
 			acc = get_account_details(self.paid_from, self.posting_date)
 			self.paid_from_account_currency = acc.account_currency
 			self.paid_from_account_balance = acc.account_balance
-				
+
 		if self.paid_to and not (self.paid_to_account_currency or self.paid_to_account_balance):
 			acc = get_account_details(self.paid_to, self.posting_date)
 			self.paid_to_account_currency = acc.account_currency
 			self.paid_to_account_balance = acc.account_balance
-			
+
 		self.party_account_currency = self.paid_from_account_currency \
 			if self.payment_type=="Receive" else self.paid_to_account_currency
-			
+
 		self.set_missing_ref_details()
-			
-	
+
+
 	def set_missing_ref_details(self):
 		for d in self.get("references"):
 			if d.allocated_amount:
-				ref_details = get_reference_details(d.reference_doctype, 
+				ref_details = get_reference_details(d.reference_doctype,
 					d.reference_name, self.party_account_currency)
-					
+
 				for field, value in ref_details.items():
 					if not d.get(field):
 						d.set(field, value)
-						
+
 	def validate_payment_type(self):
 		if self.payment_type not in ("Receive", "Pay", "Internal Transfer"):
 			frappe.throw(_("Payment Type must be one of Receive, Pay and Internal Transfer"))
-	
+
 	def validate_party_details(self):
 		if self.party:
 			if not frappe.db.exists(self.party_type, self.party):
 				frappe.throw(_("Invalid {0}: {1}").format(self.party_type, self.party))
-			
+
 			if self.party_account:
 				party_account_type = "Receivable" if self.party_type=="Customer" else "Payable"
 				self.validate_account_type(self.party_account, [party_account_type])
-					
+
 	def validate_bank_accounts(self):
 		if self.payment_type in ("Pay", "Internal Transfer"):
 			self.validate_account_type(self.paid_from, ["Bank", "Cash"])
-			
+
 		if self.payment_type in ("Receive", "Internal Transfer"):
 			self.validate_account_type(self.paid_to, ["Bank", "Cash"])
-			
+
 	def validate_account_type(self, account, account_types):
 		account_type = frappe.db.get_value("Account", account, "account_type")
 		if account_type not in account_types:
 			frappe.throw(_("Account Type for {0} must be {1}").format(account, comma_or(account_types)))
-				
+
 	def set_exchange_rate(self):
 		if self.paid_from and not self.source_exchange_rate:
 			if self.paid_from_account_currency == self.company_currency:
 				self.source_exchange_rate = 1
 			else:
-				self.source_exchange_rate = get_exchange_rate(self.paid_from_account_currency, 
+				self.source_exchange_rate = get_exchange_rate(self.paid_from_account_currency,
 					self.company_currency, self.posting_date)
-		
+
 		if self.paid_to and not self.target_exchange_rate:
-			self.target_exchange_rate = get_exchange_rate(self.paid_to_account_currency, 
+			self.target_exchange_rate = get_exchange_rate(self.paid_to_account_currency,
 				self.company_currency, self.posting_date)
-				
+
 	def validate_mandatory(self):
 		for field in ("paid_amount", "received_amount", "source_exchange_rate", "target_exchange_rate"):
 			if not self.get(field):
 				frappe.throw(_("{0} is mandatory").format(self.meta.get_label(field)))
-				
+
 	def validate_reference_documents(self):
 		if self.party_type == "Customer":
 			valid_reference_doctypes = ("Sales Order", "Sales Invoice", "Journal Entry")
-		else:
+		elif self.party_type == "Supplier":
 			valid_reference_doctypes = ("Purchase Order", "Purchase Invoice", "Journal Entry")
-			
+		elif self.party_type == "Employee":
+			valid_reference_doctypes = ("Expense Claim", "Journal Entry")
+
 		for d in self.get("references"):
 			if not d.allocated_amount:
 				continue
 			if d.reference_doctype not in valid_reference_doctypes:
 				frappe.throw(_("Reference Doctype must be one of {0}")
 					.format(comma_or(valid_reference_doctypes)))
-				
+
 			elif d.reference_name:
 				if not frappe.db.exists(d.reference_doctype, d.reference_name):
 					frappe.throw(_("{0} {1} does not exist").format(d.reference_doctype, d.reference_name))
@@ -204,21 +208,26 @@
 								.format(d.reference_doctype, d.reference_name, self.party_type, self.party))
 					else:
 						self.validate_journal_entry()
-								
-					if d.reference_doctype in ("Sales Invoice", "Purchase Invoice"):
-						ref_party_account = ref_doc.debit_to \
-							if self.party_type=="Customer" else ref_doc.credit_to
+
+					if d.reference_doctype in ("Sales Invoice", "Purchase Invoice", "Expense Claim"):
+						if self.party_type=="Customer":
+							ref_party_account = ref_doc.debit_to
+						elif self.party_type=="Supplier":
+							ref_party_account = ref_doc.credit_to
+						elif self.party_type=="Employee":
+							ref_party_account = ref_doc.payable_account
+
 						if ref_party_account != self.party_account:
-							frappe.throw(_("{0} {1} does not associated with Party Account {2}")
-								.format(d.reference_doctype, d.reference_name, self.party_account))
-						
+							frappe.throw(_("{0} {1} is associated with {2}, but Party Account is {3}")
+								.format(d.reference_doctype, d.reference_name, ref_party_account, self.party_account))
+
 					if ref_doc.docstatus != 1:
 						frappe.throw(_("{0} {1} must be submitted")
 							.format(d.reference_doctype, d.reference_name))
-							
+
 	def validate_journal_entry(self):
 		for d in self.get("references"):
-			if d.allocated_amount and d.reference_doctype == "Journal Entry":				
+			if d.allocated_amount and d.reference_doctype == "Journal Entry":
 				je_accounts = frappe.db.sql("""select debit, credit from `tabJournal Entry Account`
 					where account = %s and party=%s and docstatus = 1 and parent = %s
 					and (reference_type is null or reference_type in ("", "Sales Order", "Purchase Order"))
@@ -236,7 +245,7 @@
 					if not valid:
 						frappe.throw(_("Against Journal Entry {0} does not have any unmatched {1} entry")
 							.format(d.reference_name, dr_or_cr))
-							
+
 	def set_amounts(self):
 		self.set_amounts_in_company_currency()
 		self.set_total_allocated_amount()
@@ -246,111 +255,111 @@
 	def set_amounts_in_company_currency(self):
 		self.base_paid_amount, self.base_received_amount, self.difference_amount = 0, 0, 0
 		if self.paid_amount:
-			self.base_paid_amount = flt(flt(self.paid_amount) * flt(self.source_exchange_rate), 
+			self.base_paid_amount = flt(flt(self.paid_amount) * flt(self.source_exchange_rate),
 				self.precision("base_paid_amount"))
-				
+
 		if self.received_amount:
-			self.base_received_amount = flt(flt(self.received_amount) * flt(self.target_exchange_rate), 
+			self.base_received_amount = flt(flt(self.received_amount) * flt(self.target_exchange_rate),
 				self.precision("base_received_amount"))
-				
+
 	def set_total_allocated_amount(self):
 		if self.payment_type == "Internal Transfer":
 			return
-			
+
 		total_allocated_amount, base_total_allocated_amount = 0, 0
 		for d in self.get("references"):
-			if d.allocated_amount:				
+			if d.allocated_amount:
 				total_allocated_amount += flt(d.allocated_amount)
-				base_total_allocated_amount += flt(flt(d.allocated_amount) * flt(d.exchange_rate), 
+				base_total_allocated_amount += flt(flt(d.allocated_amount) * flt(d.exchange_rate),
 					self.precision("base_paid_amount"))
-					
+
 		self.total_allocated_amount = abs(total_allocated_amount)
 		self.base_total_allocated_amount = abs(base_total_allocated_amount)
-	
+
 	def set_unallocated_amount(self):
 		self.unallocated_amount = 0;
 		if self.party:
 			party_amount = self.paid_amount if self.payment_type=="Receive" else self.received_amount
-			
+
 			total_deductions = sum([flt(d.amount) for d in self.get("deductions")])
-			
+
 			if self.total_allocated_amount < party_amount:
 				if self.payment_type == "Receive":
 					self.unallocated_amount = party_amount - (self.total_allocated_amount - total_deductions)
 				else:
 					self.unallocated_amount = party_amount - (self.total_allocated_amount + total_deductions)
-				
+
 	def set_difference_amount(self):
-		base_unallocated_amount = flt(self.unallocated_amount) * (flt(self.source_exchange_rate) 
+		base_unallocated_amount = flt(self.unallocated_amount) * (flt(self.source_exchange_rate)
 			if self.payment_type=="Receive" else flt(self.target_exchange_rate))
-			
+
 		base_party_amount = flt(self.base_total_allocated_amount) + flt(base_unallocated_amount)
-		
+
 		if self.payment_type == "Receive":
 			self.difference_amount = base_party_amount - self.base_received_amount
 		elif self.payment_type == "Pay":
 			self.difference_amount = self.base_paid_amount - base_party_amount
 		else:
 			self.difference_amount = self.base_paid_amount - flt(self.base_received_amount)
-			
+
 		for d in self.get("deductions"):
 			if d.amount:
 				self.difference_amount -= flt(d.amount)
-				
+
 		self.difference_amount = flt(self.difference_amount, self.precision("difference_amount"))
-				
+
 	def clear_unallocated_reference_document_rows(self):
 		self.set("references", self.get("references", {"allocated_amount": ["not in", [0, None, ""]]}))
 
-		frappe.db.sql("""delete from `tabPayment Entry Reference` 
+		frappe.db.sql("""delete from `tabPayment Entry Reference`
 			where parent = %s and allocated_amount = 0""", self.name)
-			
+
 	def validate_payment_against_negative_invoice(self):
-		if ((self.payment_type=="Pay" and self.party_type=="Customer") 
+		if ((self.payment_type=="Pay" and self.party_type=="Customer")
 				or (self.payment_type=="Receive" and self.party_type=="Supplier")):
-				
-			total_negative_outstanding = sum([abs(flt(d.outstanding_amount)) 
+
+			total_negative_outstanding = sum([abs(flt(d.outstanding_amount))
 				for d in self.get("references") if flt(d.outstanding_amount) < 0])
-			
+
 			party_amount = self.paid_amount if self.payment_type=="Receive" else self.received_amount
 
 			if not total_negative_outstanding:
 				frappe.throw(_("Cannot {0} {1} {2} without any negative outstanding invoice")
-					.format(self.payment_type, ("to" if self.party_type=="Customer" else "from"), 
+					.format(self.payment_type, ("to" if self.party_type=="Customer" else "from"),
 						self.party_type), InvalidPaymentEntry)
-					
+
 			elif party_amount > total_negative_outstanding:
 				frappe.throw(_("Paid Amount cannot be greater than total negative outstanding amount {0}")
 					.format(total_negative_outstanding), InvalidPaymentEntry)
-			
+
 	def set_title(self):
 		if self.payment_type in ("Receive", "Pay"):
 			self.title = self.party
 		else:
 			self.title = self.paid_from + " - " + self.paid_to
-			
+
 	def validate_transaction_reference(self):
 		bank_account = self.paid_to if self.payment_type == "Receive" else self.paid_from
 		bank_account_type = frappe.db.get_value("Account", bank_account, "account_type")
-		
+
 		if bank_account_type == "Bank":
 			if not self.reference_no or not self.reference_date:
 				frappe.throw(_("Reference No and Reference Date is mandatory for Bank transaction"))
-				
+
 	def set_remarks(self):
 		if self.remarks: return
-		
+
 		if self.payment_type=="Internal Transfer":
 			remarks = [_("Amount {0} {1} transferred from {2} to {3}")
 				.format(self.paid_from_account_currency, self.paid_amount, self.paid_from, self.paid_to)]
 		else:
-			
+
 			remarks = [_("Amount {0} {1} {2} {3}").format(
 				self.party_account_currency,
 				self.paid_amount if self.payment_type=="Receive" else self.received_amount,
 				_("received from") if self.payment_type=="Receive" else _("to"), self.party
 			)]
-			
+
 		if self.reference_no:
 			remarks.append(_("Transaction reference no {0} dated {1}")
 				.format(self.reference_no, self.reference_date))
@@ -358,35 +367,35 @@
 		if self.payment_type in ["Receive", "Pay"]:
 			for d in self.get("references"):
 				if d.allocated_amount:
-					remarks.append(_("Amount {0} {1} against {2} {3}").format(self.party_account_currency, 
+					remarks.append(_("Amount {0} {1} against {2} {3}").format(self.party_account_currency,
 						d.allocated_amount, d.reference_doctype, d.reference_name))
-		
+
 		for d in self.get("deductions"):
 			if d.amount:
 				remarks.append(_("Amount {0} {1} deducted against {2}")
 					.format(self.company_currency, d.amount, d.account))
 
 		self.set("remarks", "\n".join(remarks))
-			
+
 	def make_gl_entries(self, cancel=0, adv_adj=0):
 		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)
 		self.add_bank_gl_entries(gl_entries)
 		self.add_deductions_gl_entries(gl_entries)
 
 		make_gl_entries(gl_entries, cancel=cancel, adv_adj=adv_adj)
-		
+
 	def add_party_gl_entries(self, gl_entries):
 		if self.party_account:
 			if self.payment_type=="Receive":
 				against_account = self.paid_to
 			else:
 				 against_account = self.paid_from
-			
-				
+
+
 			party_gl_dict = self.get_gl_dict({
 				"account": self.party_account,
 				"party_type": self.party_type,
@@ -394,39 +403,39 @@
 				"against": against_account,
 				"account_currency": self.party_account_currency
 			})
-			
+
 			dr_or_cr = "credit" if self.party_type == "Customer" else "debit"
-			
+
 			for d in self.get("references"):
 				gle = party_gl_dict.copy()
 				gle.update({
 					"against_voucher_type": d.reference_doctype,
 					"against_voucher": d.reference_name
 				})
-				
-				allocated_amount_in_company_currency = flt(flt(d.allocated_amount) * flt(d.exchange_rate), 
-					self.precision("paid_amount"))	
-				
+
+				allocated_amount_in_company_currency = flt(flt(d.allocated_amount) * flt(d.exchange_rate),
+					self.precision("paid_amount"))
+
 				gle.update({
 					dr_or_cr + "_in_account_currency": d.allocated_amount,
 					dr_or_cr: allocated_amount_in_company_currency
 				})
-				
+
 				gl_entries.append(gle)
-				
+
 			if self.unallocated_amount:
 				base_unallocated_amount = base_unallocated_amount = self.unallocated_amount * \
 					(self.source_exchange_rate if self.payment_type=="Receive" else self.target_exchange_rate)
-					
+
 				gle = party_gl_dict.copy()
-				
+
 				gle.update({
 					dr_or_cr + "_in_account_currency": self.unallocated_amount,
 					dr_or_cr: base_unallocated_amount
 				})
 
 				gl_entries.append(gle)
-				
+
 	def add_bank_gl_entries(self, gl_entries):
 		if self.payment_type in ("Pay", "Internal Transfer"):
 			gl_entries.append(
@@ -448,14 +457,14 @@
 					"debit": self.base_received_amount
 				})
 			)
-			
+
 	def add_deductions_gl_entries(self, gl_entries):
 		for d in self.get("deductions"):
 			if d.amount:
 				account_currency = get_account_currency(d.account)
 				if account_currency != self.company_currency:
 					frappe.throw(_("Currency for {0} must be {1}").format(d.account, self.company_currency))
-					
+
 				gl_entries.append(
 					self.get_gl_dict({
 						"account": d.account,
@@ -466,34 +475,41 @@
 						"cost_center": d.cost_center
 					})
 				)
-				
+
 	def update_advance_paid(self):
 		if self.payment_type in ("Receive", "Pay") and self.party:
 			for d in self.get("references"):
 				if d.allocated_amount and d.reference_doctype in ("Sales Order", "Purchase Order"):
 					frappe.get_doc(d.reference_doctype, d.reference_name).set_total_advance_paid()
 
+	def update_expense_claim(self):
+		if self.payment_type in ("Pay") and self.party:
+			for d in self.get("references"):
+				if d.reference_doctype=="Expense Claim" and d.reference_name:
+					doc = frappe.get_doc("Expense Claim", d.reference_name)
+					update_reimbursed_amount(doc)
+
 @frappe.whitelist()
 def get_outstanding_reference_documents(args):
 	args = json.loads(args)
 
 	party_account_currency = get_account_currency(args.get("party_account"))
 	company_currency = frappe.db.get_value("Company", args.get("company"), "default_currency")
-	
+
 	# Get negative outstanding sales /purchase invoices
 	total_field = "base_grand_total" if party_account_currency == company_currency else "grand_total"
-		
-	negative_outstanding_invoices = get_negative_outstanding_invoices(args.get("party_type"), 
+
+	negative_outstanding_invoices = get_negative_outstanding_invoices(args.get("party_type"),
 		args.get("party"), args.get("party_account"), total_field)
 
 	# Get positive outstanding sales /purchase invoices
-	outstanding_invoices = get_outstanding_invoices(args.get("party_type"), args.get("party"), 
+	outstanding_invoices = get_outstanding_invoices(args.get("party_type"), args.get("party"),
 		args.get("party_account"))
-	
+
 	for d in outstanding_invoices:
 		d["exchange_rate"] = 1
 		if party_account_currency != company_currency:
-			if d.voucher_type in ("Sales Invoice", "Purchase Invoice"):
+			if d.voucher_type in ("Sales Invoice", "Purchase Invoice", "Expense Claim"):
 				d["exchange_rate"] = frappe.db.get_value(d.voucher_type, d.voucher_no, "conversion_rate")
 			elif d.voucher_type == "Journal Entry":
 				d["exchange_rate"] = get_exchange_rate(
@@ -501,79 +517,89 @@
 				)
 
 	# Get all SO / PO which are not fully billed or aginst which full advance not paid
-	orders_to_be_billed =  get_orders_to_be_billed(args.get("posting_date"),args.get("party_type"), args.get("party"), 
+	orders_to_be_billed =  get_orders_to_be_billed(args.get("posting_date"),args.get("party_type"), args.get("party"),
 		party_account_currency, company_currency)
-	
+
 	return negative_outstanding_invoices + outstanding_invoices + orders_to_be_billed
-	
+
 def get_orders_to_be_billed(posting_date, party_type, party, party_account_currency, company_currency):
-	voucher_type = 'Sales Order' if party_type == "Customer" else 'Purchase Order'
+	if party_type == "Customer":
+		voucher_type = 'Sales Order'
+	elif party_type == "Supplier":
+		voucher_type = 'Purchase Order'
+	elif party_type == "Employee":
+		voucher_type = None
 
-	ref_field = "base_grand_total" if party_account_currency == company_currency else "grand_total"
+	orders = []
+	if voucher_type:
+		ref_field = "base_grand_total" if party_account_currency == company_currency else "grand_total"
 
-	orders = frappe.db.sql("""
-		select
-			name as voucher_no,
-			{ref_field} as invoice_amount,
-			({ref_field} - advance_paid) as outstanding_amount,
-			transaction_date as posting_date
-		from
-			`tab{voucher_type}`
-		where
-			{party_type} = %s
-			and docstatus = 1
-			and ifnull(status, "") != "Closed"
-			and {ref_field} > advance_paid
-			and abs(100 - per_billed) > 0.01
-		order by
-			transaction_date, name
-		""".format(**{
-			"ref_field": ref_field,
-			"voucher_type": voucher_type,
-			"party_type": scrub(party_type)
-		}), party, as_dict = True)
+		orders = frappe.db.sql("""
+			select
+				name as voucher_no,
+				{ref_field} as invoice_amount,
+				({ref_field} - advance_paid) as outstanding_amount,
+				transaction_date as posting_date
+			from
+				`tab{voucher_type}`
+			where
+				{party_type} = %s
+				and docstatus = 1
+				and ifnull(status, "") != "Closed"
+				and {ref_field} > advance_paid
+				and abs(100 - per_billed) > 0.01
+			order by
+				transaction_date, name
+			""".format(**{
+				"ref_field": ref_field,
+				"voucher_type": voucher_type,
+				"party_type": scrub(party_type)
+			}), party, as_dict = True)
 
 	order_list = []
 	for d in orders:
 		d["voucher_type"] = voucher_type
 		# This assumes that the exchange rate required is the one in the SO
-		d["exchange_rate"] = get_exchange_rate(party_account_currency, 
+		d["exchange_rate"] = get_exchange_rate(party_account_currency,
 			company_currency, posting_date)
 		order_list.append(d)
 
 	return order_list
-	
+
 def get_negative_outstanding_invoices(party_type, party, party_account, total_field):
-	voucher_type = "Sales Invoice" if party_type == "Customer" else "Purchase Invoice"
-	return frappe.db.sql("""
-		select
-			"{voucher_type}" as voucher_type, name as voucher_no, 
-			{total_field} as invoice_amount, outstanding_amount, posting_date, 
-			due_date, conversion_rate as exchange_rate
-		from
-			`tab{voucher_type}`
-		where
-			{party_type} = %s and {party_account} = %s and docstatus = 1 and outstanding_amount < 0
-		order by
-			posting_date, name
-		""".format(**{
-			"total_field": total_field,
-			"voucher_type": voucher_type,
-			"party_type": scrub(party_type),
-			"party_account": "debit_to" if party_type=="Customer" else "credit_to"
-		}), (party, party_account), as_dict = True)
-	
+	if party_type != "Employee":
+		voucher_type = "Sales Invoice" if party_type == "Customer" else "Purchase Invoice"
+		return frappe.db.sql("""
+			select
+				"{voucher_type}" as voucher_type, name as voucher_no,
+				{total_field} as invoice_amount, outstanding_amount, posting_date,
+				due_date, conversion_rate as exchange_rate
+			from
+				`tab{voucher_type}`
+			where
+				{party_type} = %s and {party_account} = %s and docstatus = 1 and outstanding_amount < 0
+			order by
+				posting_date, name
+			""".format(**{
+				"total_field": total_field,
+				"voucher_type": voucher_type,
+				"party_type": scrub(party_type),
+				"party_account": "debit_to" if party_type=="Customer" else "credit_to"
+			}), (party, party_account), as_dict = True)
+	else:
+		return []
+
 @frappe.whitelist()
 def get_party_details(company, party_type, party, date):
 	if not frappe.db.exists(party_type, party):
 		frappe.throw(_("Invalid {0}: {1}").format(party_type, party))
-		
+
 	party_account = get_party_account(party_type, party, company)
-	
+
 	account_currency = get_account_currency(party_account)
 	account_balance = get_balance_on(party_account, date)
 	party_balance = get_balance_on(party_type=party_type, party=party)
-	
+
 	return {
 		"party_account": party_account,
 		"party_account_currency": account_currency,
@@ -581,7 +607,7 @@
 		"account_balance": account_balance
 	}
 
-@frappe.whitelist()	
+@frappe.whitelist()
 def get_account_details(account, date):
 	frappe.has_permission('Payment Entry', throw=True)
 	return frappe._dict({
@@ -589,59 +615,67 @@
 		"account_balance": get_balance_on(account, date),
 		"account_type": frappe.db.get_value("Account", account, "account_type")
 	})
-	
+
 @frappe.whitelist()
 def get_company_defaults(company):
 	fields = ["write_off_account", "exchange_gain_loss_account", "cost_center"]
 	ret = frappe.db.get_value("Company", company, fields, as_dict=1)
-	
+
 	for fieldname in fields:
 		if not ret[fieldname]:
 			frappe.throw(_("Please set default {0} in Company {1}")
 				.format(frappe.get_meta("Company").get_label(fieldname), company))
-	
+
 	return ret
 
 @frappe.whitelist()
 def get_reference_details(reference_doctype, reference_name, party_account_currency):
 	total_amount = outstanding_amount = exchange_rate = None
 	ref_doc = frappe.get_doc(reference_doctype, reference_name)
-	
+
 	if reference_doctype != "Journal Entry":
 		if party_account_currency == ref_doc.company_currency:
-			total_amount = ref_doc.base_grand_total
+			if ref_doc.doctype == "Expense Claim":
+				total_amount = ref_doc.total_sanctioned_amount
+			else:
+				total_amount = ref_doc.base_grand_total
 			exchange_rate = 1
 		else:
 			total_amount = ref_doc.grand_total
-			
-			# Get the exchange rate from the original ref doc 
+
+			# Get the exchange rate from the original ref doc
 			# or get it based on the posting date of the ref doc
 			exchange_rate = ref_doc.get("conversion_rate") or \
 				get_exchange_rate(party_account_currency, ref_doc.company_currency, ref_doc.posting_date)
-		
+
 		outstanding_amount = ref_doc.get("outstanding_amount") \
-			if reference_doctype in ("Sales Invoice", "Purchase Invoice") \
-			else flt(total_amount) - flt(ref_doc.advance_paid)			
+			if reference_doctype in ("Sales Invoice", "Purchase Invoice", "Expense Claim") \
+			else flt(total_amount) - flt(ref_doc.advance_paid)
 	else:
 		# Get the exchange rate based on the posting date of the ref doc
-		exchange_rate = get_exchange_rate(party_account_currency, 
+		exchange_rate = get_exchange_rate(party_account_currency,
 			ref_doc.company_currency, ref_doc.posting_date)
-		
+
 	return frappe._dict({
 		"due_date": ref_doc.get("due_date"),
 		"total_amount": total_amount,
 		"outstanding_amount": outstanding_amount,
 		"exchange_rate": exchange_rate
 	})
-	
+
 @frappe.whitelist()
 def get_payment_entry(dt, dn, party_amount=None, bank_account=None, bank_amount=None):
 	doc = frappe.get_doc(dt, dn)
-	
+
 	if dt in ("Sales Order", "Purchase Order") and flt(doc.per_billed, 2) > 0:
 		frappe.throw(_("Can only make payment against unbilled {0}").format(dt))
-	
-	party_type = "Customer" if dt in ("Sales Invoice", "Sales Order") else "Supplier"
+
+	if dt in ("Sales Invoice", "Sales Order"):
+		party_type = "Customer"
+	elif dt in ("Purchase Invoice", "Purchase Order"):
+		party_type = "Supplier"
+	elif dt in ("Expense Claim"):
+		party_type = "Employee"
 
 	# party account
 	if dt == "Sales Invoice":
@@ -650,16 +684,16 @@
 		party_account = doc.credit_to
 	else:
 		party_account = get_party_account(party_type, doc.get(party_type.lower()), doc.company)
-		
+
 	party_account_currency = doc.get("party_account_currency") or get_account_currency(party_account)
-	
+
 	# payment type
 	if (dt == "Sales Order" or (dt=="Sales Invoice" and doc.outstanding_amount > 0)) \
 		or (dt=="Purchase Invoice" and doc.outstanding_amount < 0):
 			payment_type = "Receive"
 	else:
 		payment_type = "Pay"
-	
+
 	# amounts
 	grand_total = outstanding_amount = 0
 	if party_amount:
@@ -667,15 +701,18 @@
 	elif dt in ("Sales Invoice", "Purchase Invoice"):
 		grand_total = doc.base_grand_total if party_account_currency == doc.company_currency else doc.grand_total
 		outstanding_amount = doc.outstanding_amount
+	elif dt in ("Expense Claim"):
+		grand_total = doc.total_sanctioned_amount
+		outstanding_amount = doc.total_sanctioned_amount - doc.total_amount_reimbursed
 	else:
 		total_field = "base_grand_total" if party_account_currency == doc.company_currency else "grand_total"
 		grand_total = flt(doc.get(total_field))
 		outstanding_amount = grand_total - flt(doc.advance_paid)
 
 	# bank or cash
-	bank = get_default_bank_cash_account(doc.company, "Bank", mode_of_payment=doc.get("mode_of_payment"), 
+	bank = get_default_bank_cash_account(doc.company, "Bank", mode_of_payment=doc.get("mode_of_payment"),
 		account=bank_account)
-	
+
 	paid_amount = received_amount = 0
 	if party_account_currency == bank.account_currency:
 		paid_amount = received_amount = abs(outstanding_amount)
@@ -687,7 +724,7 @@
 		received_amount = abs(outstanding_amount)
 		if bank_amount:
 			paid_amount = bank_amount
-	
+
 	pe = frappe.new_doc("Payment Entry")
 	pe.payment_type = payment_type
 	pe.company = doc.company
@@ -704,7 +741,7 @@
 	pe.received_amount = received_amount
 	pe.allocate_payment_amount = 1
 	pe.letter_head = doc.get("letter_head")
-	
+
 	pe.append("references", {
 		"reference_doctype": dt,
 		"reference_name": dn,
diff --git a/erpnext/accounts/doctype/payment_entry/test_payment_entry.py b/erpnext/accounts/doctype/payment_entry/test_payment_entry.py
index ccf114f..0316cca 100644
--- a/erpnext/accounts/doctype/payment_entry/test_payment_entry.py
+++ b/erpnext/accounts/doctype/payment_entry/test_payment_entry.py
@@ -10,6 +10,7 @@
 from erpnext.accounts.doctype.payment_entry.payment_entry import get_payment_entry, InvalidPaymentEntry
 from erpnext.accounts.doctype.sales_invoice.test_sales_invoice import create_sales_invoice
 from erpnext.accounts.doctype.purchase_invoice.test_purchase_invoice import make_purchase_invoice
+from erpnext.hr.doctype.expense_claim.test_expense_claim import make_expense_claim
 
 test_dependencies = ["Item"]
 
@@ -20,80 +21,102 @@
 		pe.paid_from = "Debtors - _TC"
 		pe.insert()
 		pe.submit()
-		
+
 		expected_gle = dict((d[0], d) for d in [
 			["Debtors - _TC", 0, 1000, so.name],
 			["_Test Cash - _TC", 1000.0, 0, None]
 		])
-		
+
 		self.validate_gl_entries(pe.name, expected_gle)
-		
+
 		so_advance_paid = frappe.db.get_value("Sales Order", so.name, "advance_paid")
 		self.assertEqual(so_advance_paid, 1000)
-		
+
 		pe.cancel()
-		
+
 		self.assertFalse(self.get_gle(pe.name))
-		
+
 		so_advance_paid = frappe.db.get_value("Sales Order", so.name, "advance_paid")
 		self.assertEqual(so_advance_paid, 0)
-		
+
 	def test_payment_entry_against_si_usd_to_usd(self):
 		si =  create_sales_invoice(customer="_Test Customer USD", debit_to="_Test Receivable USD - _TC",
 			currency="USD", conversion_rate=50)
 		pe = get_payment_entry("Sales Invoice", si.name, bank_account="_Test Bank USD - _TC")
 		pe.reference_no = "1"
 		pe.reference_date = "2016-01-01"
-		pe.target_exchange_rate = 50		
+		pe.target_exchange_rate = 50
 		pe.insert()
 		pe.submit()
-		
+
 		expected_gle = dict((d[0], d) for d in [
 			["_Test Receivable USD - _TC", 0, 5000, si.name],
 			["_Test Bank USD - _TC", 5000.0, 0, None]
 		])
-		
+
 		self.validate_gl_entries(pe.name, expected_gle)
-		
+
 		outstanding_amount = flt(frappe.db.get_value("Sales Invoice", si.name, "outstanding_amount"))
 		self.assertEqual(outstanding_amount, 0)
-		
+
 		pe.cancel()
 		self.assertFalse(self.get_gle(pe.name))
-		
+
 		outstanding_amount = flt(frappe.db.get_value("Sales Invoice", si.name, "outstanding_amount"))
 		self.assertEqual(outstanding_amount, 100)
-		
+
 	def test_payment_entry_against_pi(self):
 		pi =  make_purchase_invoice(supplier="_Test Supplier USD", debit_to="_Test Payable USD - _TC",
 			currency="USD", conversion_rate=50)
 		pe = get_payment_entry("Purchase Invoice", pi.name, bank_account="_Test Bank USD - _TC")
 		pe.reference_no = "1"
 		pe.reference_date = "2016-01-01"
-		pe.source_exchange_rate = 50		
+		pe.source_exchange_rate = 50
 		pe.insert()
 		pe.submit()
-		
+
 		expected_gle = dict((d[0], d) for d in [
 			["_Test Payable USD - _TC", 12500, 0, pi.name],
 			["_Test Bank USD - _TC", 0, 12500, None]
 		])
-		
+
 		self.validate_gl_entries(pe.name, expected_gle)
-		
+
 		outstanding_amount = flt(frappe.db.get_value("Sales Invoice", pi.name, "outstanding_amount"))
 		self.assertEqual(outstanding_amount, 0)
-		
+
+	def test_payment_entry_against_ec(self):
+
+		payable = frappe.db.get_value('Company', "_Test Company", 'default_payable_account')
+		ec =  make_expense_claim(payable, 300, 300, "_Test Company","Travel Expenses - _TC")
+		pe = get_payment_entry("Expense Claim", ec.name, bank_account="_Test Bank USD - _TC", bank_amount=300)
+		pe.reference_no = "1"
+		pe.reference_date = "2016-01-01"
+		pe.source_exchange_rate = 1
+		pe.insert()
+		pe.submit()
+
+		expected_gle = dict((d[0], d) for d in [
+			[payable, 300, 0, ec.name],
+			["_Test Bank USD - _TC", 0, 300, None]
+		])
+
+		self.validate_gl_entries(pe.name, expected_gle)
+
+		outstanding_amount = flt(frappe.db.get_value("Expense Claim", ec.name, "total_sanctioned_amount")) - \
+			flt(frappe.db.get_value("Expense Claim", ec.name, "total_amount_reimbursed"))
+		self.assertEqual(outstanding_amount, 0)
+
 	def test_payment_entry_against_si_usd_to_inr(self):
 		si =  create_sales_invoice(customer="_Test Customer USD", debit_to="_Test Receivable USD - _TC",
 			currency="USD", conversion_rate=50)
-		pe = get_payment_entry("Sales Invoice", si.name, party_amount=20, 
+		pe = get_payment_entry("Sales Invoice", si.name, party_amount=20,
 			bank_account="_Test Bank - _TC", bank_amount=900)
 		pe.reference_no = "1"
 		pe.reference_date = "2016-01-01"
-		
+
 		self.assertEqual(pe.difference_amount, 100)
-		
+
 		pe.append("deductions", {
 			"account": "_Test Exchange Gain/Loss - _TC",
 			"cost_center": "_Test Cost Center - _TC",
@@ -101,15 +124,15 @@
 		})
 		pe.insert()
 		pe.submit()
-		
+
 		expected_gle = dict((d[0], d) for d in [
 			["_Test Receivable USD - _TC", 0, 1000, si.name],
 			["_Test Bank - _TC", 900, 0, None],
 			["_Test Exchange Gain/Loss - _TC", 100.0, 0, None],
 		])
-		
+
 		self.validate_gl_entries(pe.name, expected_gle)
-		
+
 		outstanding_amount = flt(frappe.db.get_value("Sales Invoice", si.name, "outstanding_amount"))
 		self.assertEqual(outstanding_amount, 80)
 
@@ -140,7 +163,7 @@
 			pe.source_exchange_rate, 65.1,
 			"{0} is not equal to {1}".format(pe.source_exchange_rate, 65.1)
 		)
-		
+
 	def test_internal_transfer_usd_to_inr(self):
 		pe = frappe.new_doc("Payment Entry")
 		pe.payment_type = "Internal Transfer"
@@ -152,31 +175,31 @@
 		pe.received_amount = 4500
 		pe.reference_no = "2"
 		pe.reference_date = nowdate()
-		
+
 		pe.setup_party_account_field()
 		pe.set_missing_values()
 		pe.set_exchange_rate()
 		pe.set_amounts()
-				
+
 		self.assertEquals(pe.difference_amount, 500)
-		
+
 		pe.append("deductions", {
 			"account": "_Test Exchange Gain/Loss - _TC",
 			"cost_center": "_Test Cost Center - _TC",
 			"amount": 500
 		})
-		
+
 		pe.insert()
 		pe.submit()
-		
+
 		expected_gle = dict((d[0], d) for d in [
 			["_Test Bank USD - _TC", 0, 5000, None],
 			["_Test Bank - _TC", 4500, 0, None],
 			["_Test Exchange Gain/Loss - _TC", 500.0, 0, None],
 		])
-		
+
 		self.validate_gl_entries(pe.name, expected_gle)
-		
+
 	def test_payment_against_negative_sales_invoice(self):
 		pe1 = frappe.new_doc("Payment Entry")
 		pe1.payment_type = "Pay"
@@ -186,33 +209,33 @@
 		pe1.paid_from = "_Test Cash - _TC"
 		pe1.paid_amount = 100
 		pe1.received_amount = 100
-		
+
 		self.assertRaises(InvalidPaymentEntry, pe1.validate)
-		
+
 		si1 =  create_sales_invoice()
-		
+
 		# create full payment entry against si1
 		pe2 = get_payment_entry("Sales Invoice", si1.name, bank_account="_Test Cash - _TC")
 		pe2.insert()
 		pe2.submit()
-		
+
 		# create return entry against si1
 		create_sales_invoice(is_return=1, return_against=si1.name, qty=-1)
 		si1_outstanding = frappe.db.get_value("Sales Invoice", si1.name, "outstanding_amount")
 		self.assertEqual(si1_outstanding, -100)
-		
+
 		# pay more than outstanding against si1
 		pe3 = get_payment_entry("Sales Invoice", si1.name, bank_account="_Test Cash - _TC")
 		pe3.paid_amount = pe3.received_amount = 300
 		self.assertRaises(InvalidPaymentEntry, pe3.validate)
-		
+
 		# pay negative outstanding against si1
 		pe3.paid_to = "Debtors - _TC"
 		pe3.paid_amount = pe3.received_amount = 100
-		
+
 		pe3.insert()
 		pe3.submit()
-		
+
 		expected_gle = dict((d[0], d) for d in [
 			["Debtors - _TC", 100, 0, si1.name],
 			["_Test Cash - _TC", 0, 100, None]
@@ -228,10 +251,10 @@
 
 		outstanding_amount = flt(frappe.db.get_value("Sales Invoice", si1.name, "outstanding_amount"))
 		self.assertEqual(outstanding_amount, -100)
-		
+
 	def validate_gl_entries(self, voucher_no, expected_gle):
 		gl_entries = self.get_gle(voucher_no)
-			
+
 		self.assertTrue(gl_entries)
 
 		for i, gle in enumerate(gl_entries):
@@ -239,7 +262,7 @@
 			self.assertEquals(expected_gle[gle.account][1], gle.debit)
 			self.assertEquals(expected_gle[gle.account][2], gle.credit)
 			self.assertEquals(expected_gle[gle.account][3], gle.against_voucher)
-		
+
 	def get_gle(self, voucher_no):
 		return frappe.db.sql("""select account, debit, credit, against_voucher
 			from `tabGL Entry` where voucher_type='Payment Entry' and voucher_no=%s
diff --git a/erpnext/accounts/doctype/payment_request/payment_request.py b/erpnext/accounts/doctype/payment_request/payment_request.py
index 4694ef8..a0efac5 100644
--- a/erpnext/accounts/doctype/payment_request/payment_request.py
+++ b/erpnext/accounts/doctype/payment_request/payment_request.py
@@ -75,8 +75,8 @@
 
 		return controller.get_payment_url(**{
 			"amount": flt(self.grand_total, self.precision("grand_total")),
-			"title": data.company,
-			"description": self.subject,
+			"title": data.company.encode("utf-8"),
+			"description": self.subject.encode("utf-8"),
 			"reference_doctype": "Payment Request",
 			"reference_docname": self.name,
 			"payer_email": self.email_to or frappe.session.user,
diff --git a/erpnext/accounts/doctype/pos_profile/pos_profile.py b/erpnext/accounts/doctype/pos_profile/pos_profile.py
index 86682d3..8d6a2db 100644
--- a/erpnext/accounts/doctype/pos_profile/pos_profile.py
+++ b/erpnext/accounts/doctype/pos_profile/pos_profile.py
@@ -14,6 +14,7 @@
 		self.check_for_duplicate()
 		self.validate_all_link_fields()
 		self.validate_duplicate_groups()
+		self.check_default_payment()
 		self.validate_customer_territory_group()
 
 	def check_for_duplicate(self):
@@ -49,6 +50,14 @@
 		if len(customer_groups) != len(set(customer_groups)):
 			frappe.throw(_("Duplicate customer group found in the cutomer group table"), title = "Duplicate Customer Group")
 
+	def check_default_payment(self):
+		if self.payments:
+			default_mode_of_payment = [d.default for d in self.payments if d.default]
+			if not default_mode_of_payment:
+				frappe.throw(_("Set default mode of payment"))
+
+			if len(default_mode_of_payment) > 1:
+				frappe.throw(_("Multiple default mode of payment is not allowed"))
 	def validate_customer_territory_group(self):
 		if not self.territory:
 			frappe.throw(_("Territory is Required in POS Profile"), title="Mandatory Field")
diff --git a/erpnext/accounts/doctype/pos_profile/test_pos_profile.py b/erpnext/accounts/doctype/pos_profile/test_pos_profile.py
index 534abb6..803ee8e 100644
--- a/erpnext/accounts/doctype/pos_profile/test_pos_profile.py
+++ b/erpnext/accounts/doctype/pos_profile/test_pos_profile.py
@@ -31,6 +31,8 @@
 		frappe.db.sql("delete from `tabPOS Profile`")
 
 def make_pos_profile():
+	frappe.db.sql("delete from `tabPOS Profile`")
+
 	pos_profile = frappe.get_doc({
 		"company": "_Test Company",
 		"cost_center": "_Test Cost Center - _TC",
diff --git a/erpnext/accounts/doctype/pricing_rule/pricing_rule.py b/erpnext/accounts/doctype/pricing_rule/pricing_rule.py
index a701024..57f9f83 100644
--- a/erpnext/accounts/doctype/pricing_rule/pricing_rule.py
+++ b/erpnext/accounts/doctype/pricing_rule/pricing_rule.py
@@ -285,8 +285,9 @@
 
 def filter_pricing_rules(args, pricing_rules):
 	# filter for qty
-	stock_qty = args.get('qty') * args.get('conversion_factor', 1)
 	if pricing_rules:
+		stock_qty = flt(args.get('qty')) * args.get('conversion_factor', 1)
+
 		pricing_rules = filter(lambda x: (flt(stock_qty)>=flt(x.min_qty)
 			and (flt(stock_qty)<=x.max_qty if x.max_qty else True)), pricing_rules)
 
diff --git a/erpnext/accounts/doctype/pricing_rule/test_pricing_rule.js b/erpnext/accounts/doctype/pricing_rule/test_pricing_rule.js
new file mode 100644
index 0000000..4d34033
--- /dev/null
+++ b/erpnext/accounts/doctype/pricing_rule/test_pricing_rule.js
@@ -0,0 +1,28 @@
+QUnit.module('Pricing Rule"');
+
+QUnit.test("test pricing rule", function(assert) {
+	assert.expect(2);
+	let done = assert.async();
+	frappe.run_serially([
+		() => {
+			return frappe.tests.make("Pricing Rule", [
+				{title: 'Test Pricing Rule'},
+				{item_code:'Test Product 2'},
+				{selling:1},
+				{applicable_for:'Customer'},
+				{customer:'Test Customer 3'},
+				{min_qty:1},
+				{max_qty:20},
+				{valid_upto: frappe.datetime.add_days(frappe.defaults.get_default("year_end_date"), 1)},
+				{discount_percentage:10},
+				{for_price_list:'Standard Selling'}
+			]);
+		},
+		() => {
+			assert.ok(cur_frm.doc.item_code=='Test Product 2');
+			assert.ok(cur_frm.doc.customer=='Test Customer 3');
+		},
+		() => done()
+	]);
+});
+
diff --git a/erpnext/accounts/doctype/sales_invoice/pos.py b/erpnext/accounts/doctype/sales_invoice/pos.py
index 3c9de12..57f75b4 100644
--- a/erpnext/accounts/doctype/sales_invoice/pos.py
+++ b/erpnext/accounts/doctype/sales_invoice/pos.py
@@ -485,7 +485,7 @@
 		si_doc.insert()
 		si_doc.submit()
 		frappe.db.commit()
-	except Exception, e:
+	except Exception as e:
 		if frappe.message_log: frappe.message_log.pop()
 		frappe.db.rollback()
 		save_invoice(e, si_doc, name)
diff --git a/erpnext/accounts/doctype/sales_invoice/test_sales_invoice.py b/erpnext/accounts/doctype/sales_invoice/test_sales_invoice.py
index 44a0a8c..806b489 100644
--- a/erpnext/accounts/doctype/sales_invoice/test_sales_invoice.py
+++ b/erpnext/accounts/doctype/sales_invoice/test_sales_invoice.py
@@ -168,15 +168,15 @@
 			"_Test Account S&H Education Cess - _TC": [1.5, 1619.5, 0.03, 32.39],
 			"_Test Account CST - _TC": [32.5, 1652, 0.65, 33.04],
 			"_Test Account VAT - _TC": [156.5, 1808.5, 3.13, 36.17],
-			"_Test Account Discount - _TC": [-180.5, 1628, -3.61, 32.56]
+			"_Test Account Discount - _TC": [-181.0, 1627.5, -3.62, 32.55]
 		}
 
 		for d in si.get("taxes"):
 			for i, k in enumerate(expected_values["keys"]):
 				self.assertEquals(d.get(k), expected_values[d.account_head][i])
 
-		self.assertEquals(si.base_grand_total, 1628)
-		self.assertEquals(si.grand_total, 32.56)
+		self.assertEquals(si.base_grand_total, 1627.5)
+		self.assertEquals(si.grand_total, 32.55)
 
 	def test_sales_invoice_with_discount_and_inclusive_tax(self):
 		si = create_sales_invoice(qty=100, rate=50, do_not_save=True)
@@ -236,21 +236,29 @@
 				"item_code": "_Test Item Home Desktop 100",
 				"price_list_rate": 62.5,
 				"discount_percentage": 0,
-				"rate": 62.5, "amount": 625,
+				"rate": 62.5,
+				"amount": 625,
 				"base_price_list_rate": 62.5,
-				"base_rate": 62.5, "base_amount": 625,
-				"net_rate": 46.54, "net_amount": 465.37,
-				"base_net_rate": 46.54, "base_net_amount": 465.37
+				"base_rate": 62.5,
+				"base_amount": 625,
+				"net_rate": 46.54,
+				"net_amount": 465.37,
+				"base_net_rate": 46.54,
+				"base_net_amount": 465.37
 			},
 			{
 				"item_code": "_Test Item Home Desktop 200",
 				"price_list_rate": 190.66,
 				"discount_percentage": 0,
-				"rate": 190.66, "amount": 953.3,
+				"rate": 190.66,
+				"amount": 953.3,
 				"base_price_list_rate": 190.66,
-				"base_rate": 190.66, "base_amount": 953.3,
-				"net_rate": 139.62, "net_amount": 698.08,
-				"base_net_rate": 139.62, "base_net_amount": 698.08
+				"base_rate": 190.66,
+				"base_amount": 953.3,
+				"net_rate": 139.62,
+				"net_amount": 698.08,
+				"base_net_rate": 139.62,
+				"base_net_amount": 698.08
 			}
 		]
 
@@ -271,13 +279,13 @@
 			"keys": ["tax_amount", "tax_amount_after_discount_amount", "total"],
 			"_Test Account Excise Duty - _TC": [140, 130.31, 1293.76],
 			"_Test Account Education Cess - _TC": [2.8, 2.61, 1296.37],
-			"_Test Account S&H Education Cess - _TC": [1.4, 1.31, 1297.68],
-			"_Test Account CST - _TC": [27.88, 25.96, 1323.64],
-			"_Test Account VAT - _TC": [156.25, 145.43, 1469.07],
-			"_Test Account Customs Duty - _TC": [125, 116.35, 1585.42],
-			"_Test Account Shipping Charges - _TC": [100, 100, 1685.42],
-			"_Test Account Discount - _TC": [-180.33, -168.54, 1516.88],
-			"_Test Account Service Tax - _TC": [-18.03, -16.88, 1500]
+			"_Test Account S&H Education Cess - _TC": [1.4, 1.30, 1297.67],
+			"_Test Account CST - _TC": [27.88, 25.95, 1323.62],
+			"_Test Account VAT - _TC": [156.25, 145.43, 1469.05],
+			"_Test Account Customs Duty - _TC": [125, 116.35, 1585.40],
+			"_Test Account Shipping Charges - _TC": [100, 100, 1685.40],
+			"_Test Account Discount - _TC": [-180.33, -168.54, 1516.86],
+			"_Test Account Service Tax - _TC": [-18.03, -16.86, 1500]
 		}
 
 		for d in si.get("taxes"):
@@ -313,13 +321,13 @@
 			[test_records[3]["items"][0]["income_account"], 0.0, 1163.45],
 			[test_records[3]["taxes"][0]["account_head"], 0.0, 130.31],
 			[test_records[3]["taxes"][1]["account_head"], 0.0, 2.61],
-			[test_records[3]["taxes"][2]["account_head"], 0.0, 1.31],
-			[test_records[3]["taxes"][3]["account_head"], 0.0, 25.96],
+			[test_records[3]["taxes"][2]["account_head"], 0.0, 1.30],
+			[test_records[3]["taxes"][3]["account_head"], 0.0, 25.95],
 			[test_records[3]["taxes"][4]["account_head"], 0.0, 145.43],
 			[test_records[3]["taxes"][5]["account_head"], 0.0, 116.35],
 			[test_records[3]["taxes"][6]["account_head"], 0.0, 100],
 			[test_records[3]["taxes"][7]["account_head"], 168.54, 0.0],
-			["_Test Account Service Tax - _TC", 16.88, 0.0],
+			["_Test Account Service Tax - _TC", 16.86, 0.0]
 		])
 
 		for gle in gl_entries:
@@ -335,6 +343,61 @@
 
 		self.assertFalse(gle)
 
+	def test_tax_calculation_with_multiple_items(self):
+		si = create_sales_invoice(qty=84, rate=4.6, do_not_save=True)
+		item_row = si.get("items")[0]
+		for qty in (54, 288, 144, 430):
+			item_row_copy = copy.deepcopy(item_row)
+			item_row_copy.qty = qty
+			si.append("items", item_row_copy)
+
+		si.append("taxes", {
+			"account_head": "_Test Account VAT - _TC",
+			"charge_type": "On Net Total",
+			"cost_center": "_Test Cost Center - _TC",
+			"description": "VAT",
+			"doctype": "Sales Taxes and Charges",
+			"rate": 19
+		})
+		si.insert()
+
+		self.assertEquals(si.net_total, 4600)
+		
+		self.assertEquals(si.get("taxes")[0].tax_amount, 874.0)
+		self.assertEquals(si.get("taxes")[0].total, 5474.0)
+
+		self.assertEquals(si.grand_total, 5474.0)
+
+	def test_tax_calculation_with_multiple_items_and_discount(self):
+		si = create_sales_invoice(qty=1, rate=75, do_not_save=True)
+		item_row = si.get("items")[0]
+		for rate in (500, 200, 100, 50, 50):
+			item_row_copy = copy.deepcopy(item_row)
+			item_row_copy.price_list_rate = rate
+			item_row_copy.rate = rate
+			si.append("items", item_row_copy)
+
+		si.apply_discount_on = "Net Total"
+		si.discount_amount = 75.0
+
+		si.append("taxes", {
+			"account_head": "_Test Account VAT - _TC",
+			"charge_type": "On Net Total",
+			"cost_center": "_Test Cost Center - _TC",
+			"description": "VAT",
+			"doctype": "Sales Taxes and Charges",
+			"rate": 24
+		})
+		si.insert()
+
+		self.assertEquals(si.total, 975)
+		self.assertEquals(si.net_total, 900)
+		
+		self.assertEquals(si.get("taxes")[0].tax_amount, 216.0)
+		self.assertEquals(si.get("taxes")[0].total, 1116.0)
+
+		self.assertEquals(si.grand_total, 1116.0)
+		
 	def test_inclusive_rate_validations(self):
 		si = frappe.copy_doc(test_records[2])
 		for i, tax in enumerate(si.get("taxes")):
@@ -417,21 +480,29 @@
 				"item_code": "_Test Item Home Desktop 100",
 				"price_list_rate": 55.56,
 				"discount_percentage": 10,
-				"rate": 50, "amount": 500,
+				"rate": 50,
+				"amount": 500,
 				"base_price_list_rate": 2778,
-				"base_rate": 2500, "base_amount": 25000,
-				"net_rate": 40, "net_amount": 399.98,
-				"base_net_rate": 2000, "base_net_amount": 19999
+				"base_rate": 2500,
+				"base_amount": 25000,
+				"net_rate": 40,
+				"net_amount": 399.98,
+				"base_net_rate": 2000,
+				"base_net_amount": 19999
 			},
 			{
 				"item_code": "_Test Item Home Desktop 200",
 				"price_list_rate": 187.5,
 				"discount_percentage": 20,
-				"rate": 150, "amount": 750,
+				"rate": 150,
+				"amount": 750,
 				"base_price_list_rate": 9375,
-				"base_rate": 7500, "base_amount": 37500,
-				"net_rate": 118.01, "net_amount": 590.05,
-				"base_net_rate": 5900.5, "base_net_amount": 29502.5
+				"base_rate": 7500,
+				"base_amount": 37500,
+				"net_rate": 118.01,
+				"net_amount": 590.05,
+				"base_net_rate": 5900.5,
+				"base_net_amount": 29502.5
 			}
 		]
 
@@ -451,22 +522,22 @@
 		# check tax calculation
 		expected_values = {
 			"keys": ["base_tax_amount", "base_total", "tax_amount", "total"],
-			"_Test Account Excise Duty - _TC": [5540.5, 55042, 110.81, 1100.84],
-			"_Test Account Education Cess - _TC": [111, 55153, 2.22, 1103.06],
-			"_Test Account S&H Education Cess - _TC": [55.5, 55208.5, 1.11, 1104.17],
-			"_Test Account CST - _TC": [1104, 56312.5, 22.08, 1126.25],
-			"_Test Account VAT - _TC": [6188, 62500.5, 123.76, 1250.01],
-			"_Test Account Customs Duty - _TC": [4950.5, 67451, 99.01, 1349.02],
-			"_Test Account Shipping Charges - _TC": [ 100, 67551, 2, 1351.02],
-			"_Test Account Discount - _TC": [ -6755, 60796, -135.10, 1215.92]
+			"_Test Account Excise Duty - _TC": [5540.0, 55041.5, 110.80, 1100.83],
+			"_Test Account Education Cess - _TC": [111, 55152.5, 2.22, 1103.05],
+			"_Test Account S&H Education Cess - _TC": [55.5, 55208.0, 1.11, 1104.16],
+			"_Test Account CST - _TC": [1104, 56312.0, 22.08, 1126.24],
+			"_Test Account VAT - _TC": [6187.5, 62499.5, 123.75, 1249.99],
+			"_Test Account Customs Duty - _TC": [4950.0, 67449.5, 99.0, 1348.99],
+			"_Test Account Shipping Charges - _TC": [ 100, 67549.5, 2, 1350.99],
+			"_Test Account Discount - _TC": [ -6755, 60794.5, -135.10, 1215.89]
 		}
 
 		for d in si.get("taxes"):
 			for i, k in enumerate(expected_values["keys"]):
 				self.assertEquals(d.get(k), expected_values[d.account_head][i])
 
-		self.assertEquals(si.base_grand_total, 60796)
-		self.assertEquals(si.grand_total, 1215.92)
+		self.assertEquals(si.base_grand_total, 60794.5)
+		self.assertEquals(si.grand_total, 1215.89)
 
 	def test_outstanding(self):
 		w = self.make()
@@ -917,19 +988,20 @@
 			"_Test Account Excise Duty - _TC": [70, 70, 70],
 			"_Test Account Education Cess - _TC": [1.4, 1.4, 1.4],
 			"_Test Account S&H Education Cess - _TC": [.7, 0.7, 0.7],
-			"_Test Account CST - _TC": [17.2, 17.2, 17.2],
+			"_Test Account CST - _TC": [17.19, 17.19, 17.19],
 			"_Test Account VAT - _TC": [78.13, 78.13, 78.13],
 			"_Test Account Discount - _TC": [-95.49, -95.49, -95.49]
 		}
 
 		for d in si.get("taxes"):
 			for i, k in enumerate(expected_values["keys"]):
-				self.assertEquals(d.get(k), expected_values[d.account_head][i])
+				if expected_values.get(d.account_head):
+					self.assertEquals(d.get(k), expected_values[d.account_head][i])
 
 
-		self.assertEquals(si.total_taxes_and_charges, 234.44)
-		self.assertEquals(si.base_grand_total, 859.44)
-		self.assertEquals(si.grand_total, 859.44)
+		self.assertEquals(si.total_taxes_and_charges, 234.43)
+		self.assertEquals(si.base_grand_total, 859.43)
+		self.assertEquals(si.grand_total, 859.43)
 
 	def test_multi_currency_gle(self):
 		set_perpetual_inventory(0)
diff --git a/erpnext/accounts/doctype/sales_invoice_payment/sales_invoice_payment.json b/erpnext/accounts/doctype/sales_invoice_payment/sales_invoice_payment.json
index 13d7f15..531622d 100644
--- a/erpnext/accounts/doctype/sales_invoice_payment/sales_invoice_payment.json
+++ b/erpnext/accounts/doctype/sales_invoice_payment/sales_invoice_payment.json
@@ -1,5 +1,6 @@
 {
  "allow_copy": 0, 
+ "allow_guest_to_view": 0, 
  "allow_import": 0, 
  "allow_rename": 0, 
  "beta": 0, 
@@ -11,16 +12,51 @@
  "editable_grid": 1, 
  "fields": [
   {
+   "allow_bulk_edit": 0, 
    "allow_on_submit": 0, 
    "bold": 0, 
    "collapsible": 0, 
+   "columns": 0, 
+   "depends_on": "eval:parent.doctype == 'POS Profile'", 
+   "fieldname": "default", 
+   "fieldtype": "Check", 
+   "hidden": 0, 
+   "ignore_user_permissions": 0, 
+   "ignore_xss_filter": 0, 
+   "in_filter": 0, 
+   "in_global_search": 0, 
+   "in_list_view": 1, 
+   "in_standard_filter": 0, 
+   "label": "Default", 
+   "length": 0, 
+   "no_copy": 0, 
+   "permlevel": 0, 
+   "precision": "", 
+   "print_hide": 0, 
+   "print_hide_if_no_value": 0, 
+   "read_only": 0, 
+   "remember_last_selected_value": 0, 
+   "report_hide": 0, 
+   "reqd": 0, 
+   "search_index": 0, 
+   "set_only_once": 0, 
+   "unique": 0
+  }, 
+  {
+   "allow_bulk_edit": 0, 
+   "allow_on_submit": 0, 
+   "bold": 0, 
+   "collapsible": 0, 
+   "columns": 0, 
    "fieldname": "mode_of_payment", 
    "fieldtype": "Link", 
    "hidden": 0, 
    "ignore_user_permissions": 0, 
    "ignore_xss_filter": 0, 
    "in_filter": 0, 
+   "in_global_search": 0, 
    "in_list_view": 1, 
+   "in_standard_filter": 0, 
    "label": "Mode of Payment", 
    "length": 0, 
    "no_copy": 0, 
@@ -30,6 +66,7 @@
    "print_hide": 0, 
    "print_hide_if_no_value": 0, 
    "read_only": 0, 
+   "remember_last_selected_value": 0, 
    "report_hide": 0, 
    "reqd": 1, 
    "search_index": 0, 
@@ -37,9 +74,11 @@
    "unique": 0
   }, 
   {
+   "allow_bulk_edit": 0, 
    "allow_on_submit": 0, 
    "bold": 0, 
    "collapsible": 0, 
+   "columns": 0, 
    "default": "0.0", 
    "depends_on": "eval:parent.doctype == 'Sales Invoice'", 
    "fieldname": "amount", 
@@ -48,7 +87,9 @@
    "ignore_user_permissions": 0, 
    "ignore_xss_filter": 0, 
    "in_filter": 0, 
+   "in_global_search": 0, 
    "in_list_view": 1, 
+   "in_standard_filter": 0, 
    "label": "Amount", 
    "length": 0, 
    "no_copy": 0, 
@@ -58,6 +99,7 @@
    "print_hide": 0, 
    "print_hide_if_no_value": 0, 
    "read_only": 0, 
+   "remember_last_selected_value": 0, 
    "report_hide": 0, 
    "reqd": 1, 
    "search_index": 0, 
@@ -65,16 +107,20 @@
    "unique": 0
   }, 
   {
+   "allow_bulk_edit": 0, 
    "allow_on_submit": 0, 
    "bold": 0, 
    "collapsible": 0, 
+   "columns": 0, 
    "fieldname": "column_break_3", 
    "fieldtype": "Column Break", 
    "hidden": 0, 
    "ignore_user_permissions": 0, 
    "ignore_xss_filter": 0, 
    "in_filter": 0, 
+   "in_global_search": 0, 
    "in_list_view": 0, 
+   "in_standard_filter": 0, 
    "length": 0, 
    "no_copy": 0, 
    "permlevel": 0, 
@@ -82,6 +128,7 @@
    "print_hide": 0, 
    "print_hide_if_no_value": 0, 
    "read_only": 0, 
+   "remember_last_selected_value": 0, 
    "report_hide": 0, 
    "reqd": 0, 
    "search_index": 0, 
@@ -89,16 +136,20 @@
    "unique": 0
   }, 
   {
+   "allow_bulk_edit": 0, 
    "allow_on_submit": 0, 
    "bold": 0, 
    "collapsible": 0, 
+   "columns": 0, 
    "fieldname": "account", 
    "fieldtype": "Link", 
    "hidden": 0, 
    "ignore_user_permissions": 0, 
    "ignore_xss_filter": 0, 
    "in_filter": 0, 
+   "in_global_search": 0, 
    "in_list_view": 0, 
+   "in_standard_filter": 0, 
    "label": "Account", 
    "length": 0, 
    "no_copy": 0, 
@@ -108,6 +159,7 @@
    "print_hide": 1, 
    "print_hide_if_no_value": 0, 
    "read_only": 1, 
+   "remember_last_selected_value": 0, 
    "report_hide": 0, 
    "reqd": 0, 
    "search_index": 0, 
@@ -115,16 +167,20 @@
    "unique": 0
   }, 
   {
+   "allow_bulk_edit": 0, 
    "allow_on_submit": 0, 
    "bold": 0, 
    "collapsible": 0, 
+   "columns": 0, 
    "fieldname": "type", 
    "fieldtype": "Read Only", 
    "hidden": 0, 
    "ignore_user_permissions": 0, 
    "ignore_xss_filter": 0, 
    "in_filter": 0, 
+   "in_global_search": 0, 
    "in_list_view": 0, 
+   "in_standard_filter": 0, 
    "label": "Type", 
    "length": 0, 
    "no_copy": 0, 
@@ -134,6 +190,7 @@
    "print_hide": 0, 
    "print_hide_if_no_value": 0, 
    "read_only": 0, 
+   "remember_last_selected_value": 0, 
    "report_hide": 0, 
    "reqd": 0, 
    "search_index": 0, 
@@ -141,16 +198,20 @@
    "unique": 0
   }, 
   {
+   "allow_bulk_edit": 0, 
    "allow_on_submit": 0, 
    "bold": 0, 
    "collapsible": 0, 
+   "columns": 0, 
    "fieldname": "base_amount", 
    "fieldtype": "Currency", 
    "hidden": 0, 
    "ignore_user_permissions": 0, 
    "ignore_xss_filter": 0, 
    "in_filter": 0, 
+   "in_global_search": 0, 
    "in_list_view": 0, 
+   "in_standard_filter": 0, 
    "label": "Base Amount (Company Currency)", 
    "length": 0, 
    "no_copy": 1, 
@@ -160,6 +221,7 @@
    "print_hide": 1, 
    "print_hide_if_no_value": 0, 
    "read_only": 1, 
+   "remember_last_selected_value": 0, 
    "report_hide": 0, 
    "reqd": 0, 
    "search_index": 0, 
@@ -167,17 +229,17 @@
    "unique": 0
   }
  ], 
+ "has_web_view": 0, 
  "hide_heading": 0, 
  "hide_toolbar": 0, 
  "idx": 0, 
  "image_view": 0, 
  "in_create": 0, 
- "in_dialog": 0, 
  "is_submittable": 0, 
  "issingle": 0, 
  "istable": 1, 
  "max_attachments": 0, 
- "modified": "2016-07-11 03:28:07.779228", 
+ "modified": "2017-07-24 17:25:03.765856", 
  "modified_by": "Administrator", 
  "module": "Accounts", 
  "name": "Sales Invoice Payment", 
@@ -187,7 +249,9 @@
  "quick_entry": 1, 
  "read_only": 0, 
  "read_only_onload": 0, 
+ "show_name_in_global_search": 0, 
  "sort_field": "modified", 
  "sort_order": "DESC", 
+ "track_changes": 0, 
  "track_seen": 0
 }
\ No newline at end of file
diff --git a/erpnext/accounts/doctype/sales_taxes_and_charges_template/test_sales_taxes_and_charges_template.js b/erpnext/accounts/doctype/sales_taxes_and_charges_template/test_sales_taxes_and_charges_template.js
new file mode 100644
index 0000000..2667ee6
--- /dev/null
+++ b/erpnext/accounts/doctype/sales_taxes_and_charges_template/test_sales_taxes_and_charges_template.js
@@ -0,0 +1,26 @@
+QUnit.module('Sales Taxes and Charges Template');
+
+QUnit.test("test sales taxes and charges template", function(assert) {
+	assert.expect(1);
+	let done = assert.async();
+	frappe.run_serially([
+		() => {
+			return frappe.tests.make('Sales Taxes and Charges Template', [
+				{title: "TEST In State GST"},
+				{taxes:[
+					[
+						{charge_type:"On Net Total"},
+						{account_head:"CGST - "+frappe.get_abbr(frappe.defaults.get_default("Company")) }
+					],
+					[
+						{charge_type:"On Net Total"},
+						{account_head:"SGST - "+frappe.get_abbr(frappe.defaults.get_default("Company")) }
+					]
+				]}
+			]);
+		},
+		() => {assert.ok(cur_frm.doc.title=='TEST In State GST');},
+		() => done()
+	]);
+});
+
diff --git a/erpnext/accounts/doctype/shipping_rule/test_shipping_rule.js b/erpnext/accounts/doctype/shipping_rule/test_shipping_rule.js
new file mode 100644
index 0000000..9c72aeb
--- /dev/null
+++ b/erpnext/accounts/doctype/shipping_rule/test_shipping_rule.js
@@ -0,0 +1,35 @@
+QUnit.module('Shipping Rule');
+
+QUnit.test("test Shipping Rule", function(assert) {
+	assert.expect(1);
+	let done = assert.async();
+	frappe.run_serially([
+		() => {
+			return frappe.tests.make("Shipping Rule", [
+				{label: "Next Day Shipping"},
+				{conditions:[
+					[
+						{from_value:1},
+						{to_value:200},
+						{shipping_amount:100}
+					],
+					[
+						{from_value:201},
+						{to_value:2000},
+						{shipping_amount:50}
+					],
+				]},
+				{countries:[
+					[
+						{country:'India'}
+					]
+				]},
+				{account:'Accounts Payable - '+frappe.get_abbr(frappe.defaults.get_default("Company"))},
+				{cost_center:'Main - '+frappe.get_abbr(frappe.defaults.get_default("Company"))}
+			]);
+		},
+		() => {assert.ok(cur_frm.doc.name=='Next Day Shipping');},
+		() => done()
+	]);
+});
+
diff --git a/erpnext/accounts/page/pos/test_pos.js b/erpnext/accounts/page/pos/test_pos.js
new file mode 100644
index 0000000..62c6e31
--- /dev/null
+++ b/erpnext/accounts/page/pos/test_pos.js
@@ -0,0 +1,60 @@
+QUnit.test("test:POS Profile", function(assert) {
+	assert.expect(1);
+	let done = assert.async();
+
+	frappe.run_serially([
+		() => {
+			return frappe.tests.make("POS Profile", [
+				{naming_series: "SINV"},
+				{company: "_Test Company"},
+				{country: "India"},
+				{currency: "INR"},
+				{write_off_account: "Write Off - _TC"},
+				{write_off_cost_center: "Main - _TC"},
+				{payments: [
+					[
+						{"default": 1},
+						{"mode_of_payment": "Cash"}
+					]]
+				}
+			]);
+		},
+		() => cur_frm.save(),
+		() => frappe.timeout(2),
+		() => {
+			assert.equal(cur_frm.doc.payments[0].default, 1, "Default mode of payment tested");
+		},
+		() => done()
+	]);
+});
+
+QUnit.test("test:Sales Invoice", function(assert) {
+	assert.expect(2);
+	let done = assert.async();
+
+	frappe.run_serially([
+		() => {
+			return frappe.tests.make("Sales Invoice", [
+				{customer: "_Test Customer 2"},
+				{company: "_Test Company"},
+				{is_pos: 1},
+				{posting_date: frappe.datetime.get_today()},
+				{due_date: frappe.datetime.get_today()},
+				{items: [
+					[
+						{"item_code": "_Test Item"},
+						{"qty": 5}
+					]]
+				}
+			]);
+		},
+		() => frappe.timeout(2),
+		() => cur_frm.save(),
+		() => frappe.timeout(2),
+		() => {
+			assert.equal(cur_frm.doc.payments[0].default, 1, "Default mode of payment tested");
+			assert.equal(cur_frm.doc.payments[0].mode_of_payment, "Cash", "Default mode of payment tested");
+		},
+		() => done()
+	]);
+});
\ No newline at end of file
diff --git a/erpnext/accounts/utils.py b/erpnext/accounts/utils.py
index 560ba4d..6617802 100644
--- a/erpnext/accounts/utils.py
+++ b/erpnext/accounts/utils.py
@@ -20,36 +20,36 @@
 
 def get_fiscal_years(transaction_date=None, fiscal_year=None, label="Date", verbose=1, company=None, as_dict=False):
 	fiscal_years = frappe.cache().hget("fiscal_years", company) or []
-	
-	if not fiscal_years:		
+
+	if not fiscal_years:
 		# if year start date is 2012-04-01, year end date should be 2013-03-31 (hence subdate)
 		cond = ""
 		if fiscal_year:
 			cond += " and fy.name = {0}".format(frappe.db.escape(fiscal_year))
 		if company:
 			cond += """
-				and (not exists (select name 
-					from `tabFiscal Year Company` fyc 
-					where fyc.parent = fy.name) 
-				or exists(select company 
-					from `tabFiscal Year Company` fyc 
-					where fyc.parent = fy.name 
+				and (not exists (select name
+					from `tabFiscal Year Company` fyc
+					where fyc.parent = fy.name)
+				or exists(select company
+					from `tabFiscal Year Company` fyc
+					where fyc.parent = fy.name
 					and fyc.company=%(company)s)
 				)
 			"""
 
 		fiscal_years = frappe.db.sql("""
-			select 
-				fy.name, fy.year_start_date, fy.year_end_date 
-			from 
+			select
+				fy.name, fy.year_start_date, fy.year_end_date
+			from
 				`tabFiscal Year` fy
-			where 
+			where
 				disabled = 0 {0}
-			order by 
+			order by
 				fy.year_start_date desc""".format(cond), {
 				"company": company
 			}, as_dict=True)
-			
+
 		frappe.cache().hset("fiscal_years", company, fiscal_years)
 
 	if transaction_date:
@@ -60,10 +60,10 @@
 		if fiscal_year and fy.name == fiscal_year:
 			matched = True
 
-		if (transaction_date and getdate(fy.year_start_date) <= transaction_date 
+		if (transaction_date and getdate(fy.year_start_date) <= transaction_date
 			and getdate(fy.year_end_date) >= transaction_date):
 			matched = True
-			
+
 		if matched:
 			if as_dict:
 				return (fy,)
@@ -72,7 +72,7 @@
 
 	error_msg = _("""{0} {1} not in any active Fiscal Year.""").format(label, formatdate(transaction_date))
 	if verbose==1: frappe.msgprint(error_msg)
-	raise FiscalYearError, error_msg
+	raise FiscalYearError(error_msg)
 
 def validate_fiscal_year(date, fiscal_year, company, label="Date", doc=None):
 	years = [f[0] for f in get_fiscal_years(date, label=_(label), company=company)]
@@ -158,7 +158,6 @@
 		return flt(bal)
 
 def get_count_on(account, fieldname, date):
-
 	cond = []
 	if date:
 		cond.append("posting_date <= '%s'" % frappe.db.escape(cstr(date)))
@@ -195,11 +194,6 @@
 				select name from `tabAccount` ac where ac.name = gle.account
 				and ac.lft >= %s and ac.rgt <= %s
 			)""" % (acc.lft, acc.rgt))
-
-			# If group and currency same as company,
-			# always return balance based on debit and credit in company currency
-			if acc.account_currency == frappe.db.get_value("Company", acc.company, "default_currency"):
-				in_account_currency = False
 		else:
 			cond.append("""gle.account = "%s" """ % (frappe.db.escape(account, percent=False), ))
 
@@ -227,7 +221,7 @@
 						WHERE docstatus < 2 and posting_date <= %(date)s and against_voucher = %(voucher_no)s
 						and party = %(party)s and name != %(name)s"""
 						.format(select_fields),
-						{"date": date, "voucher_no": gle.voucher_no, 
+						{"date": date, "voucher_no": gle.voucher_no,
 							"party": gle.party, "name": gle.name})[0][0]
 
 					outstanding_amount = flt(gle.get(dr_or_cr)) - flt(gle.get(cr_or_dr)) - payment_amount
@@ -274,7 +268,7 @@
 
 	if not args:
 		args = frappe.local.form_dict
-	
+
 	args.doctype = "Cost Center"
 	args = make_tree_args(**args)
 
@@ -500,7 +494,8 @@
 	value = frappe.db.get_value("Company", company, fieldname)
 
 	if not value:
-		throw(_("Please set default {0} in Company {1}").format(frappe.get_meta("Company").get_label(fieldname), company))
+		throw(_("Please set default {0} in Company {1}")
+		      .format(frappe.get_meta("Company").get_label(fieldname), company))
 
 	return value
 
@@ -534,18 +529,18 @@
 			account_balance = get_balance_on(account_data.get('account'), posting_date, in_account_currency=False)
 			stock_value = get_stock_value_on(warehouse, posting_date)
 			if abs(flt(stock_value) - flt(account_balance)) > 0.005:
-				difference.setdefault(account, flt(stock_value) - flt(account_balance))
+				difference.setdefault(account_data.get('account'), flt(stock_value) - flt(account_balance))
 
 	return difference
 
-def get_currency_precision():	
+def get_currency_precision():
 	precision = cint(frappe.db.get_default("currency_precision"))
 	if not precision:
 		number_format = frappe.db.get_default("number_format") or "#,###.##"
 		precision = get_number_format_info(number_format)[2]
-	
+
 	return precision
-	
+
 def get_stock_rbnb_difference(posting_date, company):
 	stock_items = frappe.db.sql_list("""select distinct item_code
 		from `tabStock Ledger Entry` where company=%s""", company)
@@ -627,7 +622,8 @@
 			'invoice_amount': flt(d.invoice_amount),
 			'payment_amount': flt(d.payment_amount),
 			'outstanding_amount': flt(d.invoice_amount - d.payment_amount, precision),
-			'due_date': frappe.db.get_value(d.voucher_type, d.voucher_no, "due_date"),
+			'due_date': frappe.db.get_value(d.voucher_type, d.voucher_no, 
+				"posting_date" if party_type=="Employee" else "due_date"),
 		}))
 
 	outstanding_invoices = sorted(outstanding_invoices, key=lambda k: k['due_date'] or getdate(nowdate()))
@@ -654,7 +650,7 @@
 @frappe.whitelist()
 def get_children():
 	from erpnext.accounts.report.financial_statements import sort_root_accounts
-	
+
 	args = frappe.local.form_dict
 	doctype, company = args['doctype'], args['company']
 	fieldname = frappe.db.escape(doctype.lower().replace(' ','_'))
@@ -696,9 +692,6 @@
 	return acc
 
 def create_payment_gateway_account(gateway):
-	create_payment_gateway_account(gateway)
-
-def create_payment_gateway_account(gateway):
 	from erpnext.setup.setup_wizard.setup_wizard import create_bank_account
 
 	company = frappe.db.get_value("Global Defaults", None, "default_company")
@@ -738,4 +731,4 @@
 
 	except frappe.DuplicateEntryError:
 		# already exists, due to a reinstall?
-		pass
\ No newline at end of file
+		pass
diff --git a/erpnext/change_log/v6/v6_13_1.md b/erpnext/change_log/v6/v6_13_1.md
index 1f0a568..4b2c4a9 100644
--- a/erpnext/change_log/v6/v6_13_1.md
+++ b/erpnext/change_log/v6/v6_13_1.md
@@ -1 +1 @@
-- [ERPNext Manual in German](http://frappe.github.io/erpnext/user/manual/de/) contributed by [CWT Connector & Wire Technology GmbH](http://www.cwt-assembly.com/)
+- [ERPNext Manual in German](http://erpnext.org/docs/user/manual/de/) contributed by [CWT Connector & Wire Technology GmbH](http://www.cwt-assembly.com/)
diff --git a/erpnext/change_log/v6/v6_2_0.md b/erpnext/change_log/v6/v6_2_0.md
index 004e90c..f4da651 100644
--- a/erpnext/change_log/v6/v6_2_0.md
+++ b/erpnext/change_log/v6/v6_2_0.md
@@ -1 +1 @@
-- **[Multi-currency Accounting](https://frappe.github.io/erpnext/user/guides/accounts/multi-currency-accounting)**: You can now have an Account in a different currency than your Company's currency
+- **[Multi-currency Accounting](https://frappe.io/docs/user/guides/accounts/multi-currency-accounting)**: You can now have an Account in a different currency than your Company's currency
diff --git a/erpnext/config/docs.py b/erpnext/config/docs.py
index 2d2cc0a..6e50564 100644
--- a/erpnext/config/docs.py
+++ b/erpnext/config/docs.py
@@ -1,34 +1,3 @@
 from __future__ import unicode_literals
 
-docs_version = "7.x.x"
-
-source_link = "https://github.com/frappe/erpnext"
-docs_base_url = "https://frappe.github.io/erpnext"
-headline = "ERPNext Documentation"
-sub_heading = "Detailed explanation for all ERPNext features and developer API"
-long_description = """ERPNext is a fully featured ERP system designed for Small and Medium Sized
-business. ERPNext covers a wide range of features including Accounting, CRM,
-Inventory management, Selling, Purchasing, Manufacturing, Projects, HR &
-Payroll, Website, E-Commerce and much more.
-
-ERPNext is based on the Frappe Framework is highly customizable and extendable.
-You can create Custom Form, Fields, Scripts and can also create your own Apps
-to extend ERPNext functionality.
-
-ERPNext is Open Source under the GNU General Public Licence v3 and has been
-listed as one of the Best Open Source Softwares in the world by many online
-blogs."""
-
-splash_light_background = True
-google_analytics_id = 'UA-8911157-22'
-
-def get_context(context):
-	context.brand_html = ('<img class="brand-logo" src="'+context.docs_base_url
-		+'/assets/img/erpnext-docs.png"> ERPNext</img>')
-	context.app.splash_light_background = True
-	context.top_bar_items = [
-		{"label": "User Manual", "url": context.docs_base_url + "/user/manual", "right": 1},
-		{"label": "Videos", "url": context.docs_base_url + "/user/videos", "right": 1},
-		{"label": "API", "url": context.docs_base_url + "/current", "right": 1},
-		{"label": "Forum", "url": 'https://discuss.erpnext.com', "right": 1}
-	]
+source_link = "https://github.com/frappe/erpnext"
\ No newline at end of file
diff --git a/erpnext/controllers/taxes_and_totals.py b/erpnext/controllers/taxes_and_totals.py
index b6f8b7d..97bd771 100644
--- a/erpnext/controllers/taxes_and_totals.py
+++ b/erpnext/controllers/taxes_and_totals.py
@@ -179,7 +179,6 @@
 
 		for n, item in enumerate(self.doc.get("items")):
 			item_tax_map = self._load_item_tax_rate(item.item_tax_rate)
-
 			for i, tax in enumerate(self.doc.get("taxes")):
 				# tax_amount represents the amount of tax for the current step
 				current_tax_amount = self.get_current_tax_amount(item, tax, item_tax_map)
@@ -202,36 +201,45 @@
 				# set tax after discount
 				tax.tax_amount_after_discount_amount += current_tax_amount
 
-				if getattr(tax, "category", None):
-					# if just for valuation, do not add the tax amount in total
-					# hence, setting it as 0 for further steps
-					current_tax_amount = 0.0 if (tax.category == "Valuation") \
-						else current_tax_amount
+				current_tax_amount = self.get_tax_amount_if_for_valuation_or_deduction(current_tax_amount, tax)
 
-					current_tax_amount *= -1.0 if (tax.add_deduct_tax == "Deduct") else 1.0
-
-				# Calculate tax.total viz. grand total till that step
 				# note: grand_total_for_current_item contains the contribution of
 				# item's amount, previously applied tax and the current tax on that item
 				if i==0:
-					tax.grand_total_for_current_item = flt(item.net_amount + current_tax_amount, tax.precision("total"))
+					tax.grand_total_for_current_item = flt(item.net_amount + current_tax_amount)
 				else:
 					tax.grand_total_for_current_item = \
-						flt(self.doc.get("taxes")[i-1].grand_total_for_current_item + current_tax_amount, tax.precision("total"))
-
-				# in tax.total, accumulate grand total of each item
-				tax.total += tax.grand_total_for_current_item
+						flt(self.doc.get("taxes")[i-1].grand_total_for_current_item + current_tax_amount)
 
 				# set precision in the last item iteration
 				if n == len(self.doc.get("items")) - 1:
 					self.round_off_totals(tax)
+					self.set_cumulative_total(i, tax)
+
+					self._set_in_company_currency(tax,
+						["total", "tax_amount", "tax_amount_after_discount_amount"])
 
 					# adjust Discount Amount loss in last tax iteration
 					if i == (len(self.doc.get("taxes")) - 1) and self.discount_amount_applied \
 						and self.doc.discount_amount and self.doc.apply_discount_on == "Grand Total":
 							self.adjust_discount_amount_loss(tax)
 
+	def get_tax_amount_if_for_valuation_or_deduction(self, tax_amount, tax):
+		# if just for valuation, do not add the tax amount in total
+		# if tax/charges is for deduction, multiply by -1
+		if getattr(tax, "category", None):
+			tax_amount = 0.0 if (tax.category == "Valuation") else tax_amount
+			tax_amount *= -1.0 if (tax.add_deduct_tax == "Deduct") else 1.0
+		return tax_amount
 
+	def set_cumulative_total(self, row_idx, tax):
+		tax_amount = tax.tax_amount_after_discount_amount
+		tax_amount = self.get_tax_amount_if_for_valuation_or_deduction(tax_amount, tax)
+
+		if row_idx == 0:
+			tax.total = flt(self.doc.net_total + tax_amount, tax.precision("total"))
+		else:
+			tax.total = flt(self.doc.get("taxes")[row_idx-1].total + tax_amount, tax.precision("total"))
 
 	def get_current_tax_amount(self, item, tax, item_tax_map):
 		tax_rate = self._get_tax_rate(tax, item_tax_map)
@@ -251,8 +259,6 @@
 			current_tax_amount = (tax_rate / 100.0) * \
 				self.doc.get("taxes")[cint(tax.row_id) - 1].grand_total_for_current_item
 
-		current_tax_amount = flt(current_tax_amount, tax.precision("tax_amount"))
-
 		self.set_item_wise_tax(item, tax, tax_rate, current_tax_amount)
 
 		return current_tax_amount
@@ -267,11 +273,9 @@
 		tax.item_wise_tax_detail[key] = [tax_rate,flt(item_wise_tax_amount, tax.precision("base_tax_amount"))]
 
 	def round_off_totals(self, tax):
-		tax.total = flt(tax.total, tax.precision("total"))
 		tax.tax_amount = flt(tax.tax_amount, tax.precision("tax_amount"))
-		tax.tax_amount_after_discount_amount = flt(tax.tax_amount_after_discount_amount, tax.precision("tax_amount"))
-
-		self._set_in_company_currency(tax, ["total", "tax_amount", "tax_amount_after_discount_amount"])
+		tax.tax_amount_after_discount_amount = flt(tax.tax_amount_after_discount_amount, 
+			tax.precision("tax_amount"))
 
 	def adjust_discount_amount_loss(self, tax):
 		discount_amount_loss = self.doc.grand_total - flt(self.doc.discount_amount) - tax.total
diff --git a/erpnext/controllers/tests/test_mapper.py b/erpnext/controllers/tests/test_mapper.py
index 0e2d6d0..14738c5 100644
--- a/erpnext/controllers/tests/test_mapper.py
+++ b/erpnext/controllers/tests/test_mapper.py
@@ -4,7 +4,7 @@
 
 import random, json
 import frappe.utils
-from frappe.utils import nowdate
+from frappe.utils import nowdate, add_months
 from frappe.model import mapper
 from frappe.test_runner import make_test_records
 
@@ -44,7 +44,9 @@
 			"doctype": "Quotation",
 			"quotation_to": "Customer",
 			"customer": customer,
-			"order_type": "Sales"
+			"order_type": "Sales",
+			"transaction_date" : nowdate(),
+			"valid_till" : add_months(nowdate(), 1)
 		})
 		for item in item_list:
 			qtn.append("items", {"qty": "2", "item_code": item.item_code})
diff --git a/erpnext/crm/doctype/item/test_item.js b/erpnext/crm/doctype/item/test_item.js
index 2f50ebe..58cf549 100644
--- a/erpnext/crm/doctype/item/test_item.js
+++ b/erpnext/crm/doctype/item/test_item.js
@@ -18,7 +18,8 @@
 				{item_group: "Products"},
 				{is_stock_item: is_stock_item},
 				{standard_rate: keyboard_cost},
-				{opening_stock: no_of_items_to_stock}
+				{opening_stock: no_of_items_to_stock},
+				{default_warehouse: "Stores - RB"}
 			]
 		),
 		() => {
@@ -43,7 +44,8 @@
 				{item_group: "Products"},
 				{is_stock_item: is_stock_item},
 				{standard_rate: screen_cost},
-				{opening_stock: no_of_items_to_stock}
+				{opening_stock: no_of_items_to_stock},
+				{default_warehouse: "Stores - RB"}
 			]
 		),
 
@@ -54,7 +56,8 @@
 				{item_group: "Products"},
 				{is_stock_item: is_stock_item},
 				{standard_rate: CPU_cost},
-				{opening_stock: no_of_items_to_stock}
+				{opening_stock: no_of_items_to_stock},
+				{default_warehouse: "Stores - RB"}
 			]
 		),
 
@@ -62,7 +65,15 @@
 		() => frappe.tests.make(
 			"Item", [
 				{item_code: "Laptop"},
-				{item_group: "Products"}
+				{item_group: "Products"},
+				{default_warehouse: "Stores - RB"}
+			]
+		),
+		() => frappe.tests.make(
+			"Item", [
+				{item_code: "Computer"},
+				{item_group: "Products"},
+				{is_stock_item: 0},
 			]
 		),
 
@@ -73,10 +84,37 @@
 				{item_group: "Products"},
 				{is_stock_item: is_stock_item},
 				{standard_rate: scrap_cost},
-				{opening_stock: no_of_items_to_stock}
+				{opening_stock: no_of_items_to_stock},
+				{default_warehouse: "Stores - RB"}
 			]
 		),
-
+		() => frappe.tests.make(
+			"Item", [
+				{item_code: "Test Product 4"},
+				{item_group: "Products"},
+				{is_stock_item: 1},
+				{has_batch_no: 1},
+				{create_new_batch: 1},
+				{uoms:
+					[
+						[
+							{uom:"Unit"},
+							{conversion_factor: 10},
+						]
+					]
+				},
+				{taxes:
+					[
+						[
+							{tax_type:"SGST - "+frappe.get_abbr(frappe.defaults.get_default("Company"))},
+							{tax_rate: 0},
+						]
+					]},
+				{has_serial_no: 1},
+				{standard_rate: 100},
+				{opening_stock: 100},
+			]
+		),
 		() => done()
 	]);
-});
+});
\ No newline at end of file
diff --git a/erpnext/demo/user/hr.py b/erpnext/demo/user/hr.py
index 0b644c4..1570df5 100644
--- a/erpnext/demo/user/hr.py
+++ b/erpnext/demo/user/hr.py
@@ -67,7 +67,7 @@
 
 			if random.randint(0, 1):
 				#make journal entry against expense claim
-				je = frappe.get_doc(make_bank_entry(expense_claim.name))
+				je = frappe.get_doc(make_bank_entry("Expense Claim", expense_claim.name))
 				je.posting_date = frappe.flags.current_date
 				je.cheque_no = random_string(10)
 				je.cheque_date = frappe.flags.current_date
diff --git a/erpnext/docs/assets/img/pos-setting/default_mop.png b/erpnext/docs/assets/img/pos-setting/default_mop.png
new file mode 100644
index 0000000..bd1e7a0
--- /dev/null
+++ b/erpnext/docs/assets/img/pos-setting/default_mop.png
Binary files differ
diff --git a/erpnext/docs/assets/img/pos-setting/item_customer_group.png b/erpnext/docs/assets/img/pos-setting/item_customer_group.png
new file mode 100644
index 0000000..6117a8f
--- /dev/null
+++ b/erpnext/docs/assets/img/pos-setting/item_customer_group.png
Binary files differ
diff --git a/erpnext/docs/assets/img/pos-setting/pos-setting.png b/erpnext/docs/assets/img/pos-setting/pos-setting.png
deleted file mode 100644
index 6061199..0000000
--- a/erpnext/docs/assets/img/pos-setting/pos-setting.png
+++ /dev/null
Binary files differ
diff --git a/erpnext/docs/assets/img/pos-setting/pos_profile.png b/erpnext/docs/assets/img/pos-setting/pos_profile.png
new file mode 100644
index 0000000..a8bd4ac
--- /dev/null
+++ b/erpnext/docs/assets/img/pos-setting/pos_profile.png
Binary files differ
diff --git a/erpnext/docs/assets/img/users-and-permissions/user-permission-company.png b/erpnext/docs/assets/img/users-and-permissions/user-permission-company.png
deleted file mode 100644
index eb529f1..0000000
--- a/erpnext/docs/assets/img/users-and-permissions/user-permission-company.png
+++ /dev/null
Binary files differ
diff --git a/erpnext/docs/assets/img/users-and-permissions/user-permission-quotation.png b/erpnext/docs/assets/img/users-and-permissions/user-permission-quotation.png
deleted file mode 100644
index ee7a19b..0000000
--- a/erpnext/docs/assets/img/users-and-permissions/user-permission-quotation.png
+++ /dev/null
Binary files differ
diff --git a/erpnext/docs/assets/img/users-and-permissions/user-permissions-company-role-all.png b/erpnext/docs/assets/img/users-and-permissions/user-permissions-company-role-all.png
deleted file mode 100644
index 0aececd..0000000
--- a/erpnext/docs/assets/img/users-and-permissions/user-permissions-company-role-all.png
+++ /dev/null
Binary files differ
diff --git a/erpnext/docs/assets/img/users-and-permissions/user-permissions-ignore-user-permissions.png b/erpnext/docs/assets/img/users-and-permissions/user-permissions-ignore-user-permissions.png
deleted file mode 100644
index 5f55e37..0000000
--- a/erpnext/docs/assets/img/users-and-permissions/user-permissions-ignore-user-permissions.png
+++ /dev/null
Binary files differ
diff --git a/erpnext/docs/assets/img/users-and-permissions/user-permissions-lead-role-permissions.png b/erpnext/docs/assets/img/users-and-permissions/user-permissions-lead-role-permissions.png
deleted file mode 100644
index 23564fa..0000000
--- a/erpnext/docs/assets/img/users-and-permissions/user-permissions-lead-role-permissions.png
+++ /dev/null
Binary files differ
diff --git a/erpnext/docs/assets/img/users-and-permissions/user-permissions-new.gif b/erpnext/docs/assets/img/users-and-permissions/user-permissions-new.gif
deleted file mode 100644
index 609bf25..0000000
--- a/erpnext/docs/assets/img/users-and-permissions/user-permissions-new.gif
+++ /dev/null
Binary files differ
diff --git a/erpnext/docs/assets/img/users-and-permissions/user-permissions-quotation-sales-user.png b/erpnext/docs/assets/img/users-and-permissions/user-permissions-quotation-sales-user.png
deleted file mode 100644
index dd9ed49..0000000
--- a/erpnext/docs/assets/img/users-and-permissions/user-permissions-quotation-sales-user.png
+++ /dev/null
Binary files differ
diff --git a/erpnext/docs/assets/img/users-and-permissions/user-perms/ignore-user-permissions.png b/erpnext/docs/assets/img/users-and-permissions/user-perms/ignore-user-permissions.png
new file mode 100644
index 0000000..56e0d44
--- /dev/null
+++ b/erpnext/docs/assets/img/users-and-permissions/user-perms/ignore-user-permissions.png
Binary files differ
diff --git a/erpnext/docs/assets/img/users-and-permissions/user-perms/new-user-permission.png b/erpnext/docs/assets/img/users-and-permissions/user-perms/new-user-permission.png
new file mode 100644
index 0000000..d2762dd
--- /dev/null
+++ b/erpnext/docs/assets/img/users-and-permissions/user-perms/new-user-permission.png
Binary files differ
diff --git a/erpnext/docs/assets/img/users-and-permissions/user-perms/permitted-documents.png b/erpnext/docs/assets/img/users-and-permissions/user-perms/permitted-documents.png
new file mode 100644
index 0000000..2558b62
--- /dev/null
+++ b/erpnext/docs/assets/img/users-and-permissions/user-perms/permitted-documents.png
Binary files differ
diff --git a/erpnext/docs/assets/img/users-and-permissions/user-perms/select-document-types.png b/erpnext/docs/assets/img/users-and-permissions/user-perms/select-document-types.png
new file mode 100644
index 0000000..b54d36a
--- /dev/null
+++ b/erpnext/docs/assets/img/users-and-permissions/user-perms/select-document-types.png
Binary files differ
diff --git a/erpnext/docs/assets/img/users-and-permissions/user-perms/view-selected-documents.png b/erpnext/docs/assets/img/users-and-permissions/user-perms/view-selected-documents.png
new file mode 100644
index 0000000..bc2ce78
--- /dev/null
+++ b/erpnext/docs/assets/img/users-and-permissions/user-perms/view-selected-documents.png
Binary files differ
diff --git a/erpnext/docs/contents.html b/erpnext/docs/contents.html
deleted file mode 100644
index 59d0b44..0000000
--- a/erpnext/docs/contents.html
+++ /dev/null
@@ -1,10 +0,0 @@
-<!-- title: Table of Contents -->
-
-<h1>Table of Contents</h1>
-<br>
-
-{% include "templates/includes/full_index.html" %}
-
-<!-- autodoc -->
-<!-- jinja -->
-<!-- no-breadcrumbs -->
diff --git a/erpnext/docs/contents.py b/erpnext/docs/contents.py
deleted file mode 100644
index c23737a..0000000
--- a/erpnext/docs/contents.py
+++ /dev/null
@@ -1,9 +0,0 @@
-# Copyright (c) 2015, Frappe Technologies Pvt. Ltd. and Contributors
-# See license.txt
-
-from __future__ import unicode_literals
-import frappe
-from frappe.website.utils import get_full_index
-
-def get_context(context):
-	context.full_index = get_full_index()
diff --git a/erpnext/docs/index.html b/erpnext/docs/index.html
deleted file mode 100644
index c0f9228..0000000
--- a/erpnext/docs/index.html
+++ /dev/null
@@ -1,74 +0,0 @@
-<!-- title: ERPNext: Documentation -->
-<!-- description: ERPNext Documentation -->
-<!-- no-breadcrumbs -->
-<style>
- 
-</style>
-
-<!-- start-hero -->
-<div class="splash">
- <div class="container">
-  <div class="col-sm-10 col-sm-offset-1">
-   <div class="jumbotron">
-    <h1>ERPNext Documentation</h1>
-    <p>Detailed explanation for all ERPNext features and developer API</p>
-   </div>
-   <div class="section" style="padding-top: 0px; margin-top: -30px;">
-      <div class="fake-browser-frame">
-       <img class="img-responsive browser-image feature-image"
-              src="assets/img/home.png">
-      </div>
-   </div>
-  </div>
- </div>
-</div>
-<!-- end-hero -->
-
-
-<div class="container">
- <div class="col-sm-10 col-sm-offset-1">
-  <div class="section">
-      <p>ERPNext is a fully featured ERP system designed for Small and Medium Sized
-business. ERPNext covers a wide range of features including Accounting, CRM,
-Inventory management, Selling, Purchasing, Manufacturing, Projects, HR &amp;
-Payroll, Website, E-Commerce and much more.</p>
-
-<p>ERPNext is based on the Frappe Framework is highly customizable and extendable.
-You can create Custom Form, Fields, Scripts and can also create your own Apps
-to extend ERPNext functionality.</p>
-
-<p>ERPNext is Open Source under the GNU General Public Licence v3 and has been
-listed as one of the Best Open Source Softwares in the world by many online
-blogs.</p>
-
-  </div>
- </div>
-</div>
-
-
-
-<div class="container">
- <div class="col-sm-10 col-sm-offset-1">
-  <div class="section" id="install">
-    <h2>Install</h2>
-    <h4>From your site</h4>
-    <p>To install this app, login to your site and click on "Installer". Search for <b>ERPNext</b> and click on "Install"</p>
-    <h4>Using Bench</h4>
-    <p>Go to your bench folder and setup the new app</p>
-    <pre><code class="sh">$ bench get-app erpnext https://github.com/frappe/erpnext
-$ bench new-site testsite
-$ bench --site testsite install-app erpnext</code></pre>
-    <p>Login to your site to configure the app.</p>
-    <p><a href="install.html">Detailed Installation Steps</a></p>
-   </div>
-   <div class="section">
-       <h2>Author</h2>
-
-       <p>Frappe Technologies Pvt. Ltd. (info@erpnext.com)</p>
-   </div>
- </div>
-</div>
-
-
-<!-- autodoc -->
-<!-- jinja -->
\ No newline at end of file
diff --git a/erpnext/docs/index.md b/erpnext/docs/index.md
new file mode 100644
index 0000000..52df837
--- /dev/null
+++ b/erpnext/docs/index.md
@@ -0,0 +1,30 @@
+# ERP Made Simple
+
+### ERPNext User Guides and API References
+
+ERPNext is a fully featured ERP system designed for Small and Medium Sized
+business. ERPNext covers a wide range of features including Accounting, CRM,
+Inventory management, Selling, Purchasing, Manufacturing, Projects, HR &
+Payroll, Website, E-Commerce and much more.
+
+ERPNext is based on the Frappé Framework is highly customizable and extendable.
+You can create Custom Form, Fields, Scripts and can also create your own Apps
+to extend ERPNext functionality.
+
+ERPNext is Open Source under the GNU General Public Licence v3 and has been
+listed as one of the Best Open Source Softwares in the world by many online
+blogs.
+
+### Installing ERPNext
+
+To install ERPNext on a server, you will need to install [Frappé Bench](https://github.com/frappe/bench).
+
+You can also start a free 30 day trial at [https://erpnext.com](https://erpnext.com)
+
+### Getting Started
+
+The ERPNext User Manual will help you understand all the ERPNext modules. [Start learning how to use ERPNext by going through the manual](/docs/user/manual).
+
+### Feedback
+
+You're encouraged to help improve the quality of this documentation, by sending a pull request on the [GitHub Repository](https://github.com/frappe/erpnext). If you would like to have a discussion regarding the documentation, you can do so [at the forum](https://discuss.erpnext.com).
diff --git a/erpnext/docs/install.md b/erpnext/docs/install.md
index 26ad128..cb78af4 100644
--- a/erpnext/docs/install.md
+++ b/erpnext/docs/install.md
@@ -1,12 +1,14 @@
+# Install
+
 <!-- title: ERPNext Installation -->
 
 # Installation
 
-ERPNext is based on the <a href="https://frappe.io">Frappe Framework</a>, a full stack web framework based on Python, MariaDB, Redis, Node.
+ERPNext is based on the <a href="https://frappe.io">Frappé Framework</a>, a full stack web framework based on Python, MariaDB, Redis, Node.
 
-To intall ERPNext, you will have to install the <a href="https://github.com/frappe/bench">Frappe Bench</a>, the command-line, package manager and site manager for Frappe Framework. For more details, read the Bench README.
+To intall ERPNext, you will have to install the <a href="https://github.com/frappe/bench">Frappé Bench</a>, the command-line, package manager and site manager for Frappé Framework. For more details, read the Bench README.
 
-After you have installed Frappe Bench, go to you bench folder, which is     `frappe.bench` by default and setup **erpnext**.
+After you have installed Frappé Bench, go to you bench folder, which is     `frappe.bench` by default and setup **erpnext**.
 
     bench get-app erpnext {{ source_link }}
 
diff --git a/erpnext/docs/license.html b/erpnext/docs/license.html
deleted file mode 100644
index 4740c5c..0000000
--- a/erpnext/docs/license.html
+++ /dev/null
@@ -1,690 +0,0 @@
-<!-- title: License GNU General Public License (v3) -->
-
-<h1>GNU General Public License (v3)</h1>
-
-<h3>GNU GENERAL PUBLIC LICENSE</h3>
-
-<p>Version 3, 29 June 2007</p>
-
-<p>Copyright (C) 2007 Free Software Foundation, Inc.
-<a href="http://fsf.org/">http://fsf.org/</a></p>
-
-<p>Everyone is permitted to copy and distribute verbatim copies of this
-license document, but changing it is not allowed.</p>
-
-<h3>Preamble</h3>
-
-<p>The GNU General Public License is a free, copyleft license for
-software and other kinds of works.</p>
-
-<p>The licenses for most software and other practical works are designed
-to take away your freedom to share and change the works. By contrast,
-the GNU General Public License is intended to guarantee your freedom
-to share and change all versions of a program--to make sure it remains
-free software for all its users. We, the Free Software Foundation, use
-the GNU General Public License for most of our software; it applies
-also to any other work released this way by its authors. You can apply
-it to your programs, too.</p>
-
-<p>When we speak of free software, we are referring to freedom, not
-price. Our General Public Licenses are designed to make sure that you
-have the freedom to distribute copies of free software (and charge for
-them if you wish), that you receive source code or can get it if you
-want it, that you can change the software or use pieces of it in new
-free programs, and that you know you can do these things.</p>
-
-<p>To protect your rights, we need to prevent others from denying you
-these rights or asking you to surrender the rights. Therefore, you
-have certain responsibilities if you distribute copies of the
-software, or if you modify it: responsibilities to respect the freedom
-of others.</p>
-
-<p>For example, if you distribute copies of such a program, whether
-gratis or for a fee, you must pass on to the recipients the same
-freedoms that you received. You must make sure that they, too, receive
-or can get the source code. And you must show them these terms so they
-know their rights.</p>
-
-<p>Developers that use the GNU GPL protect your rights with two steps:
-(1) assert copyright on the software, and (2) offer you this License
-giving you legal permission to copy, distribute and/or modify it.</p>
-
-<p>For the developers' and authors' protection, the GPL clearly explains
-that there is no warranty for this free software. For both users' and
-authors' sake, the GPL requires that modified versions be marked as
-changed, so that their problems will not be attributed erroneously to
-authors of previous versions.</p>
-
-<p>Some devices are designed to deny users access to install or run
-modified versions of the software inside them, although the
-manufacturer can do so. This is fundamentally incompatible with the
-aim of protecting users' freedom to change the software. The
-systematic pattern of such abuse occurs in the area of products for
-individuals to use, which is precisely where it is most unacceptable.
-Therefore, we have designed this version of the GPL to prohibit the
-practice for those products. If such problems arise substantially in
-other domains, we stand ready to extend this provision to those
-domains in future versions of the GPL, as needed to protect the
-freedom of users.</p>
-
-<p>Finally, every program is threatened constantly by software patents.
-States should not allow patents to restrict development and use of
-software on general-purpose computers, but in those that do, we wish
-to avoid the special danger that patents applied to a free program
-could make it effectively proprietary. To prevent this, the GPL
-assures that patents cannot be used to render the program non-free.</p>
-
-<p>The precise terms and conditions for copying, distribution and
-modification follow.</p>
-
-<h3>TERMS AND CONDITIONS</h3>
-
-<h4>0. Definitions.</h4>
-
-<p>"This License" refers to version 3 of the GNU General Public License.</p>
-
-<p>"Copyright" also means copyright-like laws that apply to other kinds
-of works, such as semiconductor masks.</p>
-
-<p>"The Program" refers to any copyrightable work licensed under this
-License. Each licensee is addressed as "you". "Licensees" and
-"recipients" may be individuals or organizations.</p>
-
-<p>To "modify" a work means to copy from or adapt all or part of the work
-in a fashion requiring copyright permission, other than the making of
-an exact copy. The resulting work is called a "modified version" of
-the earlier work or a work "based on" the earlier work.</p>
-
-<p>A "covered work" means either the unmodified Program or a work based
-on the Program.</p>
-
-<p>To "propagate" a work means to do anything with it that, without
-permission, would make you directly or secondarily liable for
-infringement under applicable copyright law, except executing it on a
-computer or modifying a private copy. Propagation includes copying,
-distribution (with or without modification), making available to the
-public, and in some countries other activities as well.</p>
-
-<p>To "convey" a work means any kind of propagation that enables other
-parties to make or receive copies. Mere interaction with a user
-through a computer network, with no transfer of a copy, is not
-conveying.</p>
-
-<p>An interactive user interface displays "Appropriate Legal Notices" to
-the extent that it includes a convenient and prominently visible
-feature that (1) displays an appropriate copyright notice, and (2)
-tells the user that there is no warranty for the work (except to the
-extent that warranties are provided), that licensees may convey the
-work under this License, and how to view a copy of this License. If
-the interface presents a list of user commands or options, such as a
-menu, a prominent item in the list meets this criterion.</p>
-
-<h4>1. Source Code.</h4>
-
-<p>The "source code" for a work means the preferred form of the work for
-making modifications to it. "Object code" means any non-source form of
-a work.</p>
-
-<p>A "Standard Interface" means an interface that either is an official
-standard defined by a recognized standards body, or, in the case of
-interfaces specified for a particular programming language, one that
-is widely used among developers working in that language.</p>
-
-<p>The "System Libraries" of an executable work include anything, other
-than the work as a whole, that (a) is included in the normal form of
-packaging a Major Component, but which is not part of that Major
-Component, and (b) serves only to enable use of the work with that
-Major Component, or to implement a Standard Interface for which an
-implementation is available to the public in source code form. A
-"Major Component", in this context, means a major essential component
-(kernel, window system, and so on) of the specific operating system
-(if any) on which the executable work runs, or a compiler used to
-produce the work, or an object code interpreter used to run it.</p>
-
-<p>The "Corresponding Source" for a work in object code form means all
-the source code needed to generate, install, and (for an executable
-work) run the object code and to modify the work, including scripts to
-control those activities. However, it does not include the work's
-System Libraries, or general-purpose tools or generally available free
-programs which are used unmodified in performing those activities but
-which are not part of the work. For example, Corresponding Source
-includes interface definition files associated with source files for
-the work, and the source code for shared libraries and dynamically
-linked subprograms that the work is specifically designed to require,
-such as by intimate data communication or control flow between those
-subprograms and other parts of the work.</p>
-
-<p>The Corresponding Source need not include anything that users can
-regenerate automatically from other parts of the Corresponding Source.</p>
-
-<p>The Corresponding Source for a work in source code form is that same
-work.</p>
-
-<h4>2. Basic Permissions.</h4>
-
-<p>All rights granted under this License are granted for the term of
-copyright on the Program, and are irrevocable provided the stated
-conditions are met. This License explicitly affirms your unlimited
-permission to run the unmodified Program. The output from running a
-covered work is covered by this License only if the output, given its
-content, constitutes a covered work. This License acknowledges your
-rights of fair use or other equivalent, as provided by copyright law.</p>
-
-<p>You may make, run and propagate covered works that you do not convey,
-without conditions so long as your license otherwise remains in force.
-You may convey covered works to others for the sole purpose of having
-them make modifications exclusively for you, or provide you with
-facilities for running those works, provided that you comply with the
-terms of this License in conveying all material for which you do not
-control copyright. Those thus making or running the covered works for
-you must do so exclusively on your behalf, under your direction and
-control, on terms that prohibit them from making any copies of your
-copyrighted material outside their relationship with you.</p>
-
-<p>Conveying under any other circumstances is permitted solely under the
-conditions stated below. Sublicensing is not allowed; section 10 makes
-it unnecessary.</p>
-
-<h4>3. Protecting Users' Legal Rights From Anti-Circumvention Law.</h4>
-
-<p>No covered work shall be deemed part of an effective technological
-measure under any applicable law fulfilling obligations under article
-11 of the WIPO copyright treaty adopted on 20 December 1996, or
-similar laws prohibiting or restricting circumvention of such
-measures.</p>
-
-<p>When you convey a covered work, you waive any legal power to forbid
-circumvention of technological measures to the extent such
-circumvention is effected by exercising rights under this License with
-respect to the covered work, and you disclaim any intention to limit
-operation or modification of the work as a means of enforcing, against
-the work's users, your or third parties' legal rights to forbid
-circumvention of technological measures.</p>
-
-<h4>4. Conveying Verbatim Copies.</h4>
-
-<p>You may convey verbatim copies of the Program's source code as you
-receive it, in any medium, provided that you conspicuously and
-appropriately publish on each copy an appropriate copyright notice;
-keep intact all notices stating that this License and any
-non-permissive terms added in accord with section 7 apply to the code;
-keep intact all notices of the absence of any warranty; and give all
-recipients a copy of this License along with the Program.</p>
-
-<p>You may charge any price or no price for each copy that you convey,
-and you may offer support or warranty protection for a fee.</p>
-
-<h4>5. Conveying Modified Source Versions.</h4>
-
-<p>You may convey a work based on the Program, or the modifications to
-produce it from the Program, in the form of source code under the
-terms of section 4, provided that you also meet all of these
-conditions:</p>
-
-<ul>
-<li>a) The work must carry prominent notices stating that you modified
-it, and giving a relevant date.</li>
-<li>b) The work must carry prominent notices stating that it is
-released under this License and any conditions added under
-section 7. This requirement modifies the requirement in section 4
-to "keep intact all notices".</li>
-<li>c) You must license the entire work, as a whole, under this
-License to anyone who comes into possession of a copy. This
-License will therefore apply, along with any applicable section 7
-additional terms, to the whole of the work, and all its parts,
-regardless of how they are packaged. This License gives no
-permission to license the work in any other way, but it does not
-invalidate such permission if you have separately received it.</li>
-<li>d) If the work has interactive user interfaces, each must display
-Appropriate Legal Notices; however, if the Program has interactive
-interfaces that do not display Appropriate Legal Notices, your
-work need not make them do so.</li>
-</ul>
-
-<p>A compilation of a covered work with other separate and independent
-works, which are not by their nature extensions of the covered work,
-and which are not combined with it such as to form a larger program,
-in or on a volume of a storage or distribution medium, is called an
-"aggregate" if the compilation and its resulting copyright are not
-used to limit the access or legal rights of the compilation's users
-beyond what the individual works permit. Inclusion of a covered work
-in an aggregate does not cause this License to apply to the other
-parts of the aggregate.</p>
-
-<h4>6. Conveying Non-Source Forms.</h4>
-
-<p>You may convey a covered work in object code form under the terms of
-sections 4 and 5, provided that you also convey the machine-readable
-Corresponding Source under the terms of this License, in one of these
-ways:</p>
-
-<ul>
-<li>a) Convey the object code in, or embodied in, a physical product
-(including a physical distribution medium), accompanied by the
-Corresponding Source fixed on a durable physical medium
-customarily used for software interchange.</li>
-<li>b) Convey the object code in, or embodied in, a physical product
-(including a physical distribution medium), accompanied by a
-written offer, valid for at least three years and valid for as
-long as you offer spare parts or customer support for that product
-model, to give anyone who possesses the object code either (1) a
-copy of the Corresponding Source for all the software in the
-product that is covered by this License, on a durable physical
-medium customarily used for software interchange, for a price no
-more than your reasonable cost of physically performing this
-conveying of source, or (2) access to copy the Corresponding
-Source from a network server at no charge.</li>
-<li>c) Convey individual copies of the object code with a copy of the
-written offer to provide the Corresponding Source. This
-alternative is allowed only occasionally and noncommercially, and
-only if you received the object code with such an offer, in accord
-with subsection 6b.</li>
-<li>d) Convey the object code by offering access from a designated
-place (gratis or for a charge), and offer equivalent access to the
-Corresponding Source in the same way through the same place at no
-further charge. You need not require recipients to copy the
-Corresponding Source along with the object code. If the place to
-copy the object code is a network server, the Corresponding Source
-may be on a different server (operated by you or a third party)
-that supports equivalent copying facilities, provided you maintain
-clear directions next to the object code saying where to find the
-Corresponding Source. Regardless of what server hosts the
-Corresponding Source, you remain obligated to ensure that it is
-available for as long as needed to satisfy these requirements.</li>
-<li>e) Convey the object code using peer-to-peer transmission,
-provided you inform other peers where the object code and
-Corresponding Source of the work are being offered to the general
-public at no charge under subsection 6d.</li>
-</ul>
-
-<p>A separable portion of the object code, whose source code is excluded
-from the Corresponding Source as a System Library, need not be
-included in conveying the object code work.</p>
-
-<p>A "User Product" is either (1) a "consumer product", which means any
-tangible personal property which is normally used for personal,
-family, or household purposes, or (2) anything designed or sold for
-incorporation into a dwelling. In determining whether a product is a
-consumer product, doubtful cases shall be resolved in favor of
-coverage. For a particular product received by a particular user,
-"normally used" refers to a typical or common use of that class of
-product, regardless of the status of the particular user or of the way
-in which the particular user actually uses, or expects or is expected
-to use, the product. A product is a consumer product regardless of
-whether the product has substantial commercial, industrial or
-non-consumer uses, unless such uses represent the only significant
-mode of use of the product.</p>
-
-<p>"Installation Information" for a User Product means any methods,
-procedures, authorization keys, or other information required to
-install and execute modified versions of a covered work in that User
-Product from a modified version of its Corresponding Source. The
-information must suffice to ensure that the continued functioning of
-the modified object code is in no case prevented or interfered with
-solely because modification has been made.</p>
-
-<p>If you convey an object code work under this section in, or with, or
-specifically for use in, a User Product, and the conveying occurs as
-part of a transaction in which the right of possession and use of the
-User Product is transferred to the recipient in perpetuity or for a
-fixed term (regardless of how the transaction is characterized), the
-Corresponding Source conveyed under this section must be accompanied
-by the Installation Information. But this requirement does not apply
-if neither you nor any third party retains the ability to install
-modified object code on the User Product (for example, the work has
-been installed in ROM).</p>
-
-<p>The requirement to provide Installation Information does not include a
-requirement to continue to provide support service, warranty, or
-updates for a work that has been modified or installed by the
-recipient, or for the User Product in which it has been modified or
-installed. Access to a network may be denied when the modification
-itself materially and adversely affects the operation of the network
-or violates the rules and protocols for communication across the
-network.</p>
-
-<p>Corresponding Source conveyed, and Installation Information provided,
-in accord with this section must be in a format that is publicly
-documented (and with an implementation available to the public in
-source code form), and must require no special password or key for
-unpacking, reading or copying.</p>
-
-<h4>7. Additional Terms.</h4>
-
-<p>"Additional permissions" are terms that supplement the terms of this
-License by making exceptions from one or more of its conditions.
-Additional permissions that are applicable to the entire Program shall
-be treated as though they were included in this License, to the extent
-that they are valid under applicable law. If additional permissions
-apply only to part of the Program, that part may be used separately
-under those permissions, but the entire Program remains governed by
-this License without regard to the additional permissions.</p>
-
-<p>When you convey a copy of a covered work, you may at your option
-remove any additional permissions from that copy, or from any part of
-it. (Additional permissions may be written to require their own
-removal in certain cases when you modify the work.) You may place
-additional permissions on material, added by you to a covered work,
-for which you have or can give appropriate copyright permission.</p>
-
-<p>Notwithstanding any other provision of this License, for material you
-add to a covered work, you may (if authorized by the copyright holders
-of that material) supplement the terms of this License with terms:</p>
-
-<ul>
-<li>a) Disclaiming warranty or limiting liability differently from the
-terms of sections 15 and 16 of this License; or</li>
-<li>b) Requiring preservation of specified reasonable legal notices or
-author attributions in that material or in the Appropriate Legal
-Notices displayed by works containing it; or</li>
-<li>c) Prohibiting misrepresentation of the origin of that material,
-or requiring that modified versions of such material be marked in
-reasonable ways as different from the original version; or</li>
-<li>d) Limiting the use for publicity purposes of names of licensors
-or authors of the material; or</li>
-<li>e) Declining to grant rights under trademark law for use of some
-trade names, trademarks, or service marks; or</li>
-<li>f) Requiring indemnification of licensors and authors of that
-material by anyone who conveys the material (or modified versions
-of it) with contractual assumptions of liability to the recipient,
-for any liability that these contractual assumptions directly
-impose on those licensors and authors.</li>
-</ul>
-
-<p>All other non-permissive additional terms are considered "further
-restrictions" within the meaning of section 10. If the Program as you
-received it, or any part of it, contains a notice stating that it is
-governed by this License along with a term that is a further
-restriction, you may remove that term. If a license document contains
-a further restriction but permits relicensing or conveying under this
-License, you may add to a covered work material governed by the terms
-of that license document, provided that the further restriction does
-not survive such relicensing or conveying.</p>
-
-<p>If you add terms to a covered work in accord with this section, you
-must place, in the relevant source files, a statement of the
-additional terms that apply to those files, or a notice indicating
-where to find the applicable terms.</p>
-
-<p>Additional terms, permissive or non-permissive, may be stated in the
-form of a separately written license, or stated as exceptions; the
-above requirements apply either way.</p>
-
-<h4>8. Termination.</h4>
-
-<p>You may not propagate or modify a covered work except as expressly
-provided under this License. Any attempt otherwise to propagate or
-modify it is void, and will automatically terminate your rights under
-this License (including any patent licenses granted under the third
-paragraph of section 11).</p>
-
-<p>However, if you cease all violation of this License, then your license
-from a particular copyright holder is reinstated (a) provisionally,
-unless and until the copyright holder explicitly and finally
-terminates your license, and (b) permanently, if the copyright holder
-fails to notify you of the violation by some reasonable means prior to
-60 days after the cessation.</p>
-
-<p>Moreover, your license from a particular copyright holder is
-reinstated permanently if the copyright holder notifies you of the
-violation by some reasonable means, this is the first time you have
-received notice of violation of this License (for any work) from that
-copyright holder, and you cure the violation prior to 30 days after
-your receipt of the notice.</p>
-
-<p>Termination of your rights under this section does not terminate the
-licenses of parties who have received copies or rights from you under
-this License. If your rights have been terminated and not permanently
-reinstated, you do not qualify to receive new licenses for the same
-material under section 10.</p>
-
-<h4>9. Acceptance Not Required for Having Copies.</h4>
-
-<p>You are not required to accept this License in order to receive or run
-a copy of the Program. Ancillary propagation of a covered work
-occurring solely as a consequence of using peer-to-peer transmission
-to receive a copy likewise does not require acceptance. However,
-nothing other than this License grants you permission to propagate or
-modify any covered work. These actions infringe copyright if you do
-not accept this License. Therefore, by modifying or propagating a
-covered work, you indicate your acceptance of this License to do so.</p>
-
-<h4>10. Automatic Licensing of Downstream Recipients.</h4>
-
-<p>Each time you convey a covered work, the recipient automatically
-receives a license from the original licensors, to run, modify and
-propagate that work, subject to this License. You are not responsible
-for enforcing compliance by third parties with this License.</p>
-
-<p>An "entity transaction" is a transaction transferring control of an
-organization, or substantially all assets of one, or subdividing an
-organization, or merging organizations. If propagation of a covered
-work results from an entity transaction, each party to that
-transaction who receives a copy of the work also receives whatever
-licenses to the work the party's predecessor in interest had or could
-give under the previous paragraph, plus a right to possession of the
-Corresponding Source of the work from the predecessor in interest, if
-the predecessor has it or can get it with reasonable efforts.</p>
-
-<p>You may not impose any further restrictions on the exercise of the
-rights granted or affirmed under this License. For example, you may
-not impose a license fee, royalty, or other charge for exercise of
-rights granted under this License, and you may not initiate litigation
-(including a cross-claim or counterclaim in a lawsuit) alleging that
-any patent claim is infringed by making, using, selling, offering for
-sale, or importing the Program or any portion of it.</p>
-
-<h4>11. Patents.</h4>
-
-<p>A "contributor" is a copyright holder who authorizes use under this
-License of the Program or a work on which the Program is based. The
-work thus licensed is called the contributor's "contributor version".</p>
-
-<p>A contributor's "essential patent claims" are all patent claims owned
-or controlled by the contributor, whether already acquired or
-hereafter acquired, that would be infringed by some manner, permitted
-by this License, of making, using, or selling its contributor version,
-but do not include claims that would be infringed only as a
-consequence of further modification of the contributor version. For
-purposes of this definition, "control" includes the right to grant
-patent sublicenses in a manner consistent with the requirements of
-this License.</p>
-
-<p>Each contributor grants you a non-exclusive, worldwide, royalty-free
-patent license under the contributor's essential patent claims, to
-make, use, sell, offer for sale, import and otherwise run, modify and
-propagate the contents of its contributor version.</p>
-
-<p>In the following three paragraphs, a "patent license" is any express
-agreement or commitment, however denominated, not to enforce a patent
-(such as an express permission to practice a patent or covenant not to
-sue for patent infringement). To "grant" such a patent license to a
-party means to make such an agreement or commitment not to enforce a
-patent against the party.</p>
-
-<p>If you convey a covered work, knowingly relying on a patent license,
-and the Corresponding Source of the work is not available for anyone
-to copy, free of charge and under the terms of this License, through a
-publicly available network server or other readily accessible means,
-then you must either (1) cause the Corresponding Source to be so
-available, or (2) arrange to deprive yourself of the benefit of the
-patent license for this particular work, or (3) arrange, in a manner
-consistent with the requirements of this License, to extend the patent
-license to downstream recipients. "Knowingly relying" means you have
-actual knowledge that, but for the patent license, your conveying the
-covered work in a country, or your recipient's use of the covered work
-in a country, would infringe one or more identifiable patents in that
-country that you have reason to believe are valid.</p>
-
-<p>If, pursuant to or in connection with a single transaction or
-arrangement, you convey, or propagate by procuring conveyance of, a
-covered work, and grant a patent license to some of the parties
-receiving the covered work authorizing them to use, propagate, modify
-or convey a specific copy of the covered work, then the patent license
-you grant is automatically extended to all recipients of the covered
-work and works based on it.</p>
-
-<p>A patent license is "discriminatory" if it does not include within the
-scope of its coverage, prohibits the exercise of, or is conditioned on
-the non-exercise of one or more of the rights that are specifically
-granted under this License. You may not convey a covered work if you
-are a party to an arrangement with a third party that is in the
-business of distributing software, under which you make payment to the
-third party based on the extent of your activity of conveying the
-work, and under which the third party grants, to any of the parties
-who would receive the covered work from you, a discriminatory patent
-license (a) in connection with copies of the covered work conveyed by
-you (or copies made from those copies), or (b) primarily for and in
-connection with specific products or compilations that contain the
-covered work, unless you entered into that arrangement, or that patent
-license was granted, prior to 28 March 2007.</p>
-
-<p>Nothing in this License shall be construed as excluding or limiting
-any implied license or other defenses to infringement that may
-otherwise be available to you under applicable patent law.</p>
-
-<h4>12. No Surrender of Others' Freedom.</h4>
-
-<p>If conditions are imposed on you (whether by court order, agreement or
-otherwise) that contradict the conditions of this License, they do not
-excuse you from the conditions of this License. If you cannot convey a
-covered work so as to satisfy simultaneously your obligations under
-this License and any other pertinent obligations, then as a
-consequence you may not convey it at all. For example, if you agree to
-terms that obligate you to collect a royalty for further conveying
-from those to whom you convey the Program, the only way you could
-satisfy both those terms and this License would be to refrain entirely
-from conveying the Program.</p>
-
-<h4>13. Use with the GNU Affero General Public License.</h4>
-
-<p>Notwithstanding any other provision of this License, you have
-permission to link or combine any covered work with a work licensed
-under version 3 of the GNU Affero General Public License into a single
-combined work, and to convey the resulting work. The terms of this
-License will continue to apply to the part which is the covered work,
-but the special requirements of the GNU Affero General Public License,
-section 13, concerning interaction through a network will apply to the
-combination as such.</p>
-
-<h4>14. Revised Versions of this License.</h4>
-
-<p>The Free Software Foundation may publish revised and/or new versions
-of the GNU General Public License from time to time. Such new versions
-will be similar in spirit to the present version, but may differ in
-detail to address new problems or concerns.</p>
-
-<p>Each version is given a distinguishing version number. If the Program
-specifies that a certain numbered version of the GNU General Public
-License "or any later version" applies to it, you have the option of
-following the terms and conditions either of that numbered version or
-of any later version published by the Free Software Foundation. If the
-Program does not specify a version number of the GNU General Public
-License, you may choose any version ever published by the Free
-Software Foundation.</p>
-
-<p>If the Program specifies that a proxy can decide which future versions
-of the GNU General Public License can be used, that proxy's public
-statement of acceptance of a version permanently authorizes you to
-choose that version for the Program.</p>
-
-<p>Later license versions may give you additional or different
-permissions. However, no additional obligations are imposed on any
-author or copyright holder as a result of your choosing to follow a
-later version.</p>
-
-<h4>15. Disclaimer of Warranty.</h4>
-
-<p>THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
-APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
-HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT
-WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT
-LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND
-PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE
-DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR
-CORRECTION.</p>
-
-<h4>16. Limitation of Liability.</h4>
-
-<p>IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
-WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR
-CONVEYS THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
-INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES
-ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT
-NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR
-LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM
-TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER
-PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.</p>
-
-<h4>17. Interpretation of Sections 15 and 16.</h4>
-
-<p>If the disclaimer of warranty and limitation of liability provided
-above cannot be given local legal effect according to their terms,
-reviewing courts shall apply local law that most closely approximates
-an absolute waiver of all civil liability in connection with the
-Program, unless a warranty or assumption of liability accompanies a
-copy of the Program in return for a fee.</p>
-
-<p>END OF TERMS AND CONDITIONS</p>
-
-<h3>How to Apply These Terms to Your New Programs</h3>
-
-<p>If you develop a new program, and you want it to be of the greatest
-possible use to the public, the best way to achieve this is to make it
-free software which everyone can redistribute and change under these
-terms.</p>
-
-<p>To do so, attach the following notices to the program. It is safest to
-attach them to the start of each source file to most effectively state
-the exclusion of warranty; and each file should have at least the
-"copyright" line and a pointer to where the full notice is found.</p>
-
-<pre><code>    &lt;one line to give the program's name and a brief idea of what it does.&gt;
-    Copyright (C) &lt;year&gt;  &lt;name of author&gt;
-
-    This program is free software: you can redistribute it and/or modify
-    it under the terms of the GNU General Public License as published by
-    the Free Software Foundation, either version 3 of the License, or
-    (at your option) any later version.
-
-    This program is distributed in the hope that it will be useful,
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with this program.  If not, see &lt;<a href="http://www.gnu.org/licenses/">http://www.gnu.org/licenses/</a>&gt;.
-</code></pre>
-
-<p>Also add information on how to contact you by electronic and paper
-mail.</p>
-
-<p>If the program does terminal interaction, make it output a short
-notice like this when it starts in an interactive mode:</p>
-
-<pre><code>    &lt;program&gt;  Copyright (C) &lt;year&gt;  &lt;name of author&gt;
-    This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
-    This is free software, and you are welcome to redistribute it
-    under certain conditions; type `show c' for details.
-</code></pre>
-
-<p>The hypothetical commands `show w' and `show c' should show the
-appropriate parts of the General Public License. Of course, your
-program's commands might be different; for a GUI interface, you would
-use an "about box".</p>
-
-<p>You should also get your employer (if you work as a programmer) or
-school, if any, to sign a "copyright disclaimer" for the program, if
-necessary. For more information on this, and how to apply and follow
-the GNU GPL, see <a href="http://www.gnu.org/licenses/">http://www.gnu.org/licenses/</a>.</p>
-
-<p>The GNU General Public License does not permit incorporating your
-program into proprietary programs. If your program is a subroutine
-library, you may consider it more useful to permit linking proprietary
-applications with the library. If this is what you want to do, use the
-GNU Lesser General Public License instead of this License. But first,
-please read <a href="http://www.gnu.org/philosophy/why-not-lgpl.html">http://www.gnu.org/philosophy/why-not-lgpl.html</a>.</p>
-
-
-<!-- autodoc -->
\ No newline at end of file
diff --git a/erpnext/docs/license.md b/erpnext/docs/license.md
index b0310f6..d3c0b8d 100644
--- a/erpnext/docs/license.md
+++ b/erpnext/docs/license.md
@@ -4,8 +4,8 @@
 
 <h2>ERPNext License Info</h2>
 
-<p>(c) 2013 Frappe Technologies Pvt Ltd. Mumbai
-ERPNext is a trademark of Frappe Technologies</p>
+<p>(c) 2013 Frappé Technologies Pvt Ltd. Mumbai
+ERPNext is a trademark of Frappé Technologies</p>
 
 <p>The ERPNext code is licensed under the GNU General Public License (v3) as mentioned below and the Documentation is licensed under Creative Commons (CC-BY-SA-3.0)</p>
 
diff --git a/erpnext/docs/temp.py b/erpnext/docs/temp.py
deleted file mode 100644
index 0cddeaa..0000000
--- a/erpnext/docs/temp.py
+++ /dev/null
@@ -1,10 +0,0 @@
-import os, re
-
-for basepath, folders, files in os.walk("."):
-	for f in files:
-		if f.endswith(".html") or f.endswith(".md"):
-			with open(os.path.join(basepath, f), "r") as c:
-				content = c.read()
-
-			for path in re.findall("""{{.?docs_base_url.?}}([^'"\)]*)""", content):
-				print path
diff --git a/erpnext/docs/user/index.md b/erpnext/docs/user/index.md
index 7ce09d3..2ed4ed3 100644
--- a/erpnext/docs/user/index.md
+++ b/erpnext/docs/user/index.md
@@ -2,5 +2,5 @@
 
 Learn ERPNext by watching the user manual or training videos.
 
-1. [User Manual]({{docs_base_url}}/user/manual)
-1. [Help Videos]({{docs_base_url}}/user/videos/learn)
+1. [User Manual](/docs/user/manual)
+1. [Help Videos](/docs/user/videos/learn)
diff --git a/erpnext/docs/user/manual/de/Beispiel/index.md b/erpnext/docs/user/manual/de/Beispiel/index.md
index 1a61351..635507f 100644
--- a/erpnext/docs/user/manual/de/Beispiel/index.md
+++ b/erpnext/docs/user/manual/de/Beispiel/index.md
@@ -1,2 +1,4 @@
+# Beispiel
+
 Hier steht die Übersetzung
 <span class="text-muted contributed-by">Beigetragen von CWT Connector & Wire Technology GmbH</span>
diff --git a/erpnext/docs/user/manual/de/CRM/contact.md b/erpnext/docs/user/manual/de/CRM/contact.md
index b937c65..49b5ffb 100644
--- a/erpnext/docs/user/manual/de/CRM/contact.md
+++ b/erpnext/docs/user/manual/de/CRM/contact.md
@@ -7,11 +7,11 @@
 
 > CRM > Dokumente > Kontakt > Neu
 
-<img class="screenshot" alt="Kontakt" src="{{docs_base_url}}/assets/img/crm/contact.png">
+<img class="screenshot" alt="Kontakt" src="/docs/assets/img/crm/contact.png">
 
 Alternativ können Sie einen Kontakt oder eine Adresse auch direkt aus dem Kundendatensatz erstellen. Klicken Sie hierzu auf "Neuer Kontakt" oder "Neue Adresse".
 
-<img class="screenshot" alt="Kontakt" src="{{docs_base_url}}/assets/img/crm/contact-from-cust.png">
+<img class="screenshot" alt="Kontakt" src="/docs/assets/img/crm/contact-from-cust.png">
 
 > Tipp: Wenn Sie in einer beliebigen Transaktion einen Kunden auswählen, wird ein Kontakt und eine Adresse vorselektiert. Das sind dann der Standardkontakt und die Standardadresse.
 
diff --git a/erpnext/docs/user/manual/de/CRM/customer.md b/erpnext/docs/user/manual/de/CRM/customer.md
index c730c68..c7d6654 100644
--- a/erpnext/docs/user/manual/de/CRM/customer.md
+++ b/erpnext/docs/user/manual/de/CRM/customer.md
@@ -7,7 +7,7 @@
 
 > CRM > Dokumente > Kunde > Neu
 
-<img class="screenshot" alt="Kunde" src="{{docs_base_url}}/assets/img/crm/create-customer.gif">
+<img class="screenshot" alt="Kunde" src="/docs/assets/img/crm/create-customer.gif">
 
 oder einen Upload über ein Datenimportwerkzeug durchführen.
 
@@ -17,7 +17,7 @@
 
 Kontakte und Adressen werden in ERPNext getrennt gespeichert, damit Sie mehrere verschiedene Kontakte oder Adressen mit Kunden und Lieferanten verknüpfen können.
 
-Lesen Sie hierzu auch [Kontakt]({{docs_base_url}}/user/manual/de/CRM/contact.html).
+Lesen Sie hierzu auch [Kontakt](/docs/user/manual/de/CRM/contact.html).
 
 ### Einbindung in Konten
 
diff --git a/erpnext/docs/user/manual/de/CRM/lead.md b/erpnext/docs/user/manual/de/CRM/lead.md
index 8bb9ce4..47a4492 100644
--- a/erpnext/docs/user/manual/de/CRM/lead.md
+++ b/erpnext/docs/user/manual/de/CRM/lead.md
@@ -16,6 +16,6 @@
 
 > CRM > Dokumente > Lead > Neu
 
-<img class="screenshot" alt="Lead" src="{{docs_base_url}}/assets/img/crm/lead.png">
+<img class="screenshot" alt="Lead" src="/docs/assets/img/crm/lead.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/de/CRM/newsletter.md b/erpnext/docs/user/manual/de/CRM/newsletter.md
index 8a18e64..bc7e989 100644
--- a/erpnext/docs/user/manual/de/CRM/newsletter.md
+++ b/erpnext/docs/user/manual/de/CRM/newsletter.md
@@ -7,8 +7,8 @@
 
 Wählen Sie die Liste der Empfänger aus, an die Sie die E-Mail senden wollen. Tragen Sie Ihren Inhalt in das Nachrichtenfeld ein und versenden Sie den Newsletter. Wenn Sie die E-Mail vorher testen wollen, um zu sehen, wie sie für den Empfänger aussieht, können Sie die Testfunktion nutzen. Speichern Sie das Dokument vor dem Test. Eine Test-E-Mail wird dann an Ihr E-Mail-Konto gesendet. Sie können die E-Mail an alle vorgesehenen Empfänger senden, wenn Sie auf die Schaltfläche "Senden" klicken.
 
-<img class="screenshot" alt="Newsletter - Neu" src="{{docs_base_url}}/assets/img/crm/newsletter-new.png">
+<img class="screenshot" alt="Newsletter - Neu" src="/docs/assets/img/crm/newsletter-new.png">
 
-<img class="screenshot" alt="Newsletter - Test" src="{{docs_base_url}}/assets/img/crm/newsletter-test.png">
+<img class="screenshot" alt="Newsletter - Test" src="/docs/assets/img/crm/newsletter-test.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/de/CRM/opportunity.md b/erpnext/docs/user/manual/de/CRM/opportunity.md
index c9122f3..181348f 100644
--- a/erpnext/docs/user/manual/de/CRM/opportunity.md
+++ b/erpnext/docs/user/manual/de/CRM/opportunity.md
@@ -11,11 +11,11 @@
 
 ### Abbildung 1: Opportunity erstellen
 
-<img class="screenshot" alt="Opportunity" src="{{docs_base_url}}/assets/img/crm/opportunity.png">
+<img class="screenshot" alt="Opportunity" src="/docs/assets/img/crm/opportunity.png">
 
 ### Abbildung 2: Opportunity aus einem offenen Lead heraus erstellen
 
-<img class="screenshot" alt="Opportunity" src="{{docs_base_url}}/assets/img/crm/lead-to-opportunity.png">
+<img class="screenshot" alt="Opportunity" src="/docs/assets/img/crm/lead-to-opportunity.png">
 
 Eine Opportunity kann auch aus einem bereits vorhandenen Kunden heraus entstehen. Sie können mehrere verschiedene Opportunities zum gleichen Lead erstellen. In einer Opportunity können Sie abgesehen von der Kommunikation auch die Artikel mit vermerken, nach denen der Lead oder Kontakt sucht.
 
diff --git a/erpnext/docs/user/manual/de/CRM/setup/campaign.md b/erpnext/docs/user/manual/de/CRM/setup/campaign.md
index c9b1ac8..700bb32 100644
--- a/erpnext/docs/user/manual/de/CRM/setup/campaign.md
+++ b/erpnext/docs/user/manual/de/CRM/setup/campaign.md
@@ -3,19 +3,19 @@
 
 Eine Kampagne ist eine groß angelegte Umsetzung einer Vertriebsstrategie um ein Produkt oder eine Dienstleistung zu bewerben. Dies erfolgt in einem Marktsegment in einer bestimmten geographischen Region um bestimmte Ziele zu erreichen.
 
-<img class="screenshot" alt="Kampagne" src="{{docs_base_url}}/assets/img/crm/campaign.png">
+<img class="screenshot" alt="Kampagne" src="/docs/assets/img/crm/campaign.png">
 
-Sie können in einer Kampagne [Leads]({{docs_base_url}}/user/manual/de/CRM/lead.html), [Opportunities]({{docs_base_url}}/user/manual/de/CRM/opportunity.html) und [Angebote]({{docs_base_url}}/user/manual/de/selling/quotation.html) nachverfolgen.
+Sie können in einer Kampagne [Leads](/docs/user/manual/de/CRM/lead.html), [Opportunities](/docs/user/manual/de/CRM/opportunity.html) und [Angebote](/docs/user/manual/de/selling/quotation.html) nachverfolgen.
 
 ### Leads zu einer Kampagne nachverfolgen
 
 * Um einen Lead zu einer Kampagne nach zu verfolgen, wählen Sie "Leads anzeigen" aus.
 
-<img class="screenshot" alt="Kampange - Leads ansehen" src="{{docs_base_url}}/assets/img/crm/campaign-view-leads.png">
+<img class="screenshot" alt="Kampange - Leads ansehen" src="/docs/assets/img/crm/campaign-view-leads.png">
 
 * Sie sollten jetzt eine gefilterte Übersicht aller Leads erhalten, die zu dieser Kampagne gehören.
 * Sie können auch einen neuen Lead erstellen indem Sie auf "Neu" klicken.
 
-<img class="screenshot" alt="Kampagne - Neuer Lead" src="{{docs_base_url}}/assets/img/crm/campaign-new-lead.png">
+<img class="screenshot" alt="Kampagne - Neuer Lead" src="/docs/assets/img/crm/campaign-new-lead.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/de/CRM/setup/customer-group.md b/erpnext/docs/user/manual/de/CRM/setup/customer-group.md
index 4cdeb22..c7ec3e2 100644
--- a/erpnext/docs/user/manual/de/CRM/setup/customer-group.md
+++ b/erpnext/docs/user/manual/de/CRM/setup/customer-group.md
@@ -3,10 +3,10 @@
 
 Kundengruppen versetzen Sie in die Lage Ihre Kunden zu organisieren. Sie können auch Rabatte auf der Basis von Kundengruppen berechnen. Außerdem können Sie Trendanalysen für jede Gruppe erstellen. Typischerweise werden Kunden nach Marktsegmenten gruppiert (das basiert normalerweise auf Ihrer Domäne).
 
-<img class="screenshot" alt="Baumstruktur der Kundengruppen" src="{{docs_base_url}}/assets/img/crm/customer-group-tree.png">
+<img class="screenshot" alt="Baumstruktur der Kundengruppen" src="/docs/assets/img/crm/customer-group-tree.png">
 
 > Tipp: Wenn Sie der Meinung sind, dass hier zu viel Aufwand getrieben wird, dann können Sie es bei einer Standard-Kundengruppe belassen. Aber der gesamte Aufwand wird sich dann auszahlen, wenn Sie die ersten Berichte erhalten. Ein Beispiel eines Berichts ist unten abgebildet.
 
-<img class="screenshot" alt="Vertriebsanalyse" src="{{docs_base_url}}/assets/img/crm/sales-analytics-customer.gif">
+<img class="screenshot" alt="Vertriebsanalyse" src="/docs/assets/img/crm/sales-analytics-customer.gif">
 
 {next}
diff --git a/erpnext/docs/user/manual/de/CRM/setup/sales-person.md b/erpnext/docs/user/manual/de/CRM/setup/sales-person.md
index 77d6ea0..f615da4 100644
--- a/erpnext/docs/user/manual/de/CRM/setup/sales-person.md
+++ b/erpnext/docs/user/manual/de/CRM/setup/sales-person.md
@@ -3,7 +3,7 @@
 
 Vertriebsmitarbeiter verhalten sich wie Regionen. Sie können ein Organigramm der Vertriebsmitarbeiter erstellen, in dem individuell das Vertriebsziel des Vertriebsmitarbeiters vermerkt werden kann. Genauso wie in der Region muss das Ziel einer Artikelgruppe zugeordnet werden.
 
-<img class="screenshot" alt="Baumstruktur der Vertriebsmitarbeiter" src="{{docs_base_url}}/assets/img/crm/sales-person-tree.png">
+<img class="screenshot" alt="Baumstruktur der Vertriebsmitarbeiter" src="/docs/assets/img/crm/sales-person-tree.png">
 
 ### Vertriebspersonen in Transaktionen
 
diff --git a/erpnext/docs/user/manual/de/accounts/accounting-entries.md b/erpnext/docs/user/manual/de/accounts/accounting-entries.md
index fc5a259..8367dbf 100644
--- a/erpnext/docs/user/manual/de/accounts/accounting-entries.md
+++ b/erpnext/docs/user/manual/de/accounts/accounting-entries.md
@@ -5,19 +5,19 @@
 
 * Max Mustermann (Inhaber des Teeladens) investiert 25.000 Euro um die Geschäftstätigkeit zu beginnen.
 
-![A&L]({{docs_base_url}}/assets/old_images/erpnext/assets-1.png)
+![A&L](/docs/assets/old_images/erpnext/assets-1.png)
 
 **Analyse:** Max Mustermann investiert 25.000 Euro in das Unternehmen in der Hoffnung Gewinne zu erhalten. In anderen Worten schuldet die Firma 25.000 Euro an Max Mustermann, die in der Zukunft zurück gezahlt werden müssen. Deshalb ist das Konto Max Mustermann ein Verbindlichkeitenkonto und wird im Haben gebucht. Aufgrund der Investition steigen die Barmittel der Firma, "Kasse" ist ein Vermögenswert des Unternehmens und wird im Soll gebucht.
 
 * Die Firma benötigt sofort Geschäftsausstattung (Kocher, Teekannen, Tassen, etc.) und Rohmaterial (Tee, Zucker, Milch, etc.). Max Mustermann beschliesst im nächstgelegenen Gemischtwarenladen "Superbasar", mit dem er freundschaftlich verbunden ist, einzukaufen, und erhält dort Kredit. Die Geschäftsausstattung hat einen Wert von 2.800 Euro und das Rohmaterial von 2.200 Euro. Er zahlt 2.000 Euro von den insgesamt 5.000 Euro.
 
-![A&L]({{docs_base_url}}/assets/old_images/erpnext/assets-2.png)
+![A&L](/docs/assets/old_images/erpnext/assets-2.png)
 
 **Analyse:** Die Geschäftsausstattung ist Anlagevermögen der Firma (weil sie eine lange Lebensdauer hat) und das Rohmaterial ist Umlaufvermögen (weil es für das Tagesgeschäft verwendet wird). Aus diesem Grund wurden die Konten "Geschäftsausstattung" und "Warenbestand" im Soll gebucht und im Bestand erhöht. Max Mustermann zahlt 2.000 Euro, deshalb reduziert sich das Konto "Kasse" um diesen Betrag, weil der Geschäftsvorfall im Haben gebucht wird. Weil Max Mustermann Kredit erhält, und vereinbart wurde, dass 3.000 Euro später an "Superbasar" gezahlt werden, werden 3.000 Euro im Soll auf das Verbindlichkeitenkonto "Superbasar" gebucht.
 
 * Max Mustermann (, der sich um die Buchungen kümmert,) beschliesst zum Ende jeden Tages die Verkäufe zu buchen, so dass er täglich die Verkäufe analysieren kann. Am Ende des allerersten Tages hat der Teeladen 325 Tassen Tee verkauft, was einen Umsatz von 1.575 Euro ergibt. Der Inhaber verbucht hocherfreut die Umsätze seines ersten Tages.
 
-![A&L]({{docs_base_url}}/assets/old_images/erpnext/assets-3.png)
+![A&L](/docs/assets/old_images/erpnext/assets-3.png)
 
 **Analyse:** Der Ertrag wird auf dem Konto "Teeverkäufe" im Haben verbucht und der selbe Betrag wird auf dem Konto "Kasse" im Soll verbucht. Nehmen wir an, dass es 800 Euro kostet 325 Tassen Tea zuzubereiten. Deshalb reduziert sich das Konto "Waren" im Haben um 800 Euro und der Aufwand wird auf dem Konto "Warenaufwand" in selber Höhe im Soll gebucht.
 
@@ -27,7 +27,7 @@
 
 Im Laufe des Monats kauft die Firma weiteres Rohmaterial für die Geschäftstätigkeit ein. Nach einem Monat bucht Max Mustermann den Gewinn um die Bilanz und die Gewinn- und Verlustrechnung auszugleichen. Den Gewinn erhält Max Mustermann und nicht die Firma, da es sich für die Firma um eine Verbindlichkeit handelt (sie muss ihn an Max Mustermann zahlen). Wenn die Bilanz nicht ausgeglichen ist, d. h. Aktive und Passive nicht gleich sind, dann wurde der Gewinn noch nicht verbucht. Um den Gewinn zu buchen, muss der folgende Buchungssatz erstellt werden:
 
-![A&L]({{docs_base_url}}/assets/old_images/erpnext/assets-4.png)
+![A&L](/docs/assets/old_images/erpnext/assets-4.png)
 
 Erklärung: Die Nettoumsätze und Aufwände der Firme belaufen sich auf 40.000 bzw. 20.000 Euro. Die Firma hat also einen Gewinn von 20.000 Euro erwirtschaftet. Bei der Verbuchung des Gewinns wird dieser auf dem Konto GuV im Soll gebucht und die Gegenbuchung auf dem Konto "Eigenkapital" im Haben. Der Saldo des Kassenkontos der Firma beträgt 44.000 Euro und es ist Rohmaterial im Wert von 1.000 Euro übrig.
 
diff --git a/erpnext/docs/user/manual/de/accounts/accounting-reports.md b/erpnext/docs/user/manual/de/accounts/accounting-reports.md
index b9f0fca..deab83b 100644
--- a/erpnext/docs/user/manual/de/accounts/accounting-reports.md
+++ b/erpnext/docs/user/manual/de/accounts/accounting-reports.md
@@ -8,7 +8,7 @@
 Das Hauptbuch basiert auf der Tabelle der Hauptbucheinträge und kann nach einem Konto und einem Zeitraum gefiltert werden. Das hilft Ihnen dabei einen Überblick über alle Buchungen zu erhalten, die zu einem Konto in einem bestimmten Zeitraum getätigt wurden.
 
 <img alt="Hauptbuch" class="screenshot"
-    src="{{docs_base_url}}/assets/img/accounts/general-ledger.png">
+    src="/docs/assets/img/accounts/general-ledger.png">
 
 ### Probebilanz
 
@@ -19,7 +19,7 @@
 * Summe Haben
 * Schlußstand
 
-<img alt="Probebilanz" class="screenshot" src="{{docs_base_url}}/assets/img/accounts/trial-balance.png">
+<img alt="Probebilanz" class="screenshot" src="/docs/assets/img/accounts/trial-balance.png">
 
 Die Summe aller Schlußstände in einer Probebilanz muss 0 sein.
 
@@ -27,12 +27,12 @@
 
 Diese Berichte helfen Ihnen dabei, die offenen Posten bei Rechnungen von Kunden und Lieferanten nachzuverfolgen. In diesem Bericht sehen Sie die offenen Beträge nach Zeiträumen geordnet, d. h. 0-30 Tage, 30-60 Tage und so weiter.
 
-<img alt="Forderungskonten" class="screenshot" src="{{docs_base_url}}/assets/img/accounts/accounts-receivable.png">
+<img alt="Forderungskonten" class="screenshot" src="/docs/assets/img/accounts/accounts-receivable.png">
 
 ### Auflistung der Verkäufe und Einkäufe
 
 In diesem Bericht wird jedes Steuerkonto in Spalten dargestellt. Für jede Rechnung und jeden Rechnungsposten erhalten Sie den Betrag und die individuelle Steuer, die gezahlt wurde, basierend auf der Tabelle der Steuern und Abgaben.
 
-<img alt="Übersicht Verkäufe" class="screenshot" src="{{docs_base_url}}/assets/img/accounts/sales-register.png">
+<img alt="Übersicht Verkäufe" class="screenshot" src="/docs/assets/img/accounts/sales-register.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/de/accounts/advance-payment-entry.md b/erpnext/docs/user/manual/de/accounts/advance-payment-entry.md
index 288b35e..54633b2 100644
--- a/erpnext/docs/user/manual/de/accounts/advance-payment-entry.md
+++ b/erpnext/docs/user/manual/de/accounts/advance-payment-entry.md
@@ -15,7 +15,7 @@
 
 #### Abbildung 1: Journalbuchung bei Vorkasse
 
-<img class="screenshot" alt="Anzahlung" src="{{docs_base_url}}/assets/img/accounts/advance-payment-1.png">
+<img class="screenshot" alt="Anzahlung" src="/docs/assets/img/accounts/advance-payment-1.png">
 
 ### Doppelte Buchführung
 
@@ -23,7 +23,7 @@
 
 #### Abbildung 2: Transaktion und Ausgleichsbuchung
 
-<img class="screenshot" alt="Anzahlung" src="{{docs_base_url}}/assets/img/accounts/advance-payment-2.png">
+<img class="screenshot" alt="Anzahlung" src="/docs/assets/img/accounts/advance-payment-2.png">
 
 Speichern und übertragen Sie den Buchungssatz. Wenn das Dokument nicht gespeichert wird, dann wird es in anderen Buchungsdokumenten nicht übernommen.
 
@@ -33,7 +33,7 @@
 
 #### Abbildung 3: Anzahlung erhalten
 
-<img class="screenshot" alt="Anzahlung" src="{{docs_base_url}}/assets/img/accounts/advance-payment-3.png">
+<img class="screenshot" alt="Anzahlung" src="/docs/assets/img/accounts/advance-payment-3.png">
 
 Speichern und übertragen Sie die Ausgangsrechnung
 
diff --git a/erpnext/docs/user/manual/de/accounts/budgeting.md b/erpnext/docs/user/manual/de/accounts/budgeting.md
index 88ef179..7495e3c 100644
--- a/erpnext/docs/user/manual/de/accounts/budgeting.md
+++ b/erpnext/docs/user/manual/de/accounts/budgeting.md
@@ -11,29 +11,29 @@
 
 #### Schritt 1: Klicken Sie auf "Öffnen
 
-<img class="screenshot" alt="Budget" src="{{docs_base_url}}/assets/img/accounts/budgeting-cost-center.png">
+<img class="screenshot" alt="Budget" src="/docs/assets/img/accounts/budgeting-cost-center.png">
 
 #### Schritt 2: Monatliche Verteilung eingeben
 
 
-<img class="screenshot" alt="Budget" src="{{docs_base_url}}/assets/img/accounts/budget-account.png">
+<img class="screenshot" alt="Budget" src="/docs/assets/img/accounts/budget-account.png">
 
 Wenn Sie die Verteilungs-ID leer lassen, kalkuliert ERPNext auf einer jährlichen Basis und bricht auf die Monate herunter.
 
 #### Schritt 3: Fügen Sie eine neue Zeile hinzu und wählen Sie das Budget-Konto
 
 
-<img class="screenshot" alt="Budget" src="{{docs_base_url}}/assets/img/accounts/budget-account.png"> 
+<img class="screenshot" alt="Budget" src="/docs/assets/img/accounts/budget-account.png"> 
 
 ### Anlegen einer neuen Verteilungs-ID
 
 ERPNext erlaubt es Ihnen einige Aktionen für Budgets einzustellen. Das legt fest, ob bei Überschreiten des Budgets gestoppt, gewarnte oder ignoriert werden soll.
 
-<img class="screenshot" alt="Monthly Distribution" src="{{docs_base_url}}/assets/img/accounts/monthly-budget-distribution.png">
+<img class="screenshot" alt="Monthly Distribution" src="/docs/assets/img/accounts/monthly-budget-distribution.png">
 
 Das kann über die Firmenstammdaten eingestellt werden.
 
-<img class="screenshot" alt="Budget Variance Report" src="{{docs_base_url}}/assets/img/accounts/budget-variance-report.png">
+<img class="screenshot" alt="Budget Variance Report" src="/docs/assets/img/accounts/budget-variance-report.png">
 
 Auch dann, wenn Sie für überschrittene Budgets "ignorieren" auswählen, bekommen Sie eine Fülle von Informationen über den Bericht zur Abweichung zwischen Budget und Istwert. Dieser Bericht zeigt Ihnen auf monatlicher Basis die tatsächlichen Ausgaben verglichen mit den budgetierten Ausgaben.
 
diff --git a/erpnext/docs/user/manual/de/accounts/chart-of-accounts.md b/erpnext/docs/user/manual/de/accounts/chart-of-accounts.md
index 551367e..b9e93e0 100644
--- a/erpnext/docs/user/manual/de/accounts/chart-of-accounts.md
+++ b/erpnext/docs/user/manual/de/accounts/chart-of-accounts.md
@@ -17,7 +17,7 @@
 
 Sie können in ERPNext leicht die finanzielle Lage Ihres Unternehmens einsehen. Ein Beispiel für eine Finanzanalyse sehen Sie unten abgebildet.
 
-<img class="screenshot" alt="Finanzanalyse Bilanz" src="{{docs_base_url}}/assets/img/accounts/financial-analytics-bl.png">
+<img class="screenshot" alt="Finanzanalyse Bilanz" src="/docs/assets/img/accounts/financial-analytics-bl.png">
 
 Um Ihren Kontenplan in ERPNext zu bearbeiten gehen Sie zu:
 
@@ -27,7 +27,7 @@
 
 Lassen Sie uns die Hauptgruppen des Kontenplans besser verstehen lernen.
 
-<img class="screenshot" alt="Kontenplan" src="{{docs_base_url}}/assets/img/accounts/chart-of-accounts-1.png">
+<img class="screenshot" alt="Kontenplan" src="/docs/assets/img/accounts/chart-of-accounts-1.png">
 
 ### Bilanzkonten
 
@@ -47,7 +47,7 @@
 
 In ERPNext ist es einfach eine graphische Auswertung von Gewinn und Verlust zu erstellen. Im Folgenden ist ein Beispiel einer GuV-Analyse abgebildet:
 
-<img class="screenshot" alt="Finanzanalyse GuV" src="{{docs_base_url}}/assets/img/accounts/financial-analytics-pl.png">
+<img class="screenshot" alt="Finanzanalyse GuV" src="/docs/assets/img/accounts/financial-analytics-pl.png">
 
 (Am ersten Tag eines Jahres haben Sie noch keinen Gewinn oder Verlust gemacht, aber Sie haben bereits Vermögen, deshalb haben Bestandskonten zum Anfang oder Ende eines Zeitraums einen Wert.)
 
@@ -61,7 +61,7 @@
 
 > Anmerkung: Ein Kontenbuch wird manchmal auch als Kontokopf bezeichnet.
 
-<img class="screenshot" alt="Kontenplan" src="{{docs_base_url}}/assets/img/accounts/chart-of-accounts-2.png">
+<img class="screenshot" alt="Kontenplan" src="/docs/assets/img/accounts/chart-of-accounts-2.png">
 
 ### Andere Kontentypen
 
@@ -71,7 +71,7 @@
 
 Um ein neues Konto zu erstellen, gehen Sie Ihren Kontenplan durch und klicken Sie auf die Kontengruppe unter der Sie das neue Konto erstellen wollen. Auf der rechten Seite finden Sie die Option ein neues Konto zu "öffnen" oder ein Unterkonto zu erstellen.
 
-<img class="screenshot" alt="Kontenplan" src="{{docs_base_url}}/assets/img/accounts/chart-of-accounts-3.png">
+<img class="screenshot" alt="Kontenplan" src="/docs/assets/img/accounts/chart-of-accounts-3.png">
 
 Die Option zum Erstellen erscheint nur dann, wenn Sie auf ein Konto vom Typ Gruppe (Ordner) klicken.
 
diff --git a/erpnext/docs/user/manual/de/accounts/credit-limit.md b/erpnext/docs/user/manual/de/accounts/credit-limit.md
index dc13819..b769817 100644
--- a/erpnext/docs/user/manual/de/accounts/credit-limit.md
+++ b/erpnext/docs/user/manual/de/accounts/credit-limit.md
@@ -9,7 +9,7 @@
 
 ### Abbildung 1: Kreditlinie
 
-<img class="screenshot" alt="Kreditlimit" src="{{docs_base_url}}/assets/img/accounts/credit-limit-1.png">
+<img class="screenshot" alt="Kreditlimit" src="/docs/assets/img/accounts/credit-limit-1.png">
 
 Gehen Sie zum Abschnitt "Kreditlimit" und geben Sie den Betrag in das Feld "Kreditlimit" ein.
 
@@ -21,7 +21,7 @@
 
 ### Abbildung 2: Kredit-Controller
 
-<img class="screenshot" alt="Kreditlimit" src="{{docs_base_url}}/assets/img/accounts/credit-limit-2.png">
+<img class="screenshot" alt="Kreditlimit" src="/docs/assets/img/accounts/credit-limit-2.png">
 
 Speichern Sie die Änderungen
 
diff --git a/erpnext/docs/user/manual/de/accounts/item-wise-tax.md b/erpnext/docs/user/manual/de/accounts/item-wise-tax.md
index 2ebe80f..768693c 100644
--- a/erpnext/docs/user/manual/de/accounts/item-wise-tax.md
+++ b/erpnext/docs/user/manual/de/accounts/item-wise-tax.md
@@ -7,7 +7,7 @@
 
 Die Artikelstammdaten beinhalten eine Tabelle, in der Sie Steuern, die angewendet werden sollen, auflisten können.
 
-![Artikelbezogene Steuer]({{docs_base_url}}/assets/old_images/erpnext/item-wise-tax.png)
+![Artikelbezogene Steuer](/docs/assets/old_images/erpnext/item-wise-tax.png)
 
 Der im Artikelstamm angegebene Steuersatz hat gegenüber dem Steuersatz, der in Transaktionen angegeben wird, Vorrang.
 
@@ -19,7 +19,7 @@
 
 Beispiel: Wenn Sie Artikel mit 5% Umsatzsteuer haben, bei anderen eine Dienstleistungssteuer anfällt und bei wieder anderen eine Luxussteuer, dann sollten Ihre Steuerstammdaten auch alle drei Steuern enthalten.
 
-![Vorlage für artikelbezogene Steuer]({{docs_base_url}}/assets/old_images/erpnext/item-wise-tax-master.png)
+![Vorlage für artikelbezogene Steuer](/docs/assets/old_images/erpnext/item-wise-tax-master.png)
 
 #### Schritt 3: Steuersatz in den Stammdaten für Steuern und Abgaben auf 0 einstellen
 
@@ -27,6 +27,6 @@
 
 Basierend auf den obigen Einstellungen werden Steuern also wie in den Artikelstammdaten angegeben angewendet. Probieren Sie beispielsweise Folgendes aus:
 
-![Artikelbezogene Steuerkalkulation]({{docs_base_url}}/assets/old_images/erpnext/item-wise-tax-calc.png)
+![Artikelbezogene Steuerkalkulation](/docs/assets/old_images/erpnext/item-wise-tax-calc.png)
 
 {next}
diff --git a/erpnext/docs/user/manual/de/accounts/journal-entry.md b/erpnext/docs/user/manual/de/accounts/journal-entry.md
index 0885130..3ccc049 100644
--- a/erpnext/docs/user/manual/de/accounts/journal-entry.md
+++ b/erpnext/docs/user/manual/de/accounts/journal-entry.md
@@ -7,7 +7,7 @@
 
 > Rechnungswesen > Dokumente > Journalbuchung > Neu
 
-<img class="screenshot" alt="Buchungssatz" src="{{docs_base_url}}/assets/img/accounts/journal-entry.png">
+<img class="screenshot" alt="Buchungssatz" src="/docs/assets/img/accounts/journal-entry.png">
 
 In einem Buchungssatz müssen Sie folgendes tun:
 
diff --git a/erpnext/docs/user/manual/de/accounts/making-payments.md b/erpnext/docs/user/manual/de/accounts/making-payments.md
index 0c2e041..00c8d10 100644
--- a/erpnext/docs/user/manual/de/accounts/making-payments.md
+++ b/erpnext/docs/user/manual/de/accounts/making-payments.md
@@ -8,7 +8,7 @@
   1. Geben Sie Schecknummer und Scheckdatum ein.
   1. Speichern und Übertragen Sie.
 
-<img class="screenshot" alt="Zahlungen durchführen" src="{{docs_base_url}}/assets/img/accounts/make-payment.png">
+<img class="screenshot" alt="Zahlungen durchführen" src="/docs/assets/img/accounts/make-payment.png">
 
 Zahlungen können auch unabhängig von Rechnungen erstellt werden, indem Sie einen neuen Journalbeleg erstellen und die Zahlungsart auswählen.
 
@@ -30,7 +30,7 @@
 
 ### Beispiel eines Buchungssatzes für eine Zahlung
 
-<img class="screenshot" alt="Zahlungen durchführen" src="{{docs_base_url}}/assets/img/accounts/new-bank-entry.png">
+<img class="screenshot" alt="Zahlungen durchführen" src="/docs/assets/img/accounts/new-bank-entry.png">
 
 ---
 
diff --git a/erpnext/docs/user/manual/de/accounts/multi-currency-accounting.md b/erpnext/docs/user/manual/de/accounts/multi-currency-accounting.md
index ad9eaaf..0b0adaa 100644
--- a/erpnext/docs/user/manual/de/accounts/multi-currency-accounting.md
+++ b/erpnext/docs/user/manual/de/accounts/multi-currency-accounting.md
@@ -7,15 +7,15 @@
 
 Um mit Buchungen in unterschiedlichen Währungen zu beginnen, müssen Sie die Buchungswährung im Datensatz des Kontos einstellen. Sie können bei der Anlage eine Währung aus dem Kontenplan auswählen.
 
-<img class="screenshot" alt="Währung über den Kontenplan einstellen"  	src="{{docs_base_url}}/assets/img/accounts/multi-currency/chart-of-accounts.png">
+<img class="screenshot" alt="Währung über den Kontenplan einstellen"  	src="/docs/assets/img/accounts/multi-currency/chart-of-accounts.png">
 
 Sie können die Währung auch zuordnen oder bearbeiten, indem Sie den jeweiligen Datensatz für bereits angelegte Konten öffnen. 
 
-<img class="screenshot" alt="Kontenwährung anpassen"  	src="{{docs_base_url}}/assets/img/accounts/multi-currency/account.png">
+<img class="screenshot" alt="Kontenwährung anpassen"  	src="/docs/assets/img/accounts/multi-currency/account.png">
 
 Für Kunden/Lieferanten können Sie die Buchungswährung auch im Gruppendatensatz einstellen. Wenn sich die Buchungswährung der Gruppe von der Firmenwährung unterscheidet, müssen Sie die Standardkonten für Forderungen und Verbindlichkeiten auf diese Währung einstellen.
 
-<img class="screenshot" alt="Währung des Kundenkontos"  	src="{{docs_base_url}}/assets/img/accounts/multi-currency/customer.png">
+<img class="screenshot" alt="Währung des Kundenkontos"  	src="/docs/assets/img/accounts/multi-currency/customer.png">
 
 Wenn Sie die Buchungswährung für einen Artikel oder eine Gruppe eingestellt haben, können Sie Buchungen zu ihnen erstellen. Wenn sich die Buchungswährung der Gruppe von der Firmenwährung unterscheidet, dann beschränkt das System beim Erstellen von Transaktionen für diese Gruppe Buchungen auf diese Währung. Wenn die Buchungswährung die selbe wie die Firmenwährung ist, können Sie Transaktionen für diese Guppe in jeder beliebigen Währung erstellen. Aber die Hauptbuch-Buchungen werden immer in der Buchungswährung der Gruppe vorliegen. In jedem Fall ist die Wärung des Verbindlichkeitenkontos immer gleich der Buchungswährung der Gruppe.
 
@@ -33,7 +33,7 @@
 
 Der ausstehende Betrag und Anzahlungsbeträge werden immer in der Währung des Kundenkontos kalkuliert und angezeigt.
 
-<img class="screenshot" alt="Offene Ausgangsrechnung"  	src="{{docs_base_url}}/assets/img/accounts/multi-currency/sales-invoice.png">
+<img class="screenshot" alt="Offene Ausgangsrechnung"  	src="/docs/assets/img/accounts/multi-currency/sales-invoice.png">
 
 #### Eingangsrechnung
 
@@ -43,13 +43,13 @@
 
 In einer Journalbuchung können Sie Transaktionen in unterschiedlichen Währungen erstellen. Es gibt ein Auswahlfeld "Unterschiedliche Währungen" um Buchungen in mehreren Währungen zu aktivieren. Wenn die Option "Unterschiedliche Währungen" ausgewählt wurde, können Sie Konten mit unterschiedlichen Währungen auswählen.
 
-<img class="screenshot" alt="Wechselkurs im Buchungssatz"  	src="{{docs_base_url}}/assets/img/accounts/multi-currency/journal-entry-multi-currency.png">
+<img class="screenshot" alt="Wechselkurs im Buchungssatz"  	src="/docs/assets/img/accounts/multi-currency/journal-entry-multi-currency.png">
 
 In der Kontenübersicht zeigt das System den Abschnitt Währung an und holt sich die Kontenwährung und den Wechselkurs automatisch, wenn Sie ein Konto mit ausländischer Währung auswählen. Sie können den Wechselkurs später manuell ändern/anpassen.
 
 In einem einzelnen Buchungssatz können Sie nur Konten mit einer alternativen Währung auswählen, abweichend von Konten in der Firmenwährung. Die Beträge für Soll und Haben sollten in der Kontenwährung eingegeben werden, das System berechnet und zeigt dann den Betrag für Soll und Haben automatisch in der Firmenwährung.
 
-<img class="screenshot" alt="Buchungssatz mit verschiedenen Währungen"  	src="{{docs_base_url}}/assets/img/accounts/multi-currency/journal-entry-row.png">
+<img class="screenshot" alt="Buchungssatz mit verschiedenen Währungen"  	src="/docs/assets/img/accounts/multi-currency/journal-entry-row.png">
 
 #### Beispiel 1: Zahlungsbuchung eines Kunden in alternativer Währung
 
@@ -57,7 +57,7 @@
 
 Der Wechselkurs in der Zahlungsbuchung sollte immer der selbe wie auf der Rechnung (60) sein, auch dann, wenn der Wechselkurs am Tag der Zahlung 62 beträgt. Dem Bankkonto wird der Betrag mit einem Wechselkurs von 62 gut geschrieben. Deshalb wird ein Wechelkursgewinn bzw. -verlust basierend auf dem Unterschied im Wechselkurs gebucht.
 
-<img class="screenshot" alt="Zahlungsbuchung"  	src="{{docs_base_url}}/assets/img/accounts/multi-currency/payment-entry.png">
+<img class="screenshot" alt="Zahlungsbuchung"  	src="/docs/assets/img/accounts/multi-currency/payment-entry.png">
 
 #### Beispiel 2: Überweisung zwischen Banken (US-Dollar -> Indische Rupien)
 
@@ -100,7 +100,7 @@
 
 Angenommen, der Wechselkurs am Zahlungstag ist 62, dann schaut die Buchung zur Banküberweisung wie folgt aus:
 
-<img class="screenshot" alt="Übertrag zwischen den Banken"  	src="{{docs_base_url}}/assets/img/accounts/multi-currency/bank-transfer.png">
+<img class="screenshot" alt="Übertrag zwischen den Banken"  	src="/docs/assets/img/accounts/multi-currency/bank-transfer.png">
 
 ### Berichte
 
@@ -108,12 +108,12 @@
 
 Im Hauptbuch zeigt das System den Betrag einer Gutschrift/Lastschrift in beiden Währungen an, wenn nach Konto gefiltert wurde, und wenn die Kontenwährung unterschiedlich zur Firmenwährung ist.
 
-<img class="screenshot" alt="Bericht zum Hauptbuch"  	src="{{docs_base_url}}/assets/img/accounts/multi-currency/general-ledger.png">
+<img class="screenshot" alt="Bericht zum Hauptbuch"  	src="/docs/assets/img/accounts/multi-currency/general-ledger.png">
 
 #### Forderungs- und Verbindlichkeitenkonten
 
 Im Bericht zu den Konten Forderungen und Verbindlichkeiten zeigt das System alle Beträge in der Währung der Gruppe/in der Kontenwährung an.
 
-<img class="screenshot" alt="Bericht zu den Forderungen"  	src="{{docs_base_url}}/assets/img/accounts/multi-currency/accounts-receivable.png">
+<img class="screenshot" alt="Bericht zu den Forderungen"  	src="/docs/assets/img/accounts/multi-currency/accounts-receivable.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/de/accounts/opening-accounts.md b/erpnext/docs/user/manual/de/accounts/opening-accounts.md
index f264fc8..3edcadc 100644
--- a/erpnext/docs/user/manual/de/accounts/opening-accounts.md
+++ b/erpnext/docs/user/manual/de/accounts/opening-accounts.md
@@ -20,7 +20,7 @@
 
 Sie können Konten basierend auf Belegarten auswählen. In so einem Szenario sollte Ihre Bilanz ausgeglichen sein.
 
-<img class="screenshot" alt="Eröffnungskonto" src="{{docs_base_url}}/assets/img/accounts/opening-account-1.png">
+<img class="screenshot" alt="Eröffnungskonto" src="/docs/assets/img/accounts/opening-account-1.png">
 
 Beachten Sie bitte auch, dass das System abstürzt, wenn es mehr als 300 Bücher gibt. Um so eine Situation zu vermeiden, können Sie Konten über temporäre Konten eröffnen.
 
@@ -38,13 +38,13 @@
 
 Vervollständigen Sie die Buchungssätze auf der Soll- und Haben-Seite.
 
-<img class="screenshot" alt="Opening Account" src="{{docs_base_url}}/assets/img/accounts/opening-6.png">
+<img class="screenshot" alt="Opening Account" src="/docs/assets/img/accounts/opening-6.png">
 
 Um einen Eröffnungsstand einzupflegen, erstellen Sie einen Buchungssatz für ein Konto oder eine Gruppe von Konten.
 
 Beispiel: Wenn Sie die Kontenstände von drei Bankkonten einpflegen möchten, dann erstellen Sie Buchungssätze der folgenden Art und Weise:
 
-<img class="screenshot" alt="Opening Account" src="{{docs_base_url}}/assets/img/accounts/opening-3.png">
+<img class="screenshot" alt="Opening Account" src="/docs/assets/img/accounts/opening-3.png">
 
 Um einen Ausgleich herzustellen, wird ein temporäres Konto für Vermögen und Verbindlichkeiten verwendet. Wenn Sie einen Anfangsbestand in einem Verbindlichkeitenkonto einpflegen, können Sie zum Ausgleich ein temporäres Vermögenskonto verwenden.
 
@@ -59,7 +59,7 @@
 
 Wenn Sie die Buchungen erstellt haben, schaut der Bericht zur Probebilanz in etwa wie folgt aus:
 
-<img class="screenshot" alt="Probebilanz" src="{{docs_base_url}}/assets/img/accounts/opening-4.png">
+<img class="screenshot" alt="Probebilanz" src="/docs/assets/img/accounts/opening-4.png">
 
 
 ### Offene Rechnungen
diff --git a/erpnext/docs/user/manual/de/accounts/opening-entry.md b/erpnext/docs/user/manual/de/accounts/opening-entry.md
index 8195faf..66c1439 100644
--- a/erpnext/docs/user/manual/de/accounts/opening-entry.md
+++ b/erpnext/docs/user/manual/de/accounts/opening-entry.md
@@ -3,6 +3,6 @@
 
 Wenn Sie eine neue Firma erstellen, dann können Sie das ERPNext-Modul Rechnungswesen starten, indem Sie in den Kontenplan gehen.
 
-Wenn Sie aber von einem reinen Buchhaltungsprogramm wie Tally oder einer FoxPro-basieren Software migrieren, dann lesen Sie unter [Eröffnungsbilanz]({{docs_base_url}}/user/manual/de/accounts/opening-accounts.html) nach.
+Wenn Sie aber von einem reinen Buchhaltungsprogramm wie Tally oder einer FoxPro-basieren Software migrieren, dann lesen Sie unter [Eröffnungsbilanz](/docs/user/manual/de/accounts/opening-accounts.html) nach.
 
 {next}
diff --git a/erpnext/docs/user/manual/de/accounts/point-of-sales-invoice.md b/erpnext/docs/user/manual/de/accounts/point-of-sales-invoice.md
index d64e272..d331259 100644
--- a/erpnext/docs/user/manual/de/accounts/point-of-sales-invoice.md
+++ b/erpnext/docs/user/manual/de/accounts/point-of-sales-invoice.md
@@ -12,7 +12,7 @@
 In ERPNext können über den POS alle Verkaufs- und Einkaufstransaktionen, wie Ausgangsrechnung, Angebot, Kundenauftrag, Lieferantenauftrag, usw. bearbeitet werden. Über folgende zwei Schritte richten Sie den POS ein:
 
 1. Aktivieren Sie die POS-Ansicht über Einstellungen > Anpassen > Funktionseinstellungen
-2. Erstellen Sie einen Datensatz für die [POS-Einstellungen]({{docs_base_url}}/user/manual/de/setting-up/pos-setting.html)
+2. Erstellen Sie einen Datensatz für die [POS-Einstellungen](/docs/user/manual/de/setting-up/pos-setting.html)
 
 #### Auf die POS-Ansicht umschalten
 
@@ -33,7 +33,7 @@
 
 **Barcode/Seriennummer:** Ein Barcode/eine Seriennummer ist eine optionale maschinenlesbare Möglichkeit Daten zu einem Objekt einzulesen, mit dem er/sie verbunden ist. Geben Sie wie auf dem Bild unten angegeben den Barcode/die Seriennummer in das Feld ein und warten Sie einen kurzen Moment, dann wird der Artikel automatisch zum Einkaufswagen hinzugefügt.
 
-![POS]({{docs_base_url}}/assets/old_images/erpnext/pos-add-item.png)
+![POS](/docs/assets/old_images/erpnext/pos-add-item.png)
 
 > Tipp: Um die Menge eines Artikels zu ändern, geben Sie die gewünschte Menge im Feld "Menge" ein. Das wird hauptsächliche dann verwendet, wenn ein Artikel in größeren Mengen gekauft wird.
 
@@ -50,7 +50,7 @@
 
 > Die Schaltfläche "Löschen" erscheint nur, wenn Artikel ausgewählt wurden.
 
-![POS]({{docs_base_url}}/assets/old_images/erpnext/pos-remove-item.png)
+![POS](/docs/assets/old_images/erpnext/pos-remove-item.png)
 
 ### Zahlung durchführen
 
@@ -60,7 +60,7 @@
 2. Wählen Sie die Zahlungsart aus.
 3. Klicken Sie auf die Schaltfläche "Zahlen" um das Dokument abzuspeichern.
 
-![POS-Zahlung]({{docs_base_url}}/assets/old_images/erpnext/pos-make-payment.png)
+![POS-Zahlung](/docs/assets/old_images/erpnext/pos-make-payment.png)
 
 Übertragen Sie das Dokument um den Datensatz abzuschliessen. Nachdem das Dokument übertragen wurde, können Sie es entweder ausdrucken oder per E-Mail versenden.
 
diff --git a/erpnext/docs/user/manual/de/accounts/purchase-invoice.md b/erpnext/docs/user/manual/de/accounts/purchase-invoice.md
index b3952ef..6aec9b5 100644
--- a/erpnext/docs/user/manual/de/accounts/purchase-invoice.md
+++ b/erpnext/docs/user/manual/de/accounts/purchase-invoice.md
@@ -9,7 +9,7 @@
 
 oder klicken Sie in einem Lieferantenauftrag oder einem Kaufbeleg auf "Eingangsrechnung erstellen".
 
-<img class="screenshot" alt="Eingangsrechnung" src="{{docs_base_url}}/assets/img/accounts/purchase-invoice.png">
+<img class="screenshot" alt="Eingangsrechnung" src="/docs/assets/img/accounts/purchase-invoice.png">
 
 Das Konzept des Veröffentlichungsdatums ist das gleiche wie bei der Ausgangsrechnung. Rechnungsnummer und Rechnungsdatum helfen Ihnen dabei nachzuvollziehen, unter welchen Daten die Rechnung bei Ihrem Lieferanten ausgewiesen ist.
 
diff --git a/erpnext/docs/user/manual/de/accounts/sales-invoice.md b/erpnext/docs/user/manual/de/accounts/sales-invoice.md
index 03b36d8..7ce30bb 100644
--- a/erpnext/docs/user/manual/de/accounts/sales-invoice.md
+++ b/erpnext/docs/user/manual/de/accounts/sales-invoice.md
@@ -9,7 +9,7 @@
 
 oder indem Sie in der rechten Ecke des Lieferscheins auf "Rechnung erstellen" klicken.
 
-<img class="screenshot" alt="Ausgangsrechnung" src="{{docs_base_url}}/assets/img/accounts/sales-invoice.png">
+<img class="screenshot" alt="Ausgangsrechnung" src="/docs/assets/img/accounts/sales-invoice.png">
 
 ### Auswirkung auf die Buchhaltung
 
@@ -53,6 +53,6 @@
 
 "Proforma" bezieht sich auf eine Formsache. Warum sollte man das tun? Wenn Sie eine Ausgangsrechnung buchen, dann erscheint diese bei den Forderungen und den Erträgen. Das ist genau dann nicht optimal, wenn nicht sicher ist, ob Ihr Kunden die Anzahlung auch wirklich leistet. Wenn Ihr Kunden aber dennoch eine "Rechnung" will, dann geben Sie ihm ein Angebot (in ERPNext) das als "Proforma-Rechnung" bezeichnet wird. Auf diese Weise ist jeder glücklich.
 
-Das ist ein weithin gebräuchliches Verfahren. Wir bei Frappe machen das genauso.
+Das ist ein weithin gebräuchliches Verfahren. Wir bei Frappé machen das genauso.
 
 {next}
diff --git a/erpnext/docs/user/manual/de/accounts/setup/account-settings.md b/erpnext/docs/user/manual/de/accounts/setup/account-settings.md
index d0d9bef..44aafa4 100644
--- a/erpnext/docs/user/manual/de/accounts/setup/account-settings.md
+++ b/erpnext/docs/user/manual/de/accounts/setup/account-settings.md
@@ -1,7 +1,7 @@
 # Konteneinstellungen
 <span class="text-muted contributed-by">Beigetragen von CWT Connector & Wire Technology GmbH</span>
 
-<img class="screenshot" alt="Konteneinstellungen" src="{{docs_base_url}}/assets/img/accounts/account-settings.png">
+<img class="screenshot" alt="Konteneinstellungen" src="/docs/assets/img/accounts/account-settings.png">
 
 * Konten gesperrt bis: Sperren Sie Konten-Transaktionen bis zu einem bestimmten Datum. Niemand bis auf die angegebene Rolle kann dann Buchungen zu diesem Konto erstellen oder verändern.
 
diff --git a/erpnext/docs/user/manual/de/accounts/setup/cost-center.md b/erpnext/docs/user/manual/de/accounts/setup/cost-center.md
index be42c80..a7ed877 100644
--- a/erpnext/docs/user/manual/de/accounts/setup/cost-center.md
+++ b/erpnext/docs/user/manual/de/accounts/setup/cost-center.md
@@ -22,7 +22,7 @@
 
 >Rechnungswesen > Einstellungen > Kostenstellenplan
 
-<img class="screenshot" alt="Kostenstellenplan" src="{{docs_base_url}}/assets/img/accounts/budgeting-cost-center.png">
+<img class="screenshot" alt="Kostenstellenplan" src="/docs/assets/img/accounts/budgeting-cost-center.png">
 
 Kostenstellen helfen Ihnen bei der Erstellung von Budgets für Geschäftstätigkeiten.
 
@@ -36,7 +36,7 @@
 
 > Rechnungswesen > Einstellungen > Budgetverteilung > Neu
 
-![Budgetverteilung]({{docs_base_url}}/assets/old_images/erpnext/budgeting.png)
+![Budgetverteilung](/docs/assets/old_images/erpnext/budgeting.png)
 
 ### Budgetaktionen
 
diff --git a/erpnext/docs/user/manual/de/accounts/setup/fiscal-year.md b/erpnext/docs/user/manual/de/accounts/setup/fiscal-year.md
index ce4c750..817c557 100644
--- a/erpnext/docs/user/manual/de/accounts/setup/fiscal-year.md
+++ b/erpnext/docs/user/manual/de/accounts/setup/fiscal-year.md
@@ -5,6 +5,6 @@
 
 Ein Geschäftsjahr startet normalerweise zu Beginn eines Quartals, wie zum Beispiel am 1. April, 1. Juli oder 1. Oktober. Jedoch geht bei den meisten Firmen das Geschäftsjahr mit dem Kalenderjahr einher und startet am 1. Januar. In den meisten Fällen ist es der einfachere und leichtere Weg. Für einige Organisationen ist es vorteilhaft das Geschäftsjahr zu einem anderen Zeitpunkt zu starten. So können beispielsweise Geschäfte, die saisonal arbeiten zum 1. Juli oder 1. Oktober starten. Ein Geschäft, welches im Herbst den größten Gewinn erwirtschaftet und die größten Ausgaben im Frühling hat, könnte sich auch für den 1. Okober entscheiden. Auf diese Weise weis es wie hoch der Gewinn für das Jahr sein wird und kann seine Ausgaben so anpassen, dass das Gewinnziel erreicht wird.
 
-<img class="screenshot" alt="Geschäftsjahr" src="{{docs_base_url}}/assets/img/accounts/fiscal-year.png">
+<img class="screenshot" alt="Geschäftsjahr" src="/docs/assets/img/accounts/fiscal-year.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/de/accounts/setup/tax-rule.md b/erpnext/docs/user/manual/de/accounts/setup/tax-rule.md
index 73d4907..52fd1d7 100644
--- a/erpnext/docs/user/manual/de/accounts/setup/tax-rule.md
+++ b/erpnext/docs/user/manual/de/accounts/setup/tax-rule.md
@@ -1,9 +1,9 @@
 # Steuerregeln
 <span class="text-muted contributed-by">Beigetragen von CWT Connector & Wire Technology GmbH</span>
 
-Sie können festlegen, welche [Steuervorlage]({{docs_base_url}}/user/manual/de/setting-up/setting-up-taxes.html) auf eine Verkaufs-/Einkaufstransaktion angewendet wird, wenn Sie die Funktion Steuerregel verwenden.
+Sie können festlegen, welche [Steuervorlage](/docs/user/manual/de/setting-up/setting-up-taxes.html) auf eine Verkaufs-/Einkaufstransaktion angewendet wird, wenn Sie die Funktion Steuerregel verwenden.
 
-<img class="screenshot" alt="Steuerregel" src="{{docs_base_url}}/assets/img/accounts/tax-rule.png">
+<img class="screenshot" alt="Steuerregel" src="/docs/assets/img/accounts/tax-rule.png">
 
 Sie können Steuerregeln für Umsatz- und für Vorsteuern erstellen. Wenn Sie eine Transaktion durchführen, wählt das System Steuervorlagen basierend auf den definierten Steuerregeln aus und wendet sie an. Das System filtert Steuerregeln nach der Anzahl der maximal zutreffenden Bedingungen.
 
@@ -11,9 +11,9 @@
 
 Angenommen wird haben zwei Steuerregeln wie unten abgebildet erstellt.
 
-<img class="screenshot" alt="Steuerregel" src="{{docs_base_url}}/assets/img/accounts/tax-rule-1.png">
+<img class="screenshot" alt="Steuerregel" src="/docs/assets/img/accounts/tax-rule-1.png">
 
-<img class="screenshot" alt="Steuerregel" src="{{docs_base_url}}/assets/img/accounts/tax-rule-2.png">
+<img class="screenshot" alt="Steuerregel" src="/docs/assets/img/accounts/tax-rule-2.png">
 
 In unserem Beispiel gilt Regel 1 für Indien und Regel 2 für Großbritannien.
 
diff --git a/erpnext/docs/user/manual/de/accounts/tools/bank-reconciliation.md b/erpnext/docs/user/manual/de/accounts/tools/bank-reconciliation.md
index da1901c..47a0dfe 100644
--- a/erpnext/docs/user/manual/de/accounts/tools/bank-reconciliation.md
+++ b/erpnext/docs/user/manual/de/accounts/tools/bank-reconciliation.md
@@ -11,7 +11,7 @@
 
 #### Abbilung 1: Kontoauszug
 
-![]({{docs_base_url}}/assets/old_images/erpnext/bank-reconciliation-2.png) 
+![](/docs/assets/old_images/erpnext/bank-reconciliation-2.png) 
 
 Wenn Sie den Bericht erhalten, überprüfen Sie bitte, ob das Feld "Abwicklungsdatum" wie bei der Bank angegeben mit dem Kontoauszug übereinstimmt. Wenn die Beträge übereinstimmen, dann werden die Abwicklungsdaten abgeglichen. Wenn die Beträge nicht übereinstimmen, dann überprüfen Sie bitte die Abwicklungsdaten und die Journalbuchungen/Buchungssätze.
 
@@ -33,7 +33,7 @@
 
 #### Abbildung 2: Werkzeug zum Kontenabgleich
 
-<img class="screenshot" alt="Kontenabgleich" src="{{docs_base_url}}/assets/img/accounts/bank-reconciliation.png">
+<img class="screenshot" alt="Kontenabgleich" src="/docs/assets/img/accounts/bank-reconciliation.png">
 
 **Schritt 5:** Klicken Sie auf die Schaltfläche "Abwicklungsdatum aktualisieren"
 
diff --git a/erpnext/docs/user/manual/de/accounts/tools/payment-reconciliation.md b/erpnext/docs/user/manual/de/accounts/tools/payment-reconciliation.md
index 59b73e8..22e15d4 100644
--- a/erpnext/docs/user/manual/de/accounts/tools/payment-reconciliation.md
+++ b/erpnext/docs/user/manual/de/accounts/tools/payment-reconciliation.md
@@ -7,7 +7,7 @@
 
 > Rechnungswesen > Werkzeuge > Zahlungsabgleich
 
-<img class="screenshot" alt="Zahlungsabgleich" src="{{docs_base_url}}/assets/img/accounts/payment-reconcile-tool.png">
+<img class="screenshot" alt="Zahlungsabgleich" src="/docs/assets/img/accounts/payment-reconcile-tool.png">
 
 **Schritt 1:** Wählen Sie das Konto aus, zu dem die Zahlungen abgeglichen werden sollen.
 
diff --git a/erpnext/docs/user/manual/de/accounts/tools/payment-tool.md b/erpnext/docs/user/manual/de/accounts/tools/payment-tool.md
index 97795aa..b76945c 100644
--- a/erpnext/docs/user/manual/de/accounts/tools/payment-tool.md
+++ b/erpnext/docs/user/manual/de/accounts/tools/payment-tool.md
@@ -23,14 +23,14 @@
 
 * **Hinweis**: Für den Fall, dass der Benutzer an einen Kunden zahlt oder von einem Lieferanten eine Zahlung erhält, fügen Sie manuell Anmerkungen hinzu, die sich auf zutreffende Rechnungen oder Aufträge beziehen.
 
-<img class="screenshot" alt="Zahlungswerkzeug" src="{{docs_base_url}}/assets/img/accounts/payment-tool-1.png">
+<img class="screenshot" alt="Zahlungswerkzeug" src="/docs/assets/img/accounts/payment-tool-1.png">
 
 7\. Sobald die Daten angezogen wurden, klicken Sie auf die detaillierte Buchung und geben Sie den Zahlungsbetrag zur Rechnung/Bestellung/zum Beleg ein.
 
-<img class="screenshot" alt="Zahlungswerkzeug" src="{{docs_base_url}}/assets/img/accounts/payment-tool-2.png">
+<img class="screenshot" alt="Zahlungswerkzeug" src="/docs/assets/img/accounts/payment-tool-2.png">
 
 8\. Klicken Sie auf "Buchungssatz erstellen" um einen neuen Buchungssatz mit den entsprechenden Einzelheiten zu erstellen.
 
-<img class="screenshot" alt="Zahlungswerkzeug" src="{{docs_base_url}}/assets/img/accounts/payment-tool-3.png">
+<img class="screenshot" alt="Zahlungswerkzeug" src="/docs/assets/img/accounts/payment-tool-3.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/de/accounts/tools/period-closing-voucher.md b/erpnext/docs/user/manual/de/accounts/tools/period-closing-voucher.md
index 539e7f9..0f94073 100644
--- a/erpnext/docs/user/manual/de/accounts/tools/period-closing-voucher.md
+++ b/erpnext/docs/user/manual/de/accounts/tools/period-closing-voucher.md
@@ -22,7 +22,7 @@
 
 Das **abzuschließende Geschäftsjahr** ist das Jahr, für das Sie Ihre Finanzbuchhaltung abschliessen.
 
-<img class="screenshot" alt="Periodenabschlussbeleg" src="{{docs_base_url}}/assets/img/accounts/period-closing-voucher.png">
+<img class="screenshot" alt="Periodenabschlussbeleg" src="/docs/assets/img/accounts/period-closing-voucher.png">
 
 Dieser Beleg überträgt den Gewinn oder Verlust (über die GuV ermittelt) in die Schlußbilanz. Sie sollten ein Konto vom Typ Verbindlichkeiten, wie Gewinnrücklagen oder Überschuss, oder vom Typ Kapital als Schlußkonto auswählen.
 
diff --git a/erpnext/docs/user/manual/de/buying/purchase-order.md b/erpnext/docs/user/manual/de/buying/purchase-order.md
index 7c72d1e..a161d64 100644
--- a/erpnext/docs/user/manual/de/buying/purchase-order.md
+++ b/erpnext/docs/user/manual/de/buying/purchase-order.md
@@ -7,7 +7,7 @@
 
 ### Flußdiagramm der Lieferantenbestellung
 
-<img class="screenshot" alt="Lieferantenauftrag" src="{{docs_base_url}}/assets/img/buying/purchase-order-f.jpg">
+<img class="screenshot" alt="Lieferantenauftrag" src="/docs/assets/img/buying/purchase-order-f.jpg">
 
 In ERPNext können Sie einen Lieferantenauftrag auch direkt erstellen über:
 
@@ -15,7 +15,7 @@
 
 ### Einen Lieferantenauftrag erstellen
 
-<img class="screenshot" alt="Lieferantenauftrag" src="{{docs_base_url}}/assets/img/buying/purchase-order.png">
+<img class="screenshot" alt="Lieferantenauftrag" src="/docs/assets/img/buying/purchase-order.png">
 
 Einen Lieferantenauftrag einzugeben ist sehr ähnlich zu einer Lieferantenanfrage. Zusätzlich müssen Sie Folgendes eingeben:
 
@@ -50,7 +50,7 @@
 
 ### Abbildung 3: Umrechung von Einkaufsmaßeinheit in Lagermaßeinheit
 
-<img class="screenshot" alt="Lieferantenauftrag - Maßeinheit" src="{{docs_base_url}}/assets/img/buying/purchase-order-uom.png">
+<img class="screenshot" alt="Lieferantenauftrag - Maßeinheit" src="/docs/assets/img/buying/purchase-order-uom.png">
 
 **Schritt 4:** Geben Sie den Umrechnungsfaktor von einer in die andere Maßeinheit an. Beispiel: 100, wenn eine Kiste 100 Stück umfasst.
 
diff --git a/erpnext/docs/user/manual/de/buying/setup/buying-settings.md b/erpnext/docs/user/manual/de/buying/setup/buying-settings.md
index e6f0d97..e5ee4a4 100644
--- a/erpnext/docs/user/manual/de/buying/setup/buying-settings.md
+++ b/erpnext/docs/user/manual/de/buying/setup/buying-settings.md
@@ -3,7 +3,7 @@
 
 Hier können Sie Werte einstellen, die in den Transaktionen des Moduls Einkauf zugrunde gelegt werden.
 
-![Einkaufseinstellungen]({{docs_base_url}}/assets/img/buying/buying-settings.png)
+![Einkaufseinstellungen](/docs/assets/img/buying/buying-settings.png)
 
 Lassen Sie uns die verschiedenen Optionen durckgehen.
 
@@ -17,7 +17,7 @@
 
 > Einstellungen > Einstellungen > Nummernkreis
 
-[Klicken Sie hier, wenn Sie mehr über Nummernkreise wissen möchten]({{docs_base_url}}/user/manual/de/setting-up/settings/naming-series.html)
+[Klicken Sie hier, wenn Sie mehr über Nummernkreise wissen möchten](/docs/user/manual/de/setting-up/settings/naming-series.html)
 
 ### 2. Standard-Lieferantentyp
 
diff --git a/erpnext/docs/user/manual/de/buying/setup/supplier-type.md b/erpnext/docs/user/manual/de/buying/setup/supplier-type.md
index a379ec8..172aef7 100644
--- a/erpnext/docs/user/manual/de/buying/setup/supplier-type.md
+++ b/erpnext/docs/user/manual/de/buying/setup/supplier-type.md
@@ -9,7 +9,7 @@
 
 > Einkauf > Einstellungen > Lieferantentyp > Neuer Lieferantentyp
 
-<img class="screenshot" alt="Lieferantentyp" src="{{docs_base_url}}/assets/img/buying/supplier-type.png">
+<img class="screenshot" alt="Lieferantentyp" src="/docs/assets/img/buying/supplier-type.png">
 
 Sie können Ihre Lieferanten aus einem breiten Angebot verfügbarer Typen in ERPNext klassifizieren. Wählen Sie aus einem Satz vorgegebener Optionen wie Großhändler, Elekktro, Hardware, Regional, Pharma, Rohstoffe, Dienstleistungen, etc. aus.
 
diff --git a/erpnext/docs/user/manual/de/buying/supplier-quotation.md b/erpnext/docs/user/manual/de/buying/supplier-quotation.md
index 93db6a7..30487fc 100644
--- a/erpnext/docs/user/manual/de/buying/supplier-quotation.md
+++ b/erpnext/docs/user/manual/de/buying/supplier-quotation.md
@@ -7,7 +7,7 @@
 
 ### Flußdiagramm zum Lieferantenangebot
 
-<img class="screenshot" alt="Lieferantenangebot" src="{{docs_base_url}}/assets/img/buying/supplier-quotation-f.jpg">
+<img class="screenshot" alt="Lieferantenangebot" src="/docs/assets/img/buying/supplier-quotation-f.jpg">
 
 Sie können ein Lieferantenangebot auch direkt erstellen über:
 
@@ -15,7 +15,7 @@
 
 ### Ein Lieferantenangebot erstellen
 
-<img class="screenshot" alt="Lieferantenangebot" src="{{docs_base_url}}/assets/img/buying/supplier-quotation.png">
+<img class="screenshot" alt="Lieferantenangebot" src="/docs/assets/img/buying/supplier-quotation.png">
 
 Wenn Sie mehrere verschiedene Lieferanten, die Ihnen den selben Artikel liefern, haben, dann senden Sie normalerweise eine Nachricht (Lieferantenanfrage) an verschiedene Lieferanten. In vielen Fällen, besonders dann, wenn Sie den Einkauf zentralisiert haben, werden Sie alle diese Angebote aufzeichnen wollen, so dass
 
diff --git a/erpnext/docs/user/manual/de/buying/supplier.md b/erpnext/docs/user/manual/de/buying/supplier.md
index eadb4ce..37eb376 100644
--- a/erpnext/docs/user/manual/de/buying/supplier.md
+++ b/erpnext/docs/user/manual/de/buying/supplier.md
@@ -7,7 +7,7 @@
 
 > Einkauf > Dokumente > Lieferant > Neu
 
-<img class="screenshot" alt="Lieferant" src="{{docs_base_url}}/assets/img/buying/supplier-master.png">
+<img class="screenshot" alt="Lieferant" src="/docs/assets/img/buying/supplier-master.png">
 
 ### Kontakte und Adressen
 
diff --git a/erpnext/docs/user/manual/de/customer-portal/customer-orders-invoices-and-shipping.md b/erpnext/docs/user/manual/de/customer-portal/customer-orders-invoices-and-shipping.md
index c74029b..ef40f45 100644
--- a/erpnext/docs/user/manual/de/customer-portal/customer-orders-invoices-and-shipping.md
+++ b/erpnext/docs/user/manual/de/customer-portal/customer-orders-invoices-and-shipping.md
@@ -4,18 +4,18 @@
 Das Webportal von ERPNext gibt Ihren Kunden einen schnellen Zugriff auf Ihre Aufträge, Rechnungen und Sendungen.
 Kunden können den Status Ihrer Bestellungen, Rechnungen und des Versandes nachprüfen, indem sie sich auf der Webseite einloggen.
 
-<img class="screenshot" alt="Customer Portal Order 1" src="{{docs_base_url}}/assets/img/website/portal-menu.png">
+<img class="screenshot" alt="Customer Portal Order 1" src="/docs/assets/img/website/portal-menu.png">
 
 Sobald eine Bestellung aufgegeben wurde, entweder über den Einkaufswagen oder aus ERPNext heraus, kann Ihr Kunde die Bestellung ansehen und den Abrechnungs- und Versandstatus nachverfolgen. Wenn die Rechnung und die Zahlung zu einer Bestellung übertragen wurden, kann der Kunde auch hier den aktuellen Stand auf einen Blick nachvollziehen.
 
-<img class="screenshot" alt="Customer Portal Order 1" src="{{docs_base_url}}/assets/img/website/website-login.png">
+<img class="screenshot" alt="Customer Portal Order 1" src="/docs/assets/img/website/website-login.png">
 
 ### Rechnung mit Status "gezahlt"
 
-<img class="screenshot" alt="Customer Portal Order 1" src="{{docs_base_url}}/assets/img/website/invoice-unpaid.png">
+<img class="screenshot" alt="Customer Portal Order 1" src="/docs/assets/img/website/invoice-unpaid.png">
 
 ### Rechnung mit Status "abgerechnet"
 
-<img class="screenshot" alt="Customer Portal Order 1" src="{{docs_base_url}}/assets/img/website/invoice-paid.png">
+<img class="screenshot" alt="Customer Portal Order 1" src="/docs/assets/img/website/invoice-paid.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/de/customer-portal/issues.md b/erpnext/docs/user/manual/de/customer-portal/issues.md
index 8f0c7d3..dee8eb1 100644
--- a/erpnext/docs/user/manual/de/customer-portal/issues.md
+++ b/erpnext/docs/user/manual/de/customer-portal/issues.md
@@ -5,17 +5,17 @@
 
 ### Ticketliste leeren
 
-<img class="screenshot" alt="Ausgabeliste" src="{{docs_base_url}}/assets/img/website/portal-ticket-list-empty.png">
+<img class="screenshot" alt="Ausgabeliste" src="/docs/assets/img/website/portal-ticket-list-empty.png">
 ### Neuer Fall
 
-<img class="screenshot" alt="Neues Problem " src="{{docs_base_url}}/assets/img/website/portal-new-ticket.png">
+<img class="screenshot" alt="Neues Problem " src="/docs/assets/img/website/portal-new-ticket.png">
 
 ### Fall öffnen
 
-<img class="screenshot" alt="Ausgabe aufgehoben" src="{{docs_base_url}}/assets/img/website/portal-ticket-1.gif">
+<img class="screenshot" alt="Ausgabe aufgehoben" src="/docs/assets/img/website/portal-ticket-1.gif">
 
 ### Fall beantworten
 
-<img class="screenshot" alt="Frage beantworten" src="{{docs_base_url}}/assets/img/website/portal-ticket-reply.gif">
+<img class="screenshot" alt="Frage beantworten" src="/docs/assets/img/website/portal-ticket-reply.gif">
 
 {next}
diff --git a/erpnext/docs/user/manual/de/customer-portal/portal-login.md b/erpnext/docs/user/manual/de/customer-portal/portal-login.md
index 455dfac..5bff275 100644
--- a/erpnext/docs/user/manual/de/customer-portal/portal-login.md
+++ b/erpnext/docs/user/manual/de/customer-portal/portal-login.md
@@ -3,6 +3,6 @@
 
 Um sich in ein Kundenkonto einzuloggen, muss der Kunde seine Email-ID und das Passwort angeben, welche ihm von ERPNext während des Registrierungsprozesses zugesendet wurden.
 
-<img class="screenshot" alt="Website User Signup" src="{{docs_base_url}}/assets/img/website/website-login.png">
+<img class="screenshot" alt="Website User Signup" src="/docs/assets/img/website/website-login.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/de/customer-portal/sign-up.md b/erpnext/docs/user/manual/de/customer-portal/sign-up.md
index 0a91145..35a660d 100644
--- a/erpnext/docs/user/manual/de/customer-portal/sign-up.md
+++ b/erpnext/docs/user/manual/de/customer-portal/sign-up.md
@@ -6,11 +6,11 @@
 
 ### Schritt 1: Klicken Sie auf das Registrieren-Symbol
 
-<img class="screenshot" alt="Website User Signup" src="{{docs_base_url}}/assets/img/website/website-login.png">
+<img class="screenshot" alt="Website User Signup" src="/docs/assets/img/website/website-login.png">
 
 ### Schritt 3: Geben Sie Ihren Kundennamen und Ihre ID ein
 
-<img class="screenshot" alt="Website User Signup" src="{{docs_base_url}}/assets/img/website/website-signup-details.png">
+<img class="screenshot" alt="Website User Signup" src="/docs/assets/img/website/website-signup-details.png">
 
 Wenn der Registrierungsprozess abgeschlossen ist, wird dem Kunden eine E-Mail mit dem Passwort zugeschickt.
 
diff --git a/erpnext/docs/user/manual/de/customize-erpnext/custom-doctype.md b/erpnext/docs/user/manual/de/customize-erpnext/custom-doctype.md
index 01bfaa7..315e062 100644
--- a/erpnext/docs/user/manual/de/customize-erpnext/custom-doctype.md
+++ b/erpnext/docs/user/manual/de/customize-erpnext/custom-doctype.md
@@ -17,7 +17,7 @@
 4. Ist einzeln: Wenn diese Option aktiviert ist, wird dieser DocType zu einem einzeln verwendeten Formular, wie die Vertriebseinstellungen, die nicht von Benutzern reproduziert werden können.
 5. Benutzerdefiniert?: Dieses Feld ist standardmäßig aktiviert, wenn ein benutzerdefinierter DocType hinzugefügt wird.
 
-![Grundlagen zum Doctype]({{docs_base_url}}/assets/img/setup/customize/doctype-basics.png)
+![Grundlagen zum Doctype](/docs/assets/img/setup/customize/doctype-basics.png)
 
 ### Felder
 
@@ -32,7 +32,7 @@
 5. Aktionen (Schaltflächen)
 6. Anhänge oder Bilder
 
-![Felder im DocType]({{docs_base_url}}/assets/img/setup/customize/Doctype-all-fields.png)
+![Felder im DocType](/docs/assets/img/setup/customize/Doctype-all-fields.png)
 
 Wenn Sie Felder hinzufügen, müssen Sie den **Typ** angeben. Für eine Bereichs- oder Spaltentrennung  ist die **Bezeichnung** optional. Der **Name** (Feldname) ist der Name der Spalte in der Datenbank.
 
@@ -42,19 +42,19 @@
 
 In diesem Abschnitt können Sie Kriterien definieren nach denen Dokumente dieses DocTypes benannt werden. Es gibt viele verschiedene Kriterien nach denen ein Dokument benannt werden kann, wie z. B. dem Wert in diesem spezifischen Feld, oder die Benamungsserie, oder der Wert der vom Benutzer an der Eingabeaufforderung eingegeben wird, die angezeit wird, wenn ein Dokument abgespeichert wird. Im folgenden Beispiel benennen wir auf Grundlage des Wertes im Feld **book_name**.
 
-![Bezeichnung von DocTypes]({{docs_base_url}}/assets/img/setup/customize/doctype-field-naming.png)
+![Bezeichnung von DocTypes](/docs/assets/img/setup/customize/doctype-field-naming.png)
 
 ### Berechtigung
 
 In dieser Tabelle können Sie Rollen und Berechtigungs-Rollen für diese für die betreffenden DocTypes auswählen.
 
-![Berechtigungen bei DocTypes]({{docs_base_url}}/assets/img/setup/customize/Doctype-permissions.png)
+![Berechtigungen bei DocTypes](/docs/assets/img/setup/customize/Doctype-permissions.png)
 
 ### DocTypes abspeichern
 
 Wenn Sie einen DocType abspeichern, erscheint ein Popup-Fenster über welches Sie den Namen des DocTypes eingeben können.
 
-![DocTypes speichern]({{docs_base_url}}/assets/img/setup/customize/Doctype-save.png)
+![DocTypes speichern](/docs/assets/img/setup/customize/Doctype-save.png)
 
 ### Der DocType im System
 
@@ -62,12 +62,12 @@
 
 > Personalwesen > Dokumente > Buch
 
-![Übersicht der DocTypes]({{docs_base_url}}/assets/img/setup/customize/Doctype-list-view.png)
+![Übersicht der DocTypes](/docs/assets/img/setup/customize/Doctype-list-view.png)
 
 ### Buchvorlage
 
 Wenn Sie die Felder ausfüllen, schaut das ganze dann so aus.
 
-![Übersicht der DocTypes]({{docs_base_url}}/assets/img/setup/customize/Doctype-book-added.png)
+![Übersicht der DocTypes](/docs/assets/img/setup/customize/Doctype-book-added.png)
 
 {next}
diff --git a/erpnext/docs/user/manual/de/customize-erpnext/custom-field.md b/erpnext/docs/user/manual/de/customize-erpnext/custom-field.md
index 7d0f0fa..e890f5d 100644
--- a/erpnext/docs/user/manual/de/customize-erpnext/custom-field.md
+++ b/erpnext/docs/user/manual/de/customize-erpnext/custom-field.md
@@ -12,11 +12,11 @@
 
 > Einstellungen > Anpassen > Benutzerdefiniertes Feld > Neu
 
-Sie können ein neues benutzerdefiniertes Feld auch über das [Werkzeug zum Anpassen von Feldern]({{docs_base_url}}/user/manual/de/customize-erpnext/customize-form) einfügen.
+Sie können ein neues benutzerdefiniertes Feld auch über das [Werkzeug zum Anpassen von Feldern](/docs/user/manual/de/customize-erpnext/customize-form) einfügen.
 
 In einem benutzerdefinierten Formular finden Sie für jedes Feld die Plus(+)-Option. Wenn Sie auf dieses Symbol klicken, wird eine neue Zeile oberhalb dieses Feldes eingefügt. Sie können die Einstellungen für Ihr Feld in der neu eingefügten leeren Zeile eingeben.
 
-<img alt="Formular anpassen - benutzerdefiniertes Feld" class="screenshot" src="{{docs_base_url}}/assets/img/customize/custom-field-2.gif">
+<img alt="Formular anpassen - benutzerdefiniertes Feld" class="screenshot" src="/docs/assets/img/customize/custom-field-2.gif">
 
 Im Folgenden sind die Schritte aufgeführt, wie man ein benutzerdefiniertes Feld in ein bestehendes Formular einfügt.
 
@@ -28,31 +28,31 @@
 
 Wählen Sie die Transaktion oder die Vorlage, in die sie ein benutzerdefiniertes Feld einfügen wollen. Nehmen wir an, dass Sie ein benutzerdefiniertes Verknüpfungsfeld in ein Angebotsformular einfügen wollen; das Dokument soll "Angebot" heißen.
 
-<img alt="Select Document Type" class="screenshot" src="{{docs_base_url}}/assets/img/customize/custom-field-1.gif">
+<img alt="Select Document Type" class="screenshot" src="/docs/assets/img/customize/custom-field-1.gif">
 
 ### Feldbezeichnung einstellen
 
 Die Bezeichnung des benutzerdefinierten Feldes wird basierend auf seinem Namen eingestellt. Wenn Sie ein benutzerdefiniertes Feld mit einem bestimmten Namen erstellen wollen, aber mit einer sich davon unterscheidenden Bezeichnung, dann sollten Sie erst die Bezeichnung angeben, da Sie den Feldnamen noch einstellen wollen. Nach dem Speichern des benutzerdefinierten Feldes können Sie die Feldbezeichnung wieder ändern.
 
-<img alt="Select Document Type" class="screenshot" src="{{docs_base_url}}/assets/img/customize/custom-field-2.gif">
+<img alt="Select Document Type" class="screenshot" src="/docs/assets/img/customize/custom-field-2.gif">
 
 ### Einstellen, nach welchem Element eingefügt werden soll ("Einfügen nach")
 
 Diese Auswahl enthält alle bereits existierenden Felder des ausgewählten Formulars/des DocTypes. Ihr benutzerdefiniertes Feld wird nach dem Feld eingefügt, das Sie unter "Einfügen nach" auswählen.
 
-<img alt="Select Document Type" class="screenshot" src="{{docs_base_url}}/assets/img/customize/custom-field-3.png">
+<img alt="Select Document Type" class="screenshot" src="/docs/assets/img/customize/custom-field-3.png">
 
 ### Feldtyp auswählen
 
 Klicken Sie hier um weitere Informationen über Feldtypen, die Sie bei einem benutzerdefinierten Feld auswählen können, zu erhalten.
 
-<img alt="Select Document Type" class="screenshot" src="{{docs_base_url}}/assets/img/customize/custom-field-4.png">
+<img alt="Select Document Type" class="screenshot" src="/docs/assets/img/customize/custom-field-4.png">
 
 ### Optionen einstellen
 
-Wenn Sie ein Verknüpfungsfeld erstellen,dann wird der Name des DocType, mit dem dieses Feld verknüpft werden soll, in das Feld "Optionen" eingefügt. Klicken Sie [hier]({{docs_base_url}}/user/manual/en/customize-erpnext/articles/creating-custom-link-field) um weitere Informationen darüber zu erhalten, wie man benutzerdefinierte Verknüpfungsfelder erstellt.
+Wenn Sie ein Verknüpfungsfeld erstellen,dann wird der Name des DocType, mit dem dieses Feld verknüpft werden soll, in das Feld "Optionen" eingefügt. Klicken Sie [hier](/docs/user/manual/en/customize-erpnext/articles/creating-custom-link-field) um weitere Informationen darüber zu erhalten, wie man benutzerdefinierte Verknüpfungsfelder erstellt.
 
-<img alt="Select Document Type" class="screenshot" src="{{docs_base_url}}/assets/img/customize/custom-field-5.png">
+<img alt="Select Document Type" class="screenshot" src="/docs/assets/img/customize/custom-field-5.png">
 
 Wenn der Feldtyp als Auswahlfeld (Drop Down-Feld) angegeben ist, dann sollten alle möglichen Ergebnisse für dieses Feld im Optionen-Feld aufgelistet werden. Die möglichen Ergebnisse sollten alle in einer eigenen Zeile stehen.
 
@@ -69,7 +69,7 @@
 5. Schreibgeschützt: Wenn diese Option aktiviert ist, kann das benutzerdefinierte Feld nicht geändert werden.
 6. Beim Übertragen zulassen: Wenn diese Option ausgewählt wird, ist es erlaubt den Wert des Feldes zu ändern, wenn er in einer Transaktion übertragen wird.
 
-<img alt="Select Document Type" class="screenshot" src="{{docs_base_url}}/assets/img/customize/custom-field-6.png">
+<img alt="Select Document Type" class="screenshot" src="/docs/assets/img/customize/custom-field-6.png">
 
 ### Benutzerdefiniertes Feld löschen
 
diff --git a/erpnext/docs/user/manual/de/customize-erpnext/custom-scripts/custom-script-examples/custom-script-fetch-values-from-master.md b/erpnext/docs/user/manual/de/customize-erpnext/custom-scripts/custom-script-examples/custom-script-fetch-values-from-master.md
index c4e41ec..347a8a8 100644
--- a/erpnext/docs/user/manual/de/customize-erpnext/custom-scripts/custom-script-examples/custom-script-fetch-values-from-master.md
+++ b/erpnext/docs/user/manual/de/customize-erpnext/custom-scripts/custom-script-examples/custom-script-fetch-values-from-master.md
@@ -15,6 +15,6 @@
 
 * * *
 
-Sehen Sie hierzu auch: [Wie man ein benutzerdefiniertes Skript erstellt]({{docs_base_url}}/user/manual/de/customize-erpnext/custom-scripts/).
+Sehen Sie hierzu auch: [Wie man ein benutzerdefiniertes Skript erstellt](/docs/user/manual/de/customize-erpnext/custom-scripts/).
 
 {next}
diff --git a/erpnext/docs/user/manual/de/customize-erpnext/custom-scripts/index.md b/erpnext/docs/user/manual/de/customize-erpnext/custom-scripts/index.md
index 8e2e842..7c62ae5 100644
--- a/erpnext/docs/user/manual/de/customize-erpnext/custom-scripts/index.md
+++ b/erpnext/docs/user/manual/de/customize-erpnext/custom-scripts/index.md
@@ -5,7 +5,7 @@
 
 > Einstellungen > Anpassen > Benutzerdefiniertes Skript
 
-<img alt="Custom Script" class="screenshot" src="{{docs_base_url}}/assets/img/customize/custom-script-1.png">
+<img alt="Custom Script" class="screenshot" src="/docs/assets/img/customize/custom-script-1.png">
 
 ### Themen
 
diff --git a/erpnext/docs/user/manual/de/customize-erpnext/customize-form.md b/erpnext/docs/user/manual/de/customize-erpnext/customize-form.md
index dbb9bc5..4060f43 100644
--- a/erpnext/docs/user/manual/de/customize-erpnext/customize-form.md
+++ b/erpnext/docs/user/manual/de/customize-erpnext/customize-form.md
@@ -13,13 +13,13 @@
 
 Der Systemmanager findet die Option "Benutzerdefiniertes Formular" auch in der Liste Kundenauftrag (bzw. jedes andere Formular für diesen Sachverhalt). 
 
-![Formular anpassen - Listenansicht]({{docs_base_url}}/assets/old_images/erpnext/customize-form-list-view.png)
+![Formular anpassen - Listenansicht](/docs/assets/old_images/erpnext/customize-form-list-view.png)
 
 ### Schritt 2: Wählen Sie den DocType/das Dokument
 
 Wählen Sie jetzt den DocType/das Dokument aus, welcher/s das anzupassende Feld enthält.
 
-![Formular anpassen - Dokument]({{docs_base_url}}/assets/old_images/erpnext/customize-form-document.png)
+![Formular anpassen - Dokument](/docs/assets/old_images/erpnext/customize-form-document.png)
 
 ### Schritt 3: Bearbeiten Sie die Eigenschaften
 
@@ -27,7 +27,7 @@
 
 Wenn Sie auf die Zeile "Projektname" klicken, werden Felder mit verschiedenen Eigenschaften für dieses Feld angezeigt. Um die Eigenschaft "Ist zwingend erforderlich" für ein Feld anzupassen gibt es ein Feld "Zwingend erfoderlich". Wenn Sie dieses Feld markieren, wird das Feld "Projektname" im Angebotsformular als zwingend erforderlich eingestellt.
 
-![Formular anpassen - Zwingend erfoderliche Angaben]({{docs_base_url}}/assets/old_images/erpnext/customize-form-mandatory.png)
+![Formular anpassen - Zwingend erfoderliche Angaben](/docs/assets/old_images/erpnext/customize-form-mandatory.png)
 
 Genauso können Sie folgende Eigenschaften eines Feldes anpassen.
 
@@ -40,7 +40,7 @@
 
 ### Schritt 4: Aktualisieren
 
-![Formular anpassen - Aktualisieren]({{docs_base_url}}/assets/old_images/erpnext/customize-form-update.png)
+![Formular anpassen - Aktualisieren](/docs/assets/old_images/erpnext/customize-form-update.png)
 
 Bevor Sie das Formular "Kundenauftrag" testen, sollten Sie den Cache leeren und den Inhalt des Browserfensters aktualiseren, um die Änderungen wirksam werden zu lassen.
 
@@ -71,7 +71,7 @@
     </tr>
     <tr>
       <td>Feldtyp</td>
-      <td>Klicken Sie <a href="{{docs_base_url}}/user/manual/en/customize-erpnext/articles/field-types">hier</a> um mehr über Feldtypen zu erfahren.</td>
+      <td>Klicken Sie <a href="/docs/user/manual/en/customize-erpnext/articles/field-types">hier</a> um mehr über Feldtypen zu erfahren.</td>
     </tr>
     <tr>
       <td>Optionen</td>
diff --git a/erpnext/docs/user/manual/de/customize-erpnext/document-title.md b/erpnext/docs/user/manual/de/customize-erpnext/document-title.md
index 3b13208..5e5766b 100644
--- a/erpnext/docs/user/manual/de/customize-erpnext/document-title.md
+++ b/erpnext/docs/user/manual/de/customize-erpnext/document-title.md
@@ -24,14 +24,14 @@
 > {customer_name} for {project}
 
 <img class="screenshot" alt = "Bezeichnung anpassen"
-    src="{{docs_base_url}}/assets/img/customize/customize-title.gif">
+    src="/docs/assets/img/customize/customize-title.gif">
 
 ### Fest eingestellte und bearbeitbare Bezeichnungen
 
 Wenn Ihre Bezeichnung als Standard-Bezeichnung generiert wurde, kann sie vom Benutzer durch klicken auf den Kopf des Dokuments bearbeitet werden.
 
 <img class="screenshot" alt = "Bearbeitbare Bezeichnung"
-    src="{{docs_base_url}}/assets/img/customize/editable-title.gif">
+    src="/docs/assets/img/customize/editable-title.gif">
 
 Wenn Sie eine fest eingestellte Bezeichnung haben wollen, können Sie dies als Regel unter **Optionen** einstellen. Auf diese Weise wird die Bezeichnung jedesmal automatisch aktualisiert, wenn das Dokument aktualisiert wird.
 
diff --git a/erpnext/docs/user/manual/de/customize-erpnext/hiding-modules-and-features.md b/erpnext/docs/user/manual/de/customize-erpnext/hiding-modules-and-features.md
index 831540b..3e3ebe0 100644
--- a/erpnext/docs/user/manual/de/customize-erpnext/hiding-modules-and-features.md
+++ b/erpnext/docs/user/manual/de/customize-erpnext/hiding-modules-and-features.md
@@ -7,7 +7,7 @@
 
 > Einstellungen > Werkzeuge > Funktionen verbergen/einblenden
 
-![Funktionen verbergen]({{docs_base_url}}/assets/old_images/erpnext/hide-features.png)
+![Funktionen verbergen](/docs/assets/old_images/erpnext/hide-features.png)
 
 Aktivieren/Deaktivieren Sie die Funktionen, die Sie verwenden möchten bzw. nicht verwenden wollen und laden Sie Ihre Seite neu, damit die Änderungen übernommen werden.
 
@@ -19,7 +19,7 @@
 
 > Einstellungen > Werkzeuge > Moduleinstellungen
 
-![Module verbergen/anzeigen]({{docs_base_url}}/assets/old_images/erpnext/hide-module.png)
+![Module verbergen/anzeigen](/docs/assets/old_images/erpnext/hide-module.png)
 
 > Anmerkung: Module werden automatisch für Benutzer verborgen, die keine Berechtigungen für Dokumente dieses Moduls haben. Beispiel: Wenn ein Benutzer keine Berechtigungen für Lieferantenauftrag, Materialanfrage und Lieferant hat, dann wird das Modul "Einkauf" automatisch verborgen.
 
diff --git a/erpnext/docs/user/manual/de/customize-erpnext/print-format.md b/erpnext/docs/user/manual/de/customize-erpnext/print-format.md
index 9448201..b23335d 100644
--- a/erpnext/docs/user/manual/de/customize-erpnext/print-format.md
+++ b/erpnext/docs/user/manual/de/customize-erpnext/print-format.md
@@ -14,13 +14,13 @@
 
 > Einstellungen > Druck > Druckformate
 
-![Druckformat]({{docs_base_url}}/assets/img/customize/print-settings.png)
+![Druckformat](/docs/assets/img/customize/print-settings.png)
 
 Wählen Sie den Typ des Druckformats, welches Sie bearbeiten wollen, und klicken Sie auf die Schaltfläche "Kopieren" in der rechten Spalte. Es öffnet sich ein neues Druckformat mit der Einstellung NEIN für "für "Ist Standard" und Sie kännen das Druckformat bearbeiten.
 
 Ein Druckformat zu bearbeiten ist eine langwierige Angelegenheit und Sie müssen etwas Grundwissen über HTML, CSS und Python mitbringen, um dies verstehen zu können. Wenn Sie Hilfe benötigen, erstellen Sie bitte im Forum eine Anfrage.
 
-Printformate werden auf der Serverseite über die [Programmiersprache Jinja Templating](http://jinja.pocoo.org/docs/templates/) erstellt. Alle Formulare haben Zugriff auf doc object, das Informationen über das Dokument enthält, welches formatiert wird. Sie können über das Frappe-Modul auch auf oft verwendete Hilfswerkzeuge zugreifen.
+Printformate werden auf der Serverseite über die [Programmiersprache Jinja Templating](http://jinja.pocoo.org/docs/templates/) erstellt. Alle Formulare haben Zugriff auf doc object, das Informationen über das Dokument enthält, welches formatiert wird. Sie können über das Frappé-Modul auch auf oft verwendete Hilfswerkzeuge zugreifen.
 
 Zum Bearbeiten des Erscheinungsbildes bietet sich das [Bootstrap CSS Framework](http://getbootstrap.com/)  an und Sie können die volle Bandbreite dieses Werkzeuges nutzen.
 
@@ -37,7 +37,7 @@
 
 > Einstellungen > Druck und Branding > Druckeinstellungen
 
-![Druckformat]({{docs_base_url}}/assets/img/customize/print-settings.png)
+![Druckformat](/docs/assets/img/customize/print-settings.png)
 
 ### Beispiel
 
diff --git a/erpnext/docs/user/manual/de/human-resources/appraisal.md b/erpnext/docs/user/manual/de/human-resources/appraisal.md
index ccec5b2..34a9217 100644
--- a/erpnext/docs/user/manual/de/human-resources/appraisal.md
+++ b/erpnext/docs/user/manual/de/human-resources/appraisal.md
@@ -7,13 +7,13 @@
 
 #### Schritt 1: Wählen Sie eine Bewertungsvorlage aus
 
-<img class="screenshot" alt="Beurteilung" src="{{docs_base_url}}/assets/img/human-resources/appraisal.png">
+<img class="screenshot" alt="Beurteilung" src="/docs/assets/img/human-resources/appraisal.png">
 
 Wenn Sie eine Vorlage ausgewählt haben, erscheint der restliche Teil des Formulars.
 
 #### Schritt 2: Geben Sie die Daten des Mitarbeiters ein
 
-<img class="screenshot" alt="Beurteilung" src="{{docs_base_url}}/assets/img/human-resources/appraisal-employee.png">
+<img class="screenshot" alt="Beurteilung" src="/docs/assets/img/human-resources/appraisal-employee.png">
 
 Wenn die Bewertungsvorlage fertig ist, können Sie für jeden Zeitraum Bewertungen aufzeichnen, über die Sie die Leistung nachverfolgen können. Sie können für jeden Paramter bis zu 5 Punkte vergeben und das System berechnet die Gesamtbeurteilung des Mitarbeiters.
 
diff --git a/erpnext/docs/user/manual/de/human-resources/attendance.md b/erpnext/docs/user/manual/de/human-resources/attendance.md
index 9dd45ab..9ec5f95 100644
--- a/erpnext/docs/user/manual/de/human-resources/attendance.md
+++ b/erpnext/docs/user/manual/de/human-resources/attendance.md
@@ -5,10 +5,10 @@
 
 > Personalwesen > Dokumente > Anwesenheit > Neu
 
-<img class="screenshot" alt="Anwesenheit" src="{{docs_base_url}}/assets/img/human-resources/attendence.png">
+<img class="screenshot" alt="Anwesenheit" src="/docs/assets/img/human-resources/attendence.png">
 
 Sie können einen monatlichen Report über Ihre Anwesenheiten erhalten, indem Sie zum "Monatlichen Anwesenheitsbericht" gehen.
 
-Sie können auch ganz einfach Anwesenheiten über das [Werkzeug zum Hochladen von Anwesenheiten]({{docs_base_url}}/user/manual/de/human-resources/tools/upload-attendance.html) hochladen.
+Sie können auch ganz einfach Anwesenheiten über das [Werkzeug zum Hochladen von Anwesenheiten](/docs/user/manual/de/human-resources/tools/upload-attendance.html) hochladen.
 
 {next}
diff --git a/erpnext/docs/user/manual/de/human-resources/employee.md b/erpnext/docs/user/manual/de/human-resources/employee.md
index 7d39f6a..e599569 100644
--- a/erpnext/docs/user/manual/de/human-resources/employee.md
+++ b/erpnext/docs/user/manual/de/human-resources/employee.md
@@ -7,6 +7,6 @@
 
 > Personalwesen > Dokumente > Mitarbeiter > Neu
 
-<img class="screenshot" alt="Mitarbeiter" src="{{docs_base_url}}/assets/img/human-resources/employee.png">
+<img class="screenshot" alt="Mitarbeiter" src="/docs/assets/img/human-resources/employee.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/de/human-resources/expense-claim.md b/erpnext/docs/user/manual/de/human-resources/expense-claim.md
index 3fda049..12e69bf 100644
--- a/erpnext/docs/user/manual/de/human-resources/expense-claim.md
+++ b/erpnext/docs/user/manual/de/human-resources/expense-claim.md
@@ -7,7 +7,7 @@
 
 > Personalwesen > Dokumente > Aufwandsabrechnung > Neu
 
-<img class="screenshot" alt="Aufwandsabrechnung" src="{{docs_base_url}}/assets/img/human-resources/expense_claim.png">
+<img class="screenshot" alt="Aufwandsabrechnung" src="/docs/assets/img/human-resources/expense_claim.png">
 
 Geben Sie die Mitarbeiter-ID, das Datum und die Auflistung der Ausgaben, die Sie zurückerstattet haben möchten, ein und "übertragen" Sie den Datensatz.
 
@@ -27,6 +27,6 @@
 
 * Um eine Aufwandsabrechnung mit einer Aufgabe oder einem Projekt zu verknüpfen, geben Sie die Aufgabe oder das Projekt an, während Sie eine Aufwandsabrechnung erstellen.
 
-<img class="screenshot" alt="Aufwandsabrechnung - Verknüpfung zum Projekt" src="{{docs_base_url}}/assets/img/project/project_expense_claim_link.png">
+<img class="screenshot" alt="Aufwandsabrechnung - Verknüpfung zum Projekt" src="/docs/assets/img/project/project_expense_claim_link.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/de/human-resources/human-resources-reports.md b/erpnext/docs/user/manual/de/human-resources/human-resources-reports.md
index bf0e195..8cef87d 100644
--- a/erpnext/docs/user/manual/de/human-resources/human-resources-reports.md
+++ b/erpnext/docs/user/manual/de/human-resources/human-resources-reports.md
@@ -5,30 +5,30 @@
 
 Der Bericht zur Mitarbeiter-Urlaubsauswertung zeigt Mitarbeiter und deren Urlaubsverteilung nach den unterschiedlichen Urlaubstypen an. Der Bericht richtet sich nach der Anzahl des genehmigten Urlaubs.
 
-<img alt="Mitarbeier-Urlaubskonto" class="screenshot" src="{{docs_base_url}}/assets/img/human-resources/employee-leave-balance-report.png">
+<img alt="Mitarbeier-Urlaubskonto" class="screenshot" src="/docs/assets/img/human-resources/employee-leave-balance-report.png">
 
 ### Mitarbeiter-Geburtstag
 
 Dieser Bericht zeigt die Geburtstage der Mitarbeiter an.
 
-<img alt="Mitarbeiter-Geburtstag" class="screenshot" src="{{docs_base_url}}/assets/img/human-resources/employee-birthday-report.png">
+<img alt="Mitarbeiter-Geburtstag" class="screenshot" src="/docs/assets/img/human-resources/employee-birthday-report.png">
 
 ### Mitarbeiterinformationen
 
 Dieser Bericht wichtige Informationen über Mitarbeiter in den Mitarbeiterdatensätzen.
 
-<img alt="Mitarbeiterinformation" class="screenshot" src="{{docs_base_url}}/assets/img/human-resources/employee-information-report.png">
+<img alt="Mitarbeiterinformation" class="screenshot" src="/docs/assets/img/human-resources/employee-information-report.png">
 
 ### Übersicht monatliche Gehälter
 
 Dieser Bericht zeigt die Nettozahlungen der Mitarbeiter und deren einzelne Bestandteile im Überblick.
 
-<img alt="Übersicht monatliche Gehälter" class="screenshot" src="{{docs_base_url}}/assets/img/human-resources/monthly-salary-register-report.png">
+<img alt="Übersicht monatliche Gehälter" class="screenshot" src="/docs/assets/img/human-resources/monthly-salary-register-report.png">
 
 ### Monatliche Anwesenheitsliste
 
 Dieser Bericht zeit die monatlichen Anwesenheiten ausgewählter Mitarbeiter im Überblick.
 
-<img alt="Monatliche Anwesenheitsliste" class="screenshot" src="{{docs_base_url}}/assets/img/human-resources/monthly-attendance-sheet-report.png">
+<img alt="Monatliche Anwesenheitsliste" class="screenshot" src="/docs/assets/img/human-resources/monthly-attendance-sheet-report.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/de/human-resources/job-applicant.md b/erpnext/docs/user/manual/de/human-resources/job-applicant.md
index 51b0359..62de801 100644
--- a/erpnext/docs/user/manual/de/human-resources/job-applicant.md
+++ b/erpnext/docs/user/manual/de/human-resources/job-applicant.md
@@ -1,13 +1,13 @@
 # Bewerber
 <span class="text-muted contributed-by">Beigetragen von CWT Connector & Wire Technology GmbH</span>
 
-Sie können eine Liste von Bewerbern auf [offene Stellen]({{docs_base_url}}/user/manual/de/human-resources/job-opening.html) verwalten.
+Sie können eine Liste von Bewerbern auf [offene Stellen](/docs/user/manual/de/human-resources/job-opening.html) verwalten.
 
 Um einen neuen Bewerber anzulegen, gehen Sie zu:
 
 > Personalwesen > Dokumente > Bewerber > Neu
 
-<img class="screenshot" alt="Bewerber" src="{{docs_base_url}}/assets/img/human-resources/job-applicant.png">
+<img class="screenshot" alt="Bewerber" src="/docs/assets/img/human-resources/job-applicant.png">
 
 ### Verknüpfung mit einem E-Mail-Konto
 
@@ -20,6 +20,6 @@
 * Geben Sie die E-Mail-ID und das Passwort ein und aktivieren Sie "Eingehend aktivieren".
 * Unter "Anhängen an" geben Sie "Bewerber" an.
 
-<img class="screenshot" alt="E-Mail-Konto" src="{{docs_base_url}}/assets/img/human-resources/email-account.png">
+<img class="screenshot" alt="E-Mail-Konto" src="/docs/assets/img/human-resources/email-account.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/de/human-resources/job-opening.md b/erpnext/docs/user/manual/de/human-resources/job-opening.md
index b14516e..0231df6 100644
--- a/erpnext/docs/user/manual/de/human-resources/job-opening.md
+++ b/erpnext/docs/user/manual/de/human-resources/job-opening.md
@@ -7,6 +7,6 @@
 
 > Personalwesen > Dokumente > Offene Stellen > Neu
 
-<img class="screenshot" alt="Offene Stellen" src="{{docs_base_url}}/assets/img/human-resources/job-opening.png">
+<img class="screenshot" alt="Offene Stellen" src="/docs/assets/img/human-resources/job-opening.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/de/human-resources/leave-application.md b/erpnext/docs/user/manual/de/human-resources/leave-application.md
index fc16d83..faf5b6e 100644
--- a/erpnext/docs/user/manual/de/human-resources/leave-application.md
+++ b/erpnext/docs/user/manual/de/human-resources/leave-application.md
@@ -5,17 +5,17 @@
 
 > Personalwesen > Dokumente > Urlaubsantrag > Neu
 
-<img class="screenshot" alt="Urlaubsantrag" src="{{docs_base_url}}/assets/img/human-resources/leave-application.png">
+<img class="screenshot" alt="Urlaubsantrag" src="/docs/assets/img/human-resources/leave-application.png">
 
 ### Urlaubsbewilliger einstellen
 
 * Ein Urlaubsgenehmiger ist ein Benutzer der Urlaubsanträge eines Mitarbeiters bewilligen kann.
 * Sie müssen eine Liste von Urlaubsbewilligern für einen Mitarbeiter in den Mitarbeiterstammdaten angeben.
 
-<img class="screenshot" alt="Urlaubsgenehmiger" src="{{docs_base_url}}/assets/img/human-resources/employee-leave-approver.png">
+<img class="screenshot" alt="Urlaubsgenehmiger" src="/docs/assets/img/human-resources/employee-leave-approver.png">
 
-> Tipp: Wenn Sie möchten, dass alle Benutzer ihre Urlaubsanträge selbst erstellen, können Sie in den Einstellungen zur Urlaubsgenehmigung Ihre Mitarbeiter-IDs als so einstellen, dass sie für die Regel zutreffend sind. Für weiterführende Informationen kesen Sie hierzu die Diskussion zum Thema [Einstellungen zu Genehmigungen]({{docs_base_url}}/user/manual/de/setting-up/users-and-permissions/user-permissions.html).
+> Tipp: Wenn Sie möchten, dass alle Benutzer ihre Urlaubsanträge selbst erstellen, können Sie in den Einstellungen zur Urlaubsgenehmigung Ihre Mitarbeiter-IDs als so einstellen, dass sie für die Regel zutreffend sind. Für weiterführende Informationen kesen Sie hierzu die Diskussion zum Thema [Einstellungen zu Genehmigungen](/docs/user/manual/de/setting-up/users-and-permissions/user-permissions.html).
 
-Um einem Mitarbeiter Urlaub zuzuteilen, kreuzen Sie [Urlaubszuteilung]({{docs_base_url}}/user/manual/de/human-resources/setup/leave-allocation.html) an.
+Um einem Mitarbeiter Urlaub zuzuteilen, kreuzen Sie [Urlaubszuteilung](/docs/user/manual/de/human-resources/setup/leave-allocation.html) an.
 
 {next}
diff --git a/erpnext/docs/user/manual/de/human-resources/offer-letter.md b/erpnext/docs/user/manual/de/human-resources/offer-letter.md
index 5566071..e545774 100644
--- a/erpnext/docs/user/manual/de/human-resources/offer-letter.md
+++ b/erpnext/docs/user/manual/de/human-resources/offer-letter.md
@@ -7,12 +7,12 @@
 
 > Personalwesen > Dokumente > Angebotsschreiben > Neu
 
-<img class="screenshot" alt="Angebotsschreiben" src="{{docs_base_url}}/assets/img/human-resources/offer-letter.png">
+<img class="screenshot" alt="Angebotsschreiben" src="/docs/assets/img/human-resources/offer-letter.png">
 
-> Anmerkung: Angebotsschreiben kann nur zu einem [Bewerber]({{docs_base_url}}/user/manual/de/human-resources/job-applicant.html) erstellt werden.
+> Anmerkung: Angebotsschreiben kann nur zu einem [Bewerber](/docs/user/manual/de/human-resources/job-applicant.html) erstellt werden.
 
 Es gibt ein vordefiniertes Druckformat zum Angebotsschreiben.
 
-<img class="screenshot" alt="Angebotsschreiben" src="{{docs_base_url}}/assets/img/human-resources/offer-letter-print.png">
+<img class="screenshot" alt="Angebotsschreiben" src="/docs/assets/img/human-resources/offer-letter-print.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/de/human-resources/salary-and-payroll.md b/erpnext/docs/user/manual/de/human-resources/salary-and-payroll.md
index a8eb33a..f47dda2 100644
--- a/erpnext/docs/user/manual/de/human-resources/salary-and-payroll.md
+++ b/erpnext/docs/user/manual/de/human-resources/salary-and-payroll.md
@@ -43,7 +43,7 @@
 
 #### Abbildung 1: Gehaltsstruktur
 
-<img class="screenshot" alt="Gehaltsstruktur" src="{{docs_base_url}}/assets/img/human-resources/salary-structure.png">
+<img class="screenshot" alt="Gehaltsstruktur" src="/docs/assets/img/human-resources/salary-structure.png">
 
 ### In der Gehaltsstruktur
 
@@ -67,7 +67,7 @@
 
 #### Abbildung 2: Gehaltsabrechnung
 
-<img class="screenshot" alt="Lohnzettel" src="{{docs_base_url}}/assets/img/human-resources/salary-slip.png">
+<img class="screenshot" alt="Lohnzettel" src="/docs/assets/img/human-resources/salary-slip.png">
 
 Sie können auch Gehaltsabrechnungen für mehrere verschiedene Mitarbeiter über "Gehaltsabrechnung bearbeiten" anlegen.
 
@@ -75,7 +75,7 @@
 
 #### Abbildung 3: Gehaltsabrechnung durchführen
 
-<img class="screenshot" alt="Gehaltsabrechnung durchführen" src="{{docs_base_url}}/assets/img/human-resources/process-payroll.png">
+<img class="screenshot" alt="Gehaltsabrechnung durchführen" src="/docs/assets/img/human-resources/process-payroll.png">
 
 Beim Bearbeiten einer Gehaltsabrechnung
 
diff --git a/erpnext/docs/user/manual/de/human-resources/setup/branch.md b/erpnext/docs/user/manual/de/human-resources/setup/branch.md
index f6913a7..1328d73 100644
--- a/erpnext/docs/user/manual/de/human-resources/setup/branch.md
+++ b/erpnext/docs/user/manual/de/human-resources/setup/branch.md
@@ -3,6 +3,6 @@
 
 Filialen Ihres Unternehmens
 
-<img class="screenshot" alt="Filiale" src="{{docs_base_url}}/assets/img/human-resources/branch.png">
+<img class="screenshot" alt="Filiale" src="/docs/assets/img/human-resources/branch.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/de/human-resources/setup/deduction-type.md b/erpnext/docs/user/manual/de/human-resources/setup/deduction-type.md
index ddd3e9d..e50b51f 100644
--- a/erpnext/docs/user/manual/de/human-resources/setup/deduction-type.md
+++ b/erpnext/docs/user/manual/de/human-resources/setup/deduction-type.md
@@ -7,6 +7,6 @@
 
 > Personalwesen > Einstellungen > Abzugsart > Neu
 
-<img class="screenshot" alt="Abzugsart" src="{{docs_base_url}}/assets/img/human-resources/deduction-type.png">
+<img class="screenshot" alt="Abzugsart" src="/docs/assets/img/human-resources/deduction-type.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/de/human-resources/setup/department.md b/erpnext/docs/user/manual/de/human-resources/setup/department.md
index c54928b..532174f 100644
--- a/erpnext/docs/user/manual/de/human-resources/setup/department.md
+++ b/erpnext/docs/user/manual/de/human-resources/setup/department.md
@@ -3,6 +3,6 @@
 
 Abteilungen Ihres Unternehmens
 
-<img class="screenshot" alt="Abteilung" src="{{docs_base_url}}/assets/img/human-resources/department.png">
+<img class="screenshot" alt="Abteilung" src="/docs/assets/img/human-resources/department.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/de/human-resources/setup/designation.md b/erpnext/docs/user/manual/de/human-resources/setup/designation.md
index dee6658..0d01588 100644
--- a/erpnext/docs/user/manual/de/human-resources/setup/designation.md
+++ b/erpnext/docs/user/manual/de/human-resources/setup/designation.md
@@ -3,6 +3,6 @@
 
 Stellenbezeichnungen in Ihrem Unternehmen
 
-<img class="screenshot" alt="Stellenbezeichnung" src="{{docs_base_url}}/assets/img/human-resources/designation.png">
+<img class="screenshot" alt="Stellenbezeichnung" src="/docs/assets/img/human-resources/designation.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/de/human-resources/setup/earning-type.md b/erpnext/docs/user/manual/de/human-resources/setup/earning-type.md
index d79e6bb..51eb375 100644
--- a/erpnext/docs/user/manual/de/human-resources/setup/earning-type.md
+++ b/erpnext/docs/user/manual/de/human-resources/setup/earning-type.md
@@ -7,6 +7,6 @@
 
 > Personalwesen > Einstellungen > Einkommensart > Neu
 
-<img class="screenshot" alt="Einkommensart" src="{{docs_base_url}}/assets/img/human-resources/earning-type.png">
+<img class="screenshot" alt="Einkommensart" src="/docs/assets/img/human-resources/earning-type.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/de/human-resources/setup/employment-type.md b/erpnext/docs/user/manual/de/human-resources/setup/employment-type.md
index 9c334cf..c9d6ce2 100644
--- a/erpnext/docs/user/manual/de/human-resources/setup/employment-type.md
+++ b/erpnext/docs/user/manual/de/human-resources/setup/employment-type.md
@@ -3,6 +3,6 @@
 
 Verschiedene Beschäftigungsverträge, die Sie mit Ihren Mitarbeitern abgeschlossen haben.
 
-<img class="screenshot" alt="Art der Beschäftigung" src="{{docs_base_url}}/assets/img/human-resources/employment-type.png">
+<img class="screenshot" alt="Art der Beschäftigung" src="/docs/assets/img/human-resources/employment-type.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/de/human-resources/setup/holyday-list.md b/erpnext/docs/user/manual/de/human-resources/setup/holyday-list.md
index cec5110..161a867 100644
--- a/erpnext/docs/user/manual/de/human-resources/setup/holyday-list.md
+++ b/erpnext/docs/user/manual/de/human-resources/setup/holyday-list.md
@@ -3,6 +3,6 @@
 
 Sie können Urlaub für ein bestimmtes Jahr über die Urlaubsübersicht planen.
 
-<img class="screenshot" alt="Urlaubsübersicht" src="{{docs_base_url}}/assets/img/human-resources/holiday-list.png">
+<img class="screenshot" alt="Urlaubsübersicht" src="/docs/assets/img/human-resources/holiday-list.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/de/human-resources/setup/hr-settings.md b/erpnext/docs/user/manual/de/human-resources/setup/hr-settings.md
index c454598..8e2e5e2 100644
--- a/erpnext/docs/user/manual/de/human-resources/setup/hr-settings.md
+++ b/erpnext/docs/user/manual/de/human-resources/setup/hr-settings.md
@@ -3,6 +3,6 @@
 
 Globale Einstellungen zu Dokumenten des Personalwesens
 
-<img class="screenshot" alt="Einstellungen zum Personalwesen" src="{{docs_base_url}}/assets/img/human-resources/hr-settings.png">
+<img class="screenshot" alt="Einstellungen zum Personalwesen" src="/docs/assets/img/human-resources/hr-settings.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/de/human-resources/setup/leave-allocation.md b/erpnext/docs/user/manual/de/human-resources/setup/leave-allocation.md
index 2e80ddf..d49121b 100644
--- a/erpnext/docs/user/manual/de/human-resources/setup/leave-allocation.md
+++ b/erpnext/docs/user/manual/de/human-resources/setup/leave-allocation.md
@@ -3,8 +3,8 @@
 
 Hilft Ihnen Urlaub bestimmten Mitarbeitern zuzuteilen
 
-<img class="screenshot" alt="Urlaubszuordnung" src="{{docs_base_url}}/assets/img/human-resources/leave-allocation.png">
+<img class="screenshot" alt="Urlaubszuordnung" src="/docs/assets/img/human-resources/leave-allocation.png">
 
-Um mehreren verschhiedenen Mitarbeitern Urlaub zuzuteilen, nutzen Sie das [Urlaubszuordnungs-Werkzeug]({{docs_base_url}}/user/manual/de/human-resources/tools/leave-allocation-tool.html).
+Um mehreren verschhiedenen Mitarbeitern Urlaub zuzuteilen, nutzen Sie das [Urlaubszuordnungs-Werkzeug](/docs/user/manual/de/human-resources/tools/leave-allocation-tool.html).
 
 {next}
diff --git a/erpnext/docs/user/manual/de/human-resources/setup/leave-type.md b/erpnext/docs/user/manual/de/human-resources/setup/leave-type.md
index ece1c58..97b5af8 100644
--- a/erpnext/docs/user/manual/de/human-resources/setup/leave-type.md
+++ b/erpnext/docs/user/manual/de/human-resources/setup/leave-type.md
@@ -3,7 +3,7 @@
 
 Geben Sie den Urlaubstyp an, der Mitarbeitern zugeordnet werden kann.
 
-<img class="screenshot" alt="Urlaubstyp" src="{{docs_base_url}}/assets/img/human-resources/leave-type.png">
+<img class="screenshot" alt="Urlaubstyp" src="/docs/assets/img/human-resources/leave-type.png">
 
 * "Maximale zulässige Urlaubstage" gibt die Maximalanzahl von Tagen dieses Urlaubstyps an, die zusammen genommen werden können.
 * "Ist unbezahlter Urlaub" gibt an, dass es sich um unbezahlten Urlaub handelt.
diff --git a/erpnext/docs/user/manual/de/human-resources/tools/leave-allocation-tool.md b/erpnext/docs/user/manual/de/human-resources/tools/leave-allocation-tool.md
index de109f4..a4a7862 100644
--- a/erpnext/docs/user/manual/de/human-resources/tools/leave-allocation-tool.md
+++ b/erpnext/docs/user/manual/de/human-resources/tools/leave-allocation-tool.md
@@ -3,6 +3,6 @@
 
 Das Urlaubszuordnungs-Werkzeug hilft Ihnen dabei eine bestimmte Menge an Urlaub einem Mitarbeiter zuzuteilen.
 
-<img class="screenshot" alt="Urlaubsantrag" src="{{docs_base_url}}/assets/img/human-resources/leave-application.png">
+<img class="screenshot" alt="Urlaubsantrag" src="/docs/assets/img/human-resources/leave-application.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/de/human-resources/tools/upload-attendance.md b/erpnext/docs/user/manual/de/human-resources/tools/upload-attendance.md
index 3f94e83..ba351b5 100644
--- a/erpnext/docs/user/manual/de/human-resources/tools/upload-attendance.md
+++ b/erpnext/docs/user/manual/de/human-resources/tools/upload-attendance.md
@@ -7,6 +7,6 @@
 
 > Personalwesen > Werkzeuge > Anwesenheit hochladen
 
-<img class="screenshot" alt="Anwesenheit hochladen" src="{{docs_base_url}}/assets/img/human-resources/attendence-upload.png">
+<img class="screenshot" alt="Anwesenheit hochladen" src="/docs/assets/img/human-resources/attendence-upload.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/de/introduction/getting-started-with-erpnext.md b/erpnext/docs/user/manual/de/introduction/getting-started-with-erpnext.md
index b23be11..cba0442 100644
--- a/erpnext/docs/user/manual/de/introduction/getting-started-with-erpnext.md
+++ b/erpnext/docs/user/manual/de/introduction/getting-started-with-erpnext.md
@@ -11,7 +11,7 @@
 
 ### 2\. Richten Sie sich ein kostenloses Konto bei ERPNext.com ein
 
-ERPNext.com wird von der Organisation (Frappe), die ERPNext veröffentlicht, verwaltet. Sie können sich ein eigenes Konto anlegen, indem Sie sich auf der [Internetseite registrieren](https://erpnext.com).
+ERPNext.com wird von der Organisation (Frappé), die ERPNext veröffentlicht, verwaltet. Sie können sich ein eigenes Konto anlegen, indem Sie sich auf der [Internetseite registrieren](https://erpnext.com).
 
 Sie können Sich außerdem auch dazu entscheiden, Ihre Software auf ERPNext.com zu speichern, wenn Sie einen Hostingvertrag abschliessen. Das ist eine Möglichkeit, wie Sie die Organisation, die ERPNext entwickelt und verbessert, unterstützen können. In diesem Fall bekommen Sie zusätzlich direkten Support bei Hostingfragen.
 
@@ -23,6 +23,6 @@
 
 ### 4\. Installieren Sie ERPNext auf Ihrem Unix/Linux/Mac-Rechner
 
-Wenn Sie sich mit der Installation von Anwendungen auf *nix-Plattformen auskennen, lesen Sie die Anweisungen zur Installation des [Frappe Bench](https://github.com/frappe/bench).
+Wenn Sie sich mit der Installation von Anwendungen auf *nix-Plattformen auskennen, lesen Sie die Anweisungen zur Installation des [Frappé Bench](https://github.com/frappe/bench).
 
 {next}
diff --git a/erpnext/docs/user/manual/de/introduction/key-workflows.md b/erpnext/docs/user/manual/de/introduction/key-workflows.md
index ac5392c..1840479 100644
--- a/erpnext/docs/user/manual/de/introduction/key-workflows.md
+++ b/erpnext/docs/user/manual/de/introduction/key-workflows.md
@@ -4,7 +4,7 @@
 Dieses Diagramm stellt dar, wie ERPNext die Informationen und Vorgänge in Ihrem Unternehmen über Schlüsselfunktionen nachverfolgt. Dieses Diagramm gibt nicht alle Funktionalitäten von ERPNext wieder.
 
 
-<img class="screenshot" alt="Hohe Auflösung" src="{{docs_base_url}}/assets/img/setup/overview.png">
+<img class="screenshot" alt="Hohe Auflösung" src="/docs/assets/img/setup/overview.png">
 
 
 _Anmerkung: Nicht alle Schritte sind zwingend erforderlich. ERPNext erlaubt es Ihnen nach eigenem Gutdünken Schritte auszulassen, wenn Sie den Prozess vereinfachen wollen._
diff --git a/erpnext/docs/user/manual/de/introduction/the-champion.md b/erpnext/docs/user/manual/de/introduction/the-champion.md
index 912c252..b04de65 100644
--- a/erpnext/docs/user/manual/de/introduction/the-champion.md
+++ b/erpnext/docs/user/manual/de/introduction/the-champion.md
@@ -1,7 +1,7 @@
 # Der Champion
 <span class="text-muted contributed-by">Beigetragen von CWT Connector & Wire Technology GmbH</span>
 
-<img alt="Champion" class="screenshot" src="{{docs_base_url}}/assets/img/setup/implementation-image.png">
+<img alt="Champion" class="screenshot" src="/docs/assets/img/setup/implementation-image.png">
 
 Wir haben uns in den letzten Jahren dutzende von ERP-Umsetzungen angesehen, und wir haben erkannt, dass eine erfolgreiche Umsetzung viel mit schwer greifbaren Dingen und persönlichen Einstellungen zu tun hat.
 
diff --git a/erpnext/docs/user/manual/de/manufacturing/bill-of-materials.md b/erpnext/docs/user/manual/de/manufacturing/bill-of-materials.md
index 55501e6..52ab420 100644
--- a/erpnext/docs/user/manual/de/manufacturing/bill-of-materials.md
+++ b/erpnext/docs/user/manual/de/manufacturing/bill-of-materials.md
@@ -7,11 +7,11 @@
 
 >Fertigung > Dokumente > Stückliste > Neue Stückliste
 
-<img class="screenshot" alt="Task" src="{{docs_base_url}}/assets/img/manufacturing/bom.png">
+<img class="screenshot" alt="Task" src="/docs/assets/img/manufacturing/bom.png">
 
 Um Arbeitsgänge hinzuzufügen, wählen Sie "Mit Arbeitsgängen". Die Übersicht der Arbeitsgänge erscheint.
 
-<img class="screenshot" alt="Task" src="{{docs_base_url}}/assets/img/manufacturing/bom-operations.png">
+<img class="screenshot" alt="Task" src="/docs/assets/img/manufacturing/bom-operations.png">
 
 * Wählen Sie den Artikel für den Sie eine Stückliste erstellen wollen.
 * Fügen Sie die Arbeitsgänge, die Sie durchlaufen müssen, um diesen Artikel zu fertigen, in der Tabelle der Arbeitsgänge hinzu. Für jeden Arbeitsgang werden Sie nach einem Arbeitsplatz gefragt. Wenn nötig, müssen Sie neue Arbeitsplätze anlegen.
@@ -23,16 +23,16 @@
 * Der Bereich Kostenkalkulation der Stückliste gibt einen ungefähren Wert der Produktionskosten eines Artikels wieder
 * Fügen Sie die Liste der Artikel, die Sie für jeden Arbeitsgang benötigen, mit der entsprechenden Menge hinzu. Bei dem Artikel kann es sich um einen Zukaufartikel oder um eine Unterfertigung mit eigener Stückliste handeln. Wenn der Artikel in der Zeile ein gefertigter Artikel ist und mehrere verschiedene Stücklisten hat, wählen Sie die passende Stückliste aus. Sie können auch festlegen, ob ein Teil des Artikels zu Ausschuss wird.
 
-<img class="screenshot" alt="Kostenkalkulation" src="{{docs_base_url}}/assets/img/manufacturing/bom-costing.png">
+<img class="screenshot" alt="Kostenkalkulation" src="/docs/assets/img/manufacturing/bom-costing.png">
 
 * Diese Kosten können über die Schaltfläche "Kosten aktualisieren" aktualisiert werden.
 
-<img class="screenshot" alt="Kosten aktualisieren" src="{{docs_base_url}}/assets/img/manufacturing/bom-update-cost.png">
+<img class="screenshot" alt="Kosten aktualisieren" src="/docs/assets/img/manufacturing/bom-update-cost.png">
 
 ### Benötigtes Material (aufgelöst)
 
 Diese Tabelle listet alles Material auf, welches benötigt wird um den Artikel zu fertigen. Sie zieht weiterhin Unterbaugruppen mit Menge an.
 
-<img class="screenshot" alt="Aufgelöste Ansicht" src="{{docs_base_url}}/assets/img/manufacturing/bom-exploded.png">
+<img class="screenshot" alt="Aufgelöste Ansicht" src="/docs/assets/img/manufacturing/bom-exploded.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/de/manufacturing/operation.md b/erpnext/docs/user/manual/de/manufacturing/operation.md
index 07ca860..cc16375 100644
--- a/erpnext/docs/user/manual/de/manufacturing/operation.md
+++ b/erpnext/docs/user/manual/de/manufacturing/operation.md
@@ -9,6 +9,6 @@
 
 > Fertigung > Dokumente > Arbeitsgang > Neu
 
-<img class="screenshot" alt="Arbeitsgang" src="{{docs_base_url}}/assets/img/manufacturing/operation.png">
+<img class="screenshot" alt="Arbeitsgang" src="/docs/assets/img/manufacturing/operation.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/de/manufacturing/production-order.md b/erpnext/docs/user/manual/de/manufacturing/production-order.md
index e6ddd7b..d93391a 100644
--- a/erpnext/docs/user/manual/de/manufacturing/production-order.md
+++ b/erpnext/docs/user/manual/de/manufacturing/production-order.md
@@ -7,7 +7,7 @@
 
 > Fertigung > Dokumente > Fertigungsauftrag > Neu
 
-<img class="screenshot" alt="Fertigungsauftrag" src="{{docs_base_url}}/assets/img/manufacturing/production-order.png">
+<img class="screenshot" alt="Fertigungsauftrag" src="/docs/assets/img/manufacturing/production-order.png">
 
 ### Einen Fertigungsauftrag erstellen
 
@@ -23,11 +23,11 @@
 
 * Als Voreinstellung zieht das System Arbeitsplätze und die Dauer von Arbeitsgängen aus der gewählten Stückliste.
 
-<img class="screenshot" alt="Fertigungsauftrag - Arbeitsgänge" src="{{docs_base_url}}/assets/img/manufacturing/PO-operations.png">
+<img class="screenshot" alt="Fertigungsauftrag - Arbeitsgänge" src="/docs/assets/img/manufacturing/PO-operations.png">
 
 * Wenn Sie den Arbeitsplatz für einen bestimmten Arbeitsgang im Fertigungsauftrag neu zuordnen möchten, können Sie das tun, bevor Sie den Fertigungsauftrag übertragen.
 
-<img class="screenshot" alt="Fertigungsauftrag - Arbeitsgänge neu zuordnen" src="{{docs_base_url}}/assets/img/manufacturing/PO-reassigning-operations.png">
+<img class="screenshot" alt="Fertigungsauftrag - Arbeitsgänge neu zuordnen" src="/docs/assets/img/manufacturing/PO-reassigning-operations.png">
 
 * Wählen Sie den betreffenden Arbeitsgang aus und ändern Sie seinen Arbeitsplatz.
 * Sie können auch die Dauer des Arbeitsgangs ändern.
@@ -42,28 +42,28 @@
 * Das erstellt eine Lagerbuchung mit allen Artikeln, die benötigt werden, um diesen Fertigungsauftrag abzuschliessen. Die Artikel werden an das Fertigungslager übertragen (dieser Prozess fügt basierend auf Ihren Einstellungen Unterbaugruppen mit Stückliste als EINEN Artikel hinzu oder löst die Unterpunkte auf).
 * Klicken Sie auf "Material der Fertigung übergeben".
 
-<img class="screenshot" alt="Materialübertrag" src="{{docs_base_url}}/assets/img/manufacturing/PO-material-transfer.png">
+<img class="screenshot" alt="Materialübertrag" src="/docs/assets/img/manufacturing/PO-material-transfer.png">
 
 * Geben Sie die Menge des Materials an, das übertragen werden soll.
 
-<img class="screenshot" alt="Materialübertrag - Menge" src="{{docs_base_url}}/assets/img/manufacturing/PO-material-transfer-qty.png">
+<img class="screenshot" alt="Materialübertrag - Menge" src="/docs/assets/img/manufacturing/PO-material-transfer-qty.png">
 
 * Übertragen Sie die Lagerbuchung.
 
-<img class="screenshot" alt="Lagerbuchung zum Kundenauftrag" src="{{docs_base_url}}/assets/img/manufacturing/PO-SE-for-material-transfer.png">
+<img class="screenshot" alt="Lagerbuchung zum Kundenauftrag" src="/docs/assets/img/manufacturing/PO-SE-for-material-transfer.png">
 
 * Das an die Fertigung übertragene Material wird basierend auf der Lagerbuchung im Fertigungsauftrag aktualisiert.
 
-<img class="screenshot" alt="Lagerbuchung zum Fertigungsauftrag" src="{{docs_base_url}}/assets/img/manufacturing/PO-material-transfer-updated.png">
+<img class="screenshot" alt="Lagerbuchung zum Fertigungsauftrag" src="/docs/assets/img/manufacturing/PO-material-transfer-updated.png">
 
 ### Zeitprotokoll erstellen
 
-* Der Fortschritt des Fertigungsauftrages kann über ein [Zeitprotokoll]<img class="screenshot" alt="Make TL against PO" src="{{docs_base_url}}/assets/img/manufacturing/PO-operations-make-tl.png"> mitprotokolliert werden.
+* Der Fortschritt des Fertigungsauftrages kann über ein [Zeitprotokoll]<img class="screenshot" alt="Make TL against PO" src="/docs/assets/img/manufacturing/PO-operations-make-tl.png"> mitprotokolliert werden.
 * Zeitprotokolle werden zu den Arbeitsgängen des Fertigungsauftrages erstellt.
 * Vorlagen für Zeitprotokolle werden für die eingeplanten Arbeitsgänge zum Zeitpunkt des Übertragens des Fertigungsauftrages erstellt.
 * Um weitere Zeitprotokolle zu einem Arbeitsgang zu erstellen, wählen Sie "Zeitprotokoll erstellen" im betreffenden Arbeitsgang aus.
 
-<img class="screenshot" alt="Zeitprotokoll zum Fertigungsauftrag erstellen" src="{{docs_base_url}}/assets/img/manufacturing/PO-operations-make-tl.png">
+<img class="screenshot" alt="Zeitprotokoll zum Fertigungsauftrag erstellen" src="/docs/assets/img/manufacturing/PO-operations-make-tl.png">
 
 ### Fertige Erzeugnisse aktualisieren
 
@@ -71,11 +71,11 @@
 * Das erstellt eine Lagerbuchung, welche alle Unterartikel vom Fertigungslager abzieht und dem Lager "Fertige Erzeugnisse" gutschreibt.
 * Klicken Sie auf "Fertige Erzeugnisse aktualisieren".
 
-<img class="screenshot" alt="Fertigerzeugnisse aktualiseren" src="{{docs_base_url}}/assets/img/manufacturing/PO-FG-update.png">
+<img class="screenshot" alt="Fertigerzeugnisse aktualiseren" src="/docs/assets/img/manufacturing/PO-FG-update.png">
 
 * Geben Sie die Menge des übertragenen Materials an.
 
-<img class="screenshot" alt="Menge der Fertigerzeugnisse aktualisieren" src="{{docs_base_url}}/assets/img/manufacturing/PO-FG-update-qty.png">
+<img class="screenshot" alt="Menge der Fertigerzeugnisse aktualisieren" src="/docs/assets/img/manufacturing/PO-FG-update-qty.png">
 
 >Tipp: Sie können einen Fertigungsauftrag auch teilweise fertig stellen, indem Sie über eine Lagerbuchung das Lager Fertige Erzeugnisse aktualisieren.
 
@@ -90,7 +90,7 @@
 4. Fertigerzeugnisse aktualisieren: Dieser Schritt erstellt eine Lagerbuchung, welche alle Unterartikel vom Fertigungslager abzieht und dem Lager Fertige Erzeugnisse hinzufügt.
 5. Um die zum Fertigungsauftrag erstellten Zeitprotokolle anzusehen, klicken Sie auf "Zeitprotokolle anzeigen".
 
-<img class="screenshot" alt="Fertigungsauftrag anhalten" src="{{docs_base_url}}/assets/img/manufacturing/PO-stop.png">
+<img class="screenshot" alt="Fertigungsauftrag anhalten" src="/docs/assets/img/manufacturing/PO-stop.png">
 
 * Sie können auch einen angehaltenen Fertigungsauftrag wieder weiter laufen lassen.
 
diff --git a/erpnext/docs/user/manual/de/manufacturing/setup/manufacturing-settings.md b/erpnext/docs/user/manual/de/manufacturing/setup/manufacturing-settings.md
index 8f77716..fdf60b6 100644
--- a/erpnext/docs/user/manual/de/manufacturing/setup/manufacturing-settings.md
+++ b/erpnext/docs/user/manual/de/manufacturing/setup/manufacturing-settings.md
@@ -5,7 +5,7 @@
 
 > Fertigung > Einstellungen > Fertigungseinstellungen
 
-<img class="screenshot" alt="Fertigungseinstellungen" src="{{docs_base_url}}/assets/img/manufacturing/manufacturing-settings.png">
+<img class="screenshot" alt="Fertigungseinstellungen" src="/docs/assets/img/manufacturing/manufacturing-settings.png">
 
 Überstunden zulassen: Hier können Sie angeben, ob an Arbeitsplätzen Überstunden erlaubt sind (wichtig zur Planung von Arbeitsgängen außerhalb der Betriebsstunden).
 
diff --git a/erpnext/docs/user/manual/de/manufacturing/subcontracting.md b/erpnext/docs/user/manual/de/manufacturing/subcontracting.md
index 2796610..3c0e36f 100644
--- a/erpnext/docs/user/manual/de/manufacturing/subcontracting.md
+++ b/erpnext/docs/user/manual/de/manufacturing/subcontracting.md
@@ -11,7 +11,7 @@
 2. Erstellen Sie ein Lager für den Lieferanten, damit Sie die übergebenen Artikel nachverfolgen können (möglicherweise geben Sie ja Artikel im Wert einer Monatslieferung außer Haus).
 3. Stellen Sie für den bearbeiteten Artikel  und der Artikelvorlage den Punkt "Ist Fremdvergabe" auf JA ein.
 
-<img class="screenshot" alt="Fremdvergabe" src="{{docs_base_url}}/assets/img/manufacturing/subcontract.png">
+<img class="screenshot" alt="Fremdvergabe" src="/docs/assets/img/manufacturing/subcontract.png">
 
 
 **Schritt 1:** Erstellen Sie für den bearbeiteten Artikel eine Stückliste, die den unbearbeiteten Artikel als Unterartikel enthält. Beispiel: Wenn Sie einen Stift herstellen, wird der bearbeitete Stift mit der Stückliste benannt, wbei der Tintentank, der Knopf und andere Artikel, die in die Fertigung eingehen als Unterartikel verwaltet werden.
diff --git a/erpnext/docs/user/manual/de/manufacturing/tools/bom-replace-tool.md b/erpnext/docs/user/manual/de/manufacturing/tools/bom-replace-tool.md
index 922c32a..dbe772b 100644
--- a/erpnext/docs/user/manual/de/manufacturing/tools/bom-replace-tool.md
+++ b/erpnext/docs/user/manual/de/manufacturing/tools/bom-replace-tool.md
@@ -34,7 +34,7 @@
 
 Um die Stückliste, bei der die Zentraleinheit als Rohmaterial enthalten ist, in der Stückliste des fertigen Produktes zu aktualisieren, können Sie das Stücklisten-Austauschwerkzeug verwenden.
 
-<img class="screenshot" alt="Stücklistenaustauschwerkzeug" src="{{docs_base_url}}/assets/img/manufacturing/bom-replace-tool.png">
+<img class="screenshot" alt="Stücklistenaustauschwerkzeug" src="/docs/assets/img/manufacturing/bom-replace-tool.png">
 
 In diesem Werkzeug  wählen Sie die aktuelle und die neue Stückliste aus. Wenn Sie auf die Schaltfläche "Austauschen" klicken, wird in der Stückliste des fertigen Produktes (Computer) die aktuelle Stückliste der Zentraleinheit durch die neue Stückliste ersetzt.
 
diff --git a/erpnext/docs/user/manual/de/manufacturing/tools/production-planning-tool.md b/erpnext/docs/user/manual/de/manufacturing/tools/production-planning-tool.md
index 63e51f8..b7ef2d0 100644
--- a/erpnext/docs/user/manual/de/manufacturing/tools/production-planning-tool.md
+++ b/erpnext/docs/user/manual/de/manufacturing/tools/production-planning-tool.md
@@ -12,30 +12,30 @@
 
 > Fertigung > Werkzeuge > Werkzeug zur Fertigungsplanung
 
-<img class="screenshot" alt="Werkzeug zur Fertigungsplanung" src="{{docs_base_url}}/assets/img/manufacturing/ppt.png">
+<img class="screenshot" alt="Werkzeug zur Fertigungsplanung" src="/docs/assets/img/manufacturing/ppt.png">
 
 ### Schritt 1: Auswahl und Kundenauftrag
 
 * Wählen Sie einen Kundenauftrag für die Materialanforderung über die Filterfunktion (Zeit, Artikel und Kunde) aus.
 * Klicken Sie auf "Kundenaufträge aufrufen" um eine Übersicht zu erhalten.
 
-<img class="screenshot" alt="Werkzeug zur Fertigungsplanung" src="{{docs_base_url}}/assets/img/manufacturing/ppt-get-sales-orders.png">
+<img class="screenshot" alt="Werkzeug zur Fertigungsplanung" src="/docs/assets/img/manufacturing/ppt-get-sales-orders.png">
 
 ### Schritt 2: Artikel aus Kundenaufträgen abrufen
 
 Sie können Artikel hinzufügen, entfernen oder die Menge dieser Artikel verändern.
 
-<img class="screenshot" alt="Werkzeug zur Fertigungsplanung" src="{{docs_base_url}}/assets/img/manufacturing/ppt-get-item.png">
+<img class="screenshot" alt="Werkzeug zur Fertigungsplanung" src="/docs/assets/img/manufacturing/ppt-get-item.png">
 
 ### Schritt 3: Fertigungsaufträge erstellen
 
-<img class="screenshot" alt="Werkzeug zur Fertigungsplanung" src="{{docs_base_url}}/assets/img/manufacturing/ppt-create-production-order.png">
+<img class="screenshot" alt="Werkzeug zur Fertigungsplanung" src="/docs/assets/img/manufacturing/ppt-create-production-order.png">
 
 ### Schritt 4: Materialanfragen erstellen
 
 Erstellen Sie für Artikel mit prognostiziertem Engpass Materialanfragen.
 
-<img class="screenshot" alt="Werkzeug zur Fertigungsplanung" src="{{docs_base_url}}/assets/img/manufacturing/ppt-create-material-request.png">
+<img class="screenshot" alt="Werkzeug zur Fertigungsplanung" src="/docs/assets/img/manufacturing/ppt-create-material-request.png">
 
 Das Werkzeug zur Fertigungsplanung wird auf zwei Ebenend verwendet:
 
diff --git a/erpnext/docs/user/manual/de/manufacturing/workstation.md b/erpnext/docs/user/manual/de/manufacturing/workstation.md
index 2405382..6584ebc 100644
--- a/erpnext/docs/user/manual/de/manufacturing/workstation.md
+++ b/erpnext/docs/user/manual/de/manufacturing/workstation.md
@@ -9,10 +9,10 @@
 
 > Fertigung > Dokumente > Arbeitsplatz > Neu 
 
-<img class="screenshot" alt="Arbeitsplatz" src="{{docs_base_url}}/assets/img/manufacturing/workstation.png">
+<img class="screenshot" alt="Arbeitsplatz" src="/docs/assets/img/manufacturing/workstation.png">
 
 Geben Sie unter "Arbeitszeit" die Betriebszeiten des Arbeitsplatzes an. Sie können die Betriebszeiten auch mit Hilfe von Schichten angeben. Wenn Sie einen Fertigungauftrag einplanen, prüft das System die Verfügbarkeit des Arbeitsplatzes basierend auf den angegebenen Betrieszeiten.
 
-> Anmerkung: Sie können Überstunden für einen Arbeitsplatz über die [Fertigungseinstellungen]({{docs_base_url}}/user/manual/de/manufacturing/setup/manufacturing-settings.html) aktivieren.
+> Anmerkung: Sie können Überstunden für einen Arbeitsplatz über die [Fertigungseinstellungen](/docs/user/manual/de/manufacturing/setup/manufacturing-settings.html) aktivieren.
 
 {next}
diff --git a/erpnext/docs/user/manual/de/projects/activity-cost.md b/erpnext/docs/user/manual/de/projects/activity-cost.md
index 705846b..25e6452 100644
--- a/erpnext/docs/user/manual/de/projects/activity-cost.md
+++ b/erpnext/docs/user/manual/de/projects/activity-cost.md
@@ -3,4 +3,4 @@
 
 Die Aktivitätskosten erfassen den Stundensatz und die Kosten eines Mitarbeiters zu einer Aktivitätsart. Dieser Betrag wird beim Erstellen von Zeitprotokollen vom System angezogen. Er wird für die Aufwandsabrechnung des Projektes verwendet.
 
-<img class="screenshot" alt="Aktivitätskosten" src="{{docs_base_url}}/assets/img/project/activity_cost.png">
+<img class="screenshot" alt="Aktivitätskosten" src="/docs/assets/img/project/activity_cost.png">
diff --git a/erpnext/docs/user/manual/de/projects/activity-type.md b/erpnext/docs/user/manual/de/projects/activity-type.md
index ff61a76..1e8c534 100644
--- a/erpnext/docs/user/manual/de/projects/activity-type.md
+++ b/erpnext/docs/user/manual/de/projects/activity-type.md
@@ -3,7 +3,7 @@
 
 Unter dem Punkt "Aktivitätsart" wird eine Liste verschiedener Typen von Aktivitäten erstellt zu denen Zeitprotokolle erstellt werden können.
 
-<img class="screenshot" alt="Aktivitätsart" src="{{docs_base_url}}/assets/img/project/activity_type.png">
+<img class="screenshot" alt="Aktivitätsart" src="/docs/assets/img/project/activity_type.png">
 
 Standardmäßig sind die folgenden Aktivitätsarten angelegt:
 
diff --git a/erpnext/docs/user/manual/de/projects/project.md b/erpnext/docs/user/manual/de/projects/project.md
index 518443b..e9ce1b8 100644
--- a/erpnext/docs/user/manual/de/projects/project.md
+++ b/erpnext/docs/user/manual/de/projects/project.md
@@ -3,75 +3,75 @@
 
 Das Projektmanagement in ERPNext ist aufgabengesteuert. Sie können ein Projekt erstellen und ihm mehrere unterschiedliche Aufgaben zuweisen.
 
-<img class="screenshot" alt="Projekt" src="{{docs_base_url}}/assets/img/project/project.png">
+<img class="screenshot" alt="Projekt" src="/docs/assets/img/project/project.png">
 
 ### Aufgaben verwalten
 
 Ein Projekt kann in mehrere verschiedene Aufgaben aufgeteilt werden. 
-Eine Aufgabe kann über das Projektdokument selbst erstellt werden oder über die Schaltfläche [Aufgabe]({{docs_base_url}}/user/manual/de/projects/tasks.html).
+Eine Aufgabe kann über das Projektdokument selbst erstellt werden oder über die Schaltfläche [Aufgabe](/docs/user/manual/de/projects/tasks.html).
 
-<img class="screenshot" alt="Projekt" src="{{docs_base_url}}/assets/img/project/project_task.png">
+<img class="screenshot" alt="Projekt" src="/docs/assets/img/project/project_task.png">
 
 * Um eine Aufgabe, die zu einem Projekt erstellt wurde, anzusehen, klicken Sie auf "Aufgabe",
 
-<img class="screenshot" alt="Projekt - Aufgabe ansehen" src="{{docs_base_url}}/assets/img/project/project_view_task.png">
+<img class="screenshot" alt="Projekt - Aufgabe ansehen" src="/docs/assets/img/project/project_view_task.png">
 
-<img class="screenshot" alt="Projekt - List der Aufgaben" src="{{docs_base_url}}/assets/img/project/project_task_list.png">
+<img class="screenshot" alt="Projekt - List der Aufgaben" src="/docs/assets/img/project/project_task_list.png">
 
 * Sie können Aufgaben auch über das Projektdokument selbst ansehen.
 
-<img class="screenshot" alt="Projekt - Aufgabenmatrix" src="{{docs_base_url}}/assets/img/project/project_task_grid.png">
+<img class="screenshot" alt="Projekt - Aufgabenmatrix" src="/docs/assets/img/project/project_task_grid.png">
 
 ### Zeitmanagement
 
-ERPNext verwendet [Zeitprotokolle]({{docs_base_url}}/user/manual/de/projects/time-log.html) um den Fortschritt eines Projektes nachzuverfolgen. Sie können Zeitprotokolle zu jeder Aufgabe erstellen. Das aktuelle Start- und Enddatum wird dann zusammen mit der Kostenberechnung  basierend auf dem Zeitprotokoll aktualisiert.
+ERPNext verwendet [Zeitprotokolle](/docs/user/manual/de/projects/time-log.html) um den Fortschritt eines Projektes nachzuverfolgen. Sie können Zeitprotokolle zu jeder Aufgabe erstellen. Das aktuelle Start- und Enddatum wird dann zusammen mit der Kostenberechnung  basierend auf dem Zeitprotokoll aktualisiert.
 
 * Um ein Zeitprotokoll zu einem Projekt anzusehen, klicken Sie auf "Zeitprotokolle"
 
-<img class="screenshot" alt="Projekt - Zeitprotokoll ansehen" src="{{docs_base_url}}/assets/img/project/project_view_time_log.png">
+<img class="screenshot" alt="Projekt - Zeitprotokoll ansehen" src="/docs/assets/img/project/project_view_time_log.png">
 
-<img class="screenshot" alt="Projekt - Übersicht der Zeitprotokolle" src="{{docs_base_url}}/assets/img/project/project_time_log_list.png">
+<img class="screenshot" alt="Projekt - Übersicht der Zeitprotokolle" src="/docs/assets/img/project/project_time_log_list.png">
 
 * Sie können ein Zeitprotokoll auch direkt erstellen und mit dem Projekt verknüpfen.
 
-<img class="screenshot" alt="Projekt - Zeitprotokoll verknüpfen" src="{{docs_base_url}}/assets/img/project/project_time_log_link.png">
+<img class="screenshot" alt="Projekt - Zeitprotokoll verknüpfen" src="/docs/assets/img/project/project_time_log_link.png">
 
 ### Aufwände verwalten
 
-Sie können [Aufwandsabrechnungen]({{docs_base_url}}/user/manual/de/human-resources/expense-claim.html) mit Projektaufgaben verbuchen. Das System aktualisiert die Gesamtsumme der Aufwände im Abschnitt Kostenabrechnung.
+Sie können [Aufwandsabrechnungen](/docs/user/manual/de/human-resources/expense-claim.html) mit Projektaufgaben verbuchen. Das System aktualisiert die Gesamtsumme der Aufwände im Abschnitt Kostenabrechnung.
 
 * Um die Aufwandsabrechnungen zu einem Projekt anzusehen, klicken Sie auf "Aufwandsabrechnung".
 
-<img class="screenshot" alt="Projekt - Aufwandsabrechnung ansehen" src="{{docs_base_url}}/assets/img/project/project_view_expense_claim.png">
+<img class="screenshot" alt="Projekt - Aufwandsabrechnung ansehen" src="/docs/assets/img/project/project_view_expense_claim.png">
 
 * Sie könne Aufwandsabrechnungen auch direkt erstellen und mit einem Projekt verknüpfen.
 
-<img class="screenshot" alt="Projekt - Aufwandsabrechnung verknüpfen" src="{{docs_base_url}}/assets/img/project/project_expense_claim_link.png">
+<img class="screenshot" alt="Projekt - Aufwandsabrechnung verknüpfen" src="/docs/assets/img/project/project_expense_claim_link.png">
 
 * Der Gesamtbetrag der mit einem Projekt verbuchten Aufwandsabrechnungen wird unter "Gesammtsumme der Aufwandsabrechnungen" im Abschnitt "Kostenabrechnung" angezeigt.
 
-<img class="screenshot" alt="Projekt - Gesamtsumme Aufwandsabrechnung" src="{{docs_base_url}}/assets/img/project/project_total_expense_claim.png">
+<img class="screenshot" alt="Projekt - Gesamtsumme Aufwandsabrechnung" src="/docs/assets/img/project/project_total_expense_claim.png">
 
 ### Kostenstelle
 
-Sie können zu einem Projekt eine [Kostenstelle]({{docs_base_url}}/user/manual/de/accounts/setup/cost-center.html) erstellen oder Sie können eine existierende Kostenstelle verwenden um alle Aufwände die zu einem Projekt entstehen mitzuverfolgen.
+Sie können zu einem Projekt eine [Kostenstelle](/docs/user/manual/de/accounts/setup/cost-center.html) erstellen oder Sie können eine existierende Kostenstelle verwenden um alle Aufwände die zu einem Projekt entstehen mitzuverfolgen.
 
-<img class="screenshot" alt="Projekt - Kostenstelle" src="{{docs_base_url}}/assets/img/project/project_cost_center.png">
+<img class="screenshot" alt="Projekt - Kostenstelle" src="/docs/assets/img/project/project_cost_center.png">
 
 ### Projektkostenabrechnung
 
 Der Abschnitt Projektkostenabrechnung hilft Ihnen dabei, die Zeit und die AUfwände die in einem Projekt anfallen, nachzuverfolgen.
 
-<img class="screenshot" alt="Projekt - Kostenabrechnung" src="{{docs_base_url}}/assets/img/project/project_costing.png">
+<img class="screenshot" alt="Projekt - Kostenabrechnung" src="/docs/assets/img/project/project_costing.png">
 
 * Der Abschnitt Kostenabrechnung wird basierend auf den Zeitprotokollen aktualisiert.
 * Die Bruttospanne ist die Differenz zwischen dem Betrag der gesamten Kosten und dem Gesamtbetrag der Rechnung.
 
 ### Abrechnung
 
-Sie können einen [Kundenauftrag]({{docs_base_url}}/user/manual/de/selling/sales-order.html) zu einem Projekt erstellen bzw. ihn mit dem Projekt verknüpfen. Wenn er einmal verlinkt ist, können Sie das Vertriebsmodul dazu nutzen, dass Projekt mit Ihrem Kunden abzurechnen.
+Sie können einen [Kundenauftrag](/docs/user/manual/de/selling/sales-order.html) zu einem Projekt erstellen bzw. ihn mit dem Projekt verknüpfen. Wenn er einmal verlinkt ist, können Sie das Vertriebsmodul dazu nutzen, dass Projekt mit Ihrem Kunden abzurechnen.
 
-<img class="screenshot" alt="Projekt - Kundenauftrag" src="{{docs_base_url}}/assets/img/project/project_sales_order.png">
+<img class="screenshot" alt="Projekt - Kundenauftrag" src="/docs/assets/img/project/project_sales_order.png">
 
 ### Gantt-Diagramm
 
@@ -79,8 +79,8 @@
 
 * Um ein Gantt-Diagramm zu einem Projekt anzusehen, gehen Sie zu diesem Projekt und klicken Sie auf "Gantt-Diagramm".
 
-<img class="screenshot" alt="Projekt - Gantt-Diagramm ansehen" src="{{docs_base_url}}/assets/img/project/project_view_gantt_chart.png">
+<img class="screenshot" alt="Projekt - Gantt-Diagramm ansehen" src="/docs/assets/img/project/project_view_gantt_chart.png">
 
-<img class="screenshot" alt="Projekt - Gantt-Diagramm" src="{{docs_base_url}}/assets/img/project/project_gantt_chart.png">
+<img class="screenshot" alt="Projekt - Gantt-Diagramm" src="/docs/assets/img/project/project_gantt_chart.png">
 
 [next]
diff --git a/erpnext/docs/user/manual/de/projects/tasks.md b/erpnext/docs/user/manual/de/projects/tasks.md
index 163fb68..75fd594 100644
--- a/erpnext/docs/user/manual/de/projects/tasks.md
+++ b/erpnext/docs/user/manual/de/projects/tasks.md
@@ -3,13 +3,13 @@
 
 Ein Projekt wird in Aufgaben unterteilt. In ERPNext können Sie auch Abhängigkeiten zwischen Aufgaben erstellen.
 
-<img class="screenshot" alt="Aufgabe" src="{{docs_base_url}}/assets/img/project/task.png">
+<img class="screenshot" alt="Aufgabe" src="/docs/assets/img/project/task.png">
 
 ### Status der Aufgabe
 
 Ein Aufgabe kann folgende Stati haben: "Offen", "In Arbeit", "Wartet auf Überprüfung", "Geschlossen" und "Abgebrochen".
 
-<img class="screenshot" alt="Aufgabe - Status" src="{{docs_base_url}}/assets/img/project/task_status.png">
+<img class="screenshot" alt="Aufgabe - Status" src="/docs/assets/img/project/task_status.png">
 
 * Standardmäßig sollte jede neu erstellte Aufgabe den Status "Offen" haben.
 * Wenn ein Zeitprotokoll für eine Aufgabe erstellt wird, sollte ihr Status "In Arbeit" sein.
@@ -18,40 +18,40 @@
 
 Sie können eine Liste von abhängigen Aufgaben im Bereich "Hängt ab von" erstellen.
 
-<img class="screenshot" alt="Anhängigkeiten" src="{{docs_base_url}}/assets/img/project/task_depends_on.png">
+<img class="screenshot" alt="Anhängigkeiten" src="/docs/assets/img/project/task_depends_on.png">
 
 * Sie können eine übergeordnete Aufgabe nicht abschliessen bis alle abhängigen Aufgaben abgeschlossen sind.
 * Wenn sich die abhängige Aufgabe verzögert und sich mit dem voraussichtlichen Startdatum der übergeordneten Aufgabe überlappt, überarbeitet das System die übergeordnete Aufgabe.
 
 ### Zeitmanagement
 
-ERPNext verwendet [Zeitprotokolle]({{docs_base_url}}/user/manual/de/projects/time-log.html) um den Fortschritt einer Aufgabe mitzuprotokollieren. Sie können mehrere unterschiedliche Zeitprotokolle zu jeder Aufgabe erstellen. Das aktuelle Start- und Enddatum kann dann zusammen mit der auf dem Zeitprotokoll basierenden Kostenberechnung aktualisiert werden.
+ERPNext verwendet [Zeitprotokolle](/docs/user/manual/de/projects/time-log.html) um den Fortschritt einer Aufgabe mitzuprotokollieren. Sie können mehrere unterschiedliche Zeitprotokolle zu jeder Aufgabe erstellen. Das aktuelle Start- und Enddatum kann dann zusammen mit der auf dem Zeitprotokoll basierenden Kostenberechnung aktualisiert werden.
 
 * Um ein zu einer Aufgabe erstelltes Zeitprotokoll anzuschauen, klicken Sie auf "Zeitprotokolle".
 
-<img class="screenshot" alt="Aufgabe - Zeitprotokoll ansehen" src="{{docs_base_url}}/assets/img/project/task_view_time_log.png">
+<img class="screenshot" alt="Aufgabe - Zeitprotokoll ansehen" src="/docs/assets/img/project/task_view_time_log.png">
 
-<img class="screenshot" alt="Aufgabe - Liste der Zeitprotokolle" src="{{docs_base_url}}/assets/img/project/task_time_log_list.png">
+<img class="screenshot" alt="Aufgabe - Liste der Zeitprotokolle" src="/docs/assets/img/project/task_time_log_list.png">
 
 * Sie können ein Zeitprotokoll auch direkt erstellen und mit einer Aufgabe verknüpfen.
 
-<img class="screenshot" alt="Aufgabe - Zeitprotokoll verknüpfen" src="{{docs_base_url}}/assets/img/project/task_time_log_link.png">
+<img class="screenshot" alt="Aufgabe - Zeitprotokoll verknüpfen" src="/docs/assets/img/project/task_time_log_link.png">
 
 ### Ausgabenmanagement
 
-Sie können [Aufwandsabrechnungen]({{docs_base_url}}/user/manual/de/human-resources/expense-claim.html) mit einer Aufgabe verbuchen. Das System aktualisiert den Gesamtbetrag der Aufwandsabrechnungen im Abschnitt Kostenberechnung.
+Sie können [Aufwandsabrechnungen](/docs/user/manual/de/human-resources/expense-claim.html) mit einer Aufgabe verbuchen. Das System aktualisiert den Gesamtbetrag der Aufwandsabrechnungen im Abschnitt Kostenberechnung.
 
 * Um eine Aufwandsabrechnung, die zu einer Aufgabe erstellt wurde, anzuschauen, klicken Sie auf "Aufwandsabrechnung".
 
-<img class="screenshot" alt="Aufgabe - Aufwandsabrechnung ansehen" src="{{docs_base_url}}/assets/img/project/task_view_expense_claim.png">
+<img class="screenshot" alt="Aufgabe - Aufwandsabrechnung ansehen" src="/docs/assets/img/project/task_view_expense_claim.png">
 
 * Sie können eine Aufwandsabrechnung auch direkt erstellen und sie mit einer Aufgabe verknüpfen.
 
-<img class="screenshot" alt="Aufgabe - Aufwandsabrechnung verknüpfen" src="{{docs_base_url}}/assets/img/project/task_expense_claim_link.png">
+<img class="screenshot" alt="Aufgabe - Aufwandsabrechnung verknüpfen" src="/docs/assets/img/project/task_expense_claim_link.png">
 
 * Der Gesamtbetrag der Aufwandsabrechnungen zu einer Aufgabe wird unter "Gesamtbetrag der Aufwandsabrechnungen" im Abschnitt Kostenabrechnung angezeigt.
 
-<img class="screenshot" alt="Aufgabe - Gesamtsumme Aufwandsabrechnung" src="{{docs_base_url}}/assets/img/project/task_total_expense_claim.png">
+<img class="screenshot" alt="Aufgabe - Gesamtsumme Aufwandsabrechnung" src="/docs/assets/img/project/task_total_expense_claim.png">
 
 {next}
 
diff --git a/erpnext/docs/user/manual/de/projects/time-log-batch.md b/erpnext/docs/user/manual/de/projects/time-log-batch.md
index 6aa85cb..4383e1c 100644
--- a/erpnext/docs/user/manual/de/projects/time-log-batch.md
+++ b/erpnext/docs/user/manual/de/projects/time-log-batch.md
@@ -9,17 +9,17 @@
 
 Öffnen Sie einfach Ihre Übersicht der Zeitprotokolle und kreuzen Sie die Artikel an, die Sie dem Zeitprotokollstapel hinzufügen möchten. Klicken Sie dann auf die Schaltfläche "Zeitprotokollstapel erstellen" und diese Zeitprotokolle werden ausgewählt.
 
-<img class="screenshot" alt="Zeitprotokoll - Kalender aufziehen" src="{{docs_base_url}}/assets/img/project/time_sheet.gif">
+<img class="screenshot" alt="Zeitprotokoll - Kalender aufziehen" src="/docs/assets/img/project/time_sheet.gif">
 
 ### Ausgangsrechnungen erstellen
 
 * Sobald Sie einen Zeitprotokollstapel übertragen haben, sollte die Schaltfläche "Rechnung erstellen" erscheinen.
 
-<img class="screenshot" alt="Zeitprotokoll - Kalender aufziehen" src="{{docs_base_url}}/assets/img/project/time_sheet_make_invoice.png">
+<img class="screenshot" alt="Zeitprotokoll - Kalender aufziehen" src="/docs/assets/img/project/time_sheet_make_invoice.png">
 
 * Klicken Sie auf diese Schaltfläche und erstellen Sie eine Ausgangsrechnung zu einem Zeitprotokollstapel.
 
-<img class="screenshot" alt="Zeitprotokoll - Kalender aufziehen" src="{{docs_base_url}}/assets/img/project/time_sheet_sales_invoice.png">
+<img class="screenshot" alt="Zeitprotokoll - Kalender aufziehen" src="/docs/assets/img/project/time_sheet_sales_invoice.png">
 
 * Wenn Sie die Ausgangsrechnung "übertragen", wird die Nummer der Ausgangsrechnung in den Zeitprotokollen und im Zeitprotokollstapel aktualisiert und ihr Status wird auf "abgerechnet" geändert.
 
diff --git a/erpnext/docs/user/manual/de/projects/time-log.md b/erpnext/docs/user/manual/de/projects/time-log.md
index d90e27a..072837e 100644
--- a/erpnext/docs/user/manual/de/projects/time-log.md
+++ b/erpnext/docs/user/manual/de/projects/time-log.md
@@ -9,7 +9,7 @@
 * Projekte
 * Interne Referenzen
 
-<img class="screenshot" alt="Zeitprotokoll" src="{{docs_base_url}}/assets/img/project/time_log.png">
+<img class="screenshot" alt="Zeitprotokoll" src="/docs/assets/img/project/time_log.png">
 
 ### Zeitprotokolle erstellen
 
@@ -21,15 +21,15 @@
 
 Um Zeitprotokolle über den Kalender zu erstellen, gehen Sie zu "Zeitprotokoll" und wählen Sie "Kalender" aus.
 
-<img class="screenshot" alt="Zeitprotokoll - Kalender ansehen" src="{{docs_base_url}}/assets/img/project/time_log_view_calendar.png">
+<img class="screenshot" alt="Zeitprotokoll - Kalender ansehen" src="/docs/assets/img/project/time_log_view_calendar.png">
 
 * Um ein Zeitprotokoll für mehrere Tage zu erstellen, klicken Sie und ziehen Sie den Mauszeiger über die Tage.
 
-<img class="screenshot" alt="Zeitprotokoll - Kalender aufziehen" src="{{docs_base_url}}/assets/img/project/time_log_calendar_day.gif">
+<img class="screenshot" alt="Zeitprotokoll - Kalender aufziehen" src="/docs/assets/img/project/time_log_calendar_day.gif">
 
 * Sie können Zeitprotokolle auch aus der Wochen- oder Tagesansicht des Kalender heraus erstellen.
 
-<img class="screenshot" alt="Zeitprotokoll - Kalender aufziehen" src="{{docs_base_url}}/assets/img/project/time_log_calendar_week.gif">
+<img class="screenshot" alt="Zeitprotokoll - Kalender aufziehen" src="/docs/assets/img/project/time_log_calendar_week.gif">
 
 * Zeitprotokolle für Fertigungsprozesse müssen aus dem Fertigungsauftrag heraus erstellt werden.
 * Um mehrere Zeitprotokolle zu Arbeitsgängen zu erstellen wählen Sie den entsprechenden Arbeitsgang und klicken Sie auf "Zeitprotokoll erstellen".
@@ -37,12 +37,12 @@
 ### Abrechnung über Zeitprotokolle
 
 * Wenn Sie ein Zeitprotokoll abrechnen wollen, müssem Sie die Option "Abrechenbar" anklicken.
-* Im Abschnitt Kostenberechnung erstellt das System den Rechungsbetrag über die [Aktivitätskosten]({{docs_base_url}}/user/manual/de/projects/activity-cost.html)  basierend auf dem angegebenen Mitarbeiter und der angegebenen Aktivitätsart.
+* Im Abschnitt Kostenberechnung erstellt das System den Rechungsbetrag über die [Aktivitätskosten](/docs/user/manual/de/projects/activity-cost.html)  basierend auf dem angegebenen Mitarbeiter und der angegebenen Aktivitätsart.
 * Das System kalkuliert dann den Rechnungsbetrag basierend auf den im Zeitprotokoll angegebenen Stunden.
 * Wenn "Abrechenbar" nicht markiert wurde, zeigt das System beim "Rechnungsbetrag" 0 an.
 
-<img class="screenshot" alt="Zeitprotokoll - Abrechnung" src="{{docs_base_url}}/assets/img/project/time_log_costing.png">
+<img class="screenshot" alt="Zeitprotokoll - Abrechnung" src="/docs/assets/img/project/time_log_costing.png">
 
-* Nach dem Übertragen des Zeitprotokolls müssen Sie einen [Zeitprotokollstapel]({{docs_base_url}}/user/manual/de/projects/time-log-batch.html) erstellen um mit der Abrechnung fortfahren zu können.
+* Nach dem Übertragen des Zeitprotokolls müssen Sie einen [Zeitprotokollstapel](/docs/user/manual/de/projects/time-log-batch.html) erstellen um mit der Abrechnung fortfahren zu können.
 
 {next}
diff --git a/erpnext/docs/user/manual/de/selling/quotation.md b/erpnext/docs/user/manual/de/selling/quotation.md
index 3434e26..94ff78b 100644
--- a/erpnext/docs/user/manual/de/selling/quotation.md
+++ b/erpnext/docs/user/manual/de/selling/quotation.md
@@ -11,11 +11,11 @@
 
 Sie können auch ein Angebot aus einer Opportunity heraus erstellen.
 
-<img class="screenshot" alt="Angebot aus Opportunity erstellen" src="{{docs_base_url}}/assets/img/selling/make-quote-from-opp.png">
+<img class="screenshot" alt="Angebot aus Opportunity erstellen" src="/docs/assets/img/selling/make-quote-from-opp.png">
 
 Oder Sie erstellen ein neues Angebot und übernehmen Details aus der Opportunity.
 
-<img class="screenshot" alt="Angebot aus Opportunity erstellen" src="{{docs_base_url}}/assets/img/selling/make-quotation.gif">
+<img class="screenshot" alt="Angebot aus Opportunity erstellen" src="/docs/assets/img/selling/make-quotation.gif">
 
 Ein Angebot enthält Informationen über:
 
@@ -34,12 +34,12 @@
 
 Die Preise, die sie abgeben, hängen von zwei Dingen ab:
 
-* Die Preisliste: Wenn Sie mehrere verschiedene Preislisten haben, können Sie eine Preisliste auswählen oder sie mit dem Kunden markieren (so dass sie automatisch vorselektiert wird). Ihre Artikelpreise werden automatisch über die Preisliste aktualisert. Für weitere Informationen bitte bei [Preisliste]({{docs_base_url}}/user/manual/de/setting-up/price-lists.html) weiterlesen.
+* Die Preisliste: Wenn Sie mehrere verschiedene Preislisten haben, können Sie eine Preisliste auswählen oder sie mit dem Kunden markieren (so dass sie automatisch vorselektiert wird). Ihre Artikelpreise werden automatisch über die Preisliste aktualisert. Für weitere Informationen bitte bei [Preisliste](/docs/user/manual/de/setting-up/price-lists.html) weiterlesen.
 * Die Währung: Wenn Sie einem Kunden in einer anderen Währung anbieten, müssen Sie die Umrechnungsfaktoren aktualisieren um ERPNext in die Lage zu versetzen die Information in Ihrer Standardwährung zu speichern. Das hilft Ihnen dabei den Wert Ihres Angebots in der Standardwährung zu analysieren.
 
 ### Steuern
 
-Um Steuern zu Ihrem Angebot hinzu zu fügen, können Sie entweder eine Steuervorlage oder eine Verkaufssteuern- und Gebühren-Vorlage auswählen oder die Steuern selbst hinzufügen. Um Steuern im Einzelnen zu verstehen, lesen Sie bitte [Steuern]({{docs_base_url}}/user/manual/de/setting-up/setting-up-taxes.html).
+Um Steuern zu Ihrem Angebot hinzu zu fügen, können Sie entweder eine Steuervorlage oder eine Verkaufssteuern- und Gebühren-Vorlage auswählen oder die Steuern selbst hinzufügen. Um Steuern im Einzelnen zu verstehen, lesen Sie bitte [Steuern](/docs/user/manual/de/setting-up/setting-up-taxes.html).
 
 Sie können Steuern auf die gleiche Art hinzufügen wie die Vorlage Verkaufssteuern und Gebühren.
 
diff --git a/erpnext/docs/user/manual/de/selling/sales-order.md b/erpnext/docs/user/manual/de/selling/sales-order.md
index 187aeab..d980518 100644
--- a/erpnext/docs/user/manual/de/selling/sales-order.md
+++ b/erpnext/docs/user/manual/de/selling/sales-order.md
@@ -9,7 +9,7 @@
 
 ### Flußdiagramm des Kundenauftrags
 
-<img class="screenshot" alt="Kundenauftrag aus Angebot erstellen" src="{{docs_base_url}}/assets/img/selling/sales-order-f.jpg">
+<img class="screenshot" alt="Kundenauftrag aus Angebot erstellen" src="/docs/assets/img/selling/sales-order-f.jpg">
 
 Um einen neuen Kundenauftrag zu erstellen gehen Sie zu: > Vertrieb > Kundenauftrag > Neuer Kundenauftrag
 
@@ -17,11 +17,11 @@
 
 Sie können einen Kundenauftrag auch aus einem übertragenen Angebot heraus erstellen.
 
-<img class="screenshot" alt="Kundenauftrag aus Angebot erstellen" src="{{docs_base_url}}/assets/img/selling/make-SO-from-quote.png">
+<img class="screenshot" alt="Kundenauftrag aus Angebot erstellen" src="/docs/assets/img/selling/make-SO-from-quote.png">
 
 Oder Sie erstellen einen neuen Kundenauftrag und entnehmen die Details aus dem Angebot.
 
-<img class="screenshot" alt="Kundenauftrag aus Angebot erstellen" src="{{docs_base_url}}/assets/img/selling/make-so.gif">
+<img class="screenshot" alt="Kundenauftrag aus Angebot erstellen" src="/docs/assets/img/selling/make-so.gif">
 
 Die meisten Informationen im Kundenauftrag sind dieselben wie im Angebot. Einige Dinge möchte der Kundenauftrag aber aktualisiert haben.
 
@@ -60,7 +60,7 @@
 
 ERPNext erstellt automatisch eine neue Bestellung und versendet eine E-Mail-Mitteilung an die E-Mail-Konten, die Sie im Feld "Benachrichtigungs-E-Mail-Adresse" eingestellt haben.
 
-<img class="screenshot" alt="Wiederkehrende Kundenaufträge" src="{{docs_base_url}}/assets/img/selling/recurring-sales-order.png">
+<img class="screenshot" alt="Wiederkehrende Kundenaufträge" src="/docs/assets/img/selling/recurring-sales-order.png">
 
 ### Die nächsten Schritte
 
diff --git a/erpnext/docs/user/manual/de/selling/setup/product-bundle.md b/erpnext/docs/user/manual/de/selling/setup/product-bundle.md
index 30475eb..d97b31d 100644
--- a/erpnext/docs/user/manual/de/selling/setup/product-bundle.md
+++ b/erpnext/docs/user/manual/de/selling/setup/product-bundle.md
@@ -11,7 +11,7 @@
 
 > Vertrieb > Einstellungen > Produkt-Bundle > Neu
 
-<img class="screenshot" alt="Produkt-Bundle" src="{{docs_base_url}}/assets/img/selling/product-bundle.png">
+<img class="screenshot" alt="Produkt-Bundle" src="/docs/assets/img/selling/product-bundle.png">
 
 ### Hauptartikel auswählen
 
@@ -27,7 +27,7 @@
 
 Wenn Vertriebstransaktionen erstellt werden, wie z. B. Ausgangsrechnung, Kundenauftrag und Lieferschein, dann wird der übergeordnete Artikel aus der Hauptartikelliste ausgewählt.
 
-<img class="screenshot" alt="Produkt-Bundle" src="{{docs_base_url}}/assets/img/selling/product-bundle.gif">
+<img class="screenshot" alt="Produkt-Bundle" src="/docs/assets/img/selling/product-bundle.gif">
 
 Beim Auswählen des übergeordneten Artikels aus der Hauptartikelliste werden die Unterartikel aus der Tabelle "Packliste" der Transaktion angezogen. Wenn der Unterartikel ein serialisierter Artikel ist, können Sie seine Seriennummer direkt in der Packlistentabelle angeben. Wenn die Transaktion versendet wird, reduziert das System den Lagerbestand der Unterartikel auf dem Lager der in der Packlistentabelle angegeben ist.
 
diff --git a/erpnext/docs/user/manual/de/selling/setup/sales-partner.md b/erpnext/docs/user/manual/de/selling/setup/sales-partner.md
index 66a95a0..c4d096e 100644
--- a/erpnext/docs/user/manual/de/selling/setup/sales-partner.md
+++ b/erpnext/docs/user/manual/de/selling/setup/sales-partner.md
@@ -13,7 +13,7 @@
 
 Vertriebspartner werden mit einem vom Benutzer vergebenen Namen abgespeichert.
 
-<img class="screenshot" alt="Vertriebspartner" src="{{docs_base_url}}/assets/img/selling/sales-partner.png">
+<img class="screenshot" alt="Vertriebspartner" src="/docs/assets/img/selling/sales-partner.png">
 
 Sie können die Adressen und Kontaktdaten von Vertriebsmitarbeitern erfassen und sie basierend auf Menge und Betrag jeder Artikelgruppe zuweisen.
 
@@ -21,13 +21,13 @@
 
 Um die Namen Ihrer Partner auf Ihrer Webseite anzuzeigen, aktivieren Sie "Auf der Webseite anzeigen". Wenn Sie diese Option anklicken, erscheint ein Feld, über das Sie das Logo Ihres Partners und eine kurze Beschreibung eingeben können.
 
-<img class="screenshot" alt="Vertriebspartner" src="{{docs_base_url}}/assets/img/selling/sales-partner-website.png">
+<img class="screenshot" alt="Vertriebspartner" src="/docs/assets/img/selling/sales-partner-website.png">
 
 Um eine Übersicht Ihrer Partner zu erhalten, gehen Sie zu:
 
 https://example.erpnext.com/Partners
 
-<img class="screenshot" alt="Auflistung der Vertriebspartner" src="{{docs_base_url}}/assets/img/crm/sales-partner-listing.png">
+<img class="screenshot" alt="Auflistung der Vertriebspartner" src="/docs/assets/img/crm/sales-partner-listing.png">
 
 
 {next}
diff --git a/erpnext/docs/user/manual/de/selling/setup/selling-settings.md b/erpnext/docs/user/manual/de/selling/setup/selling-settings.md
index 0e71d41..08492a6 100644
--- a/erpnext/docs/user/manual/de/selling/setup/selling-settings.md
+++ b/erpnext/docs/user/manual/de/selling/setup/selling-settings.md
@@ -3,7 +3,7 @@
 
 In den Vertriebseinstellungen können Sie Eigenheiten angeben, die bei Ihren Vertriebstransaktionen mit berücksichtigt werden. Im Folgenden sprechen wir jeden einzelnen Punkt an.
 
-<img class="screenshot" alt="Vertriebseinstellungen" src="{{docs_base_url}}/assets/img/selling/selling-settings.png">
+<img class="screenshot" alt="Vertriebseinstellungen" src="/docs/assets/img/selling/selling-settings.png">
 
 ### 1\. Benennung der Kunden nach
 
diff --git a/erpnext/docs/user/manual/de/selling/setup/shipping-rule.md b/erpnext/docs/user/manual/de/selling/setup/shipping-rule.md
index fc59f02..8bf609d 100644
--- a/erpnext/docs/user/manual/de/selling/setup/shipping-rule.md
+++ b/erpnext/docs/user/manual/de/selling/setup/shipping-rule.md
@@ -3,6 +3,6 @@
 
 Wenn Sie eine Versandregel verwenden, können Sie die Kosten der Lieferung des Produktes an einen Kunden festlegen. Sie können für den gleichen Artikel für verschiedene Regionen verschiedene Versandregeln definieren.
 
-<img class="screenshot" alt="Versandregel" src="{{docs_base_url}}/assets/img/selling/shipping-rule.png">
+<img class="screenshot" alt="Versandregel" src="/docs/assets/img/selling/shipping-rule.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/de/setting-up/authorization-rule.md b/erpnext/docs/user/manual/de/setting-up/authorization-rule.md
index 7b202f1..bcc5674 100644
--- a/erpnext/docs/user/manual/de/setting-up/authorization-rule.md
+++ b/erpnext/docs/user/manual/de/setting-up/authorization-rule.md
@@ -37,7 +37,7 @@
 
 Geben Sie "Autorisierter Wert" ein. Im Beispiel stellen wir das auf 10.000 Euro ein.
 
-<img class="screenshot" alt="Autorisierungsregel" src="{{docs_base_url}}/assets/img/setup/auth-rule.png">
+<img class="screenshot" alt="Autorisierungsregel" src="/docs/assets/img/setup/auth-rule.png">
 
 Wenn ein Benutzer aus dem Vertrieb versucht eine Kundenbestellung mit einem Wert über 10.000 Euro zu übertragen, dann bekommt er eine Fehlermeldung.
 
diff --git a/erpnext/docs/user/manual/de/setting-up/bar-code.md b/erpnext/docs/user/manual/de/setting-up/bar-code.md
index ec9ac4c..e85c698 100644
--- a/erpnext/docs/user/manual/de/setting-up/bar-code.md
+++ b/erpnext/docs/user/manual/de/setting-up/bar-code.md
@@ -11,7 +11,7 @@
 
 ### Abbildung 1: Markieren Sie das Feld "Artikelbarcode"
 
-<img class="screenshot" alt="Barcode" src="{{docs_base_url}}/assets/img/setup/barcode-1.png">
+<img class="screenshot" alt="Barcode" src="/docs/assets/img/setup/barcode-1.png">
 
 Wenn Sie einen Barcode einlesen wollen, gehen Sie zu:
 
@@ -25,7 +25,7 @@
 
 ### Abbildung 2: Aktivieren Sie das Feld "Ist POS"
 
-<img class="screenshot" alt="Barcode" src="{{docs_base_url}}/assets/img/setup/barcode-2.png">
+<img class="screenshot" alt="Barcode" src="/docs/assets/img/setup/barcode-2.png">
 
 Gehen Sie zu "Artikel" und klicken Sie auf "Neue Zeile einfügen".
 
diff --git a/erpnext/docs/user/manual/de/setting-up/data/bulk-rename.md b/erpnext/docs/user/manual/de/setting-up/data/bulk-rename.md
index c793463..851424a 100644
--- a/erpnext/docs/user/manual/de/setting-up/data/bulk-rename.md
+++ b/erpnext/docs/user/manual/de/setting-up/data/bulk-rename.md
@@ -13,4 +13,4 @@
 
 Um mehrere Datensätze umzubenennen, laden Sie eine CSV-Datei mit den alten Namen in der ersten Spalte und den neuen Namen in der zweiten Spalte hoch indem Sie auf "Hochladen" klicken.
 
-<img class="screenshot" alt="Bulk Rename" src="{{docs_base_url}}/assets/img/setup/data/rename.png">
\ No newline at end of file
+<img class="screenshot" alt="Bulk Rename" src="/docs/assets/img/setup/data/rename.png">
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/de/setting-up/data/data-import-tool.md b/erpnext/docs/user/manual/de/setting-up/data/data-import-tool.md
index 90dc38c..1ea4e48 100644
--- a/erpnext/docs/user/manual/de/setting-up/data/data-import-tool.md
+++ b/erpnext/docs/user/manual/de/setting-up/data/data-import-tool.md
@@ -5,7 +5,7 @@
 
 Um das Werkzeug zum Datenimport zu öffnen, gehen Sie entweder zu den Einstellungen oder zur Transaktion, für die Sie importieren wollen. Wenn der Datenimport erlaubt ist, sehen Sie eine Importschaltfläche:
 
-<img alt="Importvorgang starten" class="screenshot" src="{{docs_base_url}}/assets/img/setup/data-import/data-import-1.png">
+<img alt="Importvorgang starten" class="screenshot" src="/docs/assets/img/setup/data-import/data-import-1.png">
 
 Das Werkzeug hat zwei Abschnitte, einen um eine Vorlage herunter zu laden, und einen zweiten um Daten hoch zu laden.
 
@@ -15,7 +15,7 @@
 
 Daten werden in ERPNext in Tabellen gespeichert, sehr ähnlich einer Tabellenkalkulation mit Spalten und Zeilen voller Daten. Jede Instanz in ERPNext kann mehrere verschiedene mit Ihr verbundene Untertabellen haben. Die Untertabellen sind mit Ihren übergeordneten Tabellen verknüpft und werden dort eingesetzt, wo es für eine Eigenschaft mehrere verschiedene Werte gibt. So kann z. B. ein Artikel mehrere verschiedene Preise haben, eine Rechnung hat mehrere verschiedene Artikel usw.
 
-<img alt="Vorlage herunterladen" class="screenshot" src="{{docs_base_url}}/assets/img/setup/data-import/data-import-2.png">
+<img alt="Vorlage herunterladen" class="screenshot" src="/docs/assets/img/setup/data-import/data-import-2.png">
 
 * Klicken Sie auf die Tabelle, die Sie herunter laden wollen, oder auf "Alle Tabellen".
 * Für Massenbearbeitung klicken Sie auf "Mit Daten herunterladen".
@@ -24,17 +24,17 @@
 
 Öffnen Sie die Vorlage nach dem Herunterladen in einer Tabellenkalkulationsanwendung und fügen Sie die Daten unterhalb der Spaltenköpfe ein.
 
-![Tabellenblatt]({{docs_base_url}}/assets/old_images/erpnext/import-3.png)
+![Tabellenblatt](/docs/assets/old_images/erpnext/import-3.png)
 
 Exportieren Sie dann Ihre Vorlage oder speichern Sie sie im CSV-Format (**Comma Separated Values**).
 
-![Tabellenblatt]({{docs_base_url}}/assets/old_images/erpnext/import-4.png)
+![Tabellenblatt](/docs/assets/old_images/erpnext/import-4.png)
 
 ### 3. Hochladen der CSV-Datei
 
 Fügen Sie abschliessend die CSV-Datei im Abschnitt Import hinzu. Klicken Sie auf die Schaltfläche "Hochladen und Importieren".
 
-<img alt="Upload" class="screenshot" src="{{docs_base_url}}/assets/img/setup/data-import/data-import-3.png">
+<img alt="Upload" class="screenshot" src="/docs/assets/img/setup/data-import/data-import-3.png">
 
 #### Anmerkungen
 
diff --git a/erpnext/docs/user/manual/de/setting-up/email/email-account.md b/erpnext/docs/user/manual/de/setting-up/email/email-account.md
index e2923f6..1a315d2 100644
--- a/erpnext/docs/user/manual/de/setting-up/email/email-account.md
+++ b/erpnext/docs/user/manual/de/setting-up/email/email-account.md
@@ -11,7 +11,7 @@
 
 Es gibt zwei Arten von E-Mail-Konten, ausgehend und eingehend. E-Mail-Konten für ausgehende E-Mails verwenden einen SMTP-Service, eingehende E-Mails verwenden einen POP-Service. Die meisten E-Mail-Anbieter wie GMail, Outlook oder Yahoo bieten diese Seriveleistungen an.
 
-<img class="screenshot" alt="Kriterien definieren" src="{{docs_base_url}}/assets/img/setup/email/email-account-list.png">
+<img class="screenshot" alt="Kriterien definieren" src="/docs/assets/img/setup/email/email-account-list.png">
 
 ### Konten zu ausgehenden E-Mails
 
@@ -19,13 +19,13 @@
 
 Um ein Konto für ausgehende E-Mails einzurichten, markieren Sie die Option **Ausgehend aktivieren** und geben Sie die Einstellungen zum SMTP-Server an. Wenn Sie einen bekannten E-Mail-Service nutzen, wird das vom System für Sie voreingestellt.
 
-<img class="screenshot" alt="Ausgehende E-Mails" src="{{docs_base_url}}/assets/img/setup/email/email-account-sending.png">
+<img class="screenshot" alt="Ausgehende E-Mails" src="/docs/assets/img/setup/email/email-account-sending.png">
 
 ### Konten zu eingehenden E-Mails
 
 Um ein Konto für eingehende E-Mails einzurichten, markieren Sie die Option **Eingehend aktivieren** und geben Sie die Einstellungen zum POP3-Server an. Wenn Sie einen bekannten E-Mail-Service nutzen, wird das vom System für Sie voreingestellt.
 
-<img class="screenshot" alt="Eingehende E-Mails" src="{{docs_base_url}}/assets/img/setup/email/email-account-incoming.png">
+<img class="screenshot" alt="Eingehende E-Mails" src="/docs/assets/img/setup/email/email-account-incoming.png">
 
 ### Wie ERPNext Antworten handhabt
 
@@ -35,6 +35,6 @@
 
 Wenn Sie möchten, dass ERPNext Sie benachrichtigt, wenn eine E-Mail für eine bestimmte Zeit unbeantwortet bleibt, dann können Sie die Option **Benachrichtigen, wenn unbeantwortet** markieren. Hier können Sie die Anzahl der Minuten einstellen, die das System warten soll, bevor eine Benachrichtigung gesendet wird, und den Empfänger.
 
-<img class="screenshot" alt="Eingehende Email" src="{{docs_base_url}}/assets/img/setup/email/email-account-unreplied.png">
+<img class="screenshot" alt="Eingehende Email" src="/docs/assets/img/setup/email/email-account-unreplied.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/de/setting-up/email/email-alerts.md b/erpnext/docs/user/manual/de/setting-up/email/email-alerts.md
index 58f6fe3..c965c9b 100644
--- a/erpnext/docs/user/manual/de/setting-up/email/email-alerts.md
+++ b/erpnext/docs/user/manual/de/setting-up/email/email-alerts.md
@@ -32,7 +32,7 @@
 ---
 
 #### Beispiel
-1. [Kriterien definieren](<img class="screenshot" src="{{docs_base_url}}/assets/img/setup/email/email-alert-1.png">)
-2. [Empfänger und Nachrichtentext eingeben](<img class="screenshot" src="{{docs_base_url}}/assets/img/setup/email/email-alert-2.png">)
+1. [Kriterien definieren](<img class="screenshot" src="/docs/assets/img/setup/email/email-alert-1.png">)
+2. [Empfänger und Nachrichtentext eingeben](<img class="screenshot" src="/docs/assets/img/setup/email/email-alert-2.png">)
 
 {next}
diff --git a/erpnext/docs/user/manual/de/setting-up/email/email-digest.md b/erpnext/docs/user/manual/de/setting-up/email/email-digest.md
index 18117a3..9199ee2 100644
--- a/erpnext/docs/user/manual/de/setting-up/email/email-digest.md
+++ b/erpnext/docs/user/manual/de/setting-up/email/email-digest.md
@@ -13,6 +13,6 @@
 
 Stellen Sie ein, wie oft Sie eine Benachrichtigung erhalten wollen, markieren Sie alle Artikel, über die Sie in Ihrer wöchentlichen Aktualisierung benachrichtig werden wollen und wählen Sie die Benutzer-IDs aus, an die die Zusammenfassung gesendet werden soll.
 
-<img class="screenshot" alt="E-Mail-Bericht" src="{{docs_base_url}}/assets/img/setup/email/email-digest.png">
+<img class="screenshot" alt="E-Mail-Bericht" src="/docs/assets/img/setup/email/email-digest.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/de/setting-up/email/sending-email.md b/erpnext/docs/user/manual/de/setting-up/email/sending-email.md
index d2087ca..e1f23b9 100644
--- a/erpnext/docs/user/manual/de/setting-up/email/sending-email.md
+++ b/erpnext/docs/user/manual/de/setting-up/email/sending-email.md
@@ -3,8 +3,8 @@
 
 In ERPNext können sie jedes beliebige Dokument per E-Mail versenden (als PDF-Anhang) indem Sie in einem beliebigen geöffneten Dokument auf `Menü > E-Mail` gehen.
 
-<img class="screenshot" alt="Emails versenden" src="{{docs_base_url}}/assets/img/setup/email/send-email.gif">
+<img class="screenshot" alt="Emails versenden" src="/docs/assets/img/setup/email/send-email.gif">
 
-**Anmerkung:** Es müssen Konten zum [E-Mail-Versand]({{docs_base_url}}/user/manual/de/setting-up/email/email-account.html) eingerichtet sein.
+**Anmerkung:** Es müssen Konten zum [E-Mail-Versand](/docs/user/manual/de/setting-up/email/email-account.html) eingerichtet sein.
 
 {next}
diff --git a/erpnext/docs/user/manual/de/setting-up/pos-setting.md b/erpnext/docs/user/manual/de/setting-up/pos-setting.md
index 1849911..b75f96c 100644
--- a/erpnext/docs/user/manual/de/setting-up/pos-setting.md
+++ b/erpnext/docs/user/manual/de/setting-up/pos-setting.md
@@ -9,7 +9,7 @@
 
 Setzen Sie die Standardeinstellungen wie definiert.
 
-<img class="screenshot" alt="POS-Einstellungen" src="{{docs_base_url}}/assets/img/pos-setting/pos-setting.png">
+<img class="screenshot" alt="POS-Einstellungen" src="/docs/assets/img/pos-setting/pos-setting.png">
 
 > Wichtig: Wenn Sie einen bestimmten Benutzer angeben, werden die POS-Einstellungen nur auf diesen Benutzer angewendet. Wenn diese Optin leer bleibt, werden die Einstellungen auf alle Benutzer angewendet. Um mehr über POS zu erfahren, gehen Sie zu POS.
 
diff --git a/erpnext/docs/user/manual/de/setting-up/price-lists.md b/erpnext/docs/user/manual/de/setting-up/price-lists.md
index b58e191..6fc5f08 100644
--- a/erpnext/docs/user/manual/de/setting-up/price-lists.md
+++ b/erpnext/docs/user/manual/de/setting-up/price-lists.md
@@ -11,7 +11,7 @@
 
 > Vertrieb/Einkauf/Lagerbestand > Einstellungen > Preisliste > Neu
 
-<img class="screenshot" alt="Preisliste" src="{{docs_base_url}}/assets/img/price-list/price-list.png">
+<img class="screenshot" alt="Preisliste" src="/docs/assets/img/price-list/price-list.png">
 
 * Diese Preislisten werden verwendet, wenn der Datensatz zum Artikelpreis erstellt wird, um den Verkaufs- oder Einkaufspreis eines Artikels nachvollziehen zu können. Klicken Sie hier, wenn Sie mehr über Artikelpreise erfahren wollen.
 * Um eine bestimmte Preisliste zu deaktivieren, deaktivieren Sie das Feld "Aktiviert" im der Preisliste. Die deaktivierte Preisliste ist dann in der Auswahl nicht mehr in Verkaufs- oder Einkaufstransaktionen verfügbar.
diff --git a/erpnext/docs/user/manual/de/setting-up/print/address-template.md b/erpnext/docs/user/manual/de/setting-up/print/address-template.md
index b3f37f7..0622e0c 100644
--- a/erpnext/docs/user/manual/de/setting-up/print/address-template.md
+++ b/erpnext/docs/user/manual/de/setting-up/print/address-template.md
@@ -28,6 +28,6 @@
 
 ### Beispiel
 
-<img class="screenshot" alt="Adressvorlage" src="{{docs_base_url}}/assets/img/setup/print/address-format.png">
+<img class="screenshot" alt="Adressvorlage" src="/docs/assets/img/setup/print/address-format.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/de/setting-up/print/letter-head.md b/erpnext/docs/user/manual/de/setting-up/print/letter-head.md
index cc05b85..e08da28 100644
--- a/erpnext/docs/user/manual/de/setting-up/print/letter-head.md
+++ b/erpnext/docs/user/manual/de/setting-up/print/letter-head.md
@@ -15,10 +15,10 @@
 
 #### Beispiel
 
-<img class="screenshot" alt="Briefkopf" src="{{docs_base_url}}/assets/img/setup/print/letter-head.png">
+<img class="screenshot" alt="Briefkopf" src="/docs/assets/img/setup/print/letter-head.png">
 
 So sieht der Briefkopf eines Ausdruckes aus:
 
-<img class="screenshot" alt="Briefkopf" src="{{docs_base_url}}/assets/img/setup/print/letter-head-1.png">
+<img class="screenshot" alt="Briefkopf" src="/docs/assets/img/setup/print/letter-head-1.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/de/setting-up/print/print-format-builder.md b/erpnext/docs/user/manual/de/setting-up/print/print-format-builder.md
index e4236ae..14ba200 100644
--- a/erpnext/docs/user/manual/de/setting-up/print/print-format-builder.md
+++ b/erpnext/docs/user/manual/de/setting-up/print/print-format-builder.md
@@ -11,19 +11,19 @@
 
 ### Schritt 1: Erstellen Sie ein neues Format
 
-<img class="screenshot" alt="E-Mail senden" src="{{docs_base_url}}/assets/img/setup/print/print-format-builder-1.gif">
+<img class="screenshot" alt="E-Mail senden" src="/docs/assets/img/setup/print/print-format-builder-1.gif">
 
 ### Schritt 2: Ein neues Feld hinzufügen
 
 Um ein Feld hinzuzufügen, nehmen Sie es auf der linken Seitenleiste mit der Maus auf und fügen Sie es Ihrem Layout hinzu. Sie können das Layout bearbeiten, indem Sie auf das Symbol für Einstellungen klicken.
 
-<img class="screenshot" alt="E-Mail senden" src="{{docs_base_url}}/assets/img/setup/print/print-format-builder-2.gif">
+<img class="screenshot" alt="E-Mail senden" src="/docs/assets/img/setup/print/print-format-builder-2.gif">
 
 ### Schritt 3: Ein Feld entfernen
 
 Um ein Feld zu entfernen, legen Sie es einfach zurück in die Seitenleiste.
 
-<img class="screenshot" alt="E-Mail senden" src="{{docs_base_url}}/assets/img/setup/print/print-format-builder-3.gif">
+<img class="screenshot" alt="E-Mail senden" src="/docs/assets/img/setup/print/print-format-builder-3.gif">
 
 ### Schritt 4 
 
@@ -31,7 +31,7 @@
 
 Klicken Sie dann auf **HTML bearbeiten** um den Inhalt zu bearbeiten.
 
-<img class="screenshot" alt="E-Mail senden" src="{{docs_base_url}}/assets/img/setup/print/print-format-builder-4.gif">
+<img class="screenshot" alt="E-Mail senden" src="/docs/assets/img/setup/print/print-format-builder-4.gif">
 
 Um Ihr Format abzuspeichern klicken Sie einfach auf die Schaltfläche **Speichern**.
 
diff --git a/erpnext/docs/user/manual/de/setting-up/print/print-headings.md b/erpnext/docs/user/manual/de/setting-up/print/print-headings.md
index cf6b48a..b695a3c 100644
--- a/erpnext/docs/user/manual/de/setting-up/print/print-headings.md
+++ b/erpnext/docs/user/manual/de/setting-up/print/print-headings.md
@@ -9,10 +9,10 @@
 
 #### Abbildung 1: Druckköpfe abspeichern
 
-<img class="screenshot" alt="Druckköpfe" src="{{docs_base_url}}/assets/img/setup/print/print-heading.png">
+<img class="screenshot" alt="Druckköpfe" src="/docs/assets/img/setup/print/print-heading.png">
 
 Hier ist ein Beispiel abgebildet, wie man einen Druckkopf auswechselt:
 
-<img class="screenshot" alt="Druckköpfe" src="{{docs_base_url}}/assets/img/setup/print/print-heading-1.png">
+<img class="screenshot" alt="Druckköpfe" src="/docs/assets/img/setup/print/print-heading-1.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/de/setting-up/print/print-settings.md b/erpnext/docs/user/manual/de/setting-up/print/print-settings.md
index 7dc8067..995edd6 100644
--- a/erpnext/docs/user/manual/de/setting-up/print/print-settings.md
+++ b/erpnext/docs/user/manual/de/setting-up/print/print-settings.md
@@ -7,6 +7,6 @@
 
 > Einstellungen > Druck > Druckeinstellungen
 
-<img class="screenshot" alt="Druckeinstellungen" src="{{docs_base_url}}/assets/img/setup/print/print-settings.png">
+<img class="screenshot" alt="Druckeinstellungen" src="/docs/assets/img/setup/print/print-settings.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/de/setting-up/print/terms-and-conditions.md b/erpnext/docs/user/manual/de/setting-up/print/terms-and-conditions.md
index 718fcc2..071d757 100644
--- a/erpnext/docs/user/manual/de/setting-up/print/terms-and-conditions.md
+++ b/erpnext/docs/user/manual/de/setting-up/print/terms-and-conditions.md
@@ -9,13 +9,13 @@
 
 > Vertrieb > Einstellungen > Vorlage für Allgemeine Geschäftsbedingungen > Neu
 
-<img class="screenshot" alt="Geschäftsbedingungen" src="{{docs_base_url}}/assets/img/setup/print/terms-1.png">
+<img class="screenshot" alt="Geschäftsbedingungen" src="/docs/assets/img/setup/print/terms-1.png">
 
 ### 2\. Bearbeitung in HTML
 
 Der Inhalt der Allgemeinen Geschäftsbedingungen kann nach Ihren Vorstellungen formatiert werden und es können bei Bedarf auch Bilder eingefügt werden. Für diejenigen, die sich in HTML auskennen, findet Sich auch eine Möglichkeit den Inhalt der Allgemeinen Geschäftsbedingungen in HTML zu formatieren.
 
-<img class="screenshot" alt="Geschäfsbedingungen - HTML bearbeiten" src="{{docs_base_url}}/assets/img/setup/print/terms-2.png">
+<img class="screenshot" alt="Geschäfsbedingungen - HTML bearbeiten" src="/docs/assets/img/setup/print/terms-2.png">
 
 Dies erlaubt es Ihnen auch die Vorlage für die Allgemeinen Geschäftsbedingungen als Fußzeile zu verwenden, was sonst in ERPNext nicht als dedizierte Funktionalität zur Verfügung steht. Da die Inhalte der Allgemeinen Geschäftsbedingungen im Druckformat immer zuletzt erscheinen, sollten die Einzelheiten zur Fußzeile am Ende des Inhaltes eingefügt werden.
 
@@ -23,6 +23,6 @@
 
 In Transaktionen finden Sie den Abschnitt Allgemeine Geschäftsbedingungen, wo Sie nach einer Vorlage für die Allgemeinen Geschäftsbedingungen suchen und diese auswählen können.
 
-<img class="screenshot" alt="Geschäfsbedingungen - Im Dokument auswählen" src="{{docs_base_url}}/assets/img/setup/print/terms-3.png">
+<img class="screenshot" alt="Geschäfsbedingungen - Im Dokument auswählen" src="/docs/assets/img/setup/print/terms-3.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/de/setting-up/setting-up-taxes.md b/erpnext/docs/user/manual/de/setting-up/setting-up-taxes.md
index 612cf9a..4f45dfc 100644
--- a/erpnext/docs/user/manual/de/setting-up/setting-up-taxes.md
+++ b/erpnext/docs/user/manual/de/setting-up/setting-up-taxes.md
@@ -13,11 +13,11 @@
 
 Die Tabelle zu den Artikelsteuern ist ein Abschnitt in den Artikelstammdaten.
 
-<img class="screenshot" alt="Artikelsteuer" src="{{docs_base_url}}/assets/img/taxes/item-tax.png">
+<img class="screenshot" alt="Artikelsteuer" src="/docs/assets/img/taxes/item-tax.png">
 
 * **Inklusive oder Exklusive Steuer:** ERPNext erlaubt es Ihnen Artikelpreise inklusive Steuer einzugeben.
 
-<img class="screenshot" alt="Steuer inklusive" src="{{docs_base_url}}/assets/img/taxes/inclusive-tax.png">
+<img class="screenshot" alt="Steuer inklusive" src="/docs/assets/img/taxes/inclusive-tax.png">
 
 * **Ausnahme von der Regel:** Die Einstellungen zur Artikelsteuer werden nur dann benötigt, wenn sich der Steuersatz eines bestimmten Artikels von demjenigen, den Sie im Standard-Steuerkonto definiert haben, unterscheidet.
 * **Die Artikelsteuer kann überschrieben werden:** Sie können den Artikelsteuersatz überschreiben oder ändern, wenn Sie in der Artikelsteuertabelle zu den Artikelstammdaten gehen.
@@ -34,7 +34,7 @@
 
 > Einstellungen > Rechnungswesen > Vorlage für Verkaufssteuern und -abgaben
 
-<img class="screenshot" alt="Vorlage für Verkaufssteuern" src="{{docs_base_url}}/assets/img/taxes/sales-tax-master.png">
+<img class="screenshot" alt="Vorlage für Verkaufssteuern" src="/docs/assets/img/taxes/sales-tax-master.png">
 
 Wenn Sie eine neue Vorlage erstellen, müssen Sie für jeden Steuertyp eine neue Zeile einfügen.
 
diff --git a/erpnext/docs/user/manual/de/setting-up/settings/global-defaults.md b/erpnext/docs/user/manual/de/setting-up/settings/global-defaults.md
index 44ec38e..ef9bc22 100644
--- a/erpnext/docs/user/manual/de/setting-up/settings/global-defaults.md
+++ b/erpnext/docs/user/manual/de/setting-up/settings/global-defaults.md
@@ -7,6 +7,6 @@
 
 Immer dann, wenn ein neues Dokument erstellt wird, werden diese Werte als Standardeinstellungen verwendet.
 
-<img class="screenshot" alt="Globale Voreinstellungen" src="{{docs_base_url}}/assets/img/setup/settings/global-defaults.png">
+<img class="screenshot" alt="Globale Voreinstellungen" src="/docs/assets/img/setup/settings/global-defaults.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/de/setting-up/settings/module-settings.md b/erpnext/docs/user/manual/de/setting-up/settings/module-settings.md
index 996f3dc..8aaf923 100644
--- a/erpnext/docs/user/manual/de/setting-up/settings/module-settings.md
+++ b/erpnext/docs/user/manual/de/setting-up/settings/module-settings.md
@@ -11,6 +11,6 @@
 
 Markieren oder demarkieren Sie die Elemente die angezeigt / ausgeblendet werden sollen.
 
-<img class="screenshot" alt="Moduleinstellungen" src="{{docs_base_url}}/assets/img/setup/settings/show-hide-modules.png">
+<img class="screenshot" alt="Moduleinstellungen" src="/docs/assets/img/setup/settings/show-hide-modules.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/de/setting-up/settings/naming-series.md b/erpnext/docs/user/manual/de/setting-up/settings/naming-series.md
index 1a6f336..0c66c5e 100644
--- a/erpnext/docs/user/manual/de/setting-up/settings/naming-series.md
+++ b/erpnext/docs/user/manual/de/setting-up/settings/naming-series.md
@@ -33,6 +33,6 @@
 
 Sehen Sie hier, wie der Nummernkreis eingestellt wird.
 
-<img class="screenshot" alt="Nummernkreise" src="{{docs_base_url}}/assets/img/setup/settings/naming-series.gif">
+<img class="screenshot" alt="Nummernkreise" src="/docs/assets/img/setup/settings/naming-series.gif">
 
 {next}
diff --git a/erpnext/docs/user/manual/de/setting-up/settings/system-settings.md b/erpnext/docs/user/manual/de/setting-up/settings/system-settings.md
index 856d016..d804901 100644
--- a/erpnext/docs/user/manual/de/setting-up/settings/system-settings.md
+++ b/erpnext/docs/user/manual/de/setting-up/settings/system-settings.md
@@ -7,6 +7,6 @@
 
 > Einstellungen > Einstellungen > Systemeinstellungen
 
-<img class="screenshot" alt="Systemeinstellungen" src="{{docs_base_url}}/assets/img/setup/settings/system-settings.png">
+<img class="screenshot" alt="Systemeinstellungen" src="/docs/assets/img/setup/settings/system-settings.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/de/setting-up/setup-wizard/step-1-language.md b/erpnext/docs/user/manual/de/setting-up/setup-wizard/step-1-language.md
index 0fc2a1f..eb37836 100644
--- a/erpnext/docs/user/manual/de/setting-up/setup-wizard/step-1-language.md
+++ b/erpnext/docs/user/manual/de/setting-up/setup-wizard/step-1-language.md
@@ -3,7 +3,7 @@
 
 Wählen Sie Ihre Sprache. ERPNext gibt es in mehr als 20 Sprachen.
 
-<img alt="Sprache" class="screenshot" src="{{docs_base_url}}/assets/img/setup-wizard/step-1.png">
+<img alt="Sprache" class="screenshot" src="/docs/assets/img/setup-wizard/step-1.png">
 
 ---
 
diff --git a/erpnext/docs/user/manual/de/setting-up/setup-wizard/step-10-item.md b/erpnext/docs/user/manual/de/setting-up/setup-wizard/step-10-item.md
index 3b6d1ac..6116247 100644
--- a/erpnext/docs/user/manual/de/setting-up/setup-wizard/step-10-item.md
+++ b/erpnext/docs/user/manual/de/setting-up/setup-wizard/step-10-item.md
@@ -4,7 +4,7 @@
 In diesem letzten Schritt geben Sie bitte die Bezeichnungen der Artikel ein, die Sie kaufen oder verkaufen.
 
 <img alt="Artikel hinzufügen" class="screenshot"
-src="{{docs_base_url}}/assets/img/setup-wizard/step-10.png">
+src="/docs/assets/img/setup-wizard/step-10.png">
 
 Bitte stellen Sie auch die Artikelart (Produkt oder Dienstleistung) und die Standardmaßeinheit ein. Machen Sie sich keine Sorgen, Sie können das alles später noch bearbeiten.
 
diff --git a/erpnext/docs/user/manual/de/setting-up/setup-wizard/step-2-currency-and-timezone.md b/erpnext/docs/user/manual/de/setting-up/setup-wizard/step-2-currency-and-timezone.md
index be327ae..5387b0a 100644
--- a/erpnext/docs/user/manual/de/setting-up/setup-wizard/step-2-currency-and-timezone.md
+++ b/erpnext/docs/user/manual/de/setting-up/setup-wizard/step-2-currency-and-timezone.md
@@ -3,7 +3,7 @@
 
 Stellen Sie den Namen Ihres Landes, die Währung und die Zeitzone ein.
 
-<img alt="Währung" class="screenshot" src="{{docs_base_url}}/assets/img/setup-wizard/step-2.png">
+<img alt="Währung" class="screenshot" src="/docs/assets/img/setup-wizard/step-2.png">
 
 ---
 
diff --git a/erpnext/docs/user/manual/de/setting-up/setup-wizard/step-3-user-details.md b/erpnext/docs/user/manual/de/setting-up/setup-wizard/step-3-user-details.md
index 2d1789d..97b246d 100644
--- a/erpnext/docs/user/manual/de/setting-up/setup-wizard/step-3-user-details.md
+++ b/erpnext/docs/user/manual/de/setting-up/setup-wizard/step-3-user-details.md
@@ -4,7 +4,7 @@
 Geben Sie Details zum Benutzerprofil, wie Name, Benutzer-ID und das bevorzugte Passwort ein.
 
 <img alt="Benutzer" class="screenshot"
-src="{{docs_base_url}}/assets/img/setup-wizard/step-3.png">
+src="/docs/assets/img/setup-wizard/step-3.png">
 
 ---
 
diff --git a/erpnext/docs/user/manual/de/setting-up/setup-wizard/step-4-company-details.md b/erpnext/docs/user/manual/de/setting-up/setup-wizard/step-4-company-details.md
index 4c131b5..aca7823 100644
--- a/erpnext/docs/user/manual/de/setting-up/setup-wizard/step-4-company-details.md
+++ b/erpnext/docs/user/manual/de/setting-up/setup-wizard/step-4-company-details.md
@@ -4,7 +4,7 @@
 Geben Sie Details zum Unternehmen wie Name, Kürzel und Geschäftsjahr ein.
 
 <img alt="Unternehmensdetails" class="screenshot"
-src="{{docs_base_url}}/assets/img/setup-wizard/step-4.png">
+src="/docs/assets/img/setup-wizard/step-4.png">
 
 ---
 
diff --git a/erpnext/docs/user/manual/de/setting-up/setup-wizard/step-5-letterhead-and-logo.md b/erpnext/docs/user/manual/de/setting-up/setup-wizard/step-5-letterhead-and-logo.md
index f32815d..d8a5c0d 100644
--- a/erpnext/docs/user/manual/de/setting-up/setup-wizard/step-5-letterhead-and-logo.md
+++ b/erpnext/docs/user/manual/de/setting-up/setup-wizard/step-5-letterhead-and-logo.md
@@ -4,7 +4,7 @@
 Fügen Sie einen Firmenbriefkopf und ein Firmenlogo hinzu.
 
 <img alt="Firmenlogo und Briefkopf" class="screenshot"
-src="{{docs_base_url}}/assets/img/setup-wizard/step-5.png">
+src="/docs/assets/img/setup-wizard/step-5.png">
 
 ---
 
@@ -15,7 +15,7 @@
 
 Wenn Ihr Briefkopf noch nicht fertig ist, können Sie diesen Schritt auch überspringen.
 
-Um später einen Briefkopf über das Modul "Einstellungen" auszuwählen, lesen Sie im Bereich [Briefkopf]({{docs_base_url}}/user/manual/de/setting-up/print/letter-head.html) weiter.
+Um später einen Briefkopf über das Modul "Einstellungen" auszuwählen, lesen Sie im Bereich [Briefkopf](/docs/user/manual/de/setting-up/print/letter-head.html) weiter.
 
 ### Anhang als Internetverknüpfung
 
diff --git a/erpnext/docs/user/manual/de/setting-up/setup-wizard/step-6-add-users.md b/erpnext/docs/user/manual/de/setting-up/setup-wizard/step-6-add-users.md
index 692bb20..07832e1 100644
--- a/erpnext/docs/user/manual/de/setting-up/setup-wizard/step-6-add-users.md
+++ b/erpnext/docs/user/manual/de/setting-up/setup-wizard/step-6-add-users.md
@@ -4,6 +4,6 @@
 Fügen Sie weitere Benutzer hinzu und teilen Sie ihnen gemäß Ihren Verantwortungsbereichen am Arbeitsplatz Rollen zu.
 
 <img alt="Benutzer" class="screenshot"
-src="{{docs_base_url}}/assets/img/setup-wizard/step-6.png">
+src="/docs/assets/img/setup-wizard/step-6.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/de/setting-up/setup-wizard/step-7-tax-details.md b/erpnext/docs/user/manual/de/setting-up/setup-wizard/step-7-tax-details.md
index 76f1538..edf6476 100644
--- a/erpnext/docs/user/manual/de/setting-up/setup-wizard/step-7-tax-details.md
+++ b/erpnext/docs/user/manual/de/setting-up/setup-wizard/step-7-tax-details.md
@@ -4,7 +4,7 @@
 Geben Sie bis zu drei Steuerarten an, die Sie regelmäßig in Bezug auf Ihr Gehalt zahlen. Dieser Assistent erstellt eine Steuervorlage, die die Steuren für jede Steuerart berechnet.
 
 <img alt="Steuerdetails" class="screenshot"
-src="{{docs_base_url}}/assets/img/setup-wizard/step-7.png">
+src="/docs/assets/img/setup-wizard/step-7.png">
 
 Geben Sie einfach den Namen der Steuerart und den Steuersatz ein.
 
@@ -18,6 +18,6 @@
 
 Das Anliegen der Mehrwertsteuer ist es, für den Staat ähnlich der Körperschaftssteuer und der Einkommensteuer Steuererträge zu generieren. Beispiel: Wenn Sie in einem Kaufhaus einkaufen schlägt Ihnen das Geschäft 19% als Mehrwertsteuer auf die Rechnung auf.
 
-Um im Einstellungsassistenten die Mehrwertsteuer einzustellen, geben Sie einfach den Prozentsatz der vom Staat erhoben wird, ein. Um die Mehrwertsteuer zu einem späteren Zeitpunkt einzustellen, lesen Sie bitte den Abschnitt [Einstellen von Steuern]({{docs_base_url}}/user/manual/de/setting-up/setting-up-taxes.html).
+Um im Einstellungsassistenten die Mehrwertsteuer einzustellen, geben Sie einfach den Prozentsatz der vom Staat erhoben wird, ein. Um die Mehrwertsteuer zu einem späteren Zeitpunkt einzustellen, lesen Sie bitte den Abschnitt [Einstellen von Steuern](/docs/user/manual/de/setting-up/setting-up-taxes.html).
 
 {next}
diff --git a/erpnext/docs/user/manual/de/setting-up/setup-wizard/step-8-customer-names.md b/erpnext/docs/user/manual/de/setting-up/setup-wizard/step-8-customer-names.md
index 69fed2b..4525c34 100644
--- a/erpnext/docs/user/manual/de/setting-up/setup-wizard/step-8-customer-names.md
+++ b/erpnext/docs/user/manual/de/setting-up/setup-wizard/step-8-customer-names.md
@@ -4,7 +4,7 @@
 Geben Sie die Namen Ihrer Kunden und die Kontaktpersonen ein.
 
 <img alt="Customers" class="screenshot"
-src="{{docs_base_url}}/assets/img/setup-wizard/step-8.png">
+src="/docs/assets/img/setup-wizard/step-8.png">
 
 ---
 
@@ -18,6 +18,6 @@
 
 Kontaktname: Shiv Agarwal
 
-Um mehr über Kunden zu erfahren, lesen Sie im Abschnitt [Details zu Kunden]({{docs_base_url}}/user/manual/de/CRM/customer.html) nach.
+Um mehr über Kunden zu erfahren, lesen Sie im Abschnitt [Details zu Kunden](/docs/user/manual/de/CRM/customer.html) nach.
 
 {next}
diff --git a/erpnext/docs/user/manual/de/setting-up/setup-wizard/step-9-suppliers.md b/erpnext/docs/user/manual/de/setting-up/setup-wizard/step-9-suppliers.md
index 7d398b5..2769879 100644
--- a/erpnext/docs/user/manual/de/setting-up/setup-wizard/step-9-suppliers.md
+++ b/erpnext/docs/user/manual/de/setting-up/setup-wizard/step-9-suppliers.md
@@ -4,10 +4,10 @@
 Geben Sie ein paar Namen Ihrer Lieferanten ein.
 
 <img alt="Lieferanten" class="screenshot"
-src="{{docs_base_url}}/assets/img/setup-wizard/step-9.png">
+src="/docs/assets/img/setup-wizard/step-9.png">
 
 ---
 
-Um den Begriff "Lieferant" besser zu verstehen, lesen Sie unter [Lieferantenstammdaten]({{docs_base_url}}/user/manual/de/buying/supplier.html) nach.
+Um den Begriff "Lieferant" besser zu verstehen, lesen Sie unter [Lieferantenstammdaten](/docs/user/manual/de/buying/supplier.html) nach.
 
 {next}
diff --git a/erpnext/docs/user/manual/de/setting-up/sms-setting.md b/erpnext/docs/user/manual/de/setting-up/sms-setting.md
index 1bcc058..0a1e73b 100644
--- a/erpnext/docs/user/manual/de/setting-up/sms-setting.md
+++ b/erpnext/docs/user/manual/de/setting-up/sms-setting.md
@@ -10,7 +10,7 @@
     
     http://instant.smses.com/web2sms.php?username=<USERNAME>&password;=<PASSWORD>&to;=<MOBILENUMBER>&sender;=<SENDERID>&message;=<MESSAGE>
     
-<img class="screenshot" alt="SMS-Einstellungen" src="{{docs_base_url}}/assets/img/setup/sms-settings2.jpg">
+<img class="screenshot" alt="SMS-Einstellungen" src="/docs/assets/img/setup/sms-settings2.jpg">
 
 
 > Anmerkung: Die Zeichenfolge bis zum "?" ist die URL des SMS-Gateways.
@@ -23,7 +23,7 @@
 
 Beachten Sie, dass einige Parameter in der URL statisch sind. Sie bekommen von Ihrem SMS-Anbieter statische Werte wie Benutzername, Passwort usw. Diese statischen Werte sollten in die Tabelle der statischen Parameter eingetragen werden.
 
-<img class="screenshot" alt="SMS-Einstellungen" src="{{docs_base_url}}/assets/img/setup/sms-settings1.png">
+<img class="screenshot" alt="SMS-Einstellungen" src="/docs/assets/img/setup/sms-settings1.png">
 
 
 {next}
diff --git a/erpnext/docs/user/manual/de/setting-up/stock-reconciliation-for-non-serialized-item.md b/erpnext/docs/user/manual/de/setting-up/stock-reconciliation-for-non-serialized-item.md
index 01f2281..a1c8dbb 100644
--- a/erpnext/docs/user/manual/de/setting-up/stock-reconciliation-for-non-serialized-item.md
+++ b/erpnext/docs/user/manual/de/setting-up/stock-reconciliation-for-non-serialized-item.md
@@ -23,18 +23,18 @@
 
 Sie sollten sich an eine spezielle Vorlage eines Tabellenblattes halten um den Bestand und den Wert eines Artikels zu importieren. Öffnen Sie ein neues Formular zum Bestandsabgleich um die Optionen für den Download zu sehen.
 
-<img class="screenshot" alt="Bestandsabgleich" src="{{docs_base_url}}/assets/img/setup/stock-recon-1.png">
+<img class="screenshot" alt="Bestandsabgleich" src="/docs/assets/img/setup/stock-recon-1.png">
 
 #### Schritt 2: Geben Sie Daten in die CSV-Datei ein.
 
-<img class="screenshot" alt="Bestandsabgleich" src="{{docs_base_url}}/assets/img/setup/stock-reco-data.png">
+<img class="screenshot" alt="Bestandsabgleich" src="/docs/assets/img/setup/stock-reco-data.png">
 
 Das CSV-Format beachtet Groß- und Kleinschreibung. Verändern Sie nicht die Kopfbezeichnungen, die in der Vorlage vordefiniert wurden. In den Spalten "Artikelnummer" und "Lager" geben Sie bitte die richtige Artikelnummer und das Lager ein, so wie es in ERPNext bezeichnet wird. Für die Menge geben Sie den Lagerbestand, den Sie für diesen Artikel erfassen wollen, in einem bestimmten Lager ein. Wenn Sie die Menge oder den wertmäßigen Betrag eines Artikels nicht ändern wollen, dann lassen Sie den Eintrag leer.
 Anmerkung: Geben Sie keine "0" ein, wenn sie die Menge oder den wertmäßigen Betrag nicht ändern wollen. Sonst kalkuliert das System eine Menge von "0". Lassen Sie also das Feld leer!
 
 #### Schritt 3: Laden Sie die Datei hoch und geben Sie in das Formular "Bestandsableich" Werte ein.
 
-<img class="screenshot" alt="Bestandsabgleich" src="{{docs_base_url}}/assets/img/setup/stock-recon-2.png">
+<img class="screenshot" alt="Bestandsabgleich" src="/docs/assets/img/setup/stock-recon-2.png">
 
 ##### Buchungsdatum
 
@@ -52,11 +52,11 @@
 
 #### Schritt 4: Überprüfen Sie die Daten zum Bestandsabgleich
 
-<img class="screenshot" alt="Bestandsabgleich Überprüfung" src="{{docs_base_url}}/assets/img/setup/stock-reco-upload.gif">
+<img class="screenshot" alt="Bestandsabgleich Überprüfung" src="/docs/assets/img/setup/stock-reco-upload.gif">
 
 ### Bericht zum Lagerbuch
 
-<img class="screenshot" alt="Bestandsabgleich" src="{{docs_base_url}}/assets/img/setup/stock-reco-ledger.png">
+<img class="screenshot" alt="Bestandsabgleich" src="/docs/assets/img/setup/stock-reco-ledger.png">
 
 
 ##### So arbeitet der Bestandsabgleich
diff --git a/erpnext/docs/user/manual/de/setting-up/territory.md b/erpnext/docs/user/manual/de/setting-up/territory.md
index 22743d0..24ce34c 100644
--- a/erpnext/docs/user/manual/de/setting-up/territory.md
+++ b/erpnext/docs/user/manual/de/setting-up/territory.md
@@ -3,6 +3,6 @@
 
 Wenn sich Ihre Geschäftstätigkeit in verschiedenen Regionen abspielt (das können z. B. Länder, Bundesländer oder Städte sein), ist es normalerweise eine großartige Idee, diese Struktur auch im System abzubilden. Wenn Sie Ihre Kunden erst einmal nach Regionen eingeteilt haben, können für jede Artikelgruppe Ziele aufstellen und bekommen Berichte, die Ihnen Ihre aktuelle Leistung in einem Gebiet zeigen und auch das, was Sie geplant haben. Sie können zudem auch eine unterschiedliche Preispolitik für ein und dasselbe Produkt in unterschiedlichen Regionen einstellen.
 
-<img class="screenshot" alt="Baumstruktur Regionen" src="{{docs_base_url}}/assets/img/crm/territory-tree.png">
+<img class="screenshot" alt="Baumstruktur Regionen" src="/docs/assets/img/crm/territory-tree.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/de/setting-up/users-and-permissions/adding-users.md b/erpnext/docs/user/manual/de/setting-up/users-and-permissions/adding-users.md
index 8c4c914..ac4093b 100644
--- a/erpnext/docs/user/manual/de/setting-up/users-and-permissions/adding-users.md
+++ b/erpnext/docs/user/manual/de/setting-up/users-and-permissions/adding-users.md
@@ -11,7 +11,7 @@
 
 ### 1. Übersicht der Benutzer
 
-<img class="screenshot" src="{{docs_base_url}}/assets/img/setup/users/user-1.png" alt="Benutzerliste">
+<img class="screenshot" src="/docs/assets/img/setup/users/user-1.png" alt="Benutzerliste">
 
 
 Um einen neuen Benutzer hinzuzufügen, klicken Sie auf "Neu".
@@ -28,18 +28,18 @@
 
 Nach dem Speichern sehen Sie eine Liste der Rollen und daneben jeweils eine Schaltfläche zum Anklicken. Markieren Sie alle Rollen, von denen Sie möchten, dass sie der Benutzer bekommt, und speichern Sie das Dokument ab. Um zu sehen, welche Berechtigungen die einzelnen Rollen haben, klicken Sie auf den Rollennamen.
 
-<img class="screenshot" src="{{docs_base_url}}/assets/img/setup/users/user-2.png" alt="Benutzerrollen">
+<img class="screenshot" src="/docs/assets/img/setup/users/user-2.png" alt="Benutzerrollen">
 
 ### 4. Zugriff auf Module einstellen
 
 Benutzer haben Zugriff auf alle Module, für die sie aufgrund Ihrer Rollen Berechtigungen haben. Wenn Sie bestimmte Module für den Zugriff sperren möchten, entfernen Sie die Markierung in der Liste.
 
-<img class="screenshot" src="{{docs_base_url}}/assets/img/setup/users/user-3.png" alt="Geblockte Module für Benutzer">
+<img class="screenshot" src="/docs/assets/img/setup/users/user-3.png" alt="Geblockte Module für Benutzer">
 
 ### 5. Sicherheitseinstellungen
 
 Wenn Sie dem Benutzer nur zu bestimmten Bürozeiten oder an Wochenenden Zugriff auf das System gewähren möchten, stellen Sie das unter den Sicherheitseinstellungen ein.
 
-<img class="screenshot" src="{{docs_base_url}}/assets/img/setup/users/user-4.png" alt="Sicherheitseinstellungen für Benutzer">
+<img class="screenshot" src="/docs/assets/img/setup/users/user-4.png" alt="Sicherheitseinstellungen für Benutzer">
 
 {next}
diff --git a/erpnext/docs/user/manual/de/setting-up/users-and-permissions/role-based-permissions.md b/erpnext/docs/user/manual/de/setting-up/users-and-permissions/role-based-permissions.md
index 6d8108a..1d121c8 100644
--- a/erpnext/docs/user/manual/de/setting-up/users-and-permissions/role-based-permissions.md
+++ b/erpnext/docs/user/manual/de/setting-up/users-and-permissions/role-based-permissions.md
@@ -7,7 +7,7 @@
 
 > Einstellungen > Berechtigungen > Rollenberechtigungen-Manager
 
-<img alt="Berechtigungen für Lesen, Schreiben, Erstellen, Übertragen und Abändern mit Hilfe des Rollenberechtigungen-Managers einstellen" class="screenshot" src="{{docs_base_url}}/assets/img/users-and-permissions/setting-up-permissions-leave-application.png">
+<img alt="Berechtigungen für Lesen, Schreiben, Erstellen, Übertragen und Abändern mit Hilfe des Rollenberechtigungen-Managers einstellen" class="screenshot" src="/docs/assets/img/users-and-permissions/setting-up-permissions-leave-application.png">
 
 Berechtigungen werden angewandt auf einer Kombination von:
 
@@ -31,7 +31,7 @@
 
 Um Benutzerberechtigungen zu setzen, gehen Sie zu:
 
-> Einstellungen > Berechtigungen > [Benutzerrechte-Manager]({{docs_base_url}}/user/manual/de/setting-up/users-and-permissions/user-permissions.html)
+> Einstellungen > Berechtigungen > [Benutzerrechte-Manager](/docs/user/manual/de/setting-up/users-and-permissions/user-permissions.html)
 
 
 
@@ -43,30 +43,30 @@
 
 Der Urlaubsantrag ist ein gutes **Beispiel**, welches alle Bereiche des Berechtigungssystems abdeckt.
 
-<img class="screenshot" alt="Der Urlaubsantrag sollte von einem Mitarbeiter erstellt werden, und von einem Urlaubsgenehmiger oder Mitarbeiter des Personalwesens genehmigt werden." src="{{docs_base_url}}/assets/img/users-and-permissions/setting-up-permissions-leave-application-form.png">
+<img class="screenshot" alt="Der Urlaubsantrag sollte von einem Mitarbeiter erstellt werden, und von einem Urlaubsgenehmiger oder Mitarbeiter des Personalwesens genehmigt werden." src="/docs/assets/img/users-and-permissions/setting-up-permissions-leave-application-form.png">
 
 1\. **Er sollte von einem "Mitarbeiter" erstellt werden.** Aus diesem Grund sollte die Rolle "Mitarbeiter" Berechtigungen zum Lesen, Schreiben und Erstellen haben.
 
-<img class="screenshot" alt="Einem Mitarbeiter Lese-, Schreib- und Erstellrechte für einen Urlaubsantrag geben."  src="{{docs_base_url}}/assets/img/users-and-permissions/setting-up-permissions-employee-role.png">
+<img class="screenshot" alt="Einem Mitarbeiter Lese-, Schreib- und Erstellrechte für einen Urlaubsantrag geben."  src="/docs/assets/img/users-and-permissions/setting-up-permissions-employee-role.png">
 
 2\. **Ein Mitarbeiter sollte nur auf seine/Ihre eigenen Urlaubsanträge zugreifen können.** Daher sollte der Punkt "Benutzerberechtigungen anwenden" für die Rolle "Mitarbeiter" aktiviert sein und es sollte ein Datensatz "Benutzerberechtigung" für jede Kombination von Benutzer und Mitarbeiter erstellt werden. (Dieser Aufwand reduziert sich für den Dokumententyp, indem über das Programm Datensätze für Benutzerberechtigungen erstellt werden.)
 
-<img class="screenshot" alt="Den Zugriff für einen Benutzer mit der Rolle Mitarbeiter auf Urlaubsanträge über den Benutzerberechtigungen-Manager einschränken." src="{{docs_base_url}}/assets/img/users-and-permissions/setting-up-permissions-employee-user-permissions.png">
+<img class="screenshot" alt="Den Zugriff für einen Benutzer mit der Rolle Mitarbeiter auf Urlaubsanträge über den Benutzerberechtigungen-Manager einschränken." src="/docs/assets/img/users-and-permissions/setting-up-permissions-employee-user-permissions.png">
 
 3\. **Der Personalmanager sollte alle Urlaubsanträge sehen können.** Erstellen Sie für den Personalmanager eine Berechtigungsregel auf der Ebene 0 mit Lese-Rechten. Die Option "Benutzerberechtigungen anwenden" sollte deaktiviert sein.
 
-<img class="screenshot" alt="Einem Personalmanager Rechte für Übertragen und Stornieren für Urlaubsanträge geben. 'Benutzerberechtigungen anwenden' ist demarkiert um vollen Zugriff zu ermöglichen." src="{{docs_base_url}}/assets/img/users-and-permissions/setting-up-permissions-hr-manager-role.png">
+<img class="screenshot" alt="Einem Personalmanager Rechte für Übertragen und Stornieren für Urlaubsanträge geben. 'Benutzerberechtigungen anwenden' ist demarkiert um vollen Zugriff zu ermöglichen." src="/docs/assets/img/users-and-permissions/setting-up-permissions-hr-manager-role.png">
 
 4\. **Der Urlaubsgenehmiger sollte die ihn betreffenden Urlaubsanträge lesen und aktualisieren können.** Der Urlaubsgenehmiger erhält Lese- und Schreibzugriff auf Ebene 0, und die Option "Benutzerberechtigungen anwenden" wird aktiviert. Zutreffende Mitarbeiter-Dokumente sollten in den Benutzerberechtigungen des Urlaubsgenehmigers aufgelistet sein. (Dieser Aufwand reduziert sich für Urlaubsgenehmiger, die in Mitarbeiterdokumenten aufgeführt werden, indem über das Programm Datensätze für Benutzerberechtigungen erstellt werden.)
 
-<img class="screenshot" alt="Rechte für Schreiben, Lesen und Übertragen an einen Urlaubsgenehmiger zum Genehmigen von Urlauben geben. 'Benutzerberechtigungen anwenden' ist markiert, um den Zugriff basierend auf dem Mitarbeitertyp einzuschränken." src="{{docs_base_url}}/assets/img/users-and-permissions/setting-up-permissions-leave-approver-role.png">
+<img class="screenshot" alt="Rechte für Schreiben, Lesen und Übertragen an einen Urlaubsgenehmiger zum Genehmigen von Urlauben geben. 'Benutzerberechtigungen anwenden' ist markiert, um den Zugriff basierend auf dem Mitarbeitertyp einzuschränken." src="/docs/assets/img/users-and-permissions/setting-up-permissions-leave-approver-role.png">
 
 5\. **Ein Urlaubsantrag sollte nur von einem Mitarbeiter der Personalverwaltung oder einem Urlaubsgenehmiger bestätigt oder abgelehnt werden können.** Das Statusfeld des Urlaubsantrags wird auf Ebene 1 gesetzt. Mitarbeiter der Personalverwaltung und Urlaubsgenehmiger bekommen Lese- und Schreibrechte für Ebene 1, während allen anderen Leserechte für Ebene 1 gegeben werden.
 
-<img class="screenshot" alt="Leserechte auf einen Satz von Feldern auf bestimmte Rollen beschränken." src="{{docs_base_url}}/assets/old_images/erpnext/setting-up-permissions-level-1.png">
+<img class="screenshot" alt="Leserechte auf einen Satz von Feldern auf bestimmte Rollen beschränken." src="/docs/assets/old_images/erpnext/setting-up-permissions-level-1.png">
 
 6\. **Der Mitarbeiter der Personalverwaltung sollte die Möglichkeit haben Urlaubsanträge an seine Untergebenen zu delegieren.** Er erhält die Erlaubis Benutzerberechtigungen einzustellen. Ein Nutzer mit der Rolle "Benutzer Personalverwaltung" wäre dann also in der Lage Benutzer-Berechtigungen und Urlaubsanträge für andere Benutzer zu definieren.
 
-<img class="screenshot" alt="Es dem Benutzer der Personalverwaltung ermöglichen, den Zugriff auf Urlaubsanträge zu delegieren, indem er 'Benutzerberechtigungen einstellen' markiert. Dies erlaubt es dem Benutzer der Personalverwaltung auf den Benutzerberechtigungen-Manager für 'Urlaubsanträge' zuzugreifen" src="{{docs_base_url}}/assets/img/users-and-permissions/setting-up-permissions-hr-user-role.png">
+<img class="screenshot" alt="Es dem Benutzer der Personalverwaltung ermöglichen, den Zugriff auf Urlaubsanträge zu delegieren, indem er 'Benutzerberechtigungen einstellen' markiert. Dies erlaubt es dem Benutzer der Personalverwaltung auf den Benutzerberechtigungen-Manager für 'Urlaubsanträge' zuzugreifen" src="/docs/assets/img/users-and-permissions/setting-up-permissions-hr-user-role.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/de/setting-up/users-and-permissions/sharing.md b/erpnext/docs/user/manual/de/setting-up/users-and-permissions/sharing.md
index 2436439..aea4770 100644
--- a/erpnext/docs/user/manual/de/setting-up/users-and-permissions/sharing.md
+++ b/erpnext/docs/user/manual/de/setting-up/users-and-permissions/sharing.md
@@ -5,6 +5,6 @@
 
 Um ein Dokument zu teilen, öffnen Sie das Dokument, klicken Sie auf das "+"-Symbol im Abschnitt "Freigegeben für" und wählen Sie den Benutzer aus.
 
-<img class="screenshot" src="{{docs_base_url}}/assets/img/setup/users/share.gif">
+<img class="screenshot" src="/docs/assets/img/setup/users/share.gif">
 
 {next}
diff --git a/erpnext/docs/user/manual/de/setting-up/users-and-permissions/user-permissions.md b/erpnext/docs/user/manual/de/setting-up/users-and-permissions/user-permissions.md
index a751693..6499cc2 100644
--- a/erpnext/docs/user/manual/de/setting-up/users-and-permissions/user-permissions.md
+++ b/erpnext/docs/user/manual/de/setting-up/users-and-permissions/user-permissions.md
@@ -1,45 +1,5 @@
 # Benutzer-Berechtigungen
-<span class="text-muted contributed-by">Beigetragen von CWT Connector & Wire Technology GmbH</span>
 
-Verwenden Sie den Benutzerberechtigungen-Manager um den Zugriff eines Benutzers auf eine Menge von Dokumenten einzuschränken.
+This document has been changed but not yet translated. Please see the English Version
 
-Rollenbasierte Berechtigungen definieren den Rahmen an Dokumententypen, innerhalb derer sich ein Benutzer mit einer Anzahl von Rollen bewegen darf. Sie können jedoch noch feinere Einstellungen treffen, wenn Sie für einen Benutzer Benutzerberechtigungen definieren. Wenn Sie bestimmte Dokumente in der Liste der Benutzerberechtigungen eintragen, dann können Sie den Zugriff dieses Benutzers auf bestimmte Dokumente eines bestimmten DocTypes begrenzen, unter der Bedingung, dass die Option "Benutzerberechtigungen anwenden" im Rollenberechtigungs-Manager aktiviert ist.
-
-Beginnen Sie wie folgt:
-
-> Einstellungen > Berechtigungen > Benutzerrechte-Manager
-
-
-Abbildung: Übersicht aus dem Benutzerberechtigungs-Manager die aufzeigt, wie Benutzer nur auf bestimmte Firmen zugreifen können
-
-#### Beispiel
-
-Der Benutzer "aromn@example.com" hat die Rolle "Nutzer Vertrieb" und wir möchten die Zugriffsrechte des Benutzers so einschränken, dass er nur auf Datensätze einer bestimmten Firma, nämlich der Wind Power LLC, zugreifen kann.
-
-1\. Wir fügen eine Benutzerberechtigungs-Zeile für die Firma hinzu.
-
-Abbildung: Hinzufügen einer Zeile "Benutzer-Berechtigung" für die Kombination aus dem Benutzer "aromn@example.com" und der Firma Wind Power LLC
-
-2\. Die Rolle "Alle" hat nur Leseberechtigungen für die Firma, "Benutzer-Berechtigungen anwenden" ist aktiviert.
-
-Abbildung: Leseberechtigung mit aktivierter Option "Benutzer-Berechtigungen anwenden" für den DocType Firma
-
-3\. Die oben abgebildete Kombination der zwei Regeln führt dazu, dass der Benutzer "aromn@example.com" für die Firma Wind Power LLC nur Leserechte hat.
-
-Abbildung: Der Zugriff wird auf die Firma Wind Power LLC beschränkt
-
-4\. Wir möchten nun diese Benutzer-Berechtigung für "Firma" auf andere Dokumente wie "Angebot", "Kundenauftrag" etc. übertragen. Diese Formulare haben **Verknüpfungsfelder zu "Firma"**. Als Ergebnis werden Benutzer-Berechtigungen von "Firma" auch auf diese Dokumente übertragen, was dazu führt, dass der Benutzer "aromn@example.com" auf diese Dokumente zugreifen kann, wenn Sie mit Wind Power LLC verbunden sind.
-
-Abbildung: Benutzer mit der Rolle "Nutzer Vertrieb" können, basierend auf Ihren Benutzer-Berechtigungen, Angebote lesen, schreiben, erstellen, übertragen und stornieren, wenn "Benutzer-Berechtigungen anwenden" aktiviert ist.
-
-Abbildung: Die Auflistung der Angebote enthält nur Ergebnisse für die Firma Wind Power LLC für den Benutzer "aromn@example.com"
-
-5\. Benutzer-Berechtigungen werden automatisch auf Basis von verknüpften Feldern angewandt, genauso wie wir es bei den Angeboten gesehen haben. Aber: Das Lead-Formular hat vier Verknüpfungsfelder: "Region", "Firma", "Eigentümer des Leads" und "Nächster Kontakt durch". Nehmen wir an, Sie möchten dass die Leads den Zugriff des Benutzers basierend auf Ihrer Region einschränken, obwohl Sie für die DocTypes "Benutzer", "Region" und "Firma" Benutzer-Berechtigungen angelegt haben. Dann gehen Sie wir folgt vor: Aktivieren Sie die Option "Benutzer-Berechtigungen ignorieren" für die Verknüpfungsfelder "Firma", "Eigentümer des Leads" und "Nächster Kontakt durch".
-
-Abbildung: Der Vertriebsmitarbeiter kann Leads lesen, schreiben und erstellen, eingeschränkt durch Benutzer-Berechtigungen.
-
-Abbildung: Markieren Sie "Benutzer-Berechtigungen ignorieren" für die Felder "Firma", "Lead-Inhaber" und "Nächster Kontakt durch" über Setup > Anpassen > Formular anpassen > Lead.
-
-Abbildung: Aufgrund der obigen Kombination kann der Benutzer "aromn@example.com" nur auf Leads der Region "United States" zugreifen.
-
-{next}
+<a href="/docs/erpnext/user/manual/en/setting-up/users-and-permissions/user-permissions">User Permission</a>
diff --git a/erpnext/docs/user/manual/de/setting-up/workflows.md b/erpnext/docs/user/manual/de/setting-up/workflows.md
index 7879a0a..c53a264 100644
--- a/erpnext/docs/user/manual/de/setting-up/workflows.md
+++ b/erpnext/docs/user/manual/de/setting-up/workflows.md
@@ -7,7 +7,7 @@
 
 Wenn ein Benutzer einen Urlaub beantragt, dann wird seine Anfrage an die Personalabteilung weiter geleitet. Die Personalabteilung, repräsentiert durch einen Mitarbeiter der Personalabteilung, wird diese Anfrage dann entweder genehmigen oder ablehnen. Wenn dieser Prozess abgeschlossen ist, dann bekommt der Vorgesetzte des Benutzers (der Urlaubsgenehmiger) eine Mitteilung, dass die Personalabteilung den Antrag genehmigt oder abgelehnt hat. Der Vorgesetzte, der die genehmigende Instanz ist, wird dann den Antrag entweder genehmigen oder ablehnen. Dementsprechend bekommt der Benutzer dann eine Genehmigung oder eine Ablehnung.
 
-<img class="screenshot" alt="Workflow" src="{{docs_base_url}}/assets/img/setup/workflow-leave-fl.jpg">
+<img class="screenshot" alt="Workflow" src="/docs/assets/img/setup/workflow-leave-fl.jpg">
 
 Um einen Workflow und Übergangsregeln zu erstellen, gehen Sie zu:
 
@@ -15,11 +15,11 @@
 
 #### Schritt 1: Geben Sie die unterschiedlichen Zustände des Prozesses Urlaubsantrag ein.
 
-<img class="screenshot" alt="Workflow" src="{{docs_base_url}}/assets/img/setup/workflow-1.png">
+<img class="screenshot" alt="Workflow" src="/docs/assets/img/setup/workflow-1.png">
 
 #### Schritt 2: Geben Sie die Übergangsregeln ein.
 
-<img class="screenshot" alt="Workflow" src="{{docs_base_url}}/assets/img/setup/workflow-2.png">
+<img class="screenshot" alt="Workflow" src="/docs/assets/img/setup/workflow-2.png">
 
 Hinweise:
 
@@ -37,14 +37,14 @@
 
 Wenn ein Urlaubsantrag übertragen wird, steht der Status in der Ecke der rechten Seite auf "Beantragt".
 
-<img class="screenshot" alt="Workflow" src="{{docs_base_url}}/assets/img/setup/workflow-3.png">
+<img class="screenshot" alt="Workflow" src="/docs/assets/img/setup/workflow-3.png">
 
 Wenn sich ein Mitarbeiter der Personalabteilung anmeldet, dann kann er den Antrag genehmigen oder ablehnen. Wenn eine Genehmigung erfolgt, wechselt der Status in der rechten Ecke zu "Genehmigt". Es wird jedoch ein blaues Informationssymbol angezeigt, welches aussagt, dass der Urlaubsantrag noch anhängig ist.
 
-<img class="screenshot" alt="Workflow" src="{{docs_base_url}}/assets/img/setup/workflow-4.png">
+<img class="screenshot" alt="Workflow" src="/docs/assets/img/setup/workflow-4.png">
 
 Wenn der Urlaubsgenehmiger die Seite mit den Urlaubsanträgen öffnet, kann er den Status von "Genehmigt" auf "Abgelehnt" ändern.
 
-<img class="screenshot" alt="Workflow" src="{{docs_base_url}}/assets/img/setup/workflow-5.png">
+<img class="screenshot" alt="Workflow" src="/docs/assets/img/setup/workflow-5.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/de/stock/accounting-of-inventory-stock/index.md b/erpnext/docs/user/manual/de/stock/accounting-of-inventory-stock/index.md
index 1a17675..fb427e1 100644
--- a/erpnext/docs/user/manual/de/stock/accounting-of-inventory-stock/index.md
+++ b/erpnext/docs/user/manual/de/stock/accounting-of-inventory-stock/index.md
@@ -9,7 +9,7 @@
 
 Wenn Sie Artikel kaufen und erhalten, werden diese Artikel als Vermögen des Unternehmens gebucht (Warenbestand/Anlagevermögen). Wenn Sie diese Artikel wieder verkaufen und ausliefern, werden Kosten (Selbstkosten) in Höhe der Bezugskosten der Artikel verbucht. Nach jeder Lagertransaktion werden Buchungen im Hauptbuch erstellt. Dies hat zum Ergebnis, dass der Wert im Lagerbuch immer gleich dem Wert in der Bilanz bleibt. Das verbessert die Aussagekraft der Bilanz und der Gewinn- und Verlustrechnung.
 
-Um Buchungen für bestimmte Lagertransaktionen zu überprüfen, bitte unter [Beispiele]({{docs_base_url}}/user/manual/de/stock/accounting-of-inventory-stock/perpetual-inventory.html) nachlesen.
+Um Buchungen für bestimmte Lagertransaktionen zu überprüfen, bitte unter [Beispiele](/docs/user/manual/de/stock/accounting-of-inventory-stock/perpetual-inventory.html) nachlesen.
 
 #### Vorteile
 
@@ -33,6 +33,6 @@
 
 Dieser Gesamtprozess wird als Stichtagsinventur bezeichnet.
 
-Wenn Sie als bereits existierender Benutzer die Stichtagsinventur nutzen aber zur Ständigen Inventur wechseln möchten, müssen Sie der Migrationsanleitung folgen. Für weitere Details lesen Sie [Migration aus der Stichtagsinventur]({{docs_base_url}}/user/manual/de/stock/accounting-of-inventory-stock/migrate-to-perpetual-inventory.html).
+Wenn Sie als bereits existierender Benutzer die Stichtagsinventur nutzen aber zur Ständigen Inventur wechseln möchten, müssen Sie der Migrationsanleitung folgen. Für weitere Details lesen Sie [Migration aus der Stichtagsinventur](/docs/user/manual/de/stock/accounting-of-inventory-stock/migrate-to-perpetual-inventory.html).
 
 {next}
diff --git a/erpnext/docs/user/manual/de/stock/accounting-of-inventory-stock/migrate-to-perpetual-inventory.md b/erpnext/docs/user/manual/de/stock/accounting-of-inventory-stock/migrate-to-perpetual-inventory.md
index 742d246..62a9166 100644
--- a/erpnext/docs/user/manual/de/stock/accounting-of-inventory-stock/migrate-to-perpetual-inventory.md
+++ b/erpnext/docs/user/manual/de/stock/accounting-of-inventory-stock/migrate-to-perpetual-inventory.md
@@ -21,7 +21,7 @@
 
 > Einstellungen > Rechnungswesen > Konteneinstellungen > Eine  Buchung für jede Lagerbewegung erstellen
 
-![Aktivierung]({{docs_base_url}}/assets/old_images/erpnext/accounting-for-stock-1.png)  
+![Aktivierung](/docs/assets/old_images/erpnext/accounting-for-stock-1.png)  
 
 * Erstellen Sie Lagerbuchungen (Materialübertrag) um verfügbare Lagerbestände von einem existierenden Lager auf ein neues Lager zu übertragen. Sobald im neuen Lager der Lagerbestand verfügbar wird, sollten Sie für zukünftige Transaktionen nur noch das neue Lager verwenden.
 
diff --git a/erpnext/docs/user/manual/de/stock/accounting-of-inventory-stock/perpetual-inventory.md b/erpnext/docs/user/manual/de/stock/accounting-of-inventory-stock/perpetual-inventory.md
index f0e1f7a..639e140 100644
--- a/erpnext/docs/user/manual/de/stock/accounting-of-inventory-stock/perpetual-inventory.md
+++ b/erpnext/docs/user/manual/de/stock/accounting-of-inventory-stock/perpetual-inventory.md
@@ -133,11 +133,11 @@
 <p><strong>Lagerbuch</strong>
 </p>
 
-<img class="screenshot" alt="Lagerbuch" src="{{docs_base_url}}/assets/img/accounts/perpetual-receipt-sl-1.png">
+<img class="screenshot" alt="Lagerbuch" src="/docs/assets/img/accounts/perpetual-receipt-sl-1.png">
 
 **Hauptbuch:**
 
-<img class="screenshot" alt="Hauptbuch" src="{{docs_base_url}}/assets/img/accounts/perpetual-receipt-gl-2.png">
+<img class="screenshot" alt="Hauptbuch" src="/docs/assets/img/accounts/perpetual-receipt-gl-2.png">
 
 Um ein System der doppelten Buchhaltung zu erhalten, werden dadurch, dass sich der Kontensaldo durch den Kaufbeleg erhöht, die Konten "In Verkaufsstellen" und "Anlagevermögen im Lager" belastet und das temporäre Konto "Lagerware erhalten aber noch nicht abgerechnet" entlastet. Zum selben Zeitpunkt wird eine negative Aufwendung auf das Konto "In der Bewertung enthaltene Kosten" verbucht, um die Bewertung hinzuzufügen und um eine doppelte Aufwandsverbuchung zu vermeiden.
 
@@ -149,7 +149,7 @@
 
 #### Hauptbuch
 
-<img class="screenshot" alt="Hauptbuch" src="{{docs_base_url}}/assets/img/accounts/perpetual-pinv-gl-3.png">
+<img class="screenshot" alt="Hauptbuch" src="/docs/assets/img/accounts/perpetual-pinv-gl-3.png">
 
 Hier wird das Konto "Lagerware erhalten aber noch nicht bewertet" belastet und hebt den Effekt des Kaufbeleges auf.
 
@@ -206,11 +206,11 @@
 
 **Lagerbuch**
 
-<img class="screenshot" alt="Lagerbuch" src="{{docs_base_url}}/assets/img/accounts/perpetual-dn-sl-4.png">
+<img class="screenshot" alt="Lagerbuch" src="/docs/assets/img/accounts/perpetual-dn-sl-4.png">
 
 **Hauptbuch**
 
-<img class="screenshot" alt="Hauptbuch" src="{{docs_base_url}}/assets/img/accounts/perpetual-dn-gl-5.png">
+<img class="screenshot" alt="Hauptbuch" src="/docs/assets/img/accounts/perpetual-dn-gl-5.png">
 
 Da der Artikel aus dem Lager "In Verkaufsstellen" geliefert wird, wird das Konto "In Verkaufsstellen" entlastet und ein Betrag in gleicher Höhe dem Aufwandskonto "Selbstkosten" belastet. Der belastete/entlastete Betrag ist gleich dem Gesamtwert (Einkaufskosten) des Verkaufsartikels. Und der Wert wird gemäß der bevorzugten Bewertungsmethode (FIFO/Gleitender Durchschnitt) oder den tatsächlichen Kosten eines serialisierten Artikels kalkuliert.
 
@@ -231,11 +231,11 @@
 
 **Lagerbuch**
 
-<img class="screenshot" alt="Lagerbuch" src="{{docs_base_url}}/assets/img/accounts/perpetual-inv-sl-6.png">
+<img class="screenshot" alt="Lagerbuch" src="/docs/assets/img/accounts/perpetual-inv-sl-6.png">
 
 **Hauptbuch**
 
-<img class="screenshot" alt="Hauptbuch" src="{{docs_base_url}}/assets/img/accounts/perpetual-inv-gl-7.png">
+<img class="screenshot" alt="Hauptbuch" src="/docs/assets/img/accounts/perpetual-inv-gl-7.png">
 
 Hier werden, im Gegensatz zu den normalen Buchungen für Rechnungen, die Konten "In Verkaufsstellen" und "Selbstkosten" basierend auf der Bewertung beeinflusst.
 
@@ -268,11 +268,11 @@
 
 **Lagerbuch**
 
-<img class="screenshot" alt="Lagerbuch" src="{{docs_base_url}}/assets/img/accounts/perpetual-st-receipt-sl.png">
+<img class="screenshot" alt="Lagerbuch" src="/docs/assets/img/accounts/perpetual-st-receipt-sl.png">
 
 **Hauptbuch**
 
-<img class="screenshot" alt="Hauptbuch" src="{{docs_base_url}}/assets/img/accounts/perpetual-st-receipt-gl.png">
+<img class="screenshot" alt="Hauptbuch" src="/docs/assets/img/accounts/perpetual-st-receipt-gl.png">
 
 * * *
 
@@ -303,11 +303,11 @@
 
 **Lagerbuch**
 
-<img class="screenshot" alt="Lagerbuch" src="{{docs_base_url}}/assets/img/accounts/perpetual-st-issue-sl.png">
+<img class="screenshot" alt="Lagerbuch" src="/docs/assets/img/accounts/perpetual-st-issue-sl.png">
 
 **Hauptbuch**
 
-<img class="screenshot" alt="Hauptbuch" src="{{docs_base_url}}/assets/img/accounts/perpetual-st-issue-gl.png">
+<img class="screenshot" alt="Hauptbuch" src="/docs/assets/img/accounts/perpetual-st-issue-gl.png">
 
 * * *
 
@@ -340,8 +340,8 @@
 
 **Lagerbuch**
 
-<img class="screenshot" alt="Lagerbuch" src="{{docs_base_url}}/assets/img/accounts/perpetual-st-transfer-sl.png">
+<img class="screenshot" alt="Lagerbuch" src="/docs/assets/img/accounts/perpetual-st-transfer-sl.png">
 
 **Hauptbuch**
 
-<img class="screenshot" alt="Hauptbuch" src="{{docs_base_url}}/assets/img/accounts/perpetual-st-transfer-gl.png">
\ No newline at end of file
+<img class="screenshot" alt="Hauptbuch" src="/docs/assets/img/accounts/perpetual-st-transfer-gl.png">
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/de/stock/articles/article-variants.md b/erpnext/docs/user/manual/de/stock/articles/article-variants.md
index afd5347..a54ccd6 100644
--- a/erpnext/docs/user/manual/de/stock/articles/article-variants.md
+++ b/erpnext/docs/user/manual/de/stock/articles/article-variants.md
@@ -1,3 +1,5 @@
+# Article Variants
+
 
 <span class="text-muted contributed-by">Beigetragen von CWT Connector & Wire Technology GmbH</span>
 ## 4.6.2 Artikelvarianten
diff --git a/erpnext/docs/user/manual/de/stock/batch.md b/erpnext/docs/user/manual/de/stock/batch.md
index 783e7e3..69171e1 100644
--- a/erpnext/docs/user/manual/de/stock/batch.md
+++ b/erpnext/docs/user/manual/de/stock/batch.md
@@ -13,7 +13,7 @@
 
 Die Chargenstammdaten werden vor der Ausfertigung des Kaufbelegs erstellt. Somit erstellen Sie immer dann, wenn für einen Chargenartikel ein Kaufbeleg oder ein Produktionsauftrag ausgegeben werden, zuerst die Chargennummer des Artikels und wählen diese dann im Kaufbeleg oder im Produktionsauftrag aus.
 
-<img class="screenshot" alt="Charge" src="{{docs_base_url}}/assets/img/stock/batch.png">
+<img class="screenshot" alt="Charge" src="/docs/assets/img/stock/batch.png">
 
 > Anmerkung: Bei Lagertransaktionen werden die Chargen-IDs basierend auf dem Code, dem Lager, dem Verfallsdatum der Charge (verglichen mit dem Veröffentlichungsdatum der Transaktion) und der aktuellen Menge im Lager gefiltert.
 
diff --git a/erpnext/docs/user/manual/de/stock/delivery-note.md b/erpnext/docs/user/manual/de/stock/delivery-note.md
index 00e66ca..5ee2567 100644
--- a/erpnext/docs/user/manual/de/stock/delivery-note.md
+++ b/erpnext/docs/user/manual/de/stock/delivery-note.md
@@ -11,7 +11,7 @@
 
 oder aber über eine "übertragene" Kundenbestellung (die noch nicht versandt wurde) indem Sie auf "Lieferschein erstellen" klicken.
 
-<img class="screenshot" alt="Lieferschein" src="{{docs_base_url}}/assets/img/stock/delivery-note.png">
+<img class="screenshot" alt="Lieferschein" src="/docs/assets/img/stock/delivery-note.png">
 
 Sie können die Details auch aus einer noch nicht gelieferten Kundenbestellung "herausziehen".
 
@@ -19,7 +19,7 @@
 
 ### Pakete oder Artikel mit Produkt-Bundles versenden
 
-Wenn Sie Artikel, die ein [Produkt-Bundle]({{docs_base_url}}/user/manual/de/selling/setup/product-bundle.html), ERPNext will automatically beinhalten, versenden, erstellt Ihnen ERPNext automatisch eine Tabelle "Packliste" basierend auf den Unterartikeln dieses Artikels.
+Wenn Sie Artikel, die ein [Produkt-Bundle](/docs/user/manual/de/selling/setup/product-bundle.html), ERPNext will automatically beinhalten, versenden, erstellt Ihnen ERPNext automatisch eine Tabelle "Packliste" basierend auf den Unterartikeln dieses Artikels.
 
 Wenn Ihre Artikel serialisiert sind, dann müssen Sie für Artikel vom Typ Produkt-Bundle die Seriennummer in der Tabelle "Packliste" aktualisieren.
 
diff --git a/erpnext/docs/user/manual/de/stock/material-request.md b/erpnext/docs/user/manual/de/stock/material-request.md
index 5a47b13..2a59ecb 100644
--- a/erpnext/docs/user/manual/de/stock/material-request.md
+++ b/erpnext/docs/user/manual/de/stock/material-request.md
@@ -3,7 +3,7 @@
 
 Eine Materialanfrage ist ein einfaches Dokument, welches einen Bedarf an Artikeln (Produkte oder Dienstleistungen) für einen bestimmten Zweck erfasst.
 
-<img class="screenshot" alt="Materialanfrage" src="({{docs_base_url}}/assets/img/buying/material-request-workflow.jpg">
+<img class="screenshot" alt="Materialanfrage" src="(/docs/assets/img/buying/material-request-workflow.jpg">
 
 Um eine Materialanfrage manuell zu erstellen, gehen Sie bitte zu: 
 
@@ -11,14 +11,14 @@
 
 ### Materialanfrage erstellen
 
-<img class="screenshot" alt="Materialanfrage" src="{{docs_base_url}}/assets/img/buying/material-request.png">
+<img class="screenshot" alt="Materialanfrage" src="/docs/assets/img/buying/material-request.png">
 
 Eine Materialanfrage kann auf folgende Arten erstellt werden:
 
 * Automatisch aus einem Kundenauftrag heraus.
 * Automatisch, wenn die projizierte Menge eines Artikels in den Lagern einen bestimmten Bestand erreicht.
 * Automatisch aus einer Stückliste heraus, wenn Sie das Modul "Produktionsplanung" benutzen, um Ihre Fertigungsaktivitäten zu planen.
-* Wenn Ihre Artikel Bestandsposten sind, müssen Sie überdies das Lager angeben, auf welches diese Artikel geliefert werden sollen. Das hilft dabei die [projizierte Menge]({{docs_base_url}}/user/manual/de/stock/projected-quantity.html) für diesen Artikel im Auge zu behalten.
+* Wenn Ihre Artikel Bestandsposten sind, müssen Sie überdies das Lager angeben, auf welches diese Artikel geliefert werden sollen. Das hilft dabei die [projizierte Menge](/docs/user/manual/de/stock/projected-quantity.html) für diesen Artikel im Auge zu behalten.
 
 Es gibt folgende Typen von Materialanfragen:
 
diff --git a/erpnext/docs/user/manual/de/stock/projected-quantity.md b/erpnext/docs/user/manual/de/stock/projected-quantity.md
index 2b3d9e7..2f6e001 100644
--- a/erpnext/docs/user/manual/de/stock/projected-quantity.md
+++ b/erpnext/docs/user/manual/de/stock/projected-quantity.md
@@ -7,7 +7,7 @@
 
 Eine strikte Kontrolle des projizierten Lagerbestandes ist entscheidend um Engpässe vorherzusagen und die richtige Bestellmenge kalkulieren zu können.
 
-<img class="screenshot" alt="Bericht zur projizierten Menge" src="{{docs_base_url}}/assets/img/stock/projected-quantity-stock-report.png">
+<img class="screenshot" alt="Bericht zur projizierten Menge" src="/docs/assets/img/stock/projected-quantity-stock-report.png">
 
 > Projizierte Menge = Momentan vorhandene Menge + Geplante Menge + Angefragte Menge + Bestellte Menge - Reservierte Menge
 
diff --git a/erpnext/docs/user/manual/de/stock/purchase-receipt.md b/erpnext/docs/user/manual/de/stock/purchase-receipt.md
index f78600d..5303895 100644
--- a/erpnext/docs/user/manual/de/stock/purchase-receipt.md
+++ b/erpnext/docs/user/manual/de/stock/purchase-receipt.md
@@ -11,7 +11,7 @@
 
 oder aus einer "übertragenen" Einkaufsbestellung heraus, in dem Sie auf die Schaltfläche "Kaufbeleg erstellen" klicken.
 
-<img class="screenshot" alt="Kaufbeleg" src="{{docs_base_url}}/assets/img/stock/purchase-receipt.png">
+<img class="screenshot" alt="Kaufbeleg" src="/docs/assets/img/stock/purchase-receipt.png">
 
 ### Ausschuss
 
diff --git a/erpnext/docs/user/manual/de/stock/purchase-return.md b/erpnext/docs/user/manual/de/stock/purchase-return.md
index 1da0bc4..0805d75 100644
--- a/erpnext/docs/user/manual/de/stock/purchase-return.md
+++ b/erpnext/docs/user/manual/de/stock/purchase-return.md
@@ -7,18 +7,18 @@
 
 Öffnen Sie hierzu zuerst die ursprüngliche Eingangsrechnung zu der der Lieferant die Artikel geliefert hat.
 
-<img class="screenshot" alt="Original-Eingangsrechnung" src="{{docs_base_url}}/assets/img/stock/purchase-return-original-purchase-receipt.png">
+<img class="screenshot" alt="Original-Eingangsrechnung" src="/docs/assets/img/stock/purchase-return-original-purchase-receipt.png">
 
 Klicken Sie dann auf "Lieferantenreklamation erstellen", dies öffnet einen neuen Kaufbeleg bei dem "Ist Reklamation" markiert ist, und bei dem die Artikel mit negativer Menge aufgeführt sind.
 
-<img class="screenshot" alt="Reklamation zum Lieferschein" src="{{docs_base_url}}/assets/img/stock/purchase-return-against-purchase-receipt.png">
+<img class="screenshot" alt="Reklamation zum Lieferschein" src="/docs/assets/img/stock/purchase-return-against-purchase-receipt.png">
 
 Bei der Ausgabe eines Reklamations-Kaufbelegs vermindert das System die Menge des Artikels auf dem entsprechenden Lager. Um einen korrekten Lagerwert zu erhalten, verändert sich der Lagersaldo entsprechend dem Einkaufspreis des zurückgesendeten Artikels.
 
-<img class="screenshot" alt="Reklamation und Lagerbuch" src="{{docs_base_url}}/assets/img/stock/purchase-return-stock-ledger.png">
+<img class="screenshot" alt="Reklamation und Lagerbuch" src="/docs/assets/img/stock/purchase-return-stock-ledger.png">
 
 Wenn die Ständige Inventur aktiviert wurde, verbucht das System weiterhin Buchungssätze zum Lagerkonto um den Lagersaldo  mit dem Lagerbestand des Lagerbuchs zu synchronisieren.
 
-<img class="screenshot" alt="Reklamation und Lagerbuch" src="{{docs_base_url}}/assets/img/stock/purchase-return-general-ledger.png">
+<img class="screenshot" alt="Reklamation und Lagerbuch" src="/docs/assets/img/stock/purchase-return-general-ledger.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/de/stock/sales-return.md b/erpnext/docs/user/manual/de/stock/sales-return.md
index 2b4fbb4..0daef5c 100644
--- a/erpnext/docs/user/manual/de/stock/sales-return.md
+++ b/erpnext/docs/user/manual/de/stock/sales-return.md
@@ -7,22 +7,22 @@
 
 Öffnen Sie dazu zuerst den Lieferschein/die Ausgangsrechnung zu dem/der der Kunde einen Artikel zurück sendet.
 
-<img class="screenshot" alt="Original-Lieferschein" src="{{docs_base_url}}/assets/img/stock/sales-return-original-delivery-note.png">
+<img class="screenshot" alt="Original-Lieferschein" src="/docs/assets/img/stock/sales-return-original-delivery-note.png">
 
 Klicken Sie dann auf "Kundenreklamation erstellen", das öffnet einen neuen Lieferschein, bei dem "Ist Reklamation" aktiviert ist, und die Artikel und Steuern mit negativem Betrag angezeigt werden.
 Sie können die Reklamation auch über die Originalausgangsrechnung erstellen. Um Material mit einer Gutschrift zurück zu geben, markieren Sie die Option "Lager aktualisieren" in der Reklamationsrechnung.
 
-<img class="screenshot" alt="Kundenreklamation zum Lieferschein" src="{{docs_base_url}}/assets/img/stock/sales-return-against-delivery-note.png">		
+<img class="screenshot" alt="Kundenreklamation zum Lieferschein" src="/docs/assets/img/stock/sales-return-against-delivery-note.png">		
 
 Bei der Ausgabe eines Rücksendelieferscheins / einer Reklamationsrechnung erhöht das System den Lagerbestand im entsprechenden Lager. Um den richtigen Lagerwert zu erhalten erhöht sich der Lagerbestand um den Wert des ursprünglichen Einkaufspreises des zurückgeschickten Artikels.
 
-<img class="screenshot" alt="Kundenreklamation zur Eingangsrechnung" src="{{docs_base_url}}/assets/img/stock/sales-return-against-sales-invoice.png">
+<img class="screenshot" alt="Kundenreklamation zur Eingangsrechnung" src="/docs/assets/img/stock/sales-return-against-sales-invoice.png">
 
 Für den Fall einer Reklamationsrechnung erhält das Kundenkonto eine Gutschrift und die damit verknüpften Konten für Erträge und Steuern werden belastet.
 Wenn die ständige Inventur aktiviert ist, erstellt das System auch Buchungen für das Lagerkonto um den Kontostand des Lagers mit dem Lagerbuch zu synchronisieren. 
 
-<img class="screenshot" alt="Lagerbuch und Reklamation" src="{{docs_base_url}}/assets/img/stock/sales-return-stock-ledger.png">
+<img class="screenshot" alt="Lagerbuch und Reklamation" src="/docs/assets/img/stock/sales-return-stock-ledger.png">
 
-<img class="screenshot" alt="Lagerbuch und Reklamation" src="{{docs_base_url}}/assets/img/stock/sales-return-general-ledger.png">
+<img class="screenshot" alt="Lagerbuch und Reklamation" src="/docs/assets/img/stock/sales-return-general-ledger.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/de/stock/serial-no.md b/erpnext/docs/user/manual/de/stock/serial-no.md
index 1fb8bd8..883a45e 100644
--- a/erpnext/docs/user/manual/de/stock/serial-no.md
+++ b/erpnext/docs/user/manual/de/stock/serial-no.md
@@ -13,7 +13,7 @@
 
 Der Lagerbestand eines Artikels kann nur dann beeinflusst werden, wenn die Seriennummer mit Hilfe einer Lagertransaktion (Lagerbuchung, Kaufbeleg, Lieferschein, Ausgangsrechnung) übertragen wird. Wenn eine neue Seriennummer direkt erstellt wird, kann der Lagerort nicht eingestellt werden.
 
-<img class="screenshot" alt="Seriennummer" src="{{docs_base_url}}/assets/img/stock/serial-no.png">
+<img class="screenshot" alt="Seriennummer" src="/docs/assets/img/stock/serial-no.png">
 
 * Der Status wird aufgrund der Lagerbuchung eingestellt.
 * Nur Seriennummern mit dem Status "Verfügbar" können geliefert werden.
diff --git a/erpnext/docs/user/manual/de/stock/setup/item-attribute.md b/erpnext/docs/user/manual/de/stock/setup/item-attribute.md
index 6deabb3..d61c6fc 100644
--- a/erpnext/docs/user/manual/de/stock/setup/item-attribute.md
+++ b/erpnext/docs/user/manual/de/stock/setup/item-attribute.md
@@ -3,18 +3,18 @@
 
 Sie können Attribute und Attributwerte für Ihre Artikelvarianten hier auswählen.
 
-<img class="screenshot" alt="Attributvorlage" src="{{docs_base_url}}/assets/img/stock/item-attribute.png">
+<img class="screenshot" alt="Attributvorlage" src="/docs/assets/img/stock/item-attribute.png">
 
 ### Nicht-numerische Attribute
 
 * Für nicht-numerische Attribute definieren Sie Attributwerte und deren Abkürzungen in der Tabelle Attributwerte.
 
-<img class="screenshot" alt="Attributvorlage" src="{{docs_base_url}}/assets/img/stock/item-attribute-non-numeric.png">
+<img class="screenshot" alt="Attributvorlage" src="/docs/assets/img/stock/item-attribute-non-numeric.png">
 
 ### Numerische Attribute
 
 * Wenn Ihr Attribut numerisch ist, wählen Sie numerische Werte.
 * Geben Sie den Bereich an und die Schrittweite.
 
-<img class="screenshot" alt="Attributvorlage" src="{{docs_base_url}}/assets/img/stock/item-attribute-numeric.png">
+<img class="screenshot" alt="Attributvorlage" src="/docs/assets/img/stock/item-attribute-numeric.png">
 
diff --git a/erpnext/docs/user/manual/de/stock/setup/item-group.md b/erpnext/docs/user/manual/de/stock/setup/item-group.md
index 8be1a60..c911c6c 100644
--- a/erpnext/docs/user/manual/de/stock/setup/item-group.md
+++ b/erpnext/docs/user/manual/de/stock/setup/item-group.md
@@ -3,19 +3,19 @@
 
 Die Artikelgruppe ist die Klassifikationskategorie. Ordnen Sie ein Produkt abhängig von seiner Art in einen entsprechenden Bereich ein. Wenn das Produkt dienstleistungsorientiert ist, ordnen Sie es unter dem Hauptpunkt Dienstleistung ein. Wenn das Produkt als Rohmaterial verwendet wird, müssen Sie es in der Kategorie Rohmaterial einordnen. Für den Fall, dass es sich bei dem Produkt um reine Handelsware handelt, können Sie es im Bereich Handelsware einordnen.
 
-<img class="screenshot" alt="Baumstruktur Artikelgruppe" src="{{docs_base_url}}/assets/img/stock/item-group-tree.png">
+<img class="screenshot" alt="Baumstruktur Artikelgruppe" src="/docs/assets/img/stock/item-group-tree.png">
 
 ### Eine Artikelgruppe erstellen
 
 * Wählen Sie eine Artikelgruppe aus unter der Sie eine Artikelgruppe erstellen wollen.
 * Klicken Sie auf "Unterpunkt hinzufügen".
 
-<img class="screenshot" alt="Artikelgruppe hinzufügen" src="{{docs_base_url}}/assets/img/stock/item-group-new.gif">
+<img class="screenshot" alt="Artikelgruppe hinzufügen" src="/docs/assets/img/stock/item-group-new.gif">
 
 ### Eine Artikelgruppe löschen
 * Wählen Sie die zu löschende Artikelgruppe aus.
 * Klicken Sie auf "Löschen"
 
-<img class="screenshot" alt="Artikelgruppe hinzufügen" src="{{docs_base_url}}/assets/img/stock/item-group-del.gif">
+<img class="screenshot" alt="Artikelgruppe hinzufügen" src="/docs/assets/img/stock/item-group-del.gif">
 
 {next}
diff --git a/erpnext/docs/user/manual/de/stock/setup/stock-settings.md b/erpnext/docs/user/manual/de/stock/setup/stock-settings.md
index c7237b0..2eb84eb 100644
--- a/erpnext/docs/user/manual/de/stock/setup/stock-settings.md
+++ b/erpnext/docs/user/manual/de/stock/setup/stock-settings.md
@@ -3,6 +3,6 @@
 
 Sie können Standardeinstellungen für Ihre mit dem Lager verbundenen Transaktionen hier voreinstellen.
 
-<img class="screenshot" alt="Lagereinstellungen" src="{{docs_base_url}}/assets/img/stock/stock-settings.png">
+<img class="screenshot" alt="Lagereinstellungen" src="/docs/assets/img/stock/stock-settings.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/de/stock/stock-entry.md b/erpnext/docs/user/manual/de/stock/stock-entry.md
index 4b9fe08..442c42d 100644
--- a/erpnext/docs/user/manual/de/stock/stock-entry.md
+++ b/erpnext/docs/user/manual/de/stock/stock-entry.md
@@ -7,7 +7,7 @@
 
 > Lagerbestand > Dokumente > Lagerbuchung > Neu
 
-<img class="screenshot" alt="Lagerbuchung" src="{{docs_base_url}}/assets/img/stock/stock-entry.png">
+<img class="screenshot" alt="Lagerbuchung" src="/docs/assets/img/stock/stock-entry.png">
 
 Lagerbuchungen können aus folgenden Gründen erstellt werden:
 
@@ -27,15 +27,15 @@
 
 Um Zusatzkosten hinzuzufügen, geben Sie die Beschreibung und den Betrag der Kosten in die Tabelle Zusatzkosten ein.
 
-<img class="screenshot" alt="Lagerbuchung Zusatzlkosten" src="{{docs_base_url}}/assets/img/stock/additional-costs-table.png">
+<img class="screenshot" alt="Lagerbuchung Zusatzlkosten" src="/docs/assets/img/stock/additional-costs-table.png">
 
 Die hinzugefügten Zusatzkosten werden basierend auf dem Grundwert der Artikel proportional auf die erhaltenen Artikel verteilt. Dann werden die verteilten Zusatzkosten zum Grundpreis hinzugerechnet, um den Wert neu zu berechnen.
 
-<img class="screenshot" alt="Lagerbuchung Preis für Artikelvarianten" src="{{docs_base_url}}/assets/img/stock/stock-entry-item-valuation-rate.png">
+<img class="screenshot" alt="Lagerbuchung Preis für Artikelvarianten" src="/docs/assets/img/stock/stock-entry-item-valuation-rate.png">
 
 Wenn die laufende Inventur aktiviert ist, werden Zusatzkosten auf das Konto "Aufwendungen im Wert beinhaltet" gebucht.
 
-<img class="screenshot" alt="Zusatzkosten Hauptbuch" src="{{docs_base_url}}/assets/img/stock/additional-costs-general-ledger.png">
+<img class="screenshot" alt="Zusatzkosten Hauptbuch" src="/docs/assets/img/stock/additional-costs-general-ledger.png">
 > Hinweis: Um den Lagerbestand über eine Tabellenkalkulation zu aktualisieren, bitte unter Lagerabgleich nachlesen.
 
 {next}
diff --git a/erpnext/docs/user/manual/de/stock/tools/landed-cost-voucher.md b/erpnext/docs/user/manual/de/stock/tools/landed-cost-voucher.md
index 340e104..0cb6ea1 100644
--- a/erpnext/docs/user/manual/de/stock/tools/landed-cost-voucher.md
+++ b/erpnext/docs/user/manual/de/stock/tools/landed-cost-voucher.md
@@ -23,7 +23,7 @@
 
 Im Dokument können Sie verschiedene Kaufbelege auswählen und alle Artikel daraus abrufen. Dann sollten Sie zutreffende Abgaben aus der Tabelle "Steuern und Abgaben" hinzufügen. Die hinzugefügten Abgaben werden proportional auf die Artikel aufgeteilt, basierend auf ihrem Wert.
 
-<img class="screenshot" alt="Einstandskostenbeleg" src="{{docs_base_url}}/assets/img/stock/landed-cost.png">
+<img class="screenshot" alt="Einstandskostenbeleg" src="/docs/assets/img/stock/landed-cost.png">
 
 ### Was passiert bei der Ausgabe?
 
diff --git a/erpnext/docs/user/manual/de/stock/tools/packing-slip.md b/erpnext/docs/user/manual/de/stock/tools/packing-slip.md
index 93752be..474f2d5 100644
--- a/erpnext/docs/user/manual/de/stock/tools/packing-slip.md
+++ b/erpnext/docs/user/manual/de/stock/tools/packing-slip.md
@@ -3,6 +3,6 @@
 
 Ein Packzettel ist ein Dokument, welches die Artikel einer Sendung auflistet. Normalerweise wird er den gelieferten Waren beigelegt. Beim Versand eines Produktes wird ein Entwurf für einen Lieferschein erstellt. Sie können aus diesem Lieferschein (Entwurf) einen Packzettel erstellen.
 
-<img class="screenshot" alt="Packzettel" src="{{docs_base_url}}/assets/img/stock/packing-slip.png">
+<img class="screenshot" alt="Packzettel" src="/docs/assets/img/stock/packing-slip.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/de/stock/tools/quality-inspection.md b/erpnext/docs/user/manual/de/stock/tools/quality-inspection.md
index 9c375df..76ef650 100644
--- a/erpnext/docs/user/manual/de/stock/tools/quality-inspection.md
+++ b/erpnext/docs/user/manual/de/stock/tools/quality-inspection.md
@@ -5,6 +5,6 @@
 
 >  Lagerbestand > Werkzeuge > Qualitätsprüfung > Neu
 
-<img class="screenshot" alt="Qualitätsprüfung" src="{{docs_base_url}}/assets/img/stock/quality-inspection.png">
+<img class="screenshot" alt="Qualitätsprüfung" src="/docs/assets/img/stock/quality-inspection.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/de/stock/warehouse.md b/erpnext/docs/user/manual/de/stock/warehouse.md
index a2e6c43..56c5913 100644
--- a/erpnext/docs/user/manual/de/stock/warehouse.md
+++ b/erpnext/docs/user/manual/de/stock/warehouse.md
@@ -7,7 +7,7 @@
 
 > Lagerbestand > Einstellungen > Lager > Neu
 
-<img class="screenshot" alt="Lager" src="{{docs_base_url}}/assets/img/stock/warehouse.png">
+<img class="screenshot" alt="Lager" src="/docs/assets/img/stock/warehouse.png">
 
 In ERPNext muss jedes Lager einer festen Firma zugeordnet sein, um einen unternehmensbezogenen Lagerbestand zu erhalten. Die Lager werden mit den ihnen zugeordneten Firmenkürzeln abgespeichert. Dies erleichtert es auf einen Blick herauszufinden, welches Lager zu welcher Firma gehört.
 
diff --git a/erpnext/docs/user/manual/de/support/issue.md b/erpnext/docs/user/manual/de/support/issue.md
index 37a1b84..7b8e911 100644
--- a/erpnext/docs/user/manual/de/support/issue.md
+++ b/erpnext/docs/user/manual/de/support/issue.md
@@ -3,11 +3,11 @@
 
 Bei einem Fall handelt es ich um eine eingehende Nachricht vom Kunden, normalerweise per Email oder aus der Kontaktschnittstelle Ihrer Webseite (Um das Supportticket vollständig in Ihre Emails einzubinden, lesen Sie bitte bei "Email-Einstellungen" nach).
 
-> Tipp: Eine eigens eingerichtete Email-Adresse für Supportanfragen ist eine gute Möglichkeit um per Email eingehende Anfragen zu handhaben. Beispiel: Sie können Supportanfragen über support@erpnext.com an ERPNext senden und es werden automatisch im Frappe-System Einträge erstellt.
+> Tipp: Eine eigens eingerichtete Email-Adresse für Supportanfragen ist eine gute Möglichkeit um per Email eingehende Anfragen zu handhaben. Beispiel: Sie können Supportanfragen über support@erpnext.com an ERPNext senden und es werden automatisch im Frappé-System Einträge erstellt.
 
 > Support > Dokumente > Anfrage > Neu
 
-<img class="screenshot" alt="Fall" src="{{docs_base_url}}/assets/img/support/issue.png">
+<img class="screenshot" alt="Fall" src="/docs/assets/img/support/issue.png">
 
 ### Gesprächsaufzeichnung
 
diff --git a/erpnext/docs/user/manual/de/support/maintenance-schedule.md b/erpnext/docs/user/manual/de/support/maintenance-schedule.md
index dcc88ae..df08375 100644
--- a/erpnext/docs/user/manual/de/support/maintenance-schedule.md
+++ b/erpnext/docs/user/manual/de/support/maintenance-schedule.md
@@ -9,7 +9,7 @@
 
 > Support > Dokumente > Wartungsplan > Neu
 
-<img class="screenshot" alt="Wartungsplan" src="{{docs_base_url}}/assets/img/support/maintenance-schedule.png">
+<img class="screenshot" alt="Wartungsplan" src="/docs/assets/img/support/maintenance-schedule.png">
 
 Im Wartungsplan gibt es zwei Abschnitte:
 
diff --git a/erpnext/docs/user/manual/de/support/maintenance-visit.md b/erpnext/docs/user/manual/de/support/maintenance-visit.md
index d215c73..86ed897 100644
--- a/erpnext/docs/user/manual/de/support/maintenance-visit.md
+++ b/erpnext/docs/user/manual/de/support/maintenance-visit.md
@@ -5,7 +5,7 @@
 
 > Support > Dokumente > Wartungsbesuch > Neu
 
-<img class="screenshot" alt="Wartungsbesuch" src="{{docs_base_url}}/assets/img/support/maintenance-visit.png">
+<img class="screenshot" alt="Wartungsbesuch" src="/docs/assets/img/support/maintenance-visit.png">
 
 Der Wartungsbesuch inhält Informationen über:
 
diff --git a/erpnext/docs/user/manual/de/support/warranty-claim.md b/erpnext/docs/user/manual/de/support/warranty-claim.md
index 42ae52d..a54aac8 100644
--- a/erpnext/docs/user/manual/de/support/warranty-claim.md
+++ b/erpnext/docs/user/manual/de/support/warranty-claim.md
@@ -11,7 +11,7 @@
 
 > Support > Dokukumente > Garantieantrag > Neu
 
-![Warranty Claim]({{docs_base_url}}/assets/img/support/warranty-claim.png)
+![Warranty Claim](/docs/assets/img/support/warranty-claim.png)
 
 Wenn für die Lösung des Problems ein Besuch beim Kunden notwendig ist, können Sie einen neuen Wartungsbesuch erstellen.
 
diff --git a/erpnext/docs/user/manual/de/using-erpnext/assignment.md b/erpnext/docs/user/manual/de/using-erpnext/assignment.md
index 6631491..e24d132 100644
--- a/erpnext/docs/user/manual/de/using-erpnext/assignment.md
+++ b/erpnext/docs/user/manual/de/using-erpnext/assignment.md
@@ -11,9 +11,9 @@
 
 Die Option "Zuweisen zu" befindet sich in der Fußzeile des Dokuments. Wenn Sie auf das Zuteilungs-Symbol in der Werkzeugleiste klicken, werden Sie schnell zur Fußzeile des selben Dokuments weiter geleitet.
 
-![Symbol für Zuweisung]({{docs_base_url}}/assets/old_images/erpnext/assigned-to-icon.png)
+![Symbol für Zuweisung](/docs/assets/old_images/erpnext/assigned-to-icon.png)
 
-![Zugewiesen zu]({{docs_base_url}}/assets/old_images/erpnext/assigned-to.png)
+![Zugewiesen zu](/docs/assets/old_images/erpnext/assigned-to.png)
 
 ### Schritt 2: Zu einem Benutzer zuweisen
 
@@ -21,19 +21,19 @@
 
 Bei der Zuordnung können Sie auch einen Kommentar für denjenigen hinterlassen, dem das Dokument zugeordnet wird.
 
-![Benutzer zuweisen]({{docs_base_url}}/assets/old_images/erpnext/assign-user.png)
+![Benutzer zuweisen](/docs/assets/old_images/erpnext/assign-user.png)
 
 ### Aufgabenliste des Empfängers
 
 Diese Transaktion erscheint in der Aufgabenliste des Empfängers.
 
-![Todo zuweisen]({{docs_base_url}}/assets/old_images/erpnext/assign-todo.png)
+![Todo zuweisen](/docs/assets/old_images/erpnext/assign-todo.png)
 
 Zuordnung entfernen
 
 Ein Benutzer kann eine Zuordnung entfernen, indem im Dokument die Schaltfläche "Zuordnung abgeschlossen" angeklickt wird.
 
-![Zuordnung entfernen]({{docs_base_url}}/assets/old_images/erpnext/assign-remove.png)
+![Zuordnung entfernen](/docs/assets/old_images/erpnext/assign-remove.png)
 
 Wenn die Zuordnung einmal als abgeschlossen markiert wurde, wird der Status des zugehörigen Eintrages in der Aufgabenliste auf "Abgeschlossen" gesetzt.
 
diff --git a/erpnext/docs/user/manual/de/using-erpnext/calendar.md b/erpnext/docs/user/manual/de/using-erpnext/calendar.md
index 42d884b..8be1609 100644
--- a/erpnext/docs/user/manual/de/using-erpnext/calendar.md
+++ b/erpnext/docs/user/manual/de/using-erpnext/calendar.md
@@ -5,7 +5,7 @@
 
 Sie können die Kalenderansicht umschalten zwischen Monatsansicht, Wochenansicht und Tagesansicht.
 
-<img class="screenshot" alt="Calendar" src="{{docs_base_url}}/assets/img/collaboration-tools/calendar-1.png">
+<img class="screenshot" alt="Calendar" src="/docs/assets/img/collaboration-tools/calendar-1.png">
 
 ### Ereignisse im Kalender erstellen
 
@@ -15,7 +15,7 @@
 
 Diese Ansicht zeigt die 24 Stunden des Tages aufgeteilt in verschiedene Zeitfenster an. Klicken Sie für den Startzeitpunkt auf ein Zeitfenster und ziehen Sie den Rahmen auf bis Sie den Endzeitpunkt erreichen.
 
-<img class="screenshot" alt="Calendar" src="{{docs_base_url}}/assets/img/collaboration-tools/calendar-2.gif">
+<img class="screenshot" alt="Calendar" src="/docs/assets/img/collaboration-tools/calendar-2.gif">
 
 Auf Grundlage der Auswahl des Zeitfensters werden Start- und Endzeitpunkt in die Ereignisvorlage übernommen. Sie können dann noch die Bezeichnung des Ereignisses angeben und speichern.
 
@@ -23,7 +23,7 @@
 
 Im Leadformular finden Sie die Felder "Nächster Kontakt durch" und "Nächstes Kontaktdatum". Wenn Sie in diesen Feldern einen Termin und eine Kontaktperson eintragen, wird automatisch ein Ereignis erstellt.
 
-<img class="screenshot" alt="Lead Event" src="{{docs_base_url}}/assets/img/collaboration-tools/calendar-3.png">
+<img class="screenshot" alt="Lead Event" src="/docs/assets/img/collaboration-tools/calendar-3.png">
 
 #### Geburtstag
 
@@ -33,7 +33,7 @@
 
 Sie können Ereignisse als wiederkehrend in bestimmten Intervallen markieren, indem Sie "Dieses Ereignis wiederholen" aktivieren.
 
-<img class="screenshot" alt="Calendar Recurring Event" src="{{docs_base_url}}/assets/img/collaboration-tools/calendar-4.png">
+<img class="screenshot" alt="Calendar Recurring Event" src="/docs/assets/img/collaboration-tools/calendar-4.png">
 
 ### Erinnerungen an Ereignisse
 
@@ -43,7 +43,7 @@
 
 Wenn Sie in der Ereignisvorlage den Punkt "E-Mail-Erinnerung am Morgen senden" anklicken, erhalten alle Teilnehmer an diesem Ereignis eine Benachrichtungs-E-Mail.
 
-<img class="screenshot" alt="Calendar Recurring Event" src="{{docs_base_url}}/assets/img/collaboration-tools/calendar-6.png">
+<img class="screenshot" alt="Calendar Recurring Event" src="/docs/assets/img/collaboration-tools/calendar-6.png">
 
 #### Einen täglichen E-Mail-Bericht erstellen
 
@@ -53,6 +53,6 @@
 
 > Einstellungen > E-Mail > Täglicher E-Mail-Bericht
 
-<img class="screenshot" alt="Calendar Recurring Event" src="{{docs_base_url}}/assets/img/collaboration-tools/calender-email-digest.png">
+<img class="screenshot" alt="Calendar Recurring Event" src="/docs/assets/img/collaboration-tools/calender-email-digest.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/de/using-erpnext/collaborating-around-forms.md b/erpnext/docs/user/manual/de/using-erpnext/collaborating-around-forms.md
index 3107a2b..956a774 100644
--- a/erpnext/docs/user/manual/de/using-erpnext/collaborating-around-forms.md
+++ b/erpnext/docs/user/manual/de/using-erpnext/collaborating-around-forms.md
@@ -5,7 +5,7 @@
 
 Sie können jedwede Transaktion aus dem System versenden, indem Sie auf die Schaltfläche "Zugeordnet zu" klicken. Im Menü "Kommunikation" wird ein Protokoll aller von Ihnen versendeter E-Mails gepflegt.
 
-![Formulare]({{docs_base_url}}/assets/old_images/erpnext/forms.png)
+![Formulare](/docs/assets/old_images/erpnext/forms.png)
 
 ### Kommentar
 
@@ -13,6 +13,6 @@
 
 ### Schlagworte
 
-Lesen Sie hier mehr über [Schlagworte]({{docs_base_url}}/user/manual/de/using-erpnext/tags.html)
+Lesen Sie hier mehr über [Schlagworte](/docs/user/manual/de/using-erpnext/tags.html)
 
 {next}
diff --git a/erpnext/docs/user/manual/de/using-erpnext/messages.md b/erpnext/docs/user/manual/de/using-erpnext/messages.md
index 11722a6..f9d1796 100644
--- a/erpnext/docs/user/manual/de/using-erpnext/messages.md
+++ b/erpnext/docs/user/manual/de/using-erpnext/messages.md
@@ -3,10 +3,10 @@
 
 Sie können mithilfe des Nachrichtenwerkzeuges Mitteilungen über das System versenden und empfangen. Wenn Sie einem Benutzer eine Mitteilung senden, und der Benutzer angemeldet ist, öffnet sich ein Mitteilungsfenster und der Zähler für ungelesene Mitteilungen in der Kopfleiste wird angepasst.
 
-![Liste der Mitteilungen]({{docs_base_url}}/assets/old_images/erpnext/message-list.png)
+![Liste der Mitteilungen](/docs/assets/old_images/erpnext/message-list.png)
 
 Sie können Mitteilungen an alle Benutzer oder nur an bestimmte versenden.
 
-![Mitteilung an]({{docs_base_url}}/assets/old_images/erpnext/message-to.png)
+![Mitteilung an](/docs/assets/old_images/erpnext/message-to.png)
 
 {next}
diff --git a/erpnext/docs/user/manual/de/using-erpnext/notes.md b/erpnext/docs/user/manual/de/using-erpnext/notes.md
index a791352..cb79771 100644
--- a/erpnext/docs/user/manual/de/using-erpnext/notes.md
+++ b/erpnext/docs/user/manual/de/using-erpnext/notes.md
@@ -11,13 +11,13 @@
 
 Geben Sie Titel und Inhalt ein.
 
-![Anmerkung]({{docs_base_url}}/assets/old_images/erpnext/note.png)
+![Anmerkung](/docs/assets/old_images/erpnext/note.png)
 
 ## Berechtigungen für ausgewählte Benutzer setzen
 
 Damit alle auf eine Anmerkung zugreifen können, aktivieren Sie "Öffentlich" unter dem Abschnitt Verknüpfungen. Damit ein Benutzer auf eine bestimmte Anmerkung zugreifen kann, können diese in der Tabelle "Teilen mit" ausgewählt werden.
 
-![Berechtigungen für Anmerkungen]({{docs_base_url}}/assets/old_images/erpnext/note-permission.png)
+![Berechtigungen für Anmerkungen](/docs/assets/old_images/erpnext/note-permission.png)
 
 Anmerkungen können intern auch als Wissensdatenbank genutzt werden. Sie können an die Anmerkungen auch Dateien anhängen und diese einer bestimmten Auswahl an Benutzern zugänglich machen.
 
diff --git a/erpnext/docs/user/manual/de/using-erpnext/tags.md b/erpnext/docs/user/manual/de/using-erpnext/tags.md
index 68282b8..e61a598 100644
--- a/erpnext/docs/user/manual/de/using-erpnext/tags.md
+++ b/erpnext/docs/user/manual/de/using-erpnext/tags.md
@@ -3,6 +3,6 @@
 
 Genauso wie Zuordnungen und Kommentare können Sie auch Ihre eigenen Schlagworte zu jeder Art von Transaktionen hinzufügen. Diese Schlagworte helfen Ihnen bei der Suche nach einem Dokument und klassifizieren dieses. ERPNext zeigt Ihnen die wichtigen Schlagworte in der Dokumentenliste an.
 
-![Schlagworte]({{docs_base_url}}/assets/old_images/erpnext/tags-in-list.png)
+![Schlagworte](/docs/assets/old_images/erpnext/tags-in-list.png)
 
 {next}
diff --git a/erpnext/docs/user/manual/de/using-erpnext/to-do.md b/erpnext/docs/user/manual/de/using-erpnext/to-do.md
index 70e7188..54b6cf4 100644
--- a/erpnext/docs/user/manual/de/using-erpnext/to-do.md
+++ b/erpnext/docs/user/manual/de/using-erpnext/to-do.md
@@ -3,10 +3,10 @@
 
 "Aufgaben" ist ein einfaches Werkzeug, welches alle Aktivitäten, die Ihnen [zugeordnet](https://erpnext.com/collaboration-tools/assignment) wurden, und die Sie zugeordnet haben, auflistet. Sie können zudem Ihre eigenen ToDos der Liste hinzufügen.
 
-![Todo-Liste]({{docs_base_url}}/assets/old_images/erpnext/todo-list.png)
+![Todo-Liste](/docs/assets/old_images/erpnext/todo-list.png)
 
 Wenn eine Aufgabe abgeschlossen wurde, können Sie einfach die Zuweisung vom Dokument entfernen. Dabei wird die Aufgabe von der ToDo-Liste entfernt. Bei Aufgaben, die nicht über ein Dokument zugeordnet wurden, können Sie den Status über den ToDo-Datensatz selbst auf "abgeschlossen" setzen.
 
-![Todos abschliessen]({{docs_base_url}}/assets/old_images/erpnext/todo-close.png)
+![Todos abschliessen](/docs/assets/old_images/erpnext/todo-close.png)
 
 {next}
diff --git a/erpnext/docs/user/manual/de/website/blog-post.md b/erpnext/docs/user/manual/de/website/blog-post.md
index 1641ea9..c316577 100644
--- a/erpnext/docs/user/manual/de/website/blog-post.md
+++ b/erpnext/docs/user/manual/de/website/blog-post.md
@@ -9,12 +9,12 @@
 
 > Webseite > Blog-Eintrag > Neu
 
-<img class="screenshot" alt="Blogeintrag" src="{{docs_base_url}}/assets/img/website/blog-post.png">
+<img class="screenshot" alt="Blogeintrag" src="/docs/assets/img/website/blog-post.png">
 
 Sie können einen Blog mit Hilfe des Markdown-Formats formatieren. Sie können auf Ihren Blog auch zugreifen, indem Sie zur Seite "blog.html" gehen.
 
 #### Ein Beispiel für einen Blog.
 
-<img class="screenshot" alt="Beispiel für ein Blog" src="{{docs_base_url}}/assets/img/website/blog-sample.png">
+<img class="screenshot" alt="Beispiel für ein Blog" src="/docs/assets/img/website/blog-sample.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/de/website/blogger.md b/erpnext/docs/user/manual/de/website/blogger.md
index 8d81b39..6332fb6 100644
--- a/erpnext/docs/user/manual/de/website/blogger.md
+++ b/erpnext/docs/user/manual/de/website/blogger.md
@@ -3,6 +3,6 @@
 
 Ein Blogger ist ein Benutzer, der Blog-Einträge erstellen kann. Sie können eine Kurzbiografie des Bloggers angeben und dazu einen Avatar.
 
-<img class="screenshot" alt="Blogger" src="{{docs_base_url}}/assets/img/website/blogger.png">
+<img class="screenshot" alt="Blogger" src="/docs/assets/img/website/blogger.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/de/website/setup/website-settings.md b/erpnext/docs/user/manual/de/website/setup/website-settings.md
index 45a4498..2082455 100644
--- a/erpnext/docs/user/manual/de/website/setup/website-settings.md
+++ b/erpnext/docs/user/manual/de/website/setup/website-settings.md
@@ -3,11 +3,11 @@
 
 Die meisten der Einstellungen, die Ihre Webseite betreffen, können hier eingestellt werden.
 
-<img class="screenshot" alt="Webseiten-Einstellungen" src="{{docs_base_url}}/assets/img/website/website-settings.png">
+<img class="screenshot" alt="Webseiten-Einstellungen" src="/docs/assets/img/website/website-settings.png">
 
 ### Zielseite
 
-* Homepage: Sie können angeben, welche [Webseite]({{docs_base_url}}/user/manual/de/website/web-page.html) die Startseite der Homepage ist.
+* Homepage: Sie können angeben, welche [Webseite](/docs/user/manual/de/website/web-page.html) die Startseite der Homepage ist.
 * Startseite ist "Products": Wenn diese Option markiert ist, ist die Standard-Artikelgruppe die Startseite der Webseite.
 * Titel-Präfix: Stellt den Browser-Titel ein.
 
@@ -15,7 +15,7 @@
 
 Wählen Sie das Thema für Ihre Webseite aus. Sie können auch neue Themen für Ihre Webseite erstellen.
 
-<img class="screenshot" alt="Webseiten-Themen" src="{{docs_base_url}}/assets/img/website/website-theme.png">
+<img class="screenshot" alt="Webseiten-Themen" src="/docs/assets/img/website/website-theme.png">
 
 * Wählen "Neues Webseiten-Thema erstellen" wenn Sie das Standars-Thema der Webseite anpassen wollen.
 
@@ -23,13 +23,13 @@
 
 Hier können Sie ein Banner/Logo auf Ihrer Webseite hinzufügen. Hängen Sie das Bild an und klicken Sie auf "Banner aus Bild einrichten". Das System erstellt einen HTML-Kode unter Banner HTML.
 
-<img class="screenshot" alt="Banner" src="{{docs_base_url}}/assets/img/website/banner.png">
+<img class="screenshot" alt="Banner" src="/docs/assets/img/website/banner.png">
 
 ### Kopfleiste
 
 Hier können Sie die Menüeinträge in der Kopfleiste einstellen.
 
-<img class="screenshot" alt="Kopfleiste" src="{{docs_base_url}}/assets/img/website/top-bar.png">
+<img class="screenshot" alt="Kopfleiste" src="/docs/assets/img/website/top-bar.png">
 
 * In ähnlicher Art und Weise können Sie auch die Verknüpfungen auf der Seitenleiste und in der Fußzeile einstellen.
 
@@ -37,7 +37,7 @@
 
 Sie können Google Analytics und soziale Netzwerke in Ihre Webseite mit einbinden und Einträge auf der Webseite teilen.
 
-<img class="screenshot" alt="Einbindungen" src="{{docs_base_url}}/assets/img/website/integrations.png">
+<img class="screenshot" alt="Einbindungen" src="/docs/assets/img/website/integrations.png">
 
 * Sie können ein öffentliches Anmelden auf Ihr ERPNext-Konto unterbinden indem Sie auf "Anmelden deaktivieren" klicken.
 
diff --git a/erpnext/docs/user/manual/de/website/web-form.md b/erpnext/docs/user/manual/de/website/web-form.md
index 473f2c7..e8c9850 100644
--- a/erpnext/docs/user/manual/de/website/web-form.md
+++ b/erpnext/docs/user/manual/de/website/web-form.md
@@ -18,7 +18,7 @@
 3. Geben Sie an, ob sich der Benutzer einloggen muss, Daten ändern muss, mehrere verschiedene Datensätze verwalten soll, etc.
 4. Fügen Sie die Felder, die Sie in den Datensätzen haben wollen, hinzu.
 
-<img class="screenshot" alt="Webformular" src="{{docs_base_url}}/assets/img/website/web-form.png">
+<img class="screenshot" alt="Webformular" src="/docs/assets/img/website/web-form.png">
 
 * * *
 
@@ -26,7 +26,7 @@
 
 Wenn Sie das Web-Formular erstellt haben, können Sie es unter der URL ansehen und ausprobieren!
 
-<img class="screenshot" alt="Webformular" src="{{docs_base_url}}/assets/img/website/web-form-view.png">
+<img class="screenshot" alt="Webformular" src="/docs/assets/img/website/web-form-view.png">
 
 * * *
 
diff --git a/erpnext/docs/user/manual/de/website/web-page.md b/erpnext/docs/user/manual/de/website/web-page.md
index 91bd7d5..96f917f 100644
--- a/erpnext/docs/user/manual/de/website/web-page.md
+++ b/erpnext/docs/user/manual/de/website/web-page.md
@@ -7,7 +7,7 @@
 
 > Webseite > Webseite > Neu
 
-<img class="screenshot" alt="Webseit" src="{{docs_base_url}}/assets/img/website/web-page.png">
+<img class="screenshot" alt="Webseit" src="/docs/assets/img/website/web-page.png">
 
 ### Bezeichnung
 
diff --git a/erpnext/docs/user/manual/en/CRM/contact.md b/erpnext/docs/user/manual/en/CRM/contact.md
index f87f82c..dcc8e17 100644
--- a/erpnext/docs/user/manual/en/CRM/contact.md
+++ b/erpnext/docs/user/manual/en/CRM/contact.md
@@ -18,12 +18,12 @@
 
 > CRM > Contact > New
 
-<img class="screenshot" alt="Contact" src="{{docs_base_url}}/assets/img/crm/contact.png">
+<img class="screenshot" alt="Contact" src="/docs/assets/img/crm/contact.png">
 
 Or you can add a Contact or Address directly from the Customer record, click on “New
 Contact” or “New Address”.
 
-<img class="screenshot" alt="Contact" src="{{docs_base_url}}/assets/img/crm/contact-from-cust.png">
+<img class="screenshot" alt="Contact" src="/docs/assets/img/crm/contact-from-cust.png">
 
 > Tip: When you select a Customer in any transaction, one Contact and Address
 gets pre-selected. This is the “Default Contact or Address”.
diff --git a/erpnext/docs/user/manual/en/CRM/crm_reports.md b/erpnext/docs/user/manual/en/CRM/crm_reports.md
index 4ff9aa5..4ac90bb 100644
--- a/erpnext/docs/user/manual/en/CRM/crm_reports.md
+++ b/erpnext/docs/user/manual/en/CRM/crm_reports.md
@@ -1,9 +1,11 @@
+# Crm Reports
+
 CRM module's reports helps users to get the information about the prospects. Using Following reports, user can analyze the data about prospect's history with a company and will helps user to build strong relationships with them.
 
 ###Lead Details
 It has data about the leads and their contact and address details.
 <img alt="Lead Details" class="screenshot"
-    src="{{docs_base_url}}/assets/img/crm/report/lead.png">
+    src="/docs/assets/img/crm/report/lead.png">
 
 ###Sales Funnel
 By using the sales funnel report, and by quantifying the number of prospects at each stage of the process, you can get an idea of your potential customers.
@@ -13,28 +15,28 @@
 For example, if you notice that very few communications with the prospects has taken place in a month which might indicate a decrease in the sales. From the next month, organization should make sure that more communications has to take place with the prospects.
 
 <img alt="Lead Details" class="screenshot"
-    src="{{docs_base_url}}/assets/img/crm/report/sales_funnel.png">
+    src="/docs/assets/img/crm/report/sales_funnel.png">
 
 ###Prospects Engaged But Not Converted
 Using this report, user gets the information about the leads who has shown interest in the business with you but due to some reason they were not converted into the customers.
 
 <img alt="Lead Details" class="screenshot"
-    src="{{docs_base_url}}/assets/img/crm/report/prospects_engaged_but_not_converted.png">
+    src="/docs/assets/img/crm/report/prospects_engaged_but_not_converted.png">
 
 ###Minutes to First Response for Opportunity
 Immediacy is so important – and so valued 
 In this internet area, we all expect a quicker response time to any of our query. This report gives you the information about the first response time given to an opportunities or issues. Using this report, the organization can improve their first response time to the prospects which can help to the better sales in the future.
 
 <img alt="Lead Details" class="screenshot"
-    src="{{docs_base_url}}/assets/img/crm/report/minutes_to_first_response.png">
+    src="/docs/assets/img/crm/report/minutes_to_first_response.png">
 
 ###Customer Addresses And Contacts
 It has data about the customers and their contact and address details.
 <img alt="Lead Details" class="screenshot"
-    src="{{docs_base_url}}/assets/img/crm/report/customer_address_and_contact.png">
+    src="/docs/assets/img/crm/report/customer_address_and_contact.png">
 
 ###Inactive Customers
 This report shows the list of customers who has not purchased since long time.
 
 <img alt="Lead Details" class="screenshot"
-    src="{{docs_base_url}}/assets/img/crm/report/inactive_customers.png">
+    src="/docs/assets/img/crm/report/inactive_customers.png">
diff --git a/erpnext/docs/user/manual/en/CRM/customer.md b/erpnext/docs/user/manual/en/CRM/customer.md
index 24971bf..5924665 100644
--- a/erpnext/docs/user/manual/en/CRM/customer.md
+++ b/erpnext/docs/user/manual/en/CRM/customer.md
@@ -1,3 +1,5 @@
+# Customer
+
 A customer, who is sometimes known as a client, buyer, or purchaser is the one
 who receives goods, services, products, or ideas, from a seller for a monetary
 consideration. A customer can also receive goods or services from a vendor or
@@ -9,20 +11,20 @@
 
 > Selling > Customer
 
-<img class="screenshot" alt="Create Customer" src="{{docs_base_url}}/assets/img/crm/create-customer.gif">
+<img class="screenshot" alt="Create Customer" src="/docs/assets/img/crm/create-customer.gif">
 
-or upload it via the [Data Import Tool]({{docs_base_url}}/user/manual/en/setting-up/data/data-import-tool.html).
+or upload it via the [Data Import Tool](/docs/user/manual/en/setting-up/data/data-import-tool.html).
 
 A Customer can avail the features (operations) in the selling process. The general flow can be summarised as:
 
-<img class="screenshot" alt="Customer" src="{{docs_base_url}}/assets/img/crm/customer-to selling-flowchart.jpeg">
+<img class="screenshot" alt="Customer" src="/docs/assets/img/crm/customer-to selling-flowchart.jpeg">
 
 > Note: Customers are separate from Contacts and Addresses. A Customer can
 have multiple Contacts and Addresses.
 
 ### Contacts and Addresses
 
-[Contacts and Addresses]({{docs_base_url}}/user/manual/en/CRM/contact.html) in ERPNext are stored separately so that you can
+[Contacts and Addresses](/docs/user/manual/en/CRM/contact.html) in ERPNext are stored separately so that you can
 attach multiple Contacts or Addresses to Customers and Suppliers
 
 Thus we may have identical Customer Names that are uniquely identified by the ID. Since the email address is not part of the
@@ -45,7 +47,7 @@
 By default, the system does not generate an account for every customer. All
 Customers can be booked in one account called Debtors. In order to manage a
 separate account for each customer, you have to first create the account under
-Accounts Receivable in the [Chart of Accounts]({{docs_base_url}}/user/manual/en/accounts/chart-of-accounts.html) and then add it on the customer's
+Accounts Receivable in the [Chart of Accounts](/docs/user/manual/en/accounts/chart-of-accounts.html) and then add it on the customer's
 form accounts table.
 
 ### Customer Settings
@@ -60,12 +62,12 @@
 “Credit Limit”. You can also set a global “Credit Limit” in the Company
 master. Classifying Customers
 
-ERPNext allows you to group your Customers using [Customer Group]({{docs_base_url}}/user/manual/en/CRM/setup/customer-group.html)
-and also divide them into [Territories]({{docs_base_url}}/user/manual/en/setting-up/territory.html)
+ERPNext allows you to group your Customers using [Customer Group](/docs/user/manual/en/CRM/setup/customer-group.html)
+and also divide them into [Territories](/docs/user/manual/en/setting-up/territory.html)
 Grouping will help you get better analysis of your data and
 identify which Customers are profitable and which are not. Territories will
 help you set sales targets for the respective territories.
-You can also mention [Sales Person]({{docs_base_url}}/user/manual/en/CRM/setup/sales-person.html) against a customer.
+You can also mention [Sales Person](/docs/user/manual/en/CRM/setup/sales-person.html) against a customer.
 
 ### Sales Partner
 
diff --git a/erpnext/docs/user/manual/en/CRM/lead.md b/erpnext/docs/user/manual/en/CRM/lead.md
index 52fa2cc..15b1159 100644
--- a/erpnext/docs/user/manual/en/CRM/lead.md
+++ b/erpnext/docs/user/manual/en/CRM/lead.md
@@ -1,3 +1,5 @@
+# Lead
+
 To get the customer through the door, you may be doing all or any of the
 following:
 
@@ -24,7 +26,7 @@
 
 > CRM > Lead > New Lead
 
-<img class="screenshot" alt="Lead" src="{{docs_base_url}}/assets/img/crm/lead.png">
+<img class="screenshot" alt="Lead" src="/docs/assets/img/crm/lead.png">
 
 ERPNext gives you a lot of options you may want to store about your Leads. For
 example what is the source, how likely are they to give you business etc. If
@@ -46,7 +48,7 @@
 further Opportunities from the same source can be created against this
 Customer.
 
-<img class="screenshot" alt="Create Customer" src="{{docs_base_url}}/assets/img/crm/lead-to-customer.gif">
+<img class="screenshot" alt="Create Customer" src="/docs/assets/img/crm/lead-to-customer.gif">
 
 ---
 
diff --git a/erpnext/docs/user/manual/en/CRM/newsletter.md b/erpnext/docs/user/manual/en/CRM/newsletter.md
index 9749e17..2aac1b2 100644
--- a/erpnext/docs/user/manual/en/CRM/newsletter.md
+++ b/erpnext/docs/user/manual/en/CRM/newsletter.md
@@ -1,3 +1,5 @@
+# Newsletter
+
 A newsletter is a short written report that tells about the recent activities
 of an organization. It is generally sent to members of the organization,
 potential clients customers or potential leads.
@@ -12,8 +14,8 @@
 document before testing. A test email will be sent to your Email Address. You can
 send the email to all the intended receipients by clicking on the send button.
 
-<img class="screenshot" alt="Newsletter - New" src="{{docs_base_url}}/assets/img/crm/newsletter-new.png">
+<img class="screenshot" alt="Newsletter - New" src="/docs/assets/img/crm/newsletter-new.png">
 
-<img class="screenshot" alt="Newsletter - Test" src="{{docs_base_url}}/assets/img/crm/newsletter-test.png">
+<img class="screenshot" alt="Newsletter - Test" src="/docs/assets/img/crm/newsletter-test.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/en/CRM/opportunity.md b/erpnext/docs/user/manual/en/CRM/opportunity.md
index 4651a75..94338f9 100644
--- a/erpnext/docs/user/manual/en/CRM/opportunity.md
+++ b/erpnext/docs/user/manual/en/CRM/opportunity.md
@@ -1,3 +1,5 @@
+# Opportunity
+
 When you know a Lead is looking for some products or services to buy, you can
 track that as an Opportunity. Also opportunity document helps user to collect the requirement of a customer/lead.
 
@@ -7,17 +9,17 @@
 
 #### Figure 1: Create Opportunity
 
-<img class="screenshot" alt="Opportunity" src="{{docs_base_url}}/assets/img/crm/new-opportunity.gif">
+<img class="screenshot" alt="Opportunity" src="/docs/assets/img/crm/new-opportunity.gif">
 
 You can also go to an “Open” Lead and select “Opportunity” from the **Make** dropdown.
 
 #### Figure 2: Create Opportunity from an open Lead
 
-<img class="screenshot" alt="Opportunity" src="{{docs_base_url}}/assets/img/crm/lead-to-opportunity.png">
+<img class="screenshot" alt="Opportunity" src="/docs/assets/img/crm/lead-to-opportunity.png">
 
 #### Figure 3: Create Opportunity for Customer to Collect their Requirement
 
-<img class="screenshot" alt="Opportunity" src="{{docs_base_url}}/assets/img/crm/requirement-gathering.png">
+<img class="screenshot" alt="Opportunity" src="/docs/assets/img/crm/requirement-gathering.png">
 
 An Opportunity can also come from an existing Customer. You can create
 multiple Opportunities against the same Lead. In Opportunity, apart from the
@@ -27,7 +29,7 @@
 #### Make Supplier Quotation
 In some businesses, users collect the rates from their supplier against the customer requirement and based on the supplier rates they prepare the quotation for the customer. With ERPNext, you can make a supplier quotation from the opportunity itself.
 
-<img class="screenshot" alt="Opportunity" src="{{docs_base_url}}/assets/img/crm/make-sq-from-opportunity.png">
+<img class="screenshot" alt="Opportunity" src="/docs/assets/img/crm/make-sq-from-opportunity.png">
 
 > Best Practice: Leads and Opportunities are often referred as your “Sales
 Pipeline” this is what you need to track if you want to be able to predict how
diff --git a/erpnext/docs/user/manual/en/CRM/setup/campaign.md b/erpnext/docs/user/manual/en/CRM/setup/campaign.md
index 9714350..17b06f1 100644
--- a/erpnext/docs/user/manual/en/CRM/setup/campaign.md
+++ b/erpnext/docs/user/manual/en/CRM/setup/campaign.md
@@ -1,20 +1,22 @@
+# Campaign
+
 A Campaign is a full-scale implementation of a sales strategy to promote a
 product or a service. This is done in a market segment of a particular
 geographical area, to achieve specified objectives.
 
-<img class="screenshot" alt="Campaign" src="{{docs_base_url}}/assets/img/crm/campaign.png">
+<img class="screenshot" alt="Campaign" src="/docs/assets/img/crm/campaign.png">
 
-You can track [Lead]({{docs_base_url}}/user/manual/en/CRM/lead.html), [Opportunity]({{docs_base_url}}/user/manual/en/CRM/opportunity.html), [Quotation]({{docs_base_url}}/user/manual/en/selling/quotation.html) against a campaign.
+You can track [Lead](/docs/user/manual/en/CRM/lead.html), [Opportunity](/docs/user/manual/en/CRM/opportunity.html), [Quotation](/docs/user/manual/en/selling/quotation.html) against a campaign.
 
 ###Track Leads against Campaign
 
 * To track a 'Lead' against a campaign select 'View Leads'.
 
-<img class="screenshot" alt="Campaign - View Leads" src="{{docs_base_url}}/assets/img/crm/campaign-view-leads.png">
+<img class="screenshot" alt="Campaign - View Leads" src="/docs/assets/img/crm/campaign-view-leads.png">
 
 * You shall get a filtered list of all leads made against that campaign.
 * You can also create new leads by clicking 'New'
 
-<img class="screenshot" alt="Campaign - New Lead" src="{{docs_base_url}}/assets/img/crm/campaign-new-lead.png">
+<img class="screenshot" alt="Campaign - New Lead" src="/docs/assets/img/crm/campaign-new-lead.png">
 
 {next}
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/CRM/setup/customer-group.md b/erpnext/docs/user/manual/en/CRM/setup/customer-group.md
index 505c4fb..628057a 100644
--- a/erpnext/docs/user/manual/en/CRM/setup/customer-group.md
+++ b/erpnext/docs/user/manual/en/CRM/setup/customer-group.md
@@ -1,14 +1,16 @@
+# Customer Group
+
 Customer groups allow you to organize your customers. You can also have discounts based on customer groups.
 You can also get trend analysis for each
 group. Typically Customers are grouped by market segment (that is usually
 based on your domain).
 
-<img class="screenshot" alt="Customer Group Tree" src="{{docs_base_url}}/assets/img/crm/customer-group-tree.png">
+<img class="screenshot" alt="Customer Group Tree" src="/docs/assets/img/crm/customer-group-tree.png">
 
 > Tip: If you think all this is too much effort, you can leave it at “Default
 Customer Group”. But all this effort, will pay off when you start getting
 reports. An example of a sample report is given below:
 
-<img class="screenshot" alt="Customer Group report" src="{{docs_base_url}}/assets/img/crm/sales-analytics-customer.gif">
+<img class="screenshot" alt="Customer Group report" src="/docs/assets/img/crm/sales-analytics-customer.gif">
 
 {next}
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/CRM/setup/index.md b/erpnext/docs/user/manual/en/CRM/setup/index.md
index 259b5eb..2d85ad2 100644
--- a/erpnext/docs/user/manual/en/CRM/setup/index.md
+++ b/erpnext/docs/user/manual/en/CRM/setup/index.md
@@ -1,3 +1,5 @@
+# Setup
+
 
 ### Topics
 
diff --git a/erpnext/docs/user/manual/en/CRM/setup/sales-person.md b/erpnext/docs/user/manual/en/CRM/setup/sales-person.md
index ce5ed93..b96020e 100644
--- a/erpnext/docs/user/manual/en/CRM/setup/sales-person.md
+++ b/erpnext/docs/user/manual/en/CRM/setup/sales-person.md
@@ -1,14 +1,16 @@
+# Sales Person
+
 Sales Persons behave exactly like Territories. You can create an organization
 chart of Sales Persons where each Sales Person’s target can be set
 individually. Again as in Territory, the target has to be set against Item
 Group.
 
-<img class="screenshot" alt="Sales Person Tree" src="{{docs_base_url}}/assets/img/crm/sales-person-tree.png">
+<img class="screenshot" alt="Sales Person Tree" src="/docs/assets/img/crm/sales-person-tree.png">
 
 ####Sales Person in Transactions
 
 You can use this Sales Person in Customer and sales transactions like Sales Order, Delivery Note and Sales Invoice.
-Click [here]({{docs_base_url}}/user/manual/en/selling/articles/sales-persons-in-the-sales-transactions) to learn more 
+Click [here](/docs/user/manual/en/selling/articles/sales-persons-in-the-sales-transactions) to learn more 
 about how Sales Persons are used in the transactions of Sales Cycle.
 
 {next}
diff --git a/erpnext/docs/user/manual/en/accounts/accounting-entries.md b/erpnext/docs/user/manual/en/accounts/accounting-entries.md
index 7aeff24..abd2322 100644
--- a/erpnext/docs/user/manual/en/accounts/accounting-entries.md
+++ b/erpnext/docs/user/manual/en/accounts/accounting-entries.md
@@ -1,10 +1,12 @@
+# Accounting Entries
+
 The concept of accounting is explained with an example given below: We will
 take a "Tea Stall" as a company and see how to book accounting entries for the
 business.
 
   * Mama (The Tea-stall owner) invests Rs 25000 to start the business.
 
-![A&L]({{docs_base_url}}/assets/old_images/erpnext/assets-1.png)
+![A&L](/docs/assets/old_images/erpnext/assets-1.png)
 
 __Analysis:__ Mama invested 25000 in company, hoping to get some profit. In other
 words, company is liable to pay 25000 to Mama in the future. So, account
@@ -14,7 +16,7 @@
 
   * The company needs equipments (Stove, teapot, cups etc) and raw materials (tea, sugar, milk etc) immediately. He decides to buy from the nearest general store "Super Bazaar" who is a friend so that he gets some credit. Equipments cost him 2800 and raw materials worth of 2200. He pays 2000 out of total cost 5000.
 
-![A&L]({{docs_base_url}}/assets/old_images/erpnext/assets-2.png)
+![A&L](/docs/assets/old_images/erpnext/assets-2.png)
 
 __Analysis:__ Equipments are "Fixed Assets" (because they have a long life) of the
 company and raw materials "Current Assets" (since they are used for day-to-day
@@ -25,7 +27,7 @@
 
   * Mama (who takes care of all entries) decides to book sales at the end of the every day, so that he can analyze daily sales. At the end of the very first day, the tea stall sells 325 cups of tea, which gives net sales of Rs. 1575. The owner happily books his first day sales.
 
-![A&L]({{docs_base_url}}/assets/old_images/erpnext/assets-3.png)
+![A&L](/docs/assets/old_images/erpnext/assets-3.png)
 
 __Analysis:__ Income has been booked in "Sales of Tea" account which has been
 credited to increase the value and the same amount will be debited to "Cash"
@@ -36,7 +38,7 @@
 At the end of the month, the company paid the rent amount of stall (5000) and
 salary of one employee (8000), who joined from the very first day.
 
-![A&L]({{docs_base_url}}/assets/old_images/erpnext/assets-4.png)
+![A&L](/docs/assets/old_images/erpnext/assets-4.png)
 
 ### Booking Profit
 
@@ -47,7 +49,7 @@
 Sheet is not balanced i.e. Debit is not equal to Credit, the profit has not
 yet been booked. To book profit, the following entry has to be made:
 
-![A&L]({{docs_base_url}}/assets/old_images/erpnext/assets-5.png)
+![A&L](/docs/assets/old_images/erpnext/assets-5.png)
 
 Explanation: Company's net sales and expenses are 40000 and 20000
 respectively. So, company made a profit of 20000. To make the profit booking
diff --git a/erpnext/docs/user/manual/en/accounts/accounting-reports.md b/erpnext/docs/user/manual/en/accounts/accounting-reports.md
index 61470b1..99d7029 100644
--- a/erpnext/docs/user/manual/en/accounts/accounting-reports.md
+++ b/erpnext/docs/user/manual/en/accounts/accounting-reports.md
@@ -1,3 +1,5 @@
+# Accounting Reports
+
 Some of the major accounting reports are:
 
 ### General Ledger
@@ -7,7 +9,7 @@
 done in that period for that Account.
 
 <img alt="General Ledger" class="screenshot"
-    src="{{docs_base_url}}/assets/img/accounts/general-ledger.png">
+    src="/docs/assets/img/accounts/general-ledger.png">
 
 ### Trial Balance
 
@@ -20,7 +22,7 @@
   * Credits
   * Closing
 
-<img alt="Trial Balance" class="screenshot" src="{{docs_base_url}}/assets/img/accounts/trial-balance.png">
+<img alt="Trial Balance" class="screenshot" src="/docs/assets/img/accounts/trial-balance.png">
 
 The sum of all closing balances in a Trial Balance must be zero.
 
@@ -30,7 +32,7 @@
 Suppliers. In this report, you will get your outstanding amounts period wise.
 i.e. between 0-30 days, 30-60 days and so on.
 
-<img alt="Accounts Receivable" class="screenshot" src="{{docs_base_url}}/assets/img/accounts/accounts-receivable.png">
+<img alt="Accounts Receivable" class="screenshot" src="/docs/assets/img/accounts/accounts-receivable.png">
 
 ### Sales and Purchase Register
 
@@ -38,6 +40,6 @@
 invoice Item, you will get the amount of individual tax that has been paid,
 based on the Taxes and Charges table.
 
-<img alt="Sales Register" class="screenshot" src="{{docs_base_url}}/assets/img/accounts/sales-register.png">
+<img alt="Sales Register" class="screenshot" src="/docs/assets/img/accounts/sales-register.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/en/accounts/advance-payment-entry.md b/erpnext/docs/user/manual/en/accounts/advance-payment-entry.md
index 010d897..9627ff2 100644
--- a/erpnext/docs/user/manual/en/accounts/advance-payment-entry.md
+++ b/erpnext/docs/user/manual/en/accounts/advance-payment-entry.md
@@ -1,3 +1,5 @@
+# Advance Payment Entry
+
 Payment done by the customer before accepting delivery of the product is an
 Advance Payment. For Orders of high value, the business houses expect to
 receive advance.
@@ -22,7 +24,7 @@
 
 #### Figure 1 : Journal Entry -Advance Entry  
 
-<img class="screenshot" alt="Advace Payment" src="{{docs_base_url}}/assets/img/accounts/advance-payment-1.png">
+<img class="screenshot" alt="Advace Payment" src="/docs/assets/img/accounts/advance-payment-1.png">
 
 ### Double Entry Accounting  
 
@@ -39,7 +41,7 @@
   
 #### Figure 2: Transaction and Difference Entry
 
-<img class="screenshot" alt="Advace Payment" src="{{docs_base_url}}/assets/img/accounts/advance-payment-2.png">
+<img class="screenshot" alt="Advace Payment" src="/docs/assets/img/accounts/advance-payment-2.png">
 
 Save and submit the Journal Entry. If this document is not saved it will not be pulled in
 other accounting documents.
@@ -53,7 +55,7 @@
 
 #### Figure 3: Receive Advance 
 
-<img class="screenshot" alt="Advace Payment" src="{{docs_base_url}}/assets/img/accounts/advance-payment-3.png">
+<img class="screenshot" alt="Advace Payment" src="/docs/assets/img/accounts/advance-payment-3.png">
 
 Save and submit the Sales Invoice.
 
diff --git a/erpnext/docs/user/manual/en/accounts/articles/adjust-withhold-amount-payment-entry.md b/erpnext/docs/user/manual/en/accounts/articles/adjust-withhold-amount-payment-entry.md
index d469b28..01f6ef5 100644
--- a/erpnext/docs/user/manual/en/accounts/articles/adjust-withhold-amount-payment-entry.md
+++ b/erpnext/docs/user/manual/en/accounts/articles/adjust-withhold-amount-payment-entry.md
@@ -1,3 +1,5 @@
+# Adjust Withhold Amount Payment Entry
+
 #Adjust Withhold Amount in the Payment Entry
 
 ###Question
@@ -22,7 +24,7 @@
 
 Enter Payment Amount as 19,600.
 
-<img alt="Sales Invoice Payment Amount" class="screenshot" src="{{docs_base_url}}/assets/img/articles/withhold-1.png">
+<img alt="Sales Invoice Payment Amount" class="screenshot" src="/docs/assets/img/articles/withhold-1.png">
 
 #####Step 2.2: Allocate Against Sales Invoice
 
@@ -32,6 +34,6 @@
 
 You can notice that there is a difference of 400 in the Payment Amount and the Amount Allocated against Sales Invoice. You can book this difference account under Withhold Account.
 
-<img alt="Deduction/Loss Account" class="screenshot" src="{{docs_base_url}}/assets/img/articles/withhold-2.gif">
+<img alt="Deduction/Loss Account" class="screenshot" src="/docs/assets/img/articles/withhold-2.gif">
 
  Following same steps, you can also manage difference availed due to Currency Exchange Gain/Loss.
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/accounts/articles/c-form.md b/erpnext/docs/user/manual/en/accounts/articles/c-form.md
index 3c6e091..78d15ac 100644
--- a/erpnext/docs/user/manual/en/accounts/articles/c-form.md
+++ b/erpnext/docs/user/manual/en/accounts/articles/c-form.md
@@ -1,3 +1,5 @@
+# C Form
+
 #C-Form
 
 C-Form functionality is only applicable for Indian customers.
@@ -14,7 +16,7 @@
 
 While creating Sales invoice for the customer, set C-Form applicability in Sales Invoice. In More Info section of Sales Invoice, set field called **Is C-Form Applicable** as **Yes**. Bydefault, this field will have No for a value.
  
-![C-form]({{docs_base_url}}/assets/img/articles/Selection_0028c9f9a.png)
+![C-form](/docs/assets/img/articles/Selection_0028c9f9a.png)
 
 Updating this field as Yes will allow you to pull this Sales Invoice in the C-Form Tool, and update C-Form No. as received from the Customer.
 
@@ -26,22 +28,22 @@
 
 Enter details like C-Form No, Received Date, State and Amount etc. Select Customer and pull related Sales Invoices under provided table.
 
-![New C-Form]({{docs_base_url}}/assets/img/articles/Selection_020f01c1e.png)
+![New C-Form](/docs/assets/img/articles/Selection_020f01c1e.png)
 
 ####Save & Submit C-Form
 
 After entering details, save and submit C-Form record. On save system will generate C-Form record and on submission update that C-Form No. in the Sales Invoice.
 
-![C-Form]({{docs_base_url}}/assets/img/articles/Selection_02178f9d6.png)
+![C-Form](/docs/assets/img/articles/Selection_02178f9d6.png)
 
 C-Form serial no will be updated in related invoice under the field 'C-Form No'.
 
-![C-Form No]({{docs_base_url}}/assets/img/articles/Selection_022b7c6d5.png)
+![C-Form No](/docs/assets/img/articles/Selection_022b7c6d5.png)
 
 ####Tracking Pending Invoice for C-Form
 
 To track invoices for which C-Form has not yet been received from Customer, you can create custom report on Sales Invoice. In this report, you can filter invoices which doesn't have C-Form updated in them yet, and followup with the customer accordingly.
 
-![C-Form Report]({{docs_base_url}}/assets/img/articles/Selection_026.png)
+![C-Form Report](/docs/assets/img/articles/Selection_026.png)
 
 <!-- markdown -->
diff --git a/erpnext/docs/user/manual/en/accounts/articles/changing-parent-account.md b/erpnext/docs/user/manual/en/accounts/articles/changing-parent-account.md
index e4a33e0..1b6c0fb 100644
--- a/erpnext/docs/user/manual/en/accounts/articles/changing-parent-account.md
+++ b/erpnext/docs/user/manual/en/accounts/articles/changing-parent-account.md
@@ -1,3 +1,5 @@
+# Changing Parent Account
+
 #Changing Parent Account
 
 Chart of Account has hierarchical structure. Each account has a parent it is listed under. 
@@ -14,22 +16,22 @@
 
 ####2. Edit Account
 
-<img alt="Project Default Cost Center" class="screenshot" src="{{docs_base_url}}/assets/img/articles/change-parent-1.png"> 
+<img alt="Project Default Cost Center" class="screenshot" src="/docs/assets/img/articles/change-parent-1.png"> 
 
 ####3. Change Parent Account
 
 Search and select preferred Parent Account and save.
 
-<img alt="Project Default Cost Center" class="screenshot" src="{{docs_base_url}}/assets/img/articles/change-parent-2.png">
+<img alt="Project Default Cost Center" class="screenshot" src="/docs/assets/img/articles/change-parent-2.png">
 
 Refresh system from Help menu to experience the change.
 
-<img alt="Project Default Cost Center" class="screenshot" src="{{docs_base_url}}/assets/img/articles/change-parent-3.png">
+<img alt="Project Default Cost Center" class="screenshot" src="/docs/assets/img/articles/change-parent-3.png">
 
 <div class="well"> Note: Parent cannot be customized for the Root Accounts, like Asset, Liability, Income, Expense, Equity.</div>
 
 #### Quick Help
 
-<img alt="Project Default Cost Center" class="screenshot" src="{{docs_base_url}}/assets/img/articles/change-parent-account-1.gif">
+<img alt="Project Default Cost Center" class="screenshot" src="/docs/assets/img/articles/change-parent-account-1.gif">
 
 <!-- markdown -->
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/accounts/articles/difference-entry-button.md b/erpnext/docs/user/manual/en/accounts/articles/difference-entry-button.md
index acac407..06a4479 100644
--- a/erpnext/docs/user/manual/en/accounts/articles/difference-entry-button.md
+++ b/erpnext/docs/user/manual/en/accounts/articles/difference-entry-button.md
@@ -1,14 +1,16 @@
+# Difference Entry Button
+
 #Difference Entry
 
 As per accounting standards, debit in a accounting entry must be equal to credit. If not, system does allow submission of accounting transaction, thereby stops ledger posting. In ERPNext, on saving accounting entry, system validates if debit and credit is tallying.
 
-<img alt="Debit Credit Not Equal" class="screenshot" src="{{docs_base_url}}/assets/img/articles/difference-entry-1.png">
+<img alt="Debit Credit Not Equal" class="screenshot" src="/docs/assets/img/articles/difference-entry-1.png">
 
 To have entry balanced, you should one more row, select another account, and update different amount in it. Or you can add difference amount in one of the Account's row itself.
 
 On clicking 'Make Difference Entry' button, new Row will be added under Journal Entry Accounts table, with difference amount. You can edit that row to select appropriate Account.
 
-<img alt="Debit Credit Not Equal" class="screenshot" src="{{docs_base_url}}/assets/img/articles/difference-entry-2.gif">
+<img alt="Debit Credit Not Equal" class="screenshot" src="/docs/assets/img/articles/difference-entry-2.gif">
 
 On selecting account under new row, debit and credit an entry will be tallying, and you should be able to submit Journal Entri correctly.
 
diff --git a/erpnext/docs/user/manual/en/accounts/articles/fiscal-year-error.md b/erpnext/docs/user/manual/en/accounts/articles/fiscal-year-error.md
index 003ad31..4a1b54b 100644
--- a/erpnext/docs/user/manual/en/accounts/articles/fiscal-year-error.md
+++ b/erpnext/docs/user/manual/en/accounts/articles/fiscal-year-error.md
@@ -12,19 +12,19 @@
 
 `Accounts > Setup > Fiscal Year`
 
-Click [here]({{docs_base_url}}/user/manual/en/accounts/setup/fiscal-year.html) to learn more about Fiscal Year.
+Click [here](/docs/user/manual/en/accounts/setup/fiscal-year.html) to learn more about Fiscal Year.
 
 #### Set Fiscal Year as Default
 
 After Fiscal Year is saved, you will find option to set that Fiscal year as Default.
 
-<img alt="Debit Credit Not Equal" class="screenshot" src="{{docs_base_url}}/assets/img/articles/fiscal-year-error-1.png">
+<img alt="Debit Credit Not Equal" class="screenshot" src="/docs/assets/img/articles/fiscal-year-error-1.png">
 
 Default Fiscal Year will be updated in the Global Default setting as well. You can manually update Default Fiscal Year from:
 
 `Setup > Settings > Global Default`
 
-<img alt="Debit Credit Not Equal" class="screenshot" src="{{docs_base_url}}/assets/img/articles/fiscal-year-error-2.png">
+<img alt="Debit Credit Not Equal" class="screenshot" src="/docs/assets/img/articles/fiscal-year-error-2.png">
 
 Save Global Default, and Reload your ERPNext account. Then, default Fiscal Year will be auto-updated in your transactions.
 
diff --git a/erpnext/docs/user/manual/en/accounts/articles/freeze-accounting-entries.md b/erpnext/docs/user/manual/en/accounts/articles/freeze-accounting-entries.md
index 9d5f614..677bb81 100644
--- a/erpnext/docs/user/manual/en/accounts/articles/freeze-accounting-entries.md
+++ b/erpnext/docs/user/manual/en/accounts/articles/freeze-accounting-entries.md
@@ -1,3 +1,5 @@
+# Freeze Accounting Entries
+
 #Freeze Accounting Entries
 
 To freeze accounting entries upto a certain date, follow below given steps.
@@ -10,12 +12,12 @@
 
 Set date in the **Accounts Frozen Upto** field.
 
-<img alt="Accounts Frozen Date" class="screenshot" src="{{docs_base_url}}/assets/img/articles/frozen-date-1.png">
+<img alt="Accounts Frozen Date" class="screenshot" src="/docs/assets/img/articles/frozen-date-1.png">
 
 Now, the system will not allow to make any accounting entries before set date. If at all someone tries creating entries, system will show error message as below.
 
-<img alt="Frozen Date Error" class="screenshot" src="{{docs_base_url}}/assets/img/articles/frozen-date-2.png">
+<img alt="Frozen Date Error" class="screenshot" src="/docs/assets/img/articles/frozen-date-2.png">
 
 You can still allow user with certain role to create/edit entries within accounts frozen date. You can set that Role in the Account Settings itself.
 
-<img alt="Frozen Date Error" class="screenshot" src="{{docs_base_url}}/assets/img/articles/frozen-date-3.png">
+<img alt="Frozen Date Error" class="screenshot" src="/docs/assets/img/articles/frozen-date-3.png">
diff --git a/erpnext/docs/user/manual/en/accounts/articles/how-to-freeze-accounting-ledger.md b/erpnext/docs/user/manual/en/accounts/articles/how-to-freeze-accounting-ledger.md
index 80aed6d..9ddee07 100644
--- a/erpnext/docs/user/manual/en/accounts/articles/how-to-freeze-accounting-ledger.md
+++ b/erpnext/docs/user/manual/en/accounts/articles/how-to-freeze-accounting-ledger.md
@@ -1,3 +1,5 @@
+# How To Freeze Accounting Ledger
+
 #How To Freeze Accounting Ledger?
 
 If you want to discontinue using specific Account, you can freeze it.
@@ -12,7 +14,7 @@
 
 `Explore > Accounts > Chart of Accounts`
 
-<img class="screenshot" alt="Freeze Account" src="{{docs_base_url}}/assets/img/articles/freeze-account-1.png">
+<img class="screenshot" alt="Freeze Account" src="/docs/assets/img/articles/freeze-account-1.png">
 
 Click on Account in which Frozen Date is to be updated.
 
@@ -20,7 +22,7 @@
 
 In the Account form, you will find a field called **Frozen**. Set value in this field as 'Yes'
 
-<img class="screenshot" alt="Freeze Account" src="{{docs_base_url}}/assets/img/articles/freeze-account-2.png">
+<img class="screenshot" alt="Freeze Account" src="/docs/assets/img/articles/freeze-account-2.png">
 
 ####Step 3: Save
 
diff --git a/erpnext/docs/user/manual/en/accounts/articles/index.md b/erpnext/docs/user/manual/en/accounts/articles/index.md
index 0dff60b..fb11735 100644
--- a/erpnext/docs/user/manual/en/accounts/articles/index.md
+++ b/erpnext/docs/user/manual/en/accounts/articles/index.md
@@ -1 +1,3 @@
+# Articles
+
 {index}
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/accounts/articles/manage-foreign-exchange-difference.md b/erpnext/docs/user/manual/en/accounts/articles/manage-foreign-exchange-difference.md
index a9a9fef..643636b 100644
--- a/erpnext/docs/user/manual/en/accounts/articles/manage-foreign-exchange-difference.md
+++ b/erpnext/docs/user/manual/en/accounts/articles/manage-foreign-exchange-difference.md
@@ -6,7 +6,7 @@
 
 To mange currency difference, create Account **Foreign Exchange Gain/Loss**. This account is generally created on the Expense side of P&L statement. However, you can place it under another group as per your accounting requirement.
 
-<img alt="Accounts Frozen Date" class="screenshot" src="{{docs_base_url}}/assets/img/articles/exchange-rate-difference-1.png">
+<img alt="Accounts Frozen Date" class="screenshot" src="/docs/assets/img/articles/exchange-rate-difference-1.png">
 
 #### Book Payment Entry
 
@@ -16,7 +16,7 @@
 
 One receipt of payment, exchange rate changed. As per the new exchange rate, payment received in the base currency was $1080. This means gain of $80 due to change in exchange rate. Following is how Foreign Exchange Gain will be booked in this scenerio.
 
-<img alt="Accounts Frozen Date" class="screenshot" src="{{docs_base_url}}/assets/img/articles/exchange-rate-difference-2.gif">
+<img alt="Accounts Frozen Date" class="screenshot" src="/docs/assets/img/articles/exchange-rate-difference-2.gif">
 
 In case you incur loss due to change foriegn exchnage rate, then different amount about be updated in the debit of Foreign Exchange Gain/Loss account. Also you can add another row to update another expenses like bank charges, remittance charges etc.
 
diff --git a/erpnext/docs/user/manual/en/accounts/articles/managing-transactions-in-multiple-currency.md b/erpnext/docs/user/manual/en/accounts/articles/managing-transactions-in-multiple-currency.md
index d89c199..46b9e4e 100644
--- a/erpnext/docs/user/manual/en/accounts/articles/managing-transactions-in-multiple-currency.md
+++ b/erpnext/docs/user/manual/en/accounts/articles/managing-transactions-in-multiple-currency.md
@@ -1,3 +1,5 @@
+# Managing Transactions In Multiple Currency
+
 #Managing Transactions In Multiple Currency
 
 In ERPNext, transactions can be created in the base currency as well as in parties (customer or supplier) currency. If transaction is created in the parties currency, their currency symbol is updated in the print format as well.
@@ -16,7 +18,7 @@
 
 Currency Exchange between base currency and customer currency will auto-fetch.
 
-<img alt="Accounts Frozen Date" class="screenshot" src="{{docs_base_url}}/assets/img/articles/multiple-currency-1.gif">
+<img alt="Accounts Frozen Date" class="screenshot" src="/docs/assets/img/articles/multiple-currency-1.gif">
 
 #### Step 4: Update Details
 
@@ -26,7 +28,7 @@
 
 Save Sales Invoice and then check Print Format. For all the Currency field (rate, amount, totals) Customer's Currency symbol will be updated as well.
 
-<img alt="Accounts Frozen Date" class="screenshot" src="{{docs_base_url}}/assets/img/articles/multiple-currency-2.png">
+<img alt="Accounts Frozen Date" class="screenshot" src="/docs/assets/img/articles/multiple-currency-2.png">
 
 #### Currency Exchange Masters
 
diff --git a/erpnext/docs/user/manual/en/accounts/articles/post-dated-cheque-entry.md b/erpnext/docs/user/manual/en/accounts/articles/post-dated-cheque-entry.md
index 0b61000..a2436f3 100644
--- a/erpnext/docs/user/manual/en/accounts/articles/post-dated-cheque-entry.md
+++ b/erpnext/docs/user/manual/en/accounts/articles/post-dated-cheque-entry.md
@@ -1,3 +1,5 @@
+# Post Dated Cheque Entry
+
 #Post Dated Cheque Entry
 
 Post Dated Cheque is a cheque dated on future date. Party generally give post dated cheque, as advance payment. This cheque would be cleared only when cheque date arrives.
@@ -14,7 +16,7 @@
 
 Assuming your Cheque Date is 31st December, 2016 (or any future date). As a result, this posting in your bank ledger will appear on Posting Date updated.
 
-<img alt="JE Posting Date" class="screenshot" src="{{docs_base_url}}/assets/img/articles/post-dated-1.png">
+<img alt="JE Posting Date" class="screenshot" src="/docs/assets/img/articles/post-dated-1.png">
 
 Note: Payment Entry Reference Date should equal to or less than Posting Date.
 
@@ -24,9 +26,9 @@
 
 ####Adjusting Post Dated  Cheque Entry
 
-You can adjust Post Dated Payment Entry against an invoice via [Payment Reconciliation Tool]({{docs_base_url}}/user/manual/en/accounts/tools/payment-reconciliation.html).
+You can adjust Post Dated Payment Entry against an invoice via [Payment Reconciliation Tool](/docs/user/manual/en/accounts/tools/payment-reconciliation.html).
 
-When cheque is cleared, i.e. on actual date on the cheque, you can update its Clearance Date via [Bank Reconciliation Tool]({{docs_base_url}}/user/manual/en/accounts/tools/bank-reconciliation.html).
+When cheque is cleared, i.e. on actual date on the cheque, you can update its Clearance Date via [Bank Reconciliation Tool](/docs/user/manual/en/accounts/tools/bank-reconciliation.html).
 
 In the Chart of Accounts, you might find value of this Payment Entry already reflecting against bank Account. You should check **Bank Reconciliation Statement**, a report in the account module to know difference of bank balance as per system, and actual balance in the bank's statement.
 <!-- markdown -->
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/accounts/articles/tracking-project-profitability-using-cost-center.md b/erpnext/docs/user/manual/en/accounts/articles/tracking-project-profitability-using-cost-center.md
index b8310ad..921a7fa 100644
--- a/erpnext/docs/user/manual/en/accounts/articles/tracking-project-profitability-using-cost-center.md
+++ b/erpnext/docs/user/manual/en/accounts/articles/tracking-project-profitability-using-cost-center.md
@@ -1,3 +1,5 @@
+# Tracking Project Profitability Using Cost Center
+
 #Tracking Project Profibitability using Cost Center
 
 To track expenses and profibility for a project, you can use Cost Centers. You should create separate Cost Center for each Project. This will allow you to.
@@ -15,7 +17,7 @@
 
 `Projects > Project > New`
 
-<img alt="Project Default Cost Center" class="screenshot" src="{{docs_base_url}}/assets/img/articles/project-cost-center-4.png">
+<img alt="Project Default Cost Center" class="screenshot" src="/docs/assets/img/articles/project-cost-center-4.png">
 
 #### 1.2 Create Cost Center
 
@@ -25,13 +27,13 @@
 
 `Accounts > Setup > Cost Center`
 
-[Click here to learn how to manage Cost Centers.]({{docs_base_url}}/user/manual/en/accounts/setup/cost-center.html)
+[Click here to learn how to manage Cost Centers.](/docs/user/manual/en/accounts/setup/cost-center.html)
 
 #### 1.3 Update Cost Center in the Project
 
 Update Cost Center in the Project master.
 
-<img alt="Project Default Cost Center" class="screenshot" src="{{docs_base_url}}/assets/img/articles/project-cost-center-1.png">
+<img alt="Project Default Cost Center" class="screenshot" src="/docs/assets/img/articles/project-cost-center-1.png">
 
 In the sales and purchase transactions, if Project is selected, then Cost Center will fetched from the Project master.
 
@@ -43,7 +45,7 @@
 
 In the sales transactions (which are Sales Order, Delivery Note and Sales Invoice), Project will be selected in the More Info section. On selection of a Project, respective Cost Center will be updated for all the items in that transaction. Cost Center will be updated on in the transactions which has Cost Center field.
 
-<img alt="Project Default Cost Center" class="screenshot" src="{{docs_base_url}}/assets/img/articles/project-cost-center-2.png">
+<img alt="Project Default Cost Center" class="screenshot" src="/docs/assets/img/articles/project-cost-center-2.png">
 
 #### 2.2 Project in the Purchase Transactions
 
@@ -51,7 +53,7 @@
 
 As per perpetual inventory valuation system, expense for the purchased item will be booked when raw-materials are consumed. On consumption of goods, if you are creating Material Issue (stock) entry, then Expense Cost (says Cost of Goods Sold) and Project's Cost Center should be updated in that entry.
 
-<img alt="Project Default Cost Center" class="screenshot" src="{{docs_base_url}}/assets/img/articles/project-cost-center-3.png">
+<img alt="Project Default Cost Center" class="screenshot" src="/docs/assets/img/articles/project-cost-center-3.png">
 
 ### 3. Accounting Report for a Project
 
@@ -61,11 +63,11 @@
 
 **Monthly Project Analysis**
 
-<img alt="Project Default Cost Center" class="screenshot" src="{{docs_base_url}}/assets/img/articles/project-cost-center-5.png">
+<img alt="Project Default Cost Center" class="screenshot" src="/docs/assets/img/articles/project-cost-center-5.png">
 
 **Overall Profitability**
 
-<img alt="Project Default Cost Center" class="screenshot" src="{{docs_base_url}}/assets/img/articles/project-cost-center-6.png">
+<img alt="Project Default Cost Center" class="screenshot" src="/docs/assets/img/articles/project-cost-center-6.png">
 
 #### 3.2 Projectwise Budgeting
 
@@ -75,6 +77,6 @@
 
 `Accounts > Budget and Cost Center > Budget Variance Report`
 
-[Click here to learn how to do budgeting from Cost Center]({{docs_base_url}}/user/manual/en/accounts/budgeting.html).
+[Click here to learn how to do budgeting from Cost Center](/docs/user/manual/en/accounts/budgeting.html).
 
 <!-- markdown -->
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/accounts/articles/update-stock-option-in-sales-invoice.md b/erpnext/docs/user/manual/en/accounts/articles/update-stock-option-in-sales-invoice.md
index 4c6c659..6fb7915 100644
--- a/erpnext/docs/user/manual/en/accounts/articles/update-stock-option-in-sales-invoice.md
+++ b/erpnext/docs/user/manual/en/accounts/articles/update-stock-option-in-sales-invoice.md
@@ -1,8 +1,10 @@
+# Update Stock Option In Sales Invoice
+
 #Delivery from Sales Invoice
 
 If you have items delivery and invoicing happening at the same time, you can create delivery from with Sales Invoice itself. Sales Invoice has field called **Update Stock**, just before Item table. If this field is checked, on submission of Sales Invoice, stock of Item will be deducted from selected Warehouse.
 
-<img alt="Update Stock" class="screenshot" src="{{docs_base_url}}/assets/img/articles/update-stock.png">
+<img alt="Update Stock" class="screenshot" src="/docs/assets/img/articles/update-stock.png">
 
 On checking Update Stock, Sales Invoice Item will show relevant fields like Warehouse, Serial No., Batch No., Item valuation etc.
 
diff --git a/erpnext/docs/user/manual/en/accounts/articles/what-is-the-differences-of-total-and-valuation-in-tax-and-charges.md b/erpnext/docs/user/manual/en/accounts/articles/what-is-the-differences-of-total-and-valuation-in-tax-and-charges.md
index a23b6e7..0273f5c 100644
--- a/erpnext/docs/user/manual/en/accounts/articles/what-is-the-differences-of-total-and-valuation-in-tax-and-charges.md
+++ b/erpnext/docs/user/manual/en/accounts/articles/what-is-the-differences-of-total-and-valuation-in-tax-and-charges.md
@@ -1,3 +1,5 @@
+# What Is The Differences Of Total And Valuation In Tax And Charges
+
 #Purchase Tax or Charges Categories
 
 Consider Tax or Charge field in Purchase Taxes and Charges master has three values.
@@ -6,7 +8,7 @@
 - Valuation
 - Total and Valuation
 
-<img alt="Purchase Tax and Charges Categories" class="screenshot" src="{{docs_base_url}}/assets/img/articles/purchase-other-charges-1.png">
+<img alt="Purchase Tax and Charges Categories" class="screenshot" src="/docs/assets/img/articles/purchase-other-charges-1.png">
 
 Let's consider an example to understand an effect of each charge type. We purchase ten units of item, at the rate of 800. total purchase amount is 800. Purchased item has 4% VAT applied on it, and INR 100 was incurred in transportation.
 
@@ -24,7 +26,7 @@
 
 Transportation charge of INR 100 should be categorized as valuation. With this, the value of purchased item will be increased from 800 to 900. Also, this charge will be not be added to the total of purchase transaction, because it your expense, and should not be reflected to the supplier.
 
-Check [here]({{docs_base_url}}/user/manual/en/stock/accounting-of-inventory-stock/perpetual-inventory.html) to learn general posting done for expense categorized as Valuation.
+Check [here](/docs/user/manual/en/stock/accounting-of-inventory-stock/perpetual-inventory.html) to learn general posting done for expense categorized as Valuation.
 
 ####Total and Valuation:
 
diff --git a/erpnext/docs/user/manual/en/accounts/articles/withdrawing-salary-from-owners-equity-account.md b/erpnext/docs/user/manual/en/accounts/articles/withdrawing-salary-from-owners-equity-account.md
index 1e7a993..ab84396 100644
--- a/erpnext/docs/user/manual/en/accounts/articles/withdrawing-salary-from-owners-equity-account.md
+++ b/erpnext/docs/user/manual/en/accounts/articles/withdrawing-salary-from-owners-equity-account.md
@@ -1,3 +1,5 @@
+# Withdrawing Salary From Owners Equity Account
+
 #Withdrawing Salary from Owner's Equity Account
 
 ### Question
diff --git a/erpnext/docs/user/manual/en/accounts/bank-guarantee.md b/erpnext/docs/user/manual/en/accounts/bank-guarantee.md
index db60300..c0c6d7a 100644
--- a/erpnext/docs/user/manual/en/accounts/bank-guarantee.md
+++ b/erpnext/docs/user/manual/en/accounts/bank-guarantee.md
@@ -1,9 +1,11 @@
+# Bank Guarantee
+
 A Bank Guarantee is a guarantee from a lending institution such as a bank ensuring the liabilities of a debtor will be met. In other words, if the debtor fails to settle a debt, the bank covers it. A Bank Guarantee enables the customer, or debtor, to acquire goods, buy equipment or draw down loans, and thereby expand business activity.
 
 A client may ask you to provide a Bank Guarantee from a third party such as a bank. This guarantee is for a specified amount, which is usually a percentage of the total value of the contract. The Bank Guarantee is valid for a specified duration after which it expires and must be returned to you by the client.
 
 This document allows you to track Bank Guarantees given to clients. You can set Email Alerts as the Bank Guarantee expiry date approaches to remind yourself to get the Bank Guarantee back from your client. 
 
-<img class="screenshot" alt="Bank Guarantee" src="{{docs_base_url}}/assets/img/accounts/bank-guarantee.png">
+<img class="screenshot" alt="Bank Guarantee" src="/docs/assets/img/accounts/bank-guarantee.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/en/accounts/budgeting.md b/erpnext/docs/user/manual/en/accounts/budgeting.md
index fad128c..3e7db19 100644
--- a/erpnext/docs/user/manual/en/accounts/budgeting.md
+++ b/erpnext/docs/user/manual/en/accounts/budgeting.md
@@ -1,3 +1,5 @@
+# Budgeting
+
 In ERPNext, you can set and manage Budgets against a specific Account. This is useful when, for example, you are doing online sales. You have a budget for search ads, and you want ERPNext to stop or warn you from over spending, based on that budget.
 
 Budgets are also great for planning purposes. When you are making plans for the next financial year, you would typically target a revenue based on which you would set your expenses. Setting a budget will ensure that your expenses do not get out of hand, at any point, as per your plans.
@@ -10,7 +12,7 @@
 
 > Accounts > Budget and Cost Center > Chart of Cost Center > Add New Cost Center
 
-<img class="screenshot" alt="Budget" src="{{docs_base_url}}/assets/img/accounts/budgeting-cost-center.png">
+<img class="screenshot" alt="Budget" src="/docs/assets/img/accounts/budgeting-cost-center.png">
 
 ###Budgeting
 
@@ -28,20 +30,20 @@
 
 In the Budgets table, select Income / Expense account for which Budget is to be defined. 
 
-<img class="screenshot" alt="Budget" src="{{docs_base_url}}/assets/img/accounts/budget-account.png">
+<img class="screenshot" alt="Budget" src="/docs/assets/img/accounts/budget-account.png">
 
 ####Step 4: Monthly Distribution
 
 If you have seasonal business, you can also define a Monthly Distribution record, to distribute the budget between months. If you don't set the monthly distribution, ERPNext will calculate the budget on yearly
 basis or in equal proportion for every month.
 
-<img class="screenshot" alt="Monthly Distribution" src="{{docs_base_url}}/assets/img/accounts/monthly-budget-distribution.png">
+<img class="screenshot" alt="Monthly Distribution" src="/docs/assets/img/accounts/monthly-budget-distribution.png">
 
 ####Step 5: Alert on Budget
 
 While setting budget, you can also define the actions when expenses will exceed the allocated budget for a period. You can set separate action for monthly and annual budgets. There are 3 types of actions: Stop, Warn and Ignore. If Stop, system will not allow to book expenses more than allocated budget. In Case of Warn, it will just warn the user that expenses has been exceeded from the allocated budget. And Ignore will do nothing.
 
-<img class="screenshot" alt="Monthly Distribution" src="{{docs_base_url}}/assets/img/accounts/budget-warning.png">
+<img class="screenshot" alt="Monthly Distribution" src="/docs/assets/img/accounts/budget-warning.png">
 
 ####Budget Variance Report
 
@@ -51,6 +53,6 @@
 
 Accounts > Budget and Cost Center > Budget Variance Report
 
-<img class="screenshot" alt="Budget Variance Report" src="{{docs_base_url}}/assets/img/accounts/budget-variance-report.png">
+<img class="screenshot" alt="Budget Variance Report" src="/docs/assets/img/accounts/budget-variance-report.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/en/accounts/chart-of-accounts.md b/erpnext/docs/user/manual/en/accounts/chart-of-accounts.md
index ae6847e..f2208b4 100644
--- a/erpnext/docs/user/manual/en/accounts/chart-of-accounts.md
+++ b/erpnext/docs/user/manual/en/accounts/chart-of-accounts.md
@@ -1,3 +1,5 @@
+# Chart Of Accounts
+
 The Chart of Accounts forms the blueprint of your organization. The overall
 structure of your Chart of Accounts is based on a system of double entry
 accounting that has become a standard all over the world to quantify how a
@@ -25,13 +27,13 @@
 An Example of various financial statement are given below:
 
 #### Cash Flow Report
-<img class="screenshot" alt="Cash Flow Report" src="{{docs_base_url}}/assets/img/accounts/cash_flow_report.png">
+<img class="screenshot" alt="Cash Flow Report" src="/docs/assets/img/accounts/cash_flow_report.png">
 
 #### Profit and Loss Report
-<img class="screenshot" alt="Profit and Loss Report" src="{{docs_base_url}}/assets/img/accounts/profit_n_loss_report.png">
+<img class="screenshot" alt="Profit and Loss Report" src="/docs/assets/img/accounts/profit_n_loss_report.png">
 
 #### Balance Sheet Report
-<img class="screenshot" alt="Balance Sheet Report" src="{{docs_base_url}}/assets/img/accounts/balance_sheet_report.png">
+<img class="screenshot" alt="Balance Sheet Report" src="/docs/assets/img/accounts/balance_sheet_report.png">
 
 To edit your Chart of Accounts in ERPNext go to:
 
@@ -46,7 +48,7 @@
 
 Let us understand the main groups of the Chart of Accounts.
 
-<img class="screenshot" alt="Chart of Accounts" src="{{docs_base_url}}/assets/img/accounts/chart-of-accounts-1.png">
+<img class="screenshot" alt="Chart of Accounts" src="/docs/assets/img/accounts/chart-of-accounts-1.png">
 
 ### Balance Sheet Accounts
 
@@ -84,7 +86,7 @@
 In ERPNext it is easy to create a Profit and Loss analysis chart. An example
 of a Profit and Loss analysis chart is given below:
 
-<img class="screenshot" alt="Financial Analytics Profit and Loss Statement" src="{{docs_base_url}}/assets/img/accounts/financial-analytics-pl.png">
+<img class="screenshot" alt="Financial Analytics Profit and Loss Statement" src="/docs/assets/img/accounts/financial-analytics-pl.png">
 
 (On the first day of the year you have not made any profit or loss, but you
 still have assets, hence balance sheet accounts never become zero at the
@@ -104,7 +106,7 @@
 
 > Note: An Account “Ledger” is also sometimes called as Account “Head”.
 
-<img class="screenshot" alt="Chart of Accounts" src="{{docs_base_url}}/assets/img/accounts/chart-of-accounts-2.png">
+<img class="screenshot" alt="Chart of Accounts" src="/docs/assets/img/accounts/chart-of-accounts-2.png">
 
 ### Other Account Types
 
@@ -119,7 +121,7 @@
 group under which you want to create the new Account. On the right side, you
 will see an option to “Open” or “Add Child” a new Account.
 
-<img class="screenshot" alt="Chart of Accounts" src="{{docs_base_url}}/assets/img/accounts/chart-of-accounts-3.png">
+<img class="screenshot" alt="Chart of Accounts" src="/docs/assets/img/accounts/chart-of-accounts-3.png">
 
 Option to create will only appear if you click on a Group (folder) type
 Account.
diff --git a/erpnext/docs/user/manual/en/accounts/credit-limit.md b/erpnext/docs/user/manual/en/accounts/credit-limit.md
index 299e670..8f92f90 100644
--- a/erpnext/docs/user/manual/en/accounts/credit-limit.md
+++ b/erpnext/docs/user/manual/en/accounts/credit-limit.md
@@ -1,3 +1,5 @@
+# Credit Limit
+
   
 
 A credit limit is the maximum amount of credit that a financial institution or
@@ -12,7 +14,7 @@
   
 #### Figure 1: Credit Limit
 
-<img class="screenshot" alt="Credit Limit" src="{{docs_base_url}}/assets/img/accounts/credit-limit-1.png">
+<img class="screenshot" alt="Credit Limit" src="/docs/assets/img/accounts/credit-limit-1.png">
 
 Go to the 'More Info section' and enter the amount in the field Credit Limit.
 
@@ -27,7 +29,7 @@
   
 #### Figure 2: Credit Controller
 
-<img class="screenshot" alt="Credit Limit" src="{{docs_base_url}}/assets/img/accounts/credit-limit-2.png">
+<img class="screenshot" alt="Credit Limit" src="/docs/assets/img/accounts/credit-limit-2.png">
 
 Save the changes.
 
diff --git a/erpnext/docs/user/manual/en/accounts/index.md b/erpnext/docs/user/manual/en/accounts/index.md
index 84c901d..d9e94c0 100644
--- a/erpnext/docs/user/manual/en/accounts/index.md
+++ b/erpnext/docs/user/manual/en/accounts/index.md
@@ -1,3 +1,5 @@
+# Accounts
+
 At the end of sales and purchase cycle comes billing and payments. You may have
 an accountant in your team, or you may be doing accounting yourself, or you may
 have outsourced your accounting. In all the cases financial accounting forms the core of any business management system like an ERP.
diff --git a/erpnext/docs/user/manual/en/accounts/item-wise-taxation.md b/erpnext/docs/user/manual/en/accounts/item-wise-taxation.md
index 1750f41..a2aefc3 100644
--- a/erpnext/docs/user/manual/en/accounts/item-wise-taxation.md
+++ b/erpnext/docs/user/manual/en/accounts/item-wise-taxation.md
@@ -1,3 +1,5 @@
+# Item Wise Taxation
+
 In the sales and purchase transactions, you can apply taxes and other charges on the items. For the ease of applying taxes, you can fetch values from the [Sales Taxes and Charges master](/contents//setting-up/setting-up-taxes). Taxes and charges are applied equally on all the items. For example, if tax GST 16% is added in the tax table, then it will be applied on all the items. However, if you need to have different tax rate applied on some of the items, following is how you should setup Items and Sales Taxes and Other Charges master in your ERPNext account.
 
 Let's assume that we are creating a Sales Order. We have Sales Taxes and Charges master for GST 16%. Out of all the Sales Items, on one item, only 12% GST will be applied, while one more item is exempted from the tax.
@@ -10,17 +12,17 @@
 
 Here is the example of Item on which 12% GST is applied only.
 
-<img class="screenshot" alt="Opening Account" src="{{docs_base_url}}/assets/img/accounts/item-wise-tax.png">
+<img class="screenshot" alt="Opening Account" src="/docs/assets/img/accounts/item-wise-tax.png">
 
 For the item which is exempted from GST totally, mention 0% as tax rate in the Item master.
 
-<img class="screenshot" alt="Opening Account" src="{{docs_base_url}}/assets/img/accounts/exempted-item.png">
+<img class="screenshot" alt="Opening Account" src="/docs/assets/img/accounts/exempted-item.png">
 
 ####Step 2: Setup Taxes and Other Charges
 
 In Sales Taxes and Other Charges master, select GST 16% account and mention Tax Rate as 16. This tax rate will be applied on all the Items selected in the Sales Order, unless specific Tax Rate is defined in the Item master.
 
-<img class="screenshot" alt="Opening Account" src="{{docs_base_url}}/assets/img/accounts/tax-master.png">
+<img class="screenshot" alt="Opening Account" src="/docs/assets/img/accounts/tax-master.png">
 
 <div class="well">If you want to have tax rate always applied from the Item master, then you should update Rate for the tax account as zero in the Taxes and Charges master.</div>
 
@@ -28,7 +30,7 @@
 
 In the Sales Order, we have selected many Items. For the items mentioned in blue, tax rate is applied based on tax rate mentioned in the taxes table. For the items highlited in red, tax rate has fetched for them from the respective item master.
 
-<img class="screenshot" alt="Opening Account" src="{{docs_base_url}}/assets/img/accounts/tax-calulation.png">
+<img class="screenshot" alt="Opening Account" src="/docs/assets/img/accounts/tax-calulation.png">
 
 Please note that item's tax rate will be pulled from the item master only if you have update same tax account (GST 16% in this case) in both Item master and tax master.
 
diff --git a/erpnext/docs/user/manual/en/accounts/journal-entry.md b/erpnext/docs/user/manual/en/accounts/journal-entry.md
index 061bd62..ebfc9f5 100644
--- a/erpnext/docs/user/manual/en/accounts/journal-entry.md
+++ b/erpnext/docs/user/manual/en/accounts/journal-entry.md
@@ -1,3 +1,5 @@
+# Journal Entry
+
 All types of accounting entries other than **Sales Invoice** and **Purchase
 Invoice** are made using the **Journal Entry**. A **Journal Entry** 
 is a standard accounting transaction that affects
@@ -7,7 +9,7 @@
 
 > Accounts > Documents > Journal Entry > New
 
-<img class="screenshot" alt="Journal Entry" src="{{docs_base_url}}/assets/img/accounts/journal-entry.png">
+<img class="screenshot" alt="Journal Entry" src="/docs/assets/img/accounts/journal-entry.png">
 
 In a Journal Entry, you must select.
 
diff --git a/erpnext/docs/user/manual/en/accounts/managing-fixed-assets.md b/erpnext/docs/user/manual/en/accounts/managing-fixed-assets.md
index e82ec92..45bd227 100644
--- a/erpnext/docs/user/manual/en/accounts/managing-fixed-assets.md
+++ b/erpnext/docs/user/manual/en/accounts/managing-fixed-assets.md
@@ -1,10 +1,12 @@
+# Managing Fixed Assets
+
 In ERPNext, you can maintain fixed asset records like Computers, Furnitures, Cars, etc. and manage depreciations, sale or disposal of those assets.
 
 ## Asset Category
 
 Based on the type of assets, create Asset Category. For example, all your desktops and laptops can be part of an Asset Category named "Computers". Here you can set default depreciation method, periodicity and depreciation related accounts, which will be applicable to all the assets under the category.
 
-<img class="screenshot" alt="Asset Category" src="{{docs_base_url}}/assets/img/accounts/asset-category.png">
+<img class="screenshot" alt="Asset Category" src="/docs/assets/img/accounts/asset-category.png">
 
 > **Note:** You can also set default depreciation related Accounts and Cost Centers in Company master.
 
@@ -12,13 +14,13 @@
 
 Asset master is the heart of fixed asset management feature. All the transactions related to Asset like purchasing, sales, depreciation, scrapping will be managed from the Asset master.
 
-<img class="screenshot" alt="Asset" src="{{docs_base_url}}/assets/img/accounts/asset.png">
+<img class="screenshot" alt="Asset" src="/docs/assets/img/accounts/asset.png">
 
 Explanation of the fields:
 
 1. Item Code: An Item for the Asset must be a non-stock item, with "Is Asset" field checked.
 
-	<img class="screenshot" alt="Asset Item" src="{{docs_base_url}}/assets/img/accounts/asset-item.png">
+	<img class="screenshot" alt="Asset Item" src="/docs/assets/img/accounts/asset-item.png">
 
 2. Asset Category: The category of assets it belongs to.
 3. Is Existing Asset: Check if the asset is being carried forward from the previous Fiscal Year. The existing assets which are partially / fully depreciated can also be created/maintained for the future reference.
@@ -40,24 +42,24 @@
 
 The system automatically creates a schedule for depreciation based on depreciation method and other related inputs in the Asset record.
 
-<img class="screenshot" alt="Asset" src="{{docs_base_url}}/assets/img/accounts/depreciation-schedule.png">
+<img class="screenshot" alt="Asset" src="/docs/assets/img/accounts/depreciation-schedule.png">
 
 On the scheduled date, system creates depreciation entry by creating a Journal Entry and the same Journal Entry is updated in the depreciation table for reference. Next Depreciation Date and Current Value are also updated on submission of depreciation entry.
 
-<img class="screenshot" alt="Asset" src="{{docs_base_url}}/assets/img/accounts/depreciation-entry.png">
+<img class="screenshot" alt="Asset" src="/docs/assets/img/accounts/depreciation-entry.png">
 
 In the depreciation entry, the "Accumulated Depreciation Account" is credited and "Depreciation Expense Account" is debited. The related accounts can be set in the Asset Category or Company.
 
 For better visibility, net value of the asset on different depreciation dates are shown in a line graph.
 
-<img class="screenshot" alt="Asset" src="{{docs_base_url}}/assets/img/accounts/asset-graph.png">
+<img class="screenshot" alt="Asset" src="/docs/assets/img/accounts/asset-graph.png">
 
 
 ## Purchase an Asset
 
 For purchasing a new asset, create and submit the asset record with all the depreciation settings. Then create a Purchase Invoice via "Make Purchase Invoice" button. On clicking the button, system will load a new Purchase Invoice form with pre-loaded items table. It will also set proper fixed asset account (defined in the Asset Category) in the Expense Account field. You need to select Supplier and other necessary details and submit the Purchase Invoice.
 
-<img class="screenshot" alt="Asset" src="{{docs_base_url}}/assets/img/accounts/asset-purchase-invoice.png">
+<img class="screenshot" alt="Asset" src="/docs/assets/img/accounts/asset-purchase-invoice.png">
 
 On submission of the invoice, the "Fixed Asset Account" will be debited and payable account will be credited. It also updates purchase date, supplier and Purchase Invoice no. in the Asset master.
 
@@ -71,23 +73,23 @@
 - "Accumulated Depreciation Account" will be debited by the total depreciated amount till now.
 - "Gain/Loss Account on Asset Disposal" will be credited/debited based on gain/loss amount. The Gain/Loss account can be set in Company record.
 
-<img class="screenshot" alt="Asset" src="{{docs_base_url}}/assets/img/accounts/asset-sales.png">
+<img class="screenshot" alt="Asset" src="/docs/assets/img/accounts/asset-sales.png">
 
 
 ## Scrap an Asset
 
 You can scrap an asset anytime using the "Scrap Asset" button in the Asset record. The "Gain/Loss Account on Asset Disposal" mentioned in the Company is debited by the Current Value (After Depreciation) of the asset. After scrapping, you can also restore the asset using "Restore Asset" button.
 
-<img class="screenshot" alt="Asset" src="{{docs_base_url}}/assets/img/accounts/scrap-journal-entry.png">
+<img class="screenshot" alt="Asset" src="/docs/assets/img/accounts/scrap-journal-entry.png">
 
 ## Asset Movement
 
 The movement of the assets (from one warehouse to another) is also tracked via Asset Movement form.
 
-<img class="screenshot" alt="Asset" src="{{docs_base_url}}/assets/img/accounts/asset-movement.png">
+<img class="screenshot" alt="Asset" src="/docs/assets/img/accounts/asset-movement.png">
 
 There is also a dedicated button "Transfer Asset" inside the Asset form to track the Asset Movement.
 
-<img class="screenshot" alt="Asset" src="{{docs_base_url}}/assets/img/accounts/asset-movement-using-button.png">
+<img class="screenshot" alt="Asset" src="/docs/assets/img/accounts/asset-movement-using-button.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/en/accounts/multi-currency-accounting.md b/erpnext/docs/user/manual/en/accounts/multi-currency-accounting.md
index 4e44490..598aa0e 100644
--- a/erpnext/docs/user/manual/en/accounts/multi-currency-accounting.md
+++ b/erpnext/docs/user/manual/en/accounts/multi-currency-accounting.md
@@ -1,18 +1,20 @@
+# Multi Currency Accounting
+
 In ERPNext, you can make accounting entries in multiple currency. For example, if you have a bank account in foreign currency, you can make transactions in that currency and system will show bank balance in that specific currency only.
 
 ## Setup
 
 To get started with multi-currency accounting, you need to assign accounting currency in Account record. You can define Currency from Chart of Accounts while creating Account.
 
-<img class="screenshot" alt="Set Currency from Chart of Accounts"  	src="{{docs_base_url}}/assets/img/accounts/multi-currency/chart-of-accounts.png">
+<img class="screenshot" alt="Set Currency from Chart of Accounts"  	src="/docs/assets/img/accounts/multi-currency/chart-of-accounts.png">
 
 You can also assign / modify the currency by opening specific Account record for existing Accounts.
 
-<img class="screenshot" alt="Modify Account Currency"  	src="{{docs_base_url}}/assets/img/accounts/multi-currency/account.png">
+<img class="screenshot" alt="Modify Account Currency"  	src="/docs/assets/img/accounts/multi-currency/account.png">
 
 For Customer / Supplier (Party), you can also define it's billing currency in the Party record. If the Party's accounting currency is different from Company Currency, you should mention Default Receivable / Payable Account in that currency.
 
-<img class="screenshot" alt="Customer Accounting Currency"  	src="{{docs_base_url}}/assets/img/accounts/multi-currency/customer.png">
+<img class="screenshot" alt="Customer Accounting Currency"  	src="/docs/assets/img/accounts/multi-currency/customer.png">
 
 
 Once you defined Currency in the Account and selected relevant accounts in the Party record , you are ready to make transactions against them. If Party account currency is different from Company Currency, system will restrict to make transaction for that party with that currency only. If account currency is same as Company Currency, you can make transactions for that Party in any currency. But accounting entries (GL Entries) will always be in Party Account Currency.
@@ -31,7 +33,7 @@
 
 Outstanding Amount and Advance Amount will always be calculated and shown in Customer's Account Currency.
 
-<img class="screenshot" alt="Sales Invoice Outstanding"  	src="{{docs_base_url}}/assets/img/accounts/multi-currency/sales-invoice.png">
+<img class="screenshot" alt="Sales Invoice Outstanding"  	src="/docs/assets/img/accounts/multi-currency/sales-invoice.png">
 
 ### Purchase Invoice
 
@@ -41,12 +43,12 @@
 
 In Journal Entry, you can make transactions in different currencies. There is a checkbox "Multi Currency", to enable multi-currency entries. If "Multi Currency" option selected, you will be able to select accounts with different currencies.
 
-<img class="screenshot" alt="Journal Entry Exchange Rate"  	src="{{docs_base_url}}/assets/img/accounts/multi-currency/journal-entry-multi-currency.png">
+<img class="screenshot" alt="Journal Entry Exchange Rate"  	src="/docs/assets/img/accounts/multi-currency/journal-entry-multi-currency.png">
 
  
 In Accounts table, on selection of foreign currency account, system will show Currency section and fetch Account Currency and Exchange Rate automatically. You can change / modify the Exchange Rate later manually. Debit / Credit amount should be entered in Account Currency, system will calculate and show the Debit / Credit amount in Company Currency automatically.
 
-<img class="screenshot" alt="Journal Entry in multi currency"  	src="{{docs_base_url}}/assets/img/accounts/multi-currency/journal-entry-row.png">
+<img class="screenshot" alt="Journal Entry in multi currency"  	src="/docs/assets/img/accounts/multi-currency/journal-entry-row.png">
 
 #### Example 1: Payment Entry  Against Customer With Alternate Currency
 
@@ -54,7 +56,7 @@
 
 Exchange Rate in the payment entry should always be same as invoice (60), even if exchange rate on the payment date is 62. The bank account will be credited by the amount considering exchange rate as 62. Hence, Exchnage Gain / Loss will be booked based on exchange rate difference.
 
-<img class="screenshot" alt="Payment Entry"  	src="{{docs_base_url}}/assets/img/accounts/multi-currency/payment-entry.png">
+<img class="screenshot" alt="Payment Entry"  	src="/docs/assets/img/accounts/multi-currency/payment-entry.png">
 
 #### Example 2: Inter-bank Transfer (USD -> INR)
 
@@ -100,7 +102,7 @@
 
 Suppose, Exchange Rate on the payment date is 62 and Bank Transfer Entry will be look like below:
 
-<img class="screenshot" alt="Inter Bank Transfer"  	src="{{docs_base_url}}/assets/img/accounts/multi-currency/bank-transfer.png">
+<img class="screenshot" alt="Inter Bank Transfer"  	src="/docs/assets/img/accounts/multi-currency/bank-transfer.png">
 
 
 ## Reports
@@ -109,12 +111,12 @@
 
 In General Ledger, system shows debit / credit amount in both currency if filtered by an Account and Account Currency is different from Company Currency.
 
-<img class="screenshot" alt="General Ledger Report"  	src="{{docs_base_url}}/assets/img/accounts/multi-currency/general-ledger.png">
+<img class="screenshot" alt="General Ledger Report"  	src="/docs/assets/img/accounts/multi-currency/general-ledger.png">
 
 ### Accounts Receivable / Payable
 
 In Accounts Receivable / Payable report, system shows all the amounts in Party / Account Currency.
 
-<img class="screenshot" alt="Accounts Receivable Report"  	src="{{docs_base_url}}/assets/img/accounts/multi-currency/accounts-receivable.png">
+<img class="screenshot" alt="Accounts Receivable Report"  	src="/docs/assets/img/accounts/multi-currency/accounts-receivable.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/en/accounts/opening-accounts.md b/erpnext/docs/user/manual/en/accounts/opening-accounts.md
index 11e4acb..1ad9090 100644
--- a/erpnext/docs/user/manual/en/accounts/opening-accounts.md
+++ b/erpnext/docs/user/manual/en/accounts/opening-accounts.md
@@ -1,3 +1,5 @@
+# Opening Accounts
+
 #Updating Opening Balance in Accounts
 
 If you are a new company you can start using ERPNext accounting module by going to chart of accounts. However, if you are migrating from a legacy accounting system like Tally or a Fox Pro based software
@@ -8,7 +10,7 @@
 
 * List of outstanding sales and purchase invoices (Payables and Receivables).
 
-If you were using another accounting software before, firstly you should close financial statements in that software. The closing balance of the accounts should be updated as an opening balance in the ERPNext. Before starting to update opening balance, ensure that your [Chart of Accounts]({{docs_base_url}}/user/manual/en/accounts/chart-of-accounts.html) has all the Accounts required.
+If you were using another accounting software before, firstly you should close financial statements in that software. The closing balance of the accounts should be updated as an opening balance in the ERPNext. Before starting to update opening balance, ensure that your [Chart of Accounts](/docs/user/manual/en/accounts/chart-of-accounts.html) has all the Accounts required.
 
 > Opening entry is only for Balance Sheet accounts and not for the Accounts in the Profit and Loss statement.
 
@@ -28,7 +30,7 @@
 
 If Entry Type is selected as Opening Entry, all the Balance Sheet Accounts will be auto-fetched in the Journal Entry.
 
-<img class="screenshot" alt="Opening Account" src="{{docs_base_url}}/assets/img/accounts/opening-account-1.png">
+<img class="screenshot" alt="Opening Account" src="/docs/assets/img/accounts/opening-account-1.png">
 
 ####Step 3: Posting Date
 
@@ -38,13 +40,13 @@
 
 For each Account, enter opening value in the Debit or Credit column. As per the double entry valuation system, Total Debit value in a entry must be equal to Total Credit value.
 
-<img class="screenshot" alt="Opening Account" src="{{docs_base_url}}/assets/img/accounts/opening-6.png">
+<img class="screenshot" alt="Opening Account" src="/docs/assets/img/accounts/opening-6.png">
 
 ####Step 5: Is Opening
 
 Set field `Is Opening` as `Yes`.
 
-<img class="screenshot" alt="Opening Account" src="{{docs_base_url}}/assets/img/accounts/opening-3.png">
+<img class="screenshot" alt="Opening Account" src="/docs/assets/img/accounts/opening-3.png">
 
 ####Step 6: Save and Submit
 
@@ -56,13 +58,13 @@
 
 If you are updating account opening balance in few accounts at a time, you can use **Temporary Opening** account for balancing purpose. In the standard chart of accounts, a Temporary Opening Account is auto-created under Assets.
 
-<img class="screenshot" alt="Opening Account" src="{{docs_base_url}}/assets/img/accounts/opening-7.png">
+<img class="screenshot" alt="Opening Account" src="/docs/assets/img/accounts/opening-7.png">
 
 In the Journal Entry, manually select an Account for which opening balance is to be updated. For each Account, enter opening balance value in the Debit or Credit column, based on it's Account Type (Asset or Liability).
 
 For example, if you want to update balance in bank accounts, create Journal Entry as following.
 
-<img class="screenshot" alt="Opening Account" src="{{docs_base_url}}/assets/img/accounts/opening-2.png">
+<img class="screenshot" alt="Opening Account" src="/docs/assets/img/accounts/opening-2.png">
 
 Once all your invoices are entered, your **Temporary Opening** account will have a balance of zero!
 
@@ -70,7 +72,7 @@
 
 After completing the accounting entries, the trial balance report will look like the one given below:
 
-<img class="screenshot" alt="Opening Account" src="{{docs_base_url}}/assets/img/accounts/opening-4.png">
+<img class="screenshot" alt="Opening Account" src="/docs/assets/img/accounts/opening-4.png">
 
 ###Stock Opening
 
@@ -78,13 +80,13 @@
 
 `Chart of Accounts > Assets > Current Asset > StocK Assets > (Warehouse Account)`
 
-<img class="screenshot" alt="Opening Account" src="{{docs_base_url}}/assets/img/accounts/opening-5.png">
+<img class="screenshot" alt="Opening Account" src="/docs/assets/img/accounts/opening-5.png">
 
-To update stock opening balance, create [Stock Reconciliation entry]({{docs_base_url}}/user/manual/en/stock/opening-stock.html). Based on the valuation of items's update in the Warehouse, balance will be updated in the Warehouse account.
+To update stock opening balance, create [Stock Reconciliation entry](/docs/user/manual/en/stock/opening-stock.html). Based on the valuation of items's update in the Warehouse, balance will be updated in the Warehouse account.
 
 ###Fixed Asset Opening
 
-Opening balance for the fixed asset account should be updated via Journal Entry. Assets which are not fully depreciated should be added in the [Asset master]({{docs_base_url}}/user/manual/en/accounts/managing-fixed-assets.html). For adding Assets in your possession, ensure to check **Is Existing Asset** field.
+Opening balance for the fixed asset account should be updated via Journal Entry. Assets which are not fully depreciated should be added in the [Asset master](/docs/user/manual/en/accounts/managing-fixed-assets.html). For adding Assets in your possession, ensure to check **Is Existing Asset** field.
 
 ### Outstanding Invoices
 
diff --git a/erpnext/docs/user/manual/en/accounts/payment-entry.md b/erpnext/docs/user/manual/en/accounts/payment-entry.md
index 62dd9b4..ae82eb2 100644
--- a/erpnext/docs/user/manual/en/accounts/payment-entry.md
+++ b/erpnext/docs/user/manual/en/accounts/payment-entry.md
@@ -1,33 +1,36 @@
+# Payment Entry
+
 Payment Entry can be made against following transactions.
 
   1. Sales Invoice.
   2. Purchase Invoice.
   3. Sales Order (Advance Payment)
   4. Purchase Order (Advance Payment)
+  5. Expense Claim
 
 ####Step 1: Make Payment
 
 On submitting a document against which Payment Entry can be made, you will find Make Payment button.
 
-<img class="screenshot" alt="Making Payment" src="{{docs_base_url}}/assets/img/accounts/payment-entry-1.png">
+<img class="screenshot" alt="Making Payment" src="/docs/assets/img/accounts/payment-entry-1.png">
 
 ####Step 2: Mode of Payment
 
 In the Payment Entry, select Mode of Payment (eg: Bank, Cash, Wire Transfer). In the Mode of Payment master, default Account can be set. This default payment Account will fetch into Payment Entry.
 
-<img class="screenshot" alt="Making Paymentt" src="{{docs_base_url}}/assets/img/accounts/payment-entry-2.gif">
+<img class="screenshot" alt="Making Paymentt" src="/docs/assets/img/accounts/payment-entry-2.gif">
 
 ####Step 3: Payment Amount
 
-Enter actual payment amount received from the Customer or paid to the Supplier.
+Enter actual payment amount received from the Customer or paid to the Supplier or Employee.
 
-<img class="screenshot" alt="Making Payment" src="{{docs_base_url}}/assets/img/accounts/payment-entry-3.png">
+<img class="screenshot" alt="Making Payment" src="/docs/assets/img/accounts/payment-entry-3.png">
 
 ####Step 4: Allocate Amount
 
 If creating Payment Entry for the Customer, Payment Amount will be allocated against Sales Invoice.
 
-<img class="screenshot" alt="Making Payment" src="{{docs_base_url}}/assets/img/accounts/payment-entry-4.gif">
+<img class="screenshot" alt="Making Payment" src="/docs/assets/img/accounts/payment-entry-4.gif">
 
 On the same lines, when creating Payment Entry for a Supplier, Payment Amount will be allocated against Purchase Invoice.
 
@@ -37,13 +40,13 @@
 
 When making payment entry, there could be some difference in the actual payment amount and the invoice outstanding. This difference could be due to rounding error, or change in the currency exchange rate. You can set an Account here where this difference amount will be booked.
 
-<img class="screenshot" alt="Making Payment" src="{{docs_base_url}}/assets/img/accounts/payment-entry-5.gif">
+<img class="screenshot" alt="Making Payment" src="/docs/assets/img/accounts/payment-entry-5.gif">
 
 ####Step 6: Submit
 
 Save and Submit Payment Entry. On submission, outstanding will be updated in the Invoices. 
 
-<img class="screenshot" alt="Making Payment" src="{{docs_base_url}}/assets/img/accounts/payment-entry-8.png">
+<img class="screenshot" alt="Making Payment" src="/docs/assets/img/accounts/payment-entry-8.png">
 
 If payment entry was created against Sales Order or Purchase Order, field Advance Paid will be updated in them. when creating Payment invoice against those transactions, Payment Entry will auto-update in that Invoice, so that you can allocate invoice amount against advance payment entry.
 
@@ -59,13 +62,13 @@
 
 ###Multi Currency Payment Entry
 
-ERPNext allows you maintain accounts and invoicing in the [multiple currency]({{docs_base_url}}/user/manual/en/accounts/multi-currency-accounting.html). If invoice is made in the party currency, Currency Exchange Rate between companies base currency and party currency is also entered in the invoice. When creating Payment Entry against that invoice, you will again have to mention the Currency Exchange Rate at the time of payment.
+ERPNext allows you maintain accounts and invoicing in the [multiple currency](/docs/user/manual/en/accounts/multi-currency-accounting.html). If invoice is made in the party currency, Currency Exchange Rate between companies base currency and party currency is also entered in the invoice. When creating Payment Entry against that invoice, you will again have to mention the Currency Exchange Rate at the time of payment.
 
-<img class="screenshot" alt="Making Payment" src="{{docs_base_url}}/assets/img/accounts/payment-entry-6.png">
+<img class="screenshot" alt="Making Payment" src="/docs/assets/img/accounts/payment-entry-6.png">
 
 Since Currency Exchange Rate is fluctuating all the time, it can lead to difference in the payment amount against invoice total. This difference amount can be booked in the Currency Exchange Gain/Loss Amount.
 
-<img class="screenshot" alt="Making Payment" src="{{docs_base_url}}/assets/img/accounts/payment-entry-7.png">
+<img class="screenshot" alt="Making Payment" src="/docs/assets/img/accounts/payment-entry-7.png">
 
 Payments can also be made independent of invoices by creating a new Payment Entry.
 
@@ -78,7 +81,7 @@
 3. Cash - Cash
 4. Bank - Bank
 
-<img class="screenshot" alt="Making Payment" src="{{docs_base_url}}/assets/img/accounts/payment-entry-9.png">
+<img class="screenshot" alt="Making Payment" src="/docs/assets/img/accounts/payment-entry-9.png">
 
 ###Difference between Payment Entry and Journal Entry?
 
@@ -88,7 +91,7 @@
 	- Updating opening balance in an Accounts.
 	- Fixed Asset Depreciation entry.
 	- For adjusting Credit Note against Sales Invoice and Debit Note against Purchase Invoice, incase there is no payment happening at all.
-
+ 4. Payment Entries are used if a cheque is printed.
 * * *
 
 ## Managing Outstanding Payments
diff --git a/erpnext/docs/user/manual/en/accounts/payment-request.md b/erpnext/docs/user/manual/en/accounts/payment-request.md
index 30f5b1b..7ee397e 100644
--- a/erpnext/docs/user/manual/en/accounts/payment-request.md
+++ b/erpnext/docs/user/manual/en/accounts/payment-request.md
@@ -1,10 +1,12 @@
+# Payment Request
+
 Payment Request is sent via Email and will contain a link to a Payment Gateway if setup. You can create payment request via Sales Order or Sales Invoice.
 
 - Create Payment Request via Sales Order
-<img class="screenshot" alt="Payment Request" src="{{docs_base_url}}/assets/img/accounts/pr-from-so.png">
+<img class="screenshot" alt="Payment Request" src="/docs/assets/img/accounts/pr-from-so.png">
 
 - Create payment Request via Sales Invoice
-<img class="screenshot" alt="Payment Request" src="{{docs_base_url}}/assets/img/accounts/pr-from-si.png">
+<img class="screenshot" alt="Payment Request" src="/docs/assets/img/accounts/pr-from-si.png">
 
 ---
 
@@ -13,16 +15,16 @@
 
 Note: Invoice/Order currency and Payment Gateway Account currency should be same.
 
-<img class="screenshot" alt="Payment Request" src="{{docs_base_url}}/assets/img/accounts/pr-details-1.png">
+<img class="screenshot" alt="Payment Request" src="/docs/assets/img/accounts/pr-details-1.png">
 
 ---
 
 ##### Notify Customer
 You can notify customer from Payment Request with print format. If customer contact email is mentioned, it will automatically fetch email. If not so you can set Email Address on Payment Request. 
 
-<img class="screenshot" alt="Payment Request" src="{{docs_base_url}}/assets/img/accounts/pr-details-2.png">
+<img class="screenshot" alt="Payment Request" src="/docs/assets/img/accounts/pr-details-2.png">
 
 ##### Request Mail
-<img class="screenshot" alt="Payment Request" src="{{docs_base_url}}/assets/img/accounts/pr-email.png">
+<img class="screenshot" alt="Payment Request" src="/docs/assets/img/accounts/pr-email.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/en/accounts/payments.md b/erpnext/docs/user/manual/en/accounts/payments.md
index 74da054..e2d8ade 100644
--- a/erpnext/docs/user/manual/en/accounts/payments.md
+++ b/erpnext/docs/user/manual/en/accounts/payments.md
@@ -1,3 +1,5 @@
+# Payments
+
 Payment can be made against following transactions.
 
   1. Sales Invoice.
@@ -16,13 +18,13 @@
 
 On submitting a document against which Payment Entry can be made, you will find Make Payment button.
 
-<img class="screenshot" alt="Making Payment" src="{{docs_base_url}}/assets/img/accounts/payment-entry-1.png">
+<img class="screenshot" alt="Making Payment" src="/docs/assets/img/accounts/payment-entry-1.png">
 
 ####Step 2: Payment Entry
 
-<img class="screenshot" alt="Making Payment" src="{{docs_base_url}}/assets/img/accounts/payment-entry-9.png">
+<img class="screenshot" alt="Making Payment" src="/docs/assets/img/accounts/payment-entry-9.png">
 
-For more details about payment entry [check here.]({{docs_base_url}}/user/manual/en/accounts/payment-entry)
+For more details about payment entry [check here.](/docs/user/manual/en/accounts/payment-entry)
 
 ## Journal Entry
 
@@ -32,19 +34,19 @@
 
 Goto Accounts Settings > checked Make Payment via Journal Entry
 
-<img class="screenshot" alt="Making Payment" src="{{docs_base_url}}/assets/img/accounts/account-settings.png">
+<img class="screenshot" alt="Making Payment" src="/docs/assets/img/accounts/account-settings.png">
 
 ####Step 2: Make Payment
 
 On submitting a document against which Journal Entry can be made, you will find Make Payment button.
 
-<img class="screenshot" alt="Making Payment" src="{{docs_base_url}}/assets/img/accounts/payment-entry-1.png">
+<img class="screenshot" alt="Making Payment" src="/docs/assets/img/accounts/payment-entry-1.png">
 
 ####Step 3: Journal Entry
 
 Save and submit the journal entry to record the payament against the invoice
-<img class="screenshot" alt="Making Payment" src="{{docs_base_url}}/assets/img/accounts/journal-entry.png">
+<img class="screenshot" alt="Making Payment" src="/docs/assets/img/accounts/journal-entry.png">
 
-For more details about journal entry [check here.]({{docs_base_url}}/user/manual/en/accounts/journal-entry)
+For more details about journal entry [check here.](/docs/user/manual/en/accounts/journal-entry)
 
 {next}
diff --git a/erpnext/docs/user/manual/en/accounts/point-of-sale-pos-invoice.md b/erpnext/docs/user/manual/en/accounts/point-of-sale-pos-invoice.md
index 78d2226..7458f0d 100644
--- a/erpnext/docs/user/manual/en/accounts/point-of-sale-pos-invoice.md
+++ b/erpnext/docs/user/manual/en/accounts/point-of-sale-pos-invoice.md
@@ -15,7 +15,7 @@
 In ERPNext all Sales and Purchase transactions, like Sales Invoice, Quotation, Sales Order, Purchase Order etc. can be edited via the POS. There two steps to Setup POS:
 
 1. Enable POS View via (Setup > Customize > Feature Setup)
-2. Create a [POS Setting]({{docs_base_url}}/user/manual/en/setting-up/pos-setting.html) record
+2. Create a [POS Profile](/docs/user/manual/en/setting-up/pos-setting.html) record
 
 #### Different sections of the POS
 
@@ -29,7 +29,7 @@
 
 In POS, user can select the existing customer during making an order or create the new customer. This features works in the offline mode also. User can also add the customer details like contact number, address details etc on the form. The customer which has been created from the POS will be synced when the internet connection is active.
 
-<img class="screenshot" alt="POS Customer" src="{{docs_base_url}}/assets/img/accounts/pos-customer.png">
+<img class="screenshot" alt="POS Customer" src="/docs/assets/img/accounts/pos-customer.png">
 
 ### Adding an Item
 
@@ -39,7 +39,7 @@
 
 **Barcode / Serial No** \- A Barcode / Serial No is an optical machine-readable representation of data relating to the object to which it is attached. Enter Barcode / Serial No in the box as shown in the image below and pause for a second, the item will be automatically added to the cart.
 
-<img class="screenshot" alt="POS Item" src="{{docs_base_url}}/assets/img/accounts/pos-item.png">
+<img class="screenshot" alt="POS Item" src="/docs/assets/img/accounts/pos-item.png">
 
 > Tip: To change the quantity of an Item, enter your desired quantity in the
 quantity box. These are mostly used if the same Item is purchased in bulk.
@@ -51,7 +51,7 @@
 
 1. Select row in the cart and clik on delete button in the numeric keypad
   
-<img class="screenshot" alt="POS Item" src="{{docs_base_url}}/assets/img/accounts/pos_deleted_item.gif">
+<img class="screenshot" alt="POS Item" src="/docs/assets/img/accounts/pos_deleted_item.gif">
 
 
 2. Set Qty as zero to remove Item from the POS invoice. There are two ways to remove an Item.
@@ -69,7 +69,7 @@
   2. Select your “Mode of Payment”.
   3. Click on “Pay” button to Save the document.
   
-<img class="screenshot" alt="POS Payment" src="{{docs_base_url}}/assets/img/accounts/pos-payment.png">
+<img class="screenshot" alt="POS Payment" src="/docs/assets/img/accounts/pos-payment.png">
 
 Submit the document to finalise the record. After the document is submitted,
 you can either print or email it directly to the customer.
@@ -78,7 +78,7 @@
 
 Outstanding amount can be write off from the POS, user has to enter the amount under write off field on the payment screen.
 
-<img class="screenshot" alt="POS Payment" src="{{docs_base_url}}/assets/img/accounts/write-off.png">
+<img class="screenshot" alt="POS Payment" src="/docs/assets/img/accounts/write-off.png">
 
 System books the write off amount into the ledger which has selected on the POS Profile.
 
@@ -86,12 +86,12 @@
 
 POS calculate the extra amount paid by the customer, which user can return from the cash account. User has to set the account for the change amount on the POS profile.
 
-<img class="screenshot" alt="POS Payment" src="{{docs_base_url}}/assets/img/accounts/change-amount.png">
+<img class="screenshot" alt="POS Payment" src="/docs/assets/img/accounts/change-amount.png">
 
 ### Offline Records
 All the records from the POS stores into the browser's local storegae and sync submitted records after every minute of the interval if system is connected to internet. User can view the offline records by clicking on Menu > View Offline Records
 
-<img class="screenshot" alt="POS Payment" src="{{docs_base_url}}/assets/img/accounts/offline-records.png">
+<img class="screenshot" alt="POS Payment" src="/docs/assets/img/accounts/offline-records.png">
 
 #### Accounting entries (GL Entry) for a Point of Sale:
 
@@ -112,7 +112,7 @@
 
 ### Email
 User can send email from the POS, after submission of an order, user has to click on menu > email
-<img class="screenshot" alt="POS Payment" src="{{docs_base_url}}/assets/img/accounts/pos-email.png">
+<img class="screenshot" alt="POS Payment" src="/docs/assets/img/accounts/pos-email.png">
 After sync of an order, email sent to the customer with the print of the bill in the attachment
 
 {next}
diff --git a/erpnext/docs/user/manual/en/accounts/pricing-rule.md b/erpnext/docs/user/manual/en/accounts/pricing-rule.md
index bd3c51a..c2a273a 100644
--- a/erpnext/docs/user/manual/en/accounts/pricing-rule.md
+++ b/erpnext/docs/user/manual/en/accounts/pricing-rule.md
@@ -1,3 +1,5 @@
+# Pricing Rule
+
 #Pricing Rule
 
 Pricing Rule is a master where you can define rules based on which discount is applied to specific Customer or Supplier.
@@ -25,7 +27,7 @@
 
 ####1.1 Applicable On:
 
-<img alt="Applicable On" class="screenshot" src="{{docs_base_url}}/assets/img/articles/pricing-rule-on.png">
+<img alt="Applicable On" class="screenshot" src="/docs/assets/img/articles/pricing-rule-on.png">
 
 If you want Pricing Rule to be applied on all the items, select based on Item Group. For value, select **All Item Group** (parent Item Group).
 
@@ -33,31 +35,31 @@
 
 Applicability option will updated based on our selection for Selling or Buying or both. You can set applicability on one of the following master.
 
-<img alt="Applicable for" class="screenshot" src="{{docs_base_url}}/assets/img/articles/pricing-rule-for.png">
+<img alt="Applicable for" class="screenshot" src="/docs/assets/img/articles/pricing-rule-for.png">
 
 ####1.3 Quantity:
 
 Specify minimum and maximum qty of an item when this Pricing Rule should be applicable.
 
-<img alt="Applicable Qty" class="screenshot" src="{{docs_base_url}}/assets/img/articles/pricing-rule-qty.png">
+<img alt="Applicable Qty" class="screenshot" src="/docs/assets/img/articles/pricing-rule-qty.png">
 
 ###2. Application:
 
 Using Price List Rule, you can ultimately define price or %discount to be applied on an item.
 
-<img alt="Applicable" class="screenshot" src="{{docs_base_url}}/assets/img/articles/pricing-rule-application.png">
+<img alt="Applicable" class="screenshot" src="/docs/assets/img/articles/pricing-rule-application.png">
 
 ####2.1 Price
 
 Price or Discount specified in the Pricing Rule will be applied only if above applicability rules are matched with values in the transaction. Price mentioned in Pricing Rule will be given priority over item's Price List rate.
 
-<img alt="Applicable Price" class="screenshot" src="{{docs_base_url}}/assets/img/articles/pricing-rule-price.png">
+<img alt="Applicable Price" class="screenshot" src="/docs/assets/img/articles/pricing-rule-price.png">
 
 #### 2.2 Discount Percentage
 
 Discount Percentage can be applied for a specific Price List. To have it applied for all the Price List, %Discount field should be left blank.
 
-<img alt="Discount" class="screenshot" src="{{docs_base_url}}/assets/img/articles/pricing-rule-discount.png">
+<img alt="Discount" class="screenshot" src="/docs/assets/img/articles/pricing-rule-discount.png">
 
 If %Discount is to be applied on all Price Lists, then leave Price List field blank.
 
@@ -65,19 +67,19 @@
 
 Enter From and To date between which this Pricing Rule will be applicable. This will be useful if creating Pricing Rule for sales promotion exercise available for certain days.
 
-<img alt="Validity" class="screenshot" src="{{docs_base_url}}/assets/img/articles/pricing-rule-validity.png">
+<img alt="Validity" class="screenshot" src="/docs/assets/img/articles/pricing-rule-validity.png">
 
 #### Priority
 
 If two or more Pricing Rules are found based on same conditions, Priority is applied. Priority is a number between 0 to 20 while default value is zero (blank). Higher number means it will take precedence if there are multiple Pricing Rules with same conditions.
 
-<img alt="Priority" class="screenshot" src="{{docs_base_url}}/assets/img/articles/pricing-rule-priority.png">
+<img alt="Priority" class="screenshot" src="/docs/assets/img/articles/pricing-rule-priority.png">
 
 #### Disable
 
 Check to Disable Pricing Rule.
 
-<img alt="Disable" class="screenshot" src="{{docs_base_url}}/assets/img/articles/pricing-rule-disable.png">
+<img alt="Disable" class="screenshot" src="/docs/assets/img/articles/pricing-rule-disable.png">
 
 ### Add Margin
 
@@ -89,21 +91,21 @@
 
 Create price list for supllier and create item price against the price list.
 
-<img alt="Disable" class="screenshot" src="{{docs_base_url}}/assets/img/articles/price-list.png">
+<img alt="Disable" class="screenshot" src="/docs/assets/img/articles/price-list.png">
 
 
 ####2. Make Pricing Rule 
 
 Create pricing rule for the item against which supplier rate has created
 
-<img alt="Disable" class="screenshot" src="{{docs_base_url}}/assets/img/articles/pricing-rule-margin.png">
+<img alt="Disable" class="screenshot" src="/docs/assets/img/articles/pricing-rule-margin.png">
 
 ####2. Make Invoice
 
 System apply the margin rate on the item price on selection of an item.
 
-<img alt="Disable" class="screenshot" src="{{docs_base_url}}/assets/img/articles/pricing-rule-invoice.png">
+<img alt="Disable" class="screenshot" src="/docs/assets/img/articles/pricing-rule-invoice.png">
 
-For more details about pricing rule [Click Here]({{docs_base_url}}/user/manual/en/selling/articles/adding-margin.html)
+For more details about pricing rule [Click Here](/docs/user/manual/en/selling/articles/adding-margin.html)
 
 <!-- markdown -->
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/accounts/purchase-invoice.md b/erpnext/docs/user/manual/en/accounts/purchase-invoice.md
index 3ffd930..c6b2050 100644
--- a/erpnext/docs/user/manual/en/accounts/purchase-invoice.md
+++ b/erpnext/docs/user/manual/en/accounts/purchase-invoice.md
@@ -1,3 +1,5 @@
+# Purchase Invoice
+
 Purchase Invoice is the exact opposite of your Sales Invoice. It is the bill
 that your Supplier sends you for products or services delivered. Here you
 accrue expenses to your Supplier. Making a Purchase Invoice is very similar to
@@ -12,7 +14,7 @@
 You can also create a Purchase Invoice from:
 > Accounts > Billing > Purchase Invoice > New Purchase Invoice
 
-<img class="screenshot" alt="Purchase Invoice" src="{{docs_base_url}}/assets/img/accounts/purchase-invoice.png">
+<img class="screenshot" alt="Purchase Invoice" src="/docs/assets/img/accounts/purchase-invoice.png">
 
 The concept of “Posting Date” is again same as Sales Invoice. “Bill No” and
 “Bill Date” helps to track the bill number as set by your Supplier for
diff --git a/erpnext/docs/user/manual/en/accounts/recurring-orders-and-invoices.md b/erpnext/docs/user/manual/en/accounts/recurring-orders-and-invoices.md
index 713fb60..067b633 100644
--- a/erpnext/docs/user/manual/en/accounts/recurring-orders-and-invoices.md
+++ b/erpnext/docs/user/manual/en/accounts/recurring-orders-and-invoices.md
@@ -1,3 +1,5 @@
+# Recurring Orders And Invoices
+
 #Recurring Orders and Invoices
 
 If you have a contract with a **Customer** where you bill the Customer on a monthly, quarterly, half-yearly or annual basis, you should use recurring feature in orders and invoices. 
@@ -10,7 +12,7 @@
 
 Option to set document as recurring will be visible only after submission. Recurring is last section in document. Check **Is Recurring** to set document as recurring.
 
-<img alt="Recurring Invoice" class="screenshot" src="{{docs_base_url}}/assets/img/accounts/recurring.gif">
+<img alt="Recurring Invoice" class="screenshot" src="/docs/assets/img/accounts/recurring.gif">
 
 **From Date and To Date:** This defines contract period with the customer.
 
diff --git a/erpnext/docs/user/manual/en/accounts/sales-invoice.md b/erpnext/docs/user/manual/en/accounts/sales-invoice.md
index aa7f3a6..f4c4143 100644
--- a/erpnext/docs/user/manual/en/accounts/sales-invoice.md
+++ b/erpnext/docs/user/manual/en/accounts/sales-invoice.md
@@ -1,3 +1,5 @@
+# Sales Invoice
+
 A Sales Invoice is a bill that you send to your customers, against which the customer processes the payment. Sales Invoice is an accounting transaction. On submission of Sales Invoice,  the system updates the receivable and books income against a Customer Account.
 
 You can create a Sales Invoice directly from
@@ -6,7 +8,7 @@
 
 or you can Make a new Sales Invoice after you submit the Delivery Note.
 
-<img class="screenshot" alt="Sales Invoice" src="{{docs_base_url}}/assets/img/accounts/sales-invoice.png">
+<img class="screenshot" alt="Sales Invoice" src="/docs/assets/img/accounts/sales-invoice.png">
 
 #### Accounting Impact
 
@@ -62,7 +64,7 @@
 Also, if you check the **Update Stock** the stock will also update automatically,
 without the need of a Delivery Note.
 
-<img class="screenshot" alt="POS Invoice" src="{{docs_base_url}}/assets/img/accounts/pos-sales-invoice.png">
+<img class="screenshot" alt="POS Invoice" src="/docs/assets/img/accounts/pos-sales-invoice.png">
 
 #### Billing Timesheet with Project
 
@@ -71,7 +73,7 @@
 Sales Invoice, select the Project for which the billing is to be made, and the
 corresponding Timesheet entries for that Project will be fetched.
 
-<img class="screenshot" alt="POS Invoice" src="{{docs_base_url}}/assets/img/accounts/billing-timesheet-sales-invoice.png">
+<img class="screenshot" alt="POS Invoice" src="/docs/assets/img/accounts/billing-timesheet-sales-invoice.png">
 
 * * *
 
@@ -88,5 +90,5 @@
 Customer wants an “Invoice”, you could give the Customer a Quotation (in
 ERPNext) titled as “Pro Forma Invoice”. This way everyone is happy.
 
-This is a fairly common practice. We follow this at Frappe too.
+This is a fairly common practice. We follow this at Frappé too.
 {next}
diff --git a/erpnext/docs/user/manual/en/accounts/setup/accounts-settings.md b/erpnext/docs/user/manual/en/accounts/setup/accounts-settings.md
index 3b7a686..3bada56 100644
--- a/erpnext/docs/user/manual/en/accounts/setup/accounts-settings.md
+++ b/erpnext/docs/user/manual/en/accounts/setup/accounts-settings.md
@@ -1,5 +1,7 @@
+# Accounts Settings
 
-<img class="screenshot" alt="Account Settings" src="{{docs_base_url}}/assets/img/accounts/account-settings.png">
+
+<img class="screenshot" alt="Account Settings" src="/docs/assets/img/accounts/account-settings.png">
 
 * Accounts Frozen Upto: Freeze accounting transactions upto specified date, nobody can make / modify entry except specified role.
 
diff --git a/erpnext/docs/user/manual/en/accounts/setup/cost-center.md b/erpnext/docs/user/manual/en/accounts/setup/cost-center.md
index 5ed3802..0eabce7 100644
--- a/erpnext/docs/user/manual/en/accounts/setup/cost-center.md
+++ b/erpnext/docs/user/manual/en/accounts/setup/cost-center.md
@@ -1,3 +1,5 @@
+# Cost Center
+
 Your Chart of Accounts is mainly designed to provide reports to the government
 and tax authorities. Most businesses have multiple activities like different
 product lines, market segments, areas of business, etc that share some common
@@ -32,6 +34,6 @@
 
 > Accounts > Setup > Chart of Cost Centers
 
-<img class="screenshot" alt="Cost Center" src="{{docs_base_url}}/assets/img/chart-of-cost-center.png">
+<img class="screenshot" alt="Cost Center" src="/docs/assets/img/chart-of-cost-center.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/en/accounts/setup/fiscal-year.md b/erpnext/docs/user/manual/en/accounts/setup/fiscal-year.md
index 4a1195a..a211ee3 100644
--- a/erpnext/docs/user/manual/en/accounts/setup/fiscal-year.md
+++ b/erpnext/docs/user/manual/en/accounts/setup/fiscal-year.md
@@ -1,3 +1,5 @@
+# Fiscal Year
+
 A fiscal year is also known as a financial year or a budget year. It is used
 for calculating financial statements in businesses and other organisations.
 The fiscal year may or may not be the same as a calendar year. For tax
@@ -23,6 +25,6 @@
 In case you have multiple companies sharing the same Fiscal Year, you can add
 it into the grid as shown below.
 
-<img class="screenshot" alt="Fiscal Year" src="{{docs_base_url}}/assets/img/accounts/fiscal-year.png">
+<img class="screenshot" alt="Fiscal Year" src="/docs/assets/img/accounts/fiscal-year.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/en/accounts/setup/index.md b/erpnext/docs/user/manual/en/accounts/setup/index.md
index 7b45044..c328cc0 100644
--- a/erpnext/docs/user/manual/en/accounts/setup/index.md
+++ b/erpnext/docs/user/manual/en/accounts/setup/index.md
@@ -1,3 +1,5 @@
+# Setup
+
 ### Topics
 
 {index}
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/accounts/setup/tax-rule.md b/erpnext/docs/user/manual/en/accounts/setup/tax-rule.md
index bfcf6f0..a7dee08 100644
--- a/erpnext/docs/user/manual/en/accounts/setup/tax-rule.md
+++ b/erpnext/docs/user/manual/en/accounts/setup/tax-rule.md
@@ -1,6 +1,8 @@
-You can define which [Tax Template]({{docs_base_url}}/user/manual/en/setting-up/setting-up-taxes.html) must be applied on a Sales / Purchase transaction using Tax Rule.
+# Tax Rule
 
-<img class="screenshot" alt="Tax Rule" src="{{docs_base_url}}/assets/img/accounts/tax-rule.png">
+You can define which [Tax Template](/docs/user/manual/en/setting-up/setting-up-taxes.html) must be applied on a Sales / Purchase transaction using Tax Rule.
+
+<img class="screenshot" alt="Tax Rule" src="/docs/assets/img/accounts/tax-rule.png">
 
 You can define Tax Rules for Sales or Purchase Taxes. 
 While making a Transaction the system will select and apply tax template based on the tax rule defined.
@@ -10,9 +12,9 @@
 
 Suppose we define 2 Tax Rules as below.
 
-<img class="screenshot" alt="Tax Rule" src="{{docs_base_url}}/assets/img/accounts/tax-rule-1.png">
+<img class="screenshot" alt="Tax Rule" src="/docs/assets/img/accounts/tax-rule-1.png">
 
-<img class="screenshot" alt="Tax Rule" src="{{docs_base_url}}/assets/img/accounts/tax-rule-2.png">
+<img class="screenshot" alt="Tax Rule" src="/docs/assets/img/accounts/tax-rule-2.png">
 
 Here Tax Rule 1 has Billing Country as India and Tax Rule 2 has Billing Country as United Kingdom
 
diff --git a/erpnext/docs/user/manual/en/accounts/tools/bank-reconciliation.md b/erpnext/docs/user/manual/en/accounts/tools/bank-reconciliation.md
index 87348ee..77d27ef 100644
--- a/erpnext/docs/user/manual/en/accounts/tools/bank-reconciliation.md
+++ b/erpnext/docs/user/manual/en/accounts/tools/bank-reconciliation.md
@@ -1,3 +1,5 @@
+# Bank Reconciliation
+
 ### Bank Reconciliation Statement
 
 If you are receiving payments or making payments via cheques, the bank statements will not accurately match the dates of your entry, this is because the bank usually takes time to “clear” these payments. Also you may have mailed a cheque to your Supplier and it may be a few days before it is received and deposited by the Supplier. In ERPNext you can synchronise your bank statements and your Journal Entries using the “Bank Reconciliation” tool.
@@ -6,7 +8,7 @@
 
 ####Bank Reconciliation Statement
 
-<img class="screenshot" alt="Bank Reconciliation statement" src="{{docs_base_url}}/assets/img/accounts/bank-reconciliation-2.png">  
+<img class="screenshot" alt="Bank Reconciliation statement" src="/docs/assets/img/accounts/bank-reconciliation-2.png">  
 
 In the report, check whether the field 'Balance as per bank' matches the Bank Account Statement. If it is matching, it means that Clearance Date is correctly updated for all the bank entries. If there is a mismatch, Its because of bank entries for which Cleanrane Date is not yet updated.
 
@@ -34,7 +36,7 @@
 
 __Step 4:__ Click on the JV from the table and update clearance date.
 
-<img class="screenshot" alt="Bank Reconciliation" src="{{docs_base_url}}/assets/img/accounts/bank-reconciliation.png">
+<img class="screenshot" alt="Bank Reconciliation" src="/docs/assets/img/accounts/bank-reconciliation.png">
 
 __Step 5:__ Click on the button 'Update Clearance Date'.
  
diff --git a/erpnext/docs/user/manual/en/accounts/tools/index.md b/erpnext/docs/user/manual/en/accounts/tools/index.md
index 7b45044..c938dde 100644
--- a/erpnext/docs/user/manual/en/accounts/tools/index.md
+++ b/erpnext/docs/user/manual/en/accounts/tools/index.md
@@ -1,3 +1,5 @@
+# Tools
+
 ### Topics
 
 {index}
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/accounts/tools/payment-reconciliation.md b/erpnext/docs/user/manual/en/accounts/tools/payment-reconciliation.md
index bac6f65..329d789 100644
--- a/erpnext/docs/user/manual/en/accounts/tools/payment-reconciliation.md
+++ b/erpnext/docs/user/manual/en/accounts/tools/payment-reconciliation.md
@@ -1,3 +1,5 @@
+# Payment Reconciliation
+
 In complex scenarios, especially in the capital goods industry, sometimes there is no direct link between payments and invoices. You send invoices to your Customers and your Customer sends you block payments or payments based on some schedule that is not linked to your invoices.
 
 In such cases, you can use the Payment to Invoice Matching Tool.
@@ -8,7 +10,7 @@
 
 To cancel off some payments and invoices, select the Invoices and Journal Vouchers and click on “Reconcile”.
 
-<img class="screenshot" alt="Payment Reconciliation" src="{{docs_base_url}}/assets/img/accounts/payment-reconcile-tool.png">
+<img class="screenshot" alt="Payment Reconciliation" src="/docs/assets/img/accounts/payment-reconcile-tool.png">
 
 __Step 1:__ Select the Account against whom the payments need to be reconciled.
 
diff --git a/erpnext/docs/user/manual/en/accounts/tools/payment-tool.md b/erpnext/docs/user/manual/en/accounts/tools/payment-tool.md
index d0e765a..32a539b 100644
--- a/erpnext/docs/user/manual/en/accounts/tools/payment-tool.md
+++ b/erpnext/docs/user/manual/en/accounts/tools/payment-tool.md
@@ -1,3 +1,5 @@
+# Payment Tool
+
 ###Payment Tool
 The Payment Tool Feature allows non-accounting personnel to generate Journal Entries by populating relevant fields in the Journal Entry with account and payment details.
 
@@ -11,14 +13,14 @@
 6. Click on Get Outstanding Vouchers to fetch all the valid Vouchers, Invoices and Orders against which a payment can be made/received. These will appear in the Against Voucher section.
 	* __Note:__ In case User is paying a customer or receiving payment from a supplier, add the details regarding the relevant invoices and orders manually.
 
-   <img class="screenshot" alt="Payment Tool" src="{{docs_base_url}}/assets/img/accounts/payment-tool-1.png">
+   <img class="screenshot" alt="Payment Tool" src="/docs/assets/img/accounts/payment-tool-1.png">
 
 7. Once details have been fetched, click on the detail entry and enter the payment amount made against that Invoice/Order/Voucher
 
-   <img class="screenshot" alt="Payment Tool" src="{{docs_base_url}}/assets/img/accounts/payment-tool-2.png">
+   <img class="screenshot" alt="Payment Tool" src="/docs/assets/img/accounts/payment-tool-2.png">
 
 8. Click on 'Make Journal Entry' to generate a new Journal Entry with the relevant Party Details and Credit/Debit details filled in.
 
-   <img class="screenshot" alt="Payment Tool" src="{{docs_base_url}}/assets/img/accounts/payment-tool-3.png">
+   <img class="screenshot" alt="Payment Tool" src="/docs/assets/img/accounts/payment-tool-3.png">
 	
 {next}
diff --git a/erpnext/docs/user/manual/en/accounts/tools/period-closing-voucher.md b/erpnext/docs/user/manual/en/accounts/tools/period-closing-voucher.md
index 418ea84..e48055d 100644
--- a/erpnext/docs/user/manual/en/accounts/tools/period-closing-voucher.md
+++ b/erpnext/docs/user/manual/en/accounts/tools/period-closing-voucher.md
@@ -1,3 +1,5 @@
+# Period Closing Voucher
+
 At the end of every year or (quarterly or maybe even monthly), after completing auditing, you can close your books of accounts. This means that you make all your special entries like:
 
   * Depreciation
@@ -19,7 +21,7 @@
 
 **Closing Fiscal Year** will be an year for which you are closing your financial statement.
 
-<img class="screenshot" alt="Period Closing Voucher" src="{{docs_base_url}}/assets/img/accounts/period-closing-voucher.png">
+<img class="screenshot" alt="Period Closing Voucher" src="/docs/assets/img/accounts/period-closing-voucher.png">
 
 This voucher will transfer Profit or Loss (availed from P&L statment) to Closing Account Head. You should select a liability account like Reserves and Surplus, or Capital Fund account as Closing Account.
 
diff --git a/erpnext/docs/user/manual/en/buying/articles/index.md b/erpnext/docs/user/manual/en/buying/articles/index.md
index 0dff60b..fb11735 100644
--- a/erpnext/docs/user/manual/en/buying/articles/index.md
+++ b/erpnext/docs/user/manual/en/buying/articles/index.md
@@ -1 +1,3 @@
+# Articles
+
 {index}
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/buying/articles/maintaining-suppliers-part-no-in-item.md b/erpnext/docs/user/manual/en/buying/articles/maintaining-suppliers-part-no-in-item.md
index 2a92581..db42fc3 100644
--- a/erpnext/docs/user/manual/en/buying/articles/maintaining-suppliers-part-no-in-item.md
+++ b/erpnext/docs/user/manual/en/buying/articles/maintaining-suppliers-part-no-in-item.md
@@ -1,3 +1,5 @@
+# Maintaining Suppliers Part No In Item
+
 #Maintaining Supplier's Item Code in the Item master
 
 For each item, code assigned might differ from the code your supplier has given to that same item. ERPNext allows you to track Supplier's Item Code in the item master. Also you can fetch Supplier's Item Code in your purchase transactions, so that they can easily recognize item referring to their Item Code.
@@ -6,15 +8,15 @@
 
 In the Item master, under Supplier Details section, enter Item Code as given by the Supplier to this item.
 
-<img alt="Supplier Item Code" class="screenshot" src="{{docs_base_url}}/assets/img/articles/supplier-item-code.png">
+<img alt="Supplier Item Code" class="screenshot" src="/docs/assets/img/articles/supplier-item-code.png">
 
 #### 2. Supplier's Item Code in Transactions
 
-Each purchase transaction has field in the Item table where Supplier's Item Code is fetched. This field is hidden in form as well as in the Standard print format. You can make it visible by changing property for this field from [Customize Form.]({{docs_base_url}}/user/manual/en/customize-erpnext/customize-form.html)
+Each purchase transaction has field in the Item table where Supplier's Item Code is fetched. This field is hidden in form as well as in the Standard print format. You can make it visible by changing property for this field from [Customize Form.](/docs/user/manual/en/customize-erpnext/customize-form.html)
 
 Supplier Item Code will only be fetched in the purchase transaction, if both Supplier and Item Code selected in purchase transaction is mapped with value mentioned in the Item master.
 
-<img alt="Supplier Item Code in transaction" class="screenshot" src="{{docs_base_url}}/assets/img/articles/supplier-item-code-in-purchase-order.png">
+<img alt="Supplier Item Code in transaction" class="screenshot" src="/docs/assets/img/articles/supplier-item-code-in-purchase-order.png">
 
 
 <!-- markdown -->
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/buying/articles/pull-items-in-purchase-order-based-on-supplier.md b/erpnext/docs/user/manual/en/buying/articles/pull-items-in-purchase-order-based-on-supplier.md
index 80f5283..1e9c042 100644
--- a/erpnext/docs/user/manual/en/buying/articles/pull-items-in-purchase-order-based-on-supplier.md
+++ b/erpnext/docs/user/manual/en/buying/articles/pull-items-in-purchase-order-based-on-supplier.md
@@ -1,3 +1,5 @@
+# Pull Items In Purchase Order Based On Supplier
+
 #Pull Items in Purchase Order based on Supplier
 
 **Question:**
@@ -12,7 +14,7 @@
 
 Update Default Supplier in the Item master.
 
-<img alt="Item Purchase UoM" class="screenshot" src="{{docs_base_url}}/assets/img/articles/for-supplier-2.png">
+<img alt="Item Purchase UoM" class="screenshot" src="/docs/assets/img/articles/for-supplier-2.png">
 
 ####Step 2:  New Purchase Order
 
@@ -22,13 +24,13 @@
 
 From the options available to pull data in the Purchase Order, click on `For Supplier`.
 
-<img alt="Item Purchase UoM" class="screenshot" src="{{docs_base_url}}/assets/img/articles/for-supplier-1.gif">
+<img alt="Item Purchase UoM" class="screenshot" src="/docs/assets/img/articles/for-supplier-1.gif">
 
 ####Step 4: Get Items
 
 Select Supplier name and click on `Get`.
 
-<img alt="Item Purchase UoM" class="screenshot" src="{{docs_base_url}}/assets/img/articles/for-supplier-3.png">
+<img alt="Item Purchase UoM" class="screenshot" src="/docs/assets/img/articles/for-supplier-3.png">
 
 ####Step 5: Edit Items
 
diff --git a/erpnext/docs/user/manual/en/buying/articles/purchasing-in-different-unit.md b/erpnext/docs/user/manual/en/buying/articles/purchasing-in-different-unit.md
index 81b1aab..2f8a673 100644
--- a/erpnext/docs/user/manual/en/buying/articles/purchasing-in-different-unit.md
+++ b/erpnext/docs/user/manual/en/buying/articles/purchasing-in-different-unit.md
@@ -1,3 +1,5 @@
+# Purchasing In Different Unit
+
 #Purchasing in Different Unit (UoM)
 
 Each item has stock unit of measument (UoM) associated to it. For example UoM of pen could be numbers (Nos) and sand could be stocked kgs. However, when we place an order with Supplier, UoM for an item could change. Like we can order 1 set/box of Pen, or one truck of sand to our Supplier. When creating purchase transacton, you can change Purchase UoM for an item.
@@ -15,28 +17,28 @@
 
 In both the fields, default UoM of an item will be fetched by default. You should edit UoM field, and select Purchase UoM (Box in this case). Updating Purchase UoM is mainly for the reference of the supplier. In the print format, you will see item qty in the Purchase UoM.
 
-<img alt="Item Purchase UoM" class="screenshot" src="{{docs_base_url}}/assets/img/articles/editing-uom-in-po.gif">
+<img alt="Item Purchase UoM" class="screenshot" src="/docs/assets/img/articles/editing-uom-in-po.gif">
 
 #### Step 2: Update UoM Conversion Factors
 
 In one Box, if you get 20 Nos. of Pen, UoM Conversion Factor would be 20.
 
-<img alt="Item Conversion Factor" class="screenshot" src="{{docs_base_url}}/assets/img/articles/po-conversion-factor.png">
+<img alt="Item Conversion Factor" class="screenshot" src="/docs/assets/img/articles/po-conversion-factor.png">
 
 Based on the Qty and Conversion Factor, qty will be calculated in the Stock UoM of an item. If you purchase just one Box, then Qty in the stock UoM will be set as 20.
 
-<img alt="Purchase Qty in Default UoM" class="screenshot" src="{{docs_base_url}}/assets/img/articles/po-qty-in-stock-uom.png">
+<img alt="Purchase Qty in Default UoM" class="screenshot" src="/docs/assets/img/articles/po-qty-in-stock-uom.png">
 
 ### Stock Ledger Posting
 
 Irrespective of the Purchase UoM selected, stock ledger posting will be done in the Default UoM of an item. Hence you should ensure that conversion factor is entered correctly while purchasing item in different UoM.
 
-<img alt="Print Format in Purchase UoM" class="screenshot" src="{{docs_base_url}}/assets/img/articles/po-stock-uom-ledger.png">
+<img alt="Print Format in Purchase UoM" class="screenshot" src="/docs/assets/img/articles/po-stock-uom-ledger.png">
 
 ### Set Conversion Factor in Item
 
 In the Item master, under Purchase section, you can list all the possible purchase UoM of an item, with its UoM Conversion Factor.
 
-<img alt="Purchase UoM master" class="screenshot" src="{{docs_base_url}}/assets/img/articles/item-purchase-uom-conversion.png">
+<img alt="Purchase UoM master" class="screenshot" src="/docs/assets/img/articles/item-purchase-uom-conversion.png">
 
 <!-- markdown -->
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/buying/purchase-order.md b/erpnext/docs/user/manual/en/buying/purchase-order.md
index 89bb6d9..cdfd0f9 100644
--- a/erpnext/docs/user/manual/en/buying/purchase-order.md
+++ b/erpnext/docs/user/manual/en/buying/purchase-order.md
@@ -1,3 +1,5 @@
+# Purchase Order
+
 A Purchase Order is analogous to a Sales Order. It is usually a binding
 contract with your Supplier that you promise to buy a set of Items under the
 given conditions.
@@ -7,7 +9,7 @@
 
 #### Purchase Order Flow Chart
 
-![Purchase Order]({{docs_base_url}}/assets/img/buying/buying_flow.png)
+![Purchase Order](/docs/assets/img/buying/buying_flow.png)
 
 In ERPNext, you can also make a Purchase Order directly by going to:
 
@@ -15,7 +17,7 @@
 
 #### Create Purchase Order
 
-<img class="screenshot" alt="Purchase Order" src="{{docs_base_url}}/assets/img/buying/purchase-order.png">
+<img class="screenshot" alt="Purchase Order" src="/docs/assets/img/buying/purchase-order.png">
 
 Entering a Purchase Order is very similar to a Purchase Request, additionally
 you will have to set:
@@ -40,10 +42,10 @@
 and what you pay to your Supplier. This is called Value Added Tax (VAT).
 
 #### Add Taxes in Purchase Order
-<img class="screenshot" alt="Purchase Order" src="{{docs_base_url}}/assets/img/buying/add_taxes_to_doc.png">
+<img class="screenshot" alt="Purchase Order" src="/docs/assets/img/buying/add_taxes_to_doc.png">
 
 #### Show Tax break-up
-<img class="screenshot" alt="Purchase Order" src="{{docs_base_url}}/assets/img/buying/show_tax_breakup.png">
+<img class="screenshot" alt="Purchase Order" src="/docs/assets/img/buying/show_tax_breakup.png">
 
 For example you buy Items worth X and sell them for 1.3X. So your Customer
 pays 1.3 times the tax you pay your Supplier. Since you have already paid tax
@@ -79,7 +81,7 @@
 #### Figure 3: Conversion of Purchase UOM to stock UOM
 
 
-<img class="screenshot" alt="Purchase Order - UOM" src="{{docs_base_url}}/assets/img/buying/purchase-order-uom.png">
+<img class="screenshot" alt="Purchase Order - UOM" src="/docs/assets/img/buying/purchase-order-uom.png">
 
 __Step 4:__ Mention the UOM conversion factor. For example, (100);If one box has
 100 pieces.  
diff --git a/erpnext/docs/user/manual/en/buying/purchase-taxes.md b/erpnext/docs/user/manual/en/buying/purchase-taxes.md
index f3be64d..b04949f 100644
--- a/erpnext/docs/user/manual/en/buying/purchase-taxes.md
+++ b/erpnext/docs/user/manual/en/buying/purchase-taxes.md
@@ -1,3 +1,5 @@
+# Purchase Taxes
+
 For Tax Accounts that you want to use in the tax templates, you must mention
 them as type “Tax” in your Chart of Accounts.
 
@@ -8,7 +10,7 @@
 > Buying > Setup > Purchase Taxes and Charges Template > New Purchase Taxes and Charges
 Master
 
-<img class="screenshot" alt="Purchase taxes" src="{{docs_base_url}}/assets/img/buying/purchase-taxes.png">
+<img class="screenshot" alt="Purchase taxes" src="/docs/assets/img/buying/purchase-taxes.png">
 
 
 You can specify if the tax / charge is only for valuation (not a part of
diff --git a/erpnext/docs/user/manual/en/buying/request-for-quotation.md b/erpnext/docs/user/manual/en/buying/request-for-quotation.md
index 07b0d3f..182c89d 100644
--- a/erpnext/docs/user/manual/en/buying/request-for-quotation.md
+++ b/erpnext/docs/user/manual/en/buying/request-for-quotation.md
@@ -1,10 +1,12 @@
+# Request For Quotation
+
 A Request for Quotation is a document that an organization submits to one or more suppliers eliciting quotation for items.
 
 In ERPNext, You can create request for quotation directly by going to:
 
 > Buying > Documents > Request for Quotation > New Request for Quotation
 
-![Request For Quotation]({{docs_base_url}}/assets/img/buying/request-for-quotation.png)
+![Request For Quotation](/docs/assets/img/buying/request-for-quotation.png)
 
 After creation of request for quotation, there are two ways to generate supplier quotation from request for quotation.
 
@@ -12,41 +14,41 @@
 
 __Step 1:__ Open request for quotation and click on make supplier quotation.
 
-![Request For Quotation]({{docs_base_url}}/assets/img/buying/make-supplier-quotation-from-rfq.png)
+![Request For Quotation](/docs/assets/img/buying/make-supplier-quotation-from-rfq.png)
 
 __Step 2:__ Select supplier and click on make supplier quotation.
 
-![Request For Quotation]({{docs_base_url}}/assets/img/buying/supplier-selection-from-rfq.png)
+![Request For Quotation](/docs/assets/img/buying/supplier-selection-from-rfq.png)
 
 __Step 3:__ System will open the supplier quotation, user has to enter the rate and submit it.
 
-![Request For Quotation]({{docs_base_url}}/assets/img/buying/supplier-quotation-from-rfq.png)
+![Request For Quotation](/docs/assets/img/buying/supplier-quotation-from-rfq.png)
 
 #### For Supplier
 
 __Step 1:__ User has to create contact or enter Email Address against the supplier on request for quotation.
 
-![Request For Quotation]({{docs_base_url}}/assets/img/buying/set-email-id.png)
+![Request For Quotation](/docs/assets/img/buying/set-email-id.png)
 
 __Step 2:__ User has to click on send supplier emails button.
 
-![Request For Quotation]({{docs_base_url}}/assets/img/buying/send-supplier-emails.png)
+![Request For Quotation](/docs/assets/img/buying/send-supplier-emails.png)
 
 * If supplier's user not available: system will create supplier's user and send details to the supplier, supplier will need to click on the link(Password Update) present in the email. After password update supplier can access his portal with the request for quotation form.
 
-![Request For Quotation]({{docs_base_url}}/assets/img/buying/supplier-password-update-link.png)
+![Request For Quotation](/docs/assets/img/buying/supplier-password-update-link.png)
 
 * If supplier's user available: system will send request for quotation link to supplier, supplier has to login using his credentials to view request for quotation form on portal. 
 
-![Request For Quotation]({{docs_base_url}}/assets/img/buying/send-rfq-link.png)
+![Request For Quotation](/docs/assets/img/buying/send-rfq-link.png)
 
 __Step 3:__ Supplier has to enter amount and notes(payment terms) on the form and click on submit
 
-![Request For Quotation]({{docs_base_url}}/assets/img/buying/supplier-portal-rfq.png)
+![Request For Quotation](/docs/assets/img/buying/supplier-portal-rfq.png)
 
 __Step 4:__ On submission, system will create supplier quotation(draft mode) against the supplier. User has to review the supplier quotation
             and submit it.
 			
 More details:-
 
-![Request For Quotation]({{docs_base_url}}/assets/img/buying/request-for-quotation.gif)
\ No newline at end of file
+![Request For Quotation](/docs/assets/img/buying/request-for-quotation.gif)
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/buying/setup/buying-settings.md b/erpnext/docs/user/manual/en/buying/setup/buying-settings.md
index 3d5dbb9..197a18e 100644
--- a/erpnext/docs/user/manual/en/buying/setup/buying-settings.md
+++ b/erpnext/docs/user/manual/en/buying/setup/buying-settings.md
@@ -1,6 +1,8 @@
+# Buying Settings
+
 Buying Settings is where you can define properties which will be applied in the Buying module's transactions. 
 
-![Buying Settings]({{docs_base_url}}/assets/img/buying/buying-settings.png)
+![Buying Settings](/docs/assets/img/buying/buying-settings.png)
 
 Let us look at the various options that can be configured:
 
@@ -14,7 +16,7 @@
 
 `Setup > Data > Naming Series`
 
-[Click here to know more about defining a Naming Series.]({{docs_base_url}}/user/manual/en/setting-up/settings/naming-series.html)
+[Click here to know more about defining a Naming Series.](/docs/user/manual/en/setting-up/settings/naming-series.html)
 
 ### 2. Default Supplier Type
 
diff --git a/erpnext/docs/user/manual/en/buying/setup/index.md b/erpnext/docs/user/manual/en/buying/setup/index.md
index 259b5eb..2d85ad2 100644
--- a/erpnext/docs/user/manual/en/buying/setup/index.md
+++ b/erpnext/docs/user/manual/en/buying/setup/index.md
@@ -1,3 +1,5 @@
+# Setup
+
 
 ### Topics
 
diff --git a/erpnext/docs/user/manual/en/buying/setup/supplier-type.md b/erpnext/docs/user/manual/en/buying/setup/supplier-type.md
index 2e88601..16d5445 100644
--- a/erpnext/docs/user/manual/en/buying/setup/supplier-type.md
+++ b/erpnext/docs/user/manual/en/buying/setup/supplier-type.md
@@ -1,3 +1,5 @@
+# Supplier Type
+
 A supplier may be distinguished from a contractor or subcontractor, who
 commonly adds specialized input to deliverables. A supplier is also known as a
 vendor. There are different types of suppliers based on their goods and
@@ -14,7 +16,7 @@
 
 > Buying > Setup > Supplier Type > New Supplier Type
 
-<img class="screenshot" alt="Supplier Type" src="{{docs_base_url}}/assets/img/buying/supplier-type.png">
+<img class="screenshot" alt="Supplier Type" src="/docs/assets/img/buying/supplier-type.png">
 
 You can classify your suppliers from a range of choice available in ERPNext.
 Choose from a set of given options like Distributor, Electrical,Hardware,
diff --git a/erpnext/docs/user/manual/en/buying/supplier-quotation.md b/erpnext/docs/user/manual/en/buying/supplier-quotation.md
index 868a297..5935477 100644
--- a/erpnext/docs/user/manual/en/buying/supplier-quotation.md
+++ b/erpnext/docs/user/manual/en/buying/supplier-quotation.md
@@ -1,3 +1,5 @@
+# Supplier Quotation
+
 A Supplier Quotation is a formal statement of promise by potential supplier to
 supply the goods or services required by a buyer, at specified prices, and
 within a specified period. A quotation may also contain terms of sale and
@@ -8,7 +10,7 @@
 
 #### Supplier Quotation Flow-Chart
 
-![Supplier Quotation]({{docs_base_url}}/assets/img/buying/buying_flow.png)
+![Supplier Quotation](/docs/assets/img/buying/buying_flow.png)
 
 You can also make a Supplier Quotation directly from:
 
@@ -16,7 +18,7 @@
 
 #### Create Supplier Quotation
 
-<img class="screenshot" alt="Supplier Quotation" src="{{docs_base_url}}/assets/img/buying/supplier-quotation.png">
+<img class="screenshot" alt="Supplier Quotation" src="/docs/assets/img/buying/supplier-quotation.png">
 
 If you have multiple Suppliers who supply you with the same Item, you
 usually send out a message (Request for Quote) to various Suppliers. In
@@ -35,10 +37,10 @@
 
 You can select relevant tax by going to "Taxes and Charges" section and adding an entry to the table as shown below,
 
-<img class="screenshot" alt="Supplier Quotation" src="{{docs_base_url}}/assets/img/buying/add_taxes_to_doc.png">
+<img class="screenshot" alt="Supplier Quotation" src="/docs/assets/img/buying/add_taxes_to_doc.png">
 
 Besides, in case of multiple items you can keep track of taxes on each by clicking "Show tax break-up"
 
-<img class="screenshot" alt="Supplier Quotation" src="{{docs_base_url}}/assets/img/buying/show_tax_breakup.png">
+<img class="screenshot" alt="Supplier Quotation" src="/docs/assets/img/buying/show_tax_breakup.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/en/buying/supplier-scorecard.md b/erpnext/docs/user/manual/en/buying/supplier-scorecard.md
index cecdf9c..eb33030 100644
--- a/erpnext/docs/user/manual/en/buying/supplier-scorecard.md
+++ b/erpnext/docs/user/manual/en/buying/supplier-scorecard.md
@@ -1,3 +1,5 @@
+# Supplier Scorecard
+
 A Supplier Scorecard is an evaluation tool used to assess the performance of 
 suppliers. Supplier scorecards can be used to keep track of item quality, 
 delivery and responsiveness of suppliers across long periods of time. This data 
@@ -12,24 +14,24 @@
 ### Create Supplier Scorecard
 A supplier scorecard is created for each supplier individually. Only one supplier scorecard can be created for each 
 supplier. 
-<img class="screenshot" alt="Purchase Order" src="{{docs_base_url}}/assets/img/buying/supplier-scorecard.png">
+<img class="screenshot" alt="Purchase Order" src="/docs/assets/img/buying/supplier-scorecard.png">
 
 #### Final Score and Standings
 The supplier scorecard consists of a set evaluation periods, during which the performance of a supplier is 
 evaluated. This period can be daily, monthly or yearly. The current score is calculated from the score of each evaluation 
 period based on the weighting function. The default formula is linearly weight over the previous 12 scoring periods. 
-<img class="screenshot" alt="Purchase Order" src="{{docs_base_url}}/assets/img/buying/supplier-scorecard-weighing.png">
+<img class="screenshot" alt="Purchase Order" src="/docs/assets/img/buying/supplier-scorecard-weighing.png">
 This formula is customizable.
 
 The supplier standing is used to quickly sort suppliers based on their performance. These are customizable for each supplier. 
 The scorecard standing of a supplier can also be used to restrict suppliers from being included in Request for Quotations or 
 being issued Purchase Orders.
-<img class="screenshot" alt="Purchase Order" src="{{docs_base_url}}/assets/img/buying/supplier-scorecard-standing.png">
+<img class="screenshot" alt="Purchase Order" src="/docs/assets/img/buying/supplier-scorecard-standing.png">
 
 #### Evaluation Criteria and Variables
 A supplier can be evaluated on several individual evaluation criteria, including (but not limited to) quotation response time, 
 delivered item quality, and delivery timeliness. These criteria are weighed to determine the final period score.
-<img class="screenshot" alt="Purchase Order" src="{{docs_base_url}}/assets/img/buying/supplier-scorecard-criteria.png">
+<img class="screenshot" alt="Purchase Order" src="/docs/assets/img/buying/supplier-scorecard-criteria.png">
 The method for calculating each criteria is determined through the criteria formula field, which can use a number of pre-established variables.
 The value of each of these variables is calculated over the scoring period for each supplier. Examples of such variables include:
  - The total number of items received from the supplier
diff --git a/erpnext/docs/user/manual/en/buying/supplier.md b/erpnext/docs/user/manual/en/buying/supplier.md
index 89107db..217d8b7 100644
--- a/erpnext/docs/user/manual/en/buying/supplier.md
+++ b/erpnext/docs/user/manual/en/buying/supplier.md
@@ -1,16 +1,18 @@
+# Supplier
+
 Suppliers are companies or individuals who provide you with products or services.
 
 You can create a new Supplier from:
 
 `Explore > Supplier > New Supplier`
 
-<img class="screenshot" alt="Supplier Master" src="{{docs_base_url}}/assets/img/buying/supplier-master.png">
+<img class="screenshot" alt="Supplier Master" src="/docs/assets/img/buying/supplier-master.png">
 
 ### Contacts and Addresses
 
 Contacts and Addresses in ERPNext are stored separately so that you can create multiple Contacts and Addresses for a Suppliers. Once Supplier is saved, you will find option to create Contact and Address for that Supplier.
 
-<img class="screenshot" alt="Supplier Master" src="{{docs_base_url}}/assets/img/buying/supplier-new-address-contact.png">
+<img class="screenshot" alt="Supplier Master" src="/docs/assets/img/buying/supplier-new-address-contact.png">
 
 > Tip: When you select a Supplier in any transaction, Contact for which "Is Primary" field id checked, it will auto-fetch with the Supplier details.
 
@@ -20,7 +22,7 @@
 
 If you want to customize payable account for the Supplier, you should first add a payable Account in the Chart of Account, and then select that Payable Account in the Supplier master.
 
-<img class="screenshot" alt="Supplier Master" src="{{docs_base_url}}/assets/img/buying/supplier-payable-account.png">
+<img class="screenshot" alt="Supplier Master" src="/docs/assets/img/buying/supplier-payable-account.png">
 
 If you don't want to customize payable account, and proceed with default payable account "Creditor", then do not update any value in the Default Supplier Account's table.
 
diff --git a/erpnext/docs/user/manual/en/customer-portal/customer-orders-invoices-and-shipping-status.md b/erpnext/docs/user/manual/en/customer-portal/customer-orders-invoices-and-shipping-status.md
index b94ac01..6facabf 100644
--- a/erpnext/docs/user/manual/en/customer-portal/customer-orders-invoices-and-shipping-status.md
+++ b/erpnext/docs/user/manual/en/customer-portal/customer-orders-invoices-and-shipping-status.md
@@ -1,17 +1,19 @@
+# Customer Orders Invoices And Shipping Status
+
 ERPNext Web Portal gives your customers quick access to their Orders, Invoices and Shipments Customers can check the status of their orders, invoices, and shipping status by logging on to the web.
 
-<img class="screenshot" alt="Customer Portal" src="{{docs_base_url}}/assets/img/website/portal-menu.png">
+<img class="screenshot" alt="Customer Portal" src="/docs/assets/img/website/portal-menu.png">
 
 Once an order is raised, either using the Shopping Cart or from within ERPNext, your customer can view the order and keep an eye on the billing and shipment status. When the invoice and payment against these orders are submitted, the customer can see the updated status on the portal, at a glance.
 
-<img class="screenshot" alt="Customer Portal" src="{{docs_base_url}}/assets/img/website/website-login.png">
+<img class="screenshot" alt="Customer Portal" src="/docs/assets/img/website/website-login.png">
 
 #### Outstanding Sales Invoice
 
-<img class="screenshot" alt="Customer Portal" src="{{docs_base_url}}/assets/img/website/invoice-unpaid.png">
+<img class="screenshot" alt="Customer Portal" src="/docs/assets/img/website/invoice-unpaid.png">
 
 #### Paid Sales Invoice
 
-<img class="screenshot" alt="Customer Portal" src="{{docs_base_url}}/assets/img/website/invoice-paid.png">
+<img class="screenshot" alt="Customer Portal" src="/docs/assets/img/website/invoice-paid.png">
 
 {next}
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/customer-portal/index.md b/erpnext/docs/user/manual/en/customer-portal/index.md
index ddac7d2..1dbb140 100644
--- a/erpnext/docs/user/manual/en/customer-portal/index.md
+++ b/erpnext/docs/user/manual/en/customer-portal/index.md
@@ -1,3 +1,5 @@
+# Customer Portal
+
 Customer Portal is designed to give easy accesibility to customers of a
 company.
 
diff --git a/erpnext/docs/user/manual/en/customer-portal/issues.md b/erpnext/docs/user/manual/en/customer-portal/issues.md
index 0088de6..17b74e4 100644
--- a/erpnext/docs/user/manual/en/customer-portal/issues.md
+++ b/erpnext/docs/user/manual/en/customer-portal/issues.md
@@ -1,3 +1,5 @@
+# Issues
+
 The customer portal makes it very easy for a customer to raise concerns. A
 simple and intuitive interface facilitates your customer to report their
 concerns as Issues. They can view the complete thread of their
@@ -5,18 +7,18 @@
 
 #### Empty Issue List
 
-<img class="screenshot" alt="Issue List" src="{{docs_base_url}}/assets/img/website/portal-ticket-list-empty.png">
+<img class="screenshot" alt="Issue List" src="/docs/assets/img/website/portal-ticket-list-empty.png">
 
 #### New Issue
 
-<img class="screenshot" alt="New Issue " src="{{docs_base_url}}/assets/img/website/portal-new-ticket.png">
+<img class="screenshot" alt="New Issue " src="/docs/assets/img/website/portal-new-ticket.png">
 
 #### Open Issue
 
-<img class="screenshot" alt="Issue Raised" src="{{docs_base_url}}/assets/img/website/portal-ticket-1.gif">
+<img class="screenshot" alt="Issue Raised" src="/docs/assets/img/website/portal-ticket-1.gif">
 
 #### Reply on Issue
 
-<img class="screenshot" alt="Issue reply" src="{{docs_base_url}}/assets/img/website/portal-ticket-reply.gif">
+<img class="screenshot" alt="Issue reply" src="/docs/assets/img/website/portal-ticket-reply.gif">
 
 {next}
diff --git a/erpnext/docs/user/manual/en/customer-portal/portal-login.md b/erpnext/docs/user/manual/en/customer-portal/portal-login.md
index 62a9b6f..efa70a2 100644
--- a/erpnext/docs/user/manual/en/customer-portal/portal-login.md
+++ b/erpnext/docs/user/manual/en/customer-portal/portal-login.md
@@ -1,6 +1,8 @@
+# Portal Login
+
 To login into the customer account, the customer has to use his Email Address and
 the password sent by ERPNext; generated through the sign-up process.
 
-<img class="screenshot" alt="Website User Signup" src="{{docs_base_url}}/assets/img/website/website-login.png">
+<img class="screenshot" alt="Website User Signup" src="/docs/assets/img/website/website-login.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/en/customer-portal/sign-up.md b/erpnext/docs/user/manual/en/customer-portal/sign-up.md
index 554285c..36e1b2c 100644
--- a/erpnext/docs/user/manual/en/customer-portal/sign-up.md
+++ b/erpnext/docs/user/manual/en/customer-portal/sign-up.md
@@ -1,14 +1,16 @@
+# Sign Up
+
 Your Customer and Suppliers can signup to your ERPNext account by following Signup option on the Login Page.
 
 #### Step 1: Signup
 
 On the Login Page, you will find option to Signup.
 
-<img class="screenshot" alt="Website User Signup" src="{{docs_base_url}}/assets/img/website/website-login.png">
+<img class="screenshot" alt="Website User Signup" src="/docs/assets/img/website/website-login.png">
 
 #### Step 2: Enter Customer Name and ID
 
-<img class="screenshot" alt="Website User Signup" src="{{docs_base_url}}/assets/img/website/website-signup-details.png">
+<img class="screenshot" alt="Website User Signup" src="/docs/assets/img/website/website-signup-details.png">
 
 After the sign up process, an email will be sent to the customers Email Address with the password details.
 
diff --git a/erpnext/docs/user/manual/en/customize-erpnext/articles/allow-fields-to-be-changed-after-submit.md b/erpnext/docs/user/manual/en/customize-erpnext/articles/allow-fields-to-be-changed-after-submit.md
index 902ada8..42b0fc6 100644
--- a/erpnext/docs/user/manual/en/customize-erpnext/articles/allow-fields-to-be-changed-after-submit.md
+++ b/erpnext/docs/user/manual/en/customize-erpnext/articles/allow-fields-to-be-changed-after-submit.md
@@ -1,3 +1,5 @@
+# Allow Fields To Be Changed After Submit
+
 #Editing Value in Submitted Document
 
 Once document is submitted, fields are frozen, and no editing is allowd. Still there are certain standard fields like Letter Head, Print Heading which can still be edited. For the custom field, if **Allow on Submit** property is checked, it will be editable even after document is submitted.
@@ -12,17 +14,17 @@
 
 In Customize Form, select Document Type (Quotation, Sales Order, Purchase Invoice Item etc.)
 
-<img alt="select docytpe" class="screenshot" src="{{docs_base_url}}/assets/img/articles/allow-on-submit-1.png">
+<img alt="select docytpe" class="screenshot" src="/docs/assets/img/articles/allow-on-submit-1.png">
 
 #### Step 3: Edit Field Property
 
 In the fields section, click on the Custom field and check the **Allow On Submit**.
 
-<img alt="Check Allow on Submit" class="screenshot" src="{{docs_base_url}}/assets/img/articles/allow-on-submit-2.png">
+<img alt="Check Allow on Submit" class="screenshot" src="/docs/assets/img/articles/allow-on-submit-2.png">
 
 #### Step 3: Update Customize Form
 
-<img alt="Update" class="screenshot" src="{{docs_base_url}}/assets/img/articles/allow-on-submit-3.png">
+<img alt="Update" class="screenshot" src="/docs/assets/img/articles/allow-on-submit-3.png">
 
 After updating Customize Form, you should reload your ERPNext account. Then check form, and field to confirm its editable in submitted form as well.
 
diff --git a/erpnext/docs/user/manual/en/customize-erpnext/articles/creating-custom-link-field.md b/erpnext/docs/user/manual/en/customize-erpnext/articles/creating-custom-link-field.md
index 834617e..21cc433 100644
--- a/erpnext/docs/user/manual/en/customize-erpnext/articles/creating-custom-link-field.md
+++ b/erpnext/docs/user/manual/en/customize-erpnext/articles/creating-custom-link-field.md
@@ -1,3 +1,5 @@
+# Creating Custom Link Field
+
 #Creating Custom Link Fields
 
 Links field are the ones linked to another document type. For example, customer field is a link field in Sales Order. This field is linked to the Customer master.
@@ -13,7 +15,7 @@
 
 In Customize Form, select Document Type (Quotation, Sales Order, Purchase Invoice Item etc.). Once field are updated in table, open field before which you wish to insert Custom Field. Then click on "Insert Above" to insert new Custom Field.
 
-<img alt="Select Docytpe" class="screenshot" src="{{docs_base_url}}/assets/img/articles/link-field-1.gif">
+<img alt="Select Docytpe" class="screenshot" src="/docs/assets/img/articles/link-field-1.gif">
 
 ####Step 4: Custom Field Values
 
@@ -24,6 +26,6 @@
 1. Name: Desired name for the field
 1. Options: Enter the name of the Doctype to which the field is linked
 
-<img alt="Enter Values" class="screenshot" src="{{docs_base_url}}/assets/img/articles/link-field-2.png">
+<img alt="Enter Values" class="screenshot" src="/docs/assets/img/articles/link-field-2.png">
 
 <!-- markdown -->
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/customize-erpnext/articles/customizing-sorting-order-in-the-list-view.md b/erpnext/docs/user/manual/en/customize-erpnext/articles/customizing-sorting-order-in-the-list-view.md
index d8e5319..a842085 100644
--- a/erpnext/docs/user/manual/en/customize-erpnext/articles/customizing-sorting-order-in-the-list-view.md
+++ b/erpnext/docs/user/manual/en/customize-erpnext/articles/customizing-sorting-order-in-the-list-view.md
@@ -1,3 +1,5 @@
+# Customizing Sorting Order In The List View
+
 #Customizing Sorting Order in the List View
 
 **Question:** I want records in my Item List sorted based on Desc Order of Item Code.
@@ -12,13 +14,13 @@
 
 Select document type for which Sort Order is to be customized.
 
-<img alt="Sort Order field" class="screenshot" src="{{docs_base_url}}/assets/img/articles/sort-order-2.png">
+<img alt="Sort Order field" class="screenshot" src="/docs/assets/img/articles/sort-order-2.png">
 
 ####Step 3: Update Sort Details
 
 In the Customize Form, you will find these fields.
 
-<img alt="Sort Order field" class="screenshot" src="{{docs_base_url}}/assets/img/articles/sort-order-1.png">
+<img alt="Sort Order field" class="screenshot" src="/docs/assets/img/articles/sort-order-1.png">
 
 1. Sort Field: Select field based on which sorting will be done. It will be "Item_Code" field in scenario.
 2. Sort Order: Sort Order will be two possible options, **Asc** for ascending, and **Desc** for descending.
diff --git a/erpnext/docs/user/manual/en/customize-erpnext/articles/deleting-custom-reports.md b/erpnext/docs/user/manual/en/customize-erpnext/articles/deleting-custom-reports.md
index ae5b061..9d3c0e1 100644
--- a/erpnext/docs/user/manual/en/customize-erpnext/articles/deleting-custom-reports.md
+++ b/erpnext/docs/user/manual/en/customize-erpnext/articles/deleting-custom-reports.md
@@ -1,6 +1,8 @@
+# Deleting Custom Reports
+
 #Deleting Custom Reports
 
-ERPNext has several [types of reports]({{docs_base_url}}/user/manual/en/customize-erpnext/articles/making-custom-reports-in-erpnext) which can be customize as per the companies/users requirement.
+ERPNext has several [types of reports](/docs/user/manual/en/customize-erpnext/articles/making-custom-reports-in-erpnext) which can be customize as per the companies/users requirement.
 
 If there is a report custom report which needs to be deleted, it can be achieved by following steps. Please note that its applicable only for the Custom Reports, and not for the standard reports.
 
@@ -8,16 +10,16 @@
 
 In the Awesome Bar, type and select "Report List" for an option.
 
-<img alt="Report Search" class="screenshot" src="{{docs_base_url}}/assets/img/articles/delete-report-1.png">
+<img alt="Report Search" class="screenshot" src="/docs/assets/img/articles/delete-report-1.png">
 
 ####Selecting and Deleting Report
 
 The Report List will have all the standard and custom reports of your account. You can select Custom Report to be deleted from the list itself, and click on Delete icon.
 
-<img alt="Report List" class="screenshot" src="{{docs_base_url}}/assets/img/articles/delete-report-2.png">
+<img alt="Report List" class="screenshot" src="/docs/assets/img/articles/delete-report-2.png">
 
 Or you can open that report, and delete it from File menu option.
 
-<img alt="Report Delete" class="screenshot" src="{{docs_base_url}}/assets/img/articles/delete-report-3.png">
+<img alt="Report Delete" class="screenshot" src="/docs/assets/img/articles/delete-report-3.png">
 
 <!-- markdown -->
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/customize-erpnext/articles/disable-rounded-total.md b/erpnext/docs/user/manual/en/customize-erpnext/articles/disable-rounded-total.md
index e47692f..ffcb376 100644
--- a/erpnext/docs/user/manual/en/customize-erpnext/articles/disable-rounded-total.md
+++ b/erpnext/docs/user/manual/en/customize-erpnext/articles/disable-rounded-total.md
@@ -1,8 +1,10 @@
+# Disable Rounded Total
+
 #Disable Rounded Total
 
 All the sales transactions like Sales Order, Sales Invoice has Rounded Total in it. It calculated based on the value of Grand Total. Also Rounded Total is also visible in the Standard Print Formats. 
 
-<img alt="Print Preview" class="screenshot" src="{{docs_base_url}}/assets/img/articles/hide-rounded-total-1.png">
+<img alt="Print Preview" class="screenshot" src="/docs/assets/img/articles/hide-rounded-total-1.png">
 
 Follow steps given below to hide rounded total from Standard Print Formats, for all the sales transactions.
 
@@ -14,7 +16,7 @@
 
 Check Disable Rounded Total, and Save Global Defaults.
 
-<img alt="Print Preview" class="screenshot" src="{{docs_base_url}}/assets/img/articles/hide-rounded-total-2.png">
+<img alt="Print Preview" class="screenshot" src="/docs/assets/img/articles/hide-rounded-total-2.png">
 
 For system to take effect of this setting, you should clear cache and refresh your ERPNext account. Then your print formats shall not render value for the Rounded Total in the print formats.
    
diff --git a/erpnext/docs/user/manual/en/customize-erpnext/articles/field-types.md b/erpnext/docs/user/manual/en/customize-erpnext/articles/field-types.md
index 813a7a7..9d239c4 100644
--- a/erpnext/docs/user/manual/en/customize-erpnext/articles/field-types.md
+++ b/erpnext/docs/user/manual/en/customize-erpnext/articles/field-types.md
@@ -1,3 +1,5 @@
+# Field Types
+
 #Field Types
 
 Following are the types of fields you can define while creating new ones, or while amend standard ones.
@@ -32,7 +34,7 @@
 
 - Dynamic Link
 
-Click [here]({{docs_base_url}}/user/manual/en/customize-erpnext/articles/managing-dynamic-link-fields.html) to learn how Dynamic Link Field function.
+Click [here](/docs/user/manual/en/customize-erpnext/articles/managing-dynamic-link-fields.html) to learn how Dynamic Link Field function.
 
 - Float
 
diff --git a/erpnext/docs/user/manual/en/customize-erpnext/articles/increase-max-attachments.md b/erpnext/docs/user/manual/en/customize-erpnext/articles/increase-max-attachments.md
index 2b7459c..b3f9a98 100644
--- a/erpnext/docs/user/manual/en/customize-erpnext/articles/increase-max-attachments.md
+++ b/erpnext/docs/user/manual/en/customize-erpnext/articles/increase-max-attachments.md
@@ -1,3 +1,5 @@
+# Increase Max Attachments
+
 #Increase Max Attachments
 
 In ERPNext, you can limit how many files can be attached to specific Document. Using Custmize Form, you can set **Max(imum) Attachments** which can be added to a particular documents.
@@ -10,13 +12,13 @@
 
 #### Step 2: Select Document Type
  
-<img alt="Select Doctype" class="screenshot" src="{{docs_base_url}}/assets/img/articles/max-attachment-1.png">
+<img alt="Select Doctype" class="screenshot" src="/docs/assets/img/articles/max-attachment-1.png">
 
 #### Step 3: Set Limit
 
 Set Maximum Attachments as five.
 
-<img alt="Set Max Attachment" class="screenshot" src="{{docs_base_url}}/assets/img/articles/max-attachment-2.png">
+<img alt="Set Max Attachment" class="screenshot" src="/docs/assets/img/articles/max-attachment-2.png">
 
 After update Max Attachments, Update Customization Form. Reload your ERPNext account and then check specific Quotation to confirm if Max Attachment limit is applied.
 
diff --git a/erpnext/docs/user/manual/en/customize-erpnext/articles/index.md b/erpnext/docs/user/manual/en/customize-erpnext/articles/index.md
index 0dff60b..fb11735 100644
--- a/erpnext/docs/user/manual/en/customize-erpnext/articles/index.md
+++ b/erpnext/docs/user/manual/en/customize-erpnext/articles/index.md
@@ -1 +1,3 @@
+# Articles
+
 {index}
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/customize-erpnext/articles/make-field-visible-in-print-format.md b/erpnext/docs/user/manual/en/customize-erpnext/articles/make-field-visible-in-print-format.md
index 62cc3f9..5abd291 100644
--- a/erpnext/docs/user/manual/en/customize-erpnext/articles/make-field-visible-in-print-format.md
+++ b/erpnext/docs/user/manual/en/customize-erpnext/articles/make-field-visible-in-print-format.md
@@ -1,3 +1,5 @@
+# Make Field Visible In Print Format
+
 #Make Fields Visible In Print Format
 
 Each transaction has Standard Print Format. In the Standard format, only certain fields are displayed by default. If  user needs field in the Standard format to be visible, it can be customized by using Customize Form tool.
@@ -14,13 +16,13 @@
 
 As per our scenario, Sales Order will be selected as Document Type.
 field-visible-2.gif
-<img alt="Document Type" class="screenshot" src="{{docs_base_url}}/assets/img/articles/print-visible-1.png">
+<img alt="Document Type" class="screenshot" src="/docs/assets/img/articles/print-visible-1.png">
 
 #### Step 3: Uncheck Print Hide
 
 click to open field to be made visible in the Standard Print Format. Uncheck **Print Hide** field.
 
-<img alt="Uncheck Print Hide " class="screenshot" src="{{docs_base_url}}/assets/img/articles/print-visible-2.gif">
+<img alt="Uncheck Print Hide " class="screenshot" src="/docs/assets/img/articles/print-visible-2.gif">
 
 #### Step 4: Update
 
diff --git a/erpnext/docs/user/manual/en/customize-erpnext/articles/making-custom-reports-in-erpnext.md b/erpnext/docs/user/manual/en/customize-erpnext/articles/making-custom-reports-in-erpnext.md
index 7bc965b..bcc5c6f 100644
--- a/erpnext/docs/user/manual/en/customize-erpnext/articles/making-custom-reports-in-erpnext.md
+++ b/erpnext/docs/user/manual/en/customize-erpnext/articles/making-custom-reports-in-erpnext.md
@@ -1,3 +1,5 @@
+# Making Custom Reports In Erpnext
+
 #Reports in ERPNext
 
 There are three kind of reports in ERPNext.
@@ -12,12 +14,12 @@
 
 Query Report is written in SQL which pull values from account's database and fetch in the report. Though SQL queries can be written from front end, like HTML, its restricted in hosted users. Because it will allow users with no access to specific report to query data directly from the database.
 
-Check Purchase Order Item to be Received report in Stock module for example of Query report. Click [here](https://frappe.github.io/frappe/user/en/guides/reports-and-printing/how-to-make-query-report.html) to learn how to create Query Report.
+Check Purchase Order Item to be Received report in Stock module for example of Query report. Click [here](https://frappe.io/docs/user/en/guides/reports-and-printing/how-to-make-query-report.html) to learn how to create Query Report.
 
 ### 3. Script Report
 
 Script Reports are written in Python and stored on server side. These are complex reports which involves logic and calculation. Since these reports are written on server side, customizing it from hosted account is not possible. 
 
-Check Financial Analytics report in Accounts module for example of Script Report. Click [here](https://frappe.github.io/frappe/user/en/guides/reports-and-printing/how-to-make-script-reports.html) to learn how to create Script Report.
+Check Financial Analytics report in Accounts module for example of Script Report. Click [here](https://frappe.io/docs/user/en/guides/reports-and-printing/how-to-make-script-reports.html) to learn how to create Script Report.
 
 <!-- markdown --> 
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/customize-erpnext/articles/managing-dynamic-link-fields.md b/erpnext/docs/user/manual/en/customize-erpnext/articles/managing-dynamic-link-fields.md
index c72004d..f3621a5 100644
--- a/erpnext/docs/user/manual/en/customize-erpnext/articles/managing-dynamic-link-fields.md
+++ b/erpnext/docs/user/manual/en/customize-erpnext/articles/managing-dynamic-link-fields.md
@@ -1,3 +1,5 @@
+# Managing Dynamic Link Fields
+
 #Managing Dynamic Link Fields
 
 Dynamic Link field is one which can search and hold value of any document/doctype. Let's consider an example to learn how Dynamic Link field works.
@@ -12,7 +14,7 @@
 
 Firstly we will create a link field which will be linked to the Doctype.
 
-<img alt="Custom Link Field" class="screenshot" src="{{docs_base_url}}/assets/img/articles/dynamic-field-1.gif">
+<img alt="Custom Link Field" class="screenshot" src="/docs/assets/img/articles/dynamic-field-1.gif">
 
 By **Doctype** mentioned in the Option field, we mean parent Doctype. So, just like Quotation is one Doctype, which has multiple Quotation under it. Same way, Doctype is also a Doctype which has Sales Order, Purchase Order and other doctypes created as Doctype records.
 
@@ -27,17 +29,17 @@
 
 So linking this field with parent Doctype will list all the Doctype records.
 
-<img alt="journal Voucher Link Field" class="screenshot" src="{{docs_base_url}}/assets/img/articles/dynamic-field-2.png">
+<img alt="journal Voucher Link Field" class="screenshot" src="/docs/assets/img/articles/dynamic-field-2.png">
 
 #### Step 2: Insert Dynamic Link Field
 
 This custom field's type will be "Dynamic Link". In the Option field, name of Doctype link field will be mentioned.
 
-<img alt="Custom Dynamic Field" class="screenshot" src="{{docs_base_url}}/assets/img/articles/dynamic-field-3.gif">
+<img alt="Custom Dynamic Field" class="screenshot" src="/docs/assets/img/articles/dynamic-field-3.gif">
 
 This field will allow selecting document id, based on value selected in the Doctype link field. For example, if we select Sales Order in the prior field, Dynamic Link field will list all the Sales Orders ids.
 
-<img alt="Custom Dynamic Field" class="screenshot" src="{{docs_base_url}}/assets/img/articles/dynamic-field-4.gif">
+<img alt="Custom Dynamic Field" class="screenshot" src="/docs/assets/img/articles/dynamic-field-4.gif">
 
 <div class="well">
 **Customizing options in the Doctype Link field**
diff --git a/erpnext/docs/user/manual/en/customize-erpnext/articles/maximum-numbers-of-fields-in-a-form.md b/erpnext/docs/user/manual/en/customize-erpnext/articles/maximum-numbers-of-fields-in-a-form.md
index 7751a3d..8409a8a 100644
--- a/erpnext/docs/user/manual/en/customize-erpnext/articles/maximum-numbers-of-fields-in-a-form.md
+++ b/erpnext/docs/user/manual/en/customize-erpnext/articles/maximum-numbers-of-fields-in-a-form.md
@@ -1,3 +1,5 @@
+# Maximum Numbers Of Fields In A Form
+
 Sometimes while creating custom fields, you might experienced an error message like below:
 
 > Row size too large. The maximum row size for the used table type, not counting BLOBs, is 65535. This includes storage overhead, check the manual. You have to change some columns to TEXT or BLOBs
@@ -12,7 +14,7 @@
 
 The maximum row size constrains the number (and possibly size) of columns because the total length of all columns cannot exceed this size (65,535 bytes). For example, `utf8mb3` characters require up to 3 bytes per character, so for a `VARCHAR(140)` column, the server must allocate `140 × 3 = 420` bytes per value. Consequently, a table cannot contain more than `65,535 / 420 = 156` such columns.
 
-In Frappe frapework, `VARCHAR(140)` type columns are created based on "Data", "Link", "Select", "Dynamic Link", "Password" and "Read Only" fieldtypes. Hence, you can create approximately 156 such columns in the system.
+In Frappé frapework, `VARCHAR(140)` type columns are created based on "Data", "Link", "Select", "Dynamic Link", "Password" and "Read Only" fieldtypes. Hence, you can create approximately 156 such columns in the system.
 
 ### Solutions:
 
diff --git a/erpnext/docs/user/manual/en/customize-erpnext/articles/module-visibility.md b/erpnext/docs/user/manual/en/customize-erpnext/articles/module-visibility.md
index 191ce8a..41765ab 100644
--- a/erpnext/docs/user/manual/en/customize-erpnext/articles/module-visibility.md
+++ b/erpnext/docs/user/manual/en/customize-erpnext/articles/module-visibility.md
@@ -1,3 +1,5 @@
+# Module Visibility
+
 #Module Visibility
 
 If you have permission on specific module, but it is still not visible, following are the possibilities of issues you should look at. Let's consider a scenario that user is permission of Website module, but not able to access it.
@@ -6,7 +8,7 @@
 
 If module is hidden in-spite of assignment of required Role, then you should check if Website is not disabled from All Application.
 
-<img alt="All Applications" class="screenshot" src="{{docs_base_url}}/assets/img/articles/module-visibility-1.gif">
+<img alt="All Applications" class="screenshot" src="/docs/assets/img/articles/module-visibility-1.gif">
 
 If Website is checked in All Application, but still not visible for the User, check if is hidden by System Manager. In the Setup module, feature called Show/Hide Modules allows System Manager to hide specific module from all the Users.
 
diff --git a/erpnext/docs/user/manual/en/customize-erpnext/articles/perm-level-error-in-permission-manager.md b/erpnext/docs/user/manual/en/customize-erpnext/articles/perm-level-error-in-permission-manager.md
index 2562740..8c099cc 100644
--- a/erpnext/docs/user/manual/en/customize-erpnext/articles/perm-level-error-in-permission-manager.md
+++ b/erpnext/docs/user/manual/en/customize-erpnext/articles/perm-level-error-in-permission-manager.md
@@ -1,6 +1,8 @@
+# Perm Level Error In Permission Manager
+
 #Perm Level Error in Permission Manager
 
-While customizing rules in the [Permission Manager]({{docs_base_url}}/user/erpnext/user/manual/en/setting-up/users-and-permissions/role-based-permissions), you might receive an error message saying:
+While customizing rules in the [Permission Manager](/docs/user/erpnext/user/manual/en/setting-up/users-and-permissions/role-based-permissions), you might receive an error message saying:
 
 `For System Manager _(or other role)_ at level 2 _(or other level)_ in Customer _(or other document)_ in row 8: Permission at level 0 must be set before higher levels are set.`
 
diff --git a/erpnext/docs/user/manual/en/customize-erpnext/articles/search-record-by-specific-field.md b/erpnext/docs/user/manual/en/customize-erpnext/articles/search-record-by-specific-field.md
index 3dd6c68..b5aa07c 100644
--- a/erpnext/docs/user/manual/en/customize-erpnext/articles/search-record-by-specific-field.md
+++ b/erpnext/docs/user/manual/en/customize-erpnext/articles/search-record-by-specific-field.md
@@ -1,3 +1,5 @@
+# Search Record By Specific Field
+
 #Search Record by Specific Field
 
 While creating any document (say Sales Invoice), you have to select other document id in it (say Serial No). For ease in selection, you can also make value of other field of that visible in the search result. Search By functionality enables to define field whos value will be visible in the search result.
@@ -16,12 +18,12 @@
 
 Update Warehouse field name in the Search By field.
 
-<img alt="Search By in Customize Form" class="screenshot" src="{{docs_base_url}}/assets/img/articles/search-by-1.png">
+<img alt="Search By in Customize Form" class="screenshot" src="/docs/assets/img/articles/search-by-1.png">
 
 #### Searching in Another Record.
 
 While creating transaction, to get filtered result for Customer, you should firstly click on search magnifier.
 
-<img alt="Search By in Customize Form" class="screenshot" src="{{docs_base_url}}/assets/img/articles/search-by-2.png">
+<img alt="Search By in Customize Form" class="screenshot" src="/docs/assets/img/articles/search-by-2.png">
 
 <!-- markdown -->
diff --git a/erpnext/docs/user/manual/en/customize-erpnext/articles/set-language.md b/erpnext/docs/user/manual/en/customize-erpnext/articles/set-language.md
index ede54f2..f3204dc 100644
--- a/erpnext/docs/user/manual/en/customize-erpnext/articles/set-language.md
+++ b/erpnext/docs/user/manual/en/customize-erpnext/articles/set-language.md
@@ -1,3 +1,5 @@
+# Set Language
+
 #Change the Language
 
 ERPNext is an multi-lingual application. It allows each user to select preferred lannguage. Following is how User can customize language in one's account.
@@ -8,13 +10,13 @@
 
 #### 1.1 Go to My Setting
 
-<img alt="My Setting" class="screenshot" src="{{docs_base_url}}/assets/img/articles/change-language-1.png">
+<img alt="My Setting" class="screenshot" src="/docs/assets/img/articles/change-language-1.png">
 
 #### 1.2 Select Language
 
-<img alt="Select Language" class="screenshot" src="{{docs_base_url}}/assets/img/articles/change-language-2.png">
+<img alt="Select Language" class="screenshot" src="/docs/assets/img/articles/change-language-2.png">
 
-<img alt="Select Language" class="screenshot" src="{{docs_base_url}}/assets/img/articles/set-language-1.gif">
+<img alt="Select Language" class="screenshot" src="/docs/assets/img/articles/set-language-1.gif">
 
 #### 1.3 Save User
 
@@ -30,13 +32,13 @@
 
 #### Set Language
 
-<img alt="Global Language" class="screenshot" src="{{docs_base_url}}/assets/img/articles/change-language-3.png">
+<img alt="Global Language" class="screenshot" src="/docs/assets/img/articles/change-language-3.png">
 
 #### Save
 
 Save System Settings, and refresh your EPRNext account. On refreshing, you should language in your ERPNext account changed as per your preference.
 
-<img alt="Select Language" class="screenshot" src="{{docs_base_url}}/assets/img/articles/set-language-2.gif">
+<img alt="Select Language" class="screenshot" src="/docs/assets/img/articles/set-language-2.gif">
 
 Note: For now, we have translation available only for few languages. You can contribute to make translation better, and add new languages from [here](https://translate.erpnext.com).
 <!-- markdown -->
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/customize-erpnext/articles/set-precision.md b/erpnext/docs/user/manual/en/customize-erpnext/articles/set-precision.md
index 4ed070f..67899e0 100644
--- a/erpnext/docs/user/manual/en/customize-erpnext/articles/set-precision.md
+++ b/erpnext/docs/user/manual/en/customize-erpnext/articles/set-precision.md
@@ -1,3 +1,5 @@
+# Set Precision
+
 #Set Precision
 
 In ERPNext, default precision for `Float`, `Currency` and `Percent` field is three. It allows you to enter value having value upto three decimal places.
@@ -8,11 +10,11 @@
 
 `Setup > Settings > System Settings`.
 
-<img alt="Global Precision" class="screenshot" src="{{docs_base_url}}/assets/img/articles/precision-1.png">
+<img alt="Global Precision" class="screenshot" src="/docs/assets/img/articles/precision-1.png">
 
 You can also set field specific precision. To do that go to `Setup > Customize > Customize Form` and select the DocType there. Then go to the specific field row and change precision. Precision field is only visible if field-type is one of the Float, Currency and Percent.
 
-<img alt="Field-wise Precision" class="screenshot" src="{{docs_base_url}}/assets/img/articles/precision-2.png">
+<img alt="Field-wise Precision" class="screenshot" src="/docs/assets/img/articles/precision-2.png">
 
 
 <!-- markdown -->
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/customize-erpnext/articles/user-restriction.md b/erpnext/docs/user/manual/en/customize-erpnext/articles/user-restriction.md
index 5868141..29eef88 100644
--- a/erpnext/docs/user/manual/en/customize-erpnext/articles/user-restriction.md
+++ b/erpnext/docs/user/manual/en/customize-erpnext/articles/user-restriction.md
@@ -10,10 +10,10 @@
 
 Select Document Type for which you want to set user permission. After permissions are loaded for selected document, scroll to role for which you want to set restriction.
 
-<img alt="Sales Order" class="screenshot" src="{{docs_base_url}}/assets/img/articles/owner-restriction-1.png">
+<img alt="Sales Order" class="screenshot" src="/docs/assets/img/articles/owner-restriction-1.png">
 
 #### Step 3: Apply User Permission
 
 For Role to be restricted (Sales User in this case), check "If Owner".
 
-<img alt="S" class="screenshot" src="{{docs_base_url}}/assets/img/articles/owner-restriction-2.png">
+<img alt="S" class="screenshot" src="/docs/assets/img/articles/owner-restriction-2.png">
diff --git a/erpnext/docs/user/manual/en/customize-erpnext/custom-doctype.md b/erpnext/docs/user/manual/en/customize-erpnext/custom-doctype.md
index 433db2d..33a5857 100644
--- a/erpnext/docs/user/manual/en/customize-erpnext/custom-doctype.md
+++ b/erpnext/docs/user/manual/en/customize-erpnext/custom-doctype.md
@@ -1,3 +1,5 @@
+# Custom Doctype
+
 DocType or a Document Type is a tool to insert form in ERPNext. The forms like Sales Order,
 Sales Invoices, Production Order are added as Doctype in the backend. Let's assume we are
 creating a Custom Doctype for a Book.
@@ -19,7 +21,7 @@
 not be able to re-produce.
 1. Custom?: This field will be checked by default when adding Custom Doctype.
 
-<img alt="Doctype Basic" class="screenshot" src="{{docs_base_url}}/assets/img/setup/customize/doctype-basics.png">
+<img alt="Doctype Basic" class="screenshot" src="/docs/assets/img/setup/customize/doctype-basics.png">
 
 #### Fields
 
@@ -34,7 +36,7 @@
 1. Actions (button)
 1. Attachments or Images
 
-<img alt="Doc fields" class="screenshot" src="{{docs_base_url}}/assets/img/setup/customize/doctype-all-fields.png">
+<img alt="Doc fields" class="screenshot" src="/docs/assets/img/setup/customize/doctype-all-fields.png">
 
 When you add fields, you need to enter the **Type**. **Label** is optional for Section Break and Column Break. **Name** (`fieldname`) is the name of the database table column.
 
@@ -44,19 +46,19 @@
 
 In this section, you can define criteria based on which document for this doctype will be named. There are multiple criterion based on which document can be named, like naming based on the value in the specific field, or based on Naming Series, or based on value provided by the user in the prompt, which will be shown when saving document. In the following example, we are doing naming based on the value in the field **book_name**.
 
-<img alt="Doctype Naming" class="screenshot" src="{{docs_base_url}}/assets/img/setup/customize/doctype-field-naming.png">
+<img alt="Doctype Naming" class="screenshot" src="/docs/assets/img/setup/customize/doctype-field-naming.png">
 
 #### Permission
 
 In this table, you should select roles and define permission roles for them for this Doctype.
 
-<img alt="Doctype Permissions" class="screenshot" src="{{docs_base_url}}/assets/img/setup/customize/doctype-permissions.png">
+<img alt="Doctype Permissions" class="screenshot" src="/docs/assets/img/setup/customize/doctype-permissions.png">
 
 #### Save DocType
 
 On saving doctype, you will get pop-up to provide name for this Doctype.
 
-<img alt="Doctype Save" class="screenshot" src="{{docs_base_url}}/assets/img/setup/customize/doctype-save.png">
+<img alt="Doctype Save" class="screenshot" src="/docs/assets/img/setup/customize/doctype-save.png">
 
 #### DocType in System
 
@@ -65,12 +67,12 @@
 
 `Human Resource > Document > Book`
 
-<img alt="Doctype List" class="screenshot" src="{{docs_base_url}}/assets/img/setup/customize/doctype-list-view.png">
+<img alt="Doctype List" class="screenshot" src="/docs/assets/img/setup/customize/doctype-list-view.png">
 
 #### Book master
 
 Using the fields entered, following is the master one book.
 
-<img alt="Doctype Form" class="screenshot" src="{{docs_base_url}}/assets/img/setup/customize/doctype-book-added.png">
+<img alt="Doctype Form" class="screenshot" src="/docs/assets/img/setup/customize/doctype-book-added.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/en/customize-erpnext/custom-field.md b/erpnext/docs/user/manual/en/customize-erpnext/custom-field.md
index 92c5224..2c11e0d 100644
--- a/erpnext/docs/user/manual/en/customize-erpnext/custom-field.md
+++ b/erpnext/docs/user/manual/en/customize-erpnext/custom-field.md
@@ -1,3 +1,5 @@
+# Custom Field
+
 Every form in the ERPNext has standard set of fields. If you need to capture some information, but there is no standard field available for it, you can insert Custom Field in a form as per your requirement.
 
 Following are the steps to insert Custom Field in the existing form.
@@ -12,37 +14,37 @@
 
 In the Customize Form, select Document Type in which you want to insert Custom Field. Let's assume we are inserting Custom Field in the Employee master.
 
-<img alt="Select Document Type" class="screenshot" src="{{docs_base_url}}/assets/img/customize/custom-field-1.gif">
+<img alt="Select Document Type" class="screenshot" src="/docs/assets/img/customize/custom-field-1.gif">
 
 #### Insert Row for the Custom Field
 
 In Customize Form, open the field above which you want to insert a Custom Field. Click on Insert Above.
 
-<img alt="Select Document Type" class="screenshot" src="{{docs_base_url}}/assets/img/customize/custom-field-2.gif">
+<img alt="Select Document Type" class="screenshot" src="/docs/assets/img/customize/custom-field-2.gif">
 
 ####Set Field Label
 
 Custom Field's name will be set based on its Label. If you want to create Custom Field with specific name, but with different label, then you should first set Label as you want Field Name to be set. After Custom Field is saved, you can edit the Field Label again.
 
-<img alt="Select Document Type" class="screenshot" src="{{docs_base_url}}/assets/img/customize/custom-field-3.png">
+<img alt="Select Document Type" class="screenshot" src="/docs/assets/img/customize/custom-field-3.png">
 
 ####Select Field Type
 
 There are various types of Field like Data, Date, Link, Select, Text and so on. Select Field Type for the Custom Field.
 
-<img alt="Select Document Type" class="screenshot" src="{{docs_base_url}}/assets/img/customize/custom-field-4.png">
+<img alt="Select Document Type" class="screenshot" src="/docs/assets/img/customize/custom-field-4.png">
 
-Click [here]({{docs_base_url}}/user/manual/en/customize-erpnext/articles/field-types.html) to learn more about types of field you can set for your Custom Field.
+Click [here](/docs/user/manual/en/customize-erpnext/articles/field-types.html) to learn more about types of field you can set for your Custom Field.
 
 ####Set Option
 
 Based on the Field Type, value will be entered in the Options field.
 
-If you are creating a Link field, then in the Options, enter Doctype name with which this field will be linked. Click [here]({{docs_base_url}}/user/manual/en/customize-erpnext/articles/creating-custom-link-field.html) to learn more about creating custom link field.
+If you are creating a Link field, then in the Options, enter Doctype name with which this field will be linked. Click [here](/docs/user/manual/en/customize-erpnext/articles/creating-custom-link-field.html) to learn more about creating custom link field.
 
 If field type is set as Select (drop down field), then all he possible result for this field should be listed in the Options field. Each possible result should be separate by row.
 
-<img alt="Select Document Type" class="screenshot" src="{{docs_base_url}}/assets/img/customize/custom-field-5.png">
+<img alt="Select Document Type" class="screenshot" src="/docs/assets/img/customize/custom-field-5.png">
 
 For Data field, Option can be set to "Email" or "Phone" and the field will be validated accordingly.
 
@@ -63,7 +65,7 @@
 
 After inserting required details for the Custom Field, Update Customize Form. On update, Custom Field will be inserting in the form, Employee master in this case. Before checking Employee form, reload your ERPNext account. After reload, check Employee form to see Custom Field in a form.
 
-<img alt="Select Document Type" class="screenshot" src="{{docs_base_url}}/assets/img/customize/custom-field-6.png">
+<img alt="Select Document Type" class="screenshot" src="/docs/assets/img/customize/custom-field-6.png">
 
 ####Deleting Custom Field
 
diff --git a/erpnext/docs/user/manual/en/customize-erpnext/custom-scripts/custom-script-examples/custom-script-fetch-values-from-master.md b/erpnext/docs/user/manual/en/customize-erpnext/custom-scripts/custom-script-examples/custom-script-fetch-values-from-master.md
index bbfbe45..54f2642 100644
--- a/erpnext/docs/user/manual/en/customize-erpnext/custom-scripts/custom-script-examples/custom-script-fetch-values-from-master.md
+++ b/erpnext/docs/user/manual/en/customize-erpnext/custom-scripts/custom-script-examples/custom-script-fetch-values-from-master.md
@@ -1,3 +1,5 @@
+# Custom Script Fetch Values From Master
+
 To pull a value of a link on selection, use the `add_fetch` method.
 
     
diff --git a/erpnext/docs/user/manual/en/customize-erpnext/custom-scripts/custom-script-examples/generate-item-code-based-on-custom-logic.md b/erpnext/docs/user/manual/en/customize-erpnext/custom-scripts/custom-script-examples/generate-item-code-based-on-custom-logic.md
index 960aa89..ff6958b 100644
--- a/erpnext/docs/user/manual/en/customize-erpnext/custom-scripts/custom-script-examples/generate-item-code-based-on-custom-logic.md
+++ b/erpnext/docs/user/manual/en/customize-erpnext/custom-scripts/custom-script-examples/generate-item-code-based-on-custom-logic.md
@@ -1,3 +1,5 @@
+# Generate Item Code Based On Custom Logic
+
 Add this in the Custom Script of **Item**, so that the new Item Code is
 generated just before the a new Item is saved.
 
diff --git a/erpnext/docs/user/manual/en/customize-erpnext/custom-scripts/custom-script-examples/index.md b/erpnext/docs/user/manual/en/customize-erpnext/custom-scripts/custom-script-examples/index.md
index 78edcfc..e8649e8 100644
--- a/erpnext/docs/user/manual/en/customize-erpnext/custom-scripts/custom-script-examples/index.md
+++ b/erpnext/docs/user/manual/en/customize-erpnext/custom-scripts/custom-script-examples/index.md
@@ -1,3 +1,5 @@
+# Custom Script Examples
+
 ### How to Create a Custom Script
 
 Create a Custom Script (you must have System Manager role for this):
diff --git a/erpnext/docs/user/manual/en/customize-erpnext/custom-scripts/custom-script-examples/make-read-only-after-saving.md b/erpnext/docs/user/manual/en/customize-erpnext/custom-scripts/custom-script-examples/make-read-only-after-saving.md
index 4fda1bd..e665a1c 100644
--- a/erpnext/docs/user/manual/en/customize-erpnext/custom-scripts/custom-script-examples/make-read-only-after-saving.md
+++ b/erpnext/docs/user/manual/en/customize-erpnext/custom-scripts/custom-script-examples/make-read-only-after-saving.md
@@ -1,3 +1,5 @@
+# Make Read Only After Saving
+
 Use the method `cur_frm.set_df_property` to update the field's display.
 
 In this script we also use the `__islocal` property of the doc to check if the
diff --git a/erpnext/docs/user/manual/en/customize-erpnext/custom-scripts/custom-script-examples/restrict-cancel-rights.md b/erpnext/docs/user/manual/en/customize-erpnext/custom-scripts/custom-script-examples/restrict-cancel-rights.md
index 79fe9a5..cd32c81 100644
--- a/erpnext/docs/user/manual/en/customize-erpnext/custom-scripts/custom-script-examples/restrict-cancel-rights.md
+++ b/erpnext/docs/user/manual/en/customize-erpnext/custom-scripts/custom-script-examples/restrict-cancel-rights.md
@@ -1,3 +1,5 @@
+# Restrict Cancel Rights
+
 Add a handler to `custom_before_cancel` event:
 
 
diff --git a/erpnext/docs/user/manual/en/customize-erpnext/custom-scripts/custom-script-examples/restrict-purpose-of-stock-entry.md b/erpnext/docs/user/manual/en/customize-erpnext/custom-scripts/custom-script-examples/restrict-purpose-of-stock-entry.md
index f3efd98..97cd8f0 100644
--- a/erpnext/docs/user/manual/en/customize-erpnext/custom-scripts/custom-script-examples/restrict-purpose-of-stock-entry.md
+++ b/erpnext/docs/user/manual/en/customize-erpnext/custom-scripts/custom-script-examples/restrict-purpose-of-stock-entry.md
@@ -1,3 +1,5 @@
+# Restrict Purpose Of Stock Entry
+
 
     frappe.ui.form.on("Material Request", "validate", function(frm) {
         if(frappe.user=="user1@example.com" && frm.doc.purpose!="Material Receipt") {
diff --git a/erpnext/docs/user/manual/en/customize-erpnext/custom-scripts/custom-script-examples/restrict-user-based-on-child-record.md b/erpnext/docs/user/manual/en/customize-erpnext/custom-scripts/custom-script-examples/restrict-user-based-on-child-record.md
index 849e686..ccc2180 100644
--- a/erpnext/docs/user/manual/en/customize-erpnext/custom-scripts/custom-script-examples/restrict-user-based-on-child-record.md
+++ b/erpnext/docs/user/manual/en/customize-erpnext/custom-scripts/custom-script-examples/restrict-user-based-on-child-record.md
@@ -1,3 +1,5 @@
+# Restrict User Based On Child Record
+
 
     // restrict certain warehouse to Material Manager
     cur_frm.cscript.custom_validate = function(doc) {
diff --git a/erpnext/docs/user/manual/en/customize-erpnext/custom-scripts/custom-script-examples/sales-invoice-id-based-on-sales-order-id.md b/erpnext/docs/user/manual/en/customize-erpnext/custom-scripts/custom-script-examples/sales-invoice-id-based-on-sales-order-id.md
index 72dbb6d..7dd6633 100644
--- a/erpnext/docs/user/manual/en/customize-erpnext/custom-scripts/custom-script-examples/sales-invoice-id-based-on-sales-order-id.md
+++ b/erpnext/docs/user/manual/en/customize-erpnext/custom-scripts/custom-script-examples/sales-invoice-id-based-on-sales-order-id.md
@@ -1,3 +1,5 @@
+# Sales Invoice Id Based On Sales Order Id
+
 Below script allows you to get naming series in Sales Invoice, same as of corresponding Sales Order.
 Invoice uses a prefix M- but the number duplicates the SO doc name (number).
 
diff --git a/erpnext/docs/user/manual/en/customize-erpnext/custom-scripts/custom-script-examples/update-date-field-based-on-value-in-other-date-field.md b/erpnext/docs/user/manual/en/customize-erpnext/custom-scripts/custom-script-examples/update-date-field-based-on-value-in-other-date-field.md
index b7a5e1c..d45f5f6 100644
--- a/erpnext/docs/user/manual/en/customize-erpnext/custom-scripts/custom-script-examples/update-date-field-based-on-value-in-other-date-field.md
+++ b/erpnext/docs/user/manual/en/customize-erpnext/custom-scripts/custom-script-examples/update-date-field-based-on-value-in-other-date-field.md
@@ -1,3 +1,5 @@
+# Update Date Field Based On Value In Other Date Field
+
 Below script would auto-set value for the date field, based on the value in another date field.
 
 Example: Production Due Date must be set as two days before Delivery Date. If you have Production Due Date field already, with field type as Date, as per the below given script, date will be auto-updated in it, two days prior Deliver Date.
diff --git a/erpnext/docs/user/manual/en/customize-erpnext/custom-scripts/index.md b/erpnext/docs/user/manual/en/customize-erpnext/custom-scripts/index.md
index 1a54e8c..f5519c2 100644
--- a/erpnext/docs/user/manual/en/customize-erpnext/custom-scripts/index.md
+++ b/erpnext/docs/user/manual/en/customize-erpnext/custom-scripts/index.md
@@ -1,10 +1,12 @@
+# Custom Scripts
+
 If you wish to change any ERPNext form formats, you can do so by using Custom
 Scripts. For example, if you wish to add a submit button after saving, to a
 Lead form, you can do so by creating your own script.
 
 `Setup > Customization > Custom Script`
 
-<img alt="Custom Script" class="screenshot" src="{{docs_base_url}}/assets/img/customize/custom-script-1.png">
+<img alt="Custom Script" class="screenshot" src="/docs/assets/img/customize/custom-script-1.png">
 
 ### Topics
 
diff --git a/erpnext/docs/user/manual/en/customize-erpnext/customize-form.md b/erpnext/docs/user/manual/en/customize-erpnext/customize-form.md
index f52cee1..5f590bb 100644
--- a/erpnext/docs/user/manual/en/customize-erpnext/customize-form.md
+++ b/erpnext/docs/user/manual/en/customize-erpnext/customize-form.md
@@ -1,7 +1,9 @@
-<!--markdown-->
-Before we venture to learn form customization tool, click [here](https://frappe.github.io/frappe/user/en/tutorial/doctypes.html) to understand the architecture of forms in ERPNext. It shall help you in using Customize Form tool more efficiently.
+# Customize Form
 
-Customize Form is the tool which allows user to customize property of the standard fields, and insert [custom fields]({{docs_base_url}}/user/manual/en/customize-erpnext/custom-field.html) as per the requirement. Let's assume we need to set Project Name field as a mandatory field in the Sales Order form. Following are the steps which shall be followed to achieve this.
+<!--markdown-->
+Before we venture to learn form customization tool, click [here](https://frappe.io/docs/user/en/tutorial/doctypes.html) to understand the architecture of forms in ERPNext. It shall help you in using Customize Form tool more efficiently.
+
+Customize Form is the tool which allows user to customize property of the standard fields, and insert [custom fields](/docs/user/manual/en/customize-erpnext/custom-field.html) as per the requirement. Let's assume we need to set Project Name field as a mandatory field in the Sales Order form. Following are the steps which shall be followed to achieve this.
 
 ####Step 1: Go to Customize Form
 
@@ -11,7 +13,7 @@
 
 You can also reach the Customize Form tool from the List Views.
 
-<img alt="Customize Form List" class="screenshot" src="{{docs_base_url}}/assets/img/customize/customize-form-from-list-view.gif">
+<img alt="Customize Form List" class="screenshot" src="/docs/assets/img/customize/customize-form-from-list-view.gif">
 
 ####Step 2: Select Document Type
 
@@ -19,7 +21,7 @@
 
 If you reach customize form from the Setup module, or from awesome bar, then you will have to manually select Document Type in which customization needs to be made.
 
-<img alt="Customize Form select doctype" class="screenshot" src="{{docs_base_url}}/assets/img/customize/customize-form-select-doctype.png">
+<img alt="Customize Form select doctype" class="screenshot" src="/docs/assets/img/customize/customize-form-select-doctype.png">
 
 ####Step 3: Edit Property
 
@@ -27,11 +29,11 @@
 
 To customized Project field, click on the respective row, and check "Mandatory". With this, Project field will become mandatory in the Sales Order.
 
-<img alt="Customize Form select doctype" class="screenshot" src="{{docs_base_url}}/assets/img/customize/customize-form-edit-property.gif">
+<img alt="Customize Form select doctype" class="screenshot" src="/docs/assets/img/customize/customize-form-edit-property.gif">
 
 Like setting setting field Mandatory, following are the other customization options in the Customize Form tool.
 
-* Change [Field Type]({{docs_base_url}}/user/manual/en/customize-erpnext/articles/field-types.html).
+* Change [Field Type](/docs/user/manual/en/customize-erpnext/articles/field-types.html).
 * Edit Field Labels to suit your industry/language.
 * Set field precision for the Currency field.
 * To hide field, check Hidden.
@@ -47,9 +49,9 @@
 
 From Customize Form, you can also do following customizations:
 
-* Max Attachment Limit: Define [maximum no. of files]({{docs_base_url}}/user/manual/en/customize-erpnext/articles/increase-max-attachments.html) which can attached on a document.
+* Max Attachment Limit: Define [maximum no. of files](/docs/user/manual/en/customize-erpnext/articles/increase-max-attachments.html) which can attached on a document.
 * Default Print Format: For one document type, you can have multiple print formats. In the Customize Form, you can also set default Print Format for a document.
-* Set [Title Field]({{docs_base_url}}/user/manual/en/customize-erpnext/document-title.html)
+* Set [Title Field](/docs/user/manual/en/customize-erpnext/document-title.html)
 * Sort Field and Sort Order: Define field based on which documents in the list view will be sorted.
 
 >Note: Though we want you to do everything you can to customize your ERP based on your business needs, we recommend that you do not make “wild” changes to the forms. This is because, these changes may affect certain operations and may mess up your forms. Make small changes and see its effect before doing some more.
@@ -92,7 +94,7 @@
     </tr>
     <tr>
       <td>Field Type</td>
-      <td>Click <a href="{{docs_base_url}}/user/manual/en/customize-erpnext/articles/field-types.html">here</a> to learn about of fields types.</td>
+      <td>Click <a href="/docs/user/manual/en/customize-erpnext/articles/field-types.html">here</a> to learn about of fields types.</td>
     </tr>
     <tr>
       <td>Options</td>
diff --git a/erpnext/docs/user/manual/en/customize-erpnext/document-title.md b/erpnext/docs/user/manual/en/customize-erpnext/document-title.md
index ab83cf2..64dad31 100644
--- a/erpnext/docs/user/manual/en/customize-erpnext/document-title.md
+++ b/erpnext/docs/user/manual/en/customize-erpnext/document-title.md
@@ -1,3 +1,5 @@
+# Document Title
+
 You can customize the title of documents based on properties so that you have meaningful information for the list views.
 
 For example the default title on **Quotation** is the customer name, but if you are dealing a few customers and sending lots of quotes to the same customer, you may want to customize.
@@ -21,14 +23,14 @@
     {customer_name} for {project}
 
 <img class="screenshot" alt = "Customize Title"
-    src="{{docs_base_url}}/assets/img/customize/customize-title.gif">
+    src="/docs/assets/img/customize/customize-title.gif">
 
 #### Fixed or Editable Titles
 
 If your title is generated as a default title, it can be edited by the user by clicking on the heading of the document.
 
 <img class="screenshot" alt = "Editable Title"
-    src="{{docs_base_url}}/assets/img/customize/editable-title.gif">
+    src="/docs/assets/img/customize/editable-title.gif">
 
 If you want a fixed title, you can set the rule in the **Options** property. In this way, the title will be automatically updated everytime the document is updated.
 
diff --git a/erpnext/docs/user/manual/en/customize-erpnext/hiding-modules-and-features.md b/erpnext/docs/user/manual/en/customize-erpnext/hiding-modules-and-features.md
index ce8a1c3..ad4b00e 100644
--- a/erpnext/docs/user/manual/en/customize-erpnext/hiding-modules-and-features.md
+++ b/erpnext/docs/user/manual/en/customize-erpnext/hiding-modules-and-features.md
@@ -4,9 +4,9 @@
 
 `Setup > Permissions > Show / Hide Modules`
 
-<img alt="Hide Features" class="screenshot" src="{{docs_base_url}}/assets/img/customize/show-hide-modules.png">
+<img alt="Hide Features" class="screenshot" src="/docs/assets/img/customize/show-hide-modules.png">
 
-Click [here]({{docs_base_url}}/user/manual/en/customize-erpnext/articles/module-visibility.html) to learn about other features from where icons from the desktop can be hidden.
+Click [here](/docs/user/manual/en/customize-erpnext/articles/module-visibility.html) to learn about other features from where icons from the desktop can be hidden.
 
 > Note: Modules are automatically hidden for users that have no permissions on the documents within that module. For example, if a User has no permissions on Purchase Order, Purchase Request, Supplier, the “Buying” module will automatically hidden for that User.
 
diff --git a/erpnext/docs/user/manual/en/customize-erpnext/kanban-board.md b/erpnext/docs/user/manual/en/customize-erpnext/kanban-board.md
index ccfa63a..1936c56 100644
--- a/erpnext/docs/user/manual/en/customize-erpnext/kanban-board.md
+++ b/erpnext/docs/user/manual/en/customize-erpnext/kanban-board.md
@@ -1,3 +1,5 @@
+# Kanban Board
+
 #Kanban Board
  
 Kanban is a Japanese manufacturing system in which the supply of components is regulated through the use of an instruction card sent along the production line.
@@ -8,35 +10,35 @@
 
 To  create a Kanban board in ERPNext click the Kanban dropdown on the sidebar, and select New Kanban Board.
 
-<img class="screenshot" alt="Add New Kanban Board" src="{{docs_base_url}}/assets/img/customize/kanban-board-1.png">
+<img class="screenshot" alt="Add New Kanban Board" src="/docs/assets/img/customize/kanban-board-1.png">
 
 ###Add new Card/Document
 
 To add Cards on Kanban Board click Add Tasks. You can Edit a card details by click on the card and it will take you to the Task Doctype where you can further add and edit card details.
 
-<img class="screenshot" alt="Add card in Kanban Board" src="{{docs_base_url}}/assets/img/customize/kanban-board-2.png">
+<img class="screenshot" alt="Add card in Kanban Board" src="/docs/assets/img/customize/kanban-board-2.png">
 
 ###Update Cards/Document Status
  
 Based on the Task status you can drag and drop the Cards in the respective column. For example if the task is work in progress you can move the card for the task from the status Open to Working.
  
-<img class="screenshot" alt="Move Cards on Kanban Board" src="{{docs_base_url}}/assets/img/customize/kanban-board-3.gif">
+<img class="screenshot" alt="Move Cards on Kanban Board" src="/docs/assets/img/customize/kanban-board-3.gif">
 
 ###Manage Columns
  
 To add more columns in the Kanban board click Add columns.
 
-<img class="screenshot" alt="Add New column in Kanban Board" src="{{docs_base_url}}/assets/img/customize/kanban-board-4.gif">
+<img class="screenshot" alt="Add New column in Kanban Board" src="/docs/assets/img/customize/kanban-board-4.gif">
  
 To move columns based on the priority drag and drop the columns as per requirement.
  
-<img class="screenshot" alt="Move columns in Kanban Board" src="{{docs_base_url}}/assets/img/customize/kanban-board-5.gif">
+<img class="screenshot" alt="Move columns in Kanban Board" src="/docs/assets/img/customize/kanban-board-5.gif">
 
 To set Colors to a Card click drop down menu on the card and assign color to it.
 
-<img class="screenshot" alt="Add color to cards in Kanban Board" src="{{docs_base_url}}/assets/img/customize/kanban-board-6.gif">
+<img class="screenshot" alt="Add color to cards in Kanban Board" src="/docs/assets/img/customize/kanban-board-6.gif">
  
 You can also Archive and Restore the columns added in a Kanban board. To do so click Archive in drop down menu on the card. Once archived you can restore the column from the list of the archived columns in the Kanban board.
 
-<img class="screenshot" alt="Archive and Restore in Kanban Board" src="{{docs_base_url}}/assets/img/customize/kanban-board-7.gif">
+<img class="screenshot" alt="Archive and Restore in Kanban Board" src="/docs/assets/img/customize/kanban-board-7.gif">
  
diff --git a/erpnext/docs/user/manual/en/customize-erpnext/print-format.md b/erpnext/docs/user/manual/en/customize-erpnext/print-format.md
index 123a613..993f92a 100644
--- a/erpnext/docs/user/manual/en/customize-erpnext/print-format.md
+++ b/erpnext/docs/user/manual/en/customize-erpnext/print-format.md
@@ -1,3 +1,5 @@
+# Print Format
+
 Print Formats are the layouts that are generated when you want to Print or
 Email a transaction like a Sales Invoice. There are two types of Print
 Formats,
@@ -16,7 +18,7 @@
 
 `Setup > Printing > Print Formats`
 
-<img alt="Print Format" class="screenshot" src="{{docs_base_url}}/assets/img/customize/print-format.png">
+<img alt="Print Format" class="screenshot" src="/docs/assets/img/customize/print-format.png">
 
 Select the type of Print Format you want to edit and click on the “Copy”
 button on the right column. A new Print Format will open up with “Is Standard”
@@ -43,7 +45,7 @@
 
 `Setup > Printing and Branding > Print Settings`
 
-<img alt="Print Format" class="screenshot" src="{{docs_base_url}}/assets/img/customize/print-settings.png">
+<img alt="Print Format" class="screenshot" src="/docs/assets/img/customize/print-settings.png">
 
 #### Example
 
diff --git a/erpnext/docs/user/manual/en/fleet_management/index.md b/erpnext/docs/user/manual/en/fleet_management/index.md
index 8ae3b7c..4582716 100644
--- a/erpnext/docs/user/manual/en/fleet_management/index.md
+++ b/erpnext/docs/user/manual/en/fleet_management/index.md
@@ -1,3 +1,5 @@
+# Fleet Management
+
 Fleet Management module helps your Organization manage their fleet of vehicles and track their expenses.
 
 To use Fleet Management in ERPNext,
@@ -17,15 +19,15 @@
 
 * Enter License Plate,Make,Model,Odometer Value,Fuel Type and Fuel UOM for a quick entry.
 
-	<img class="screenshot" alt="Vehicle" src="{{docs_base_url}}/assets/img/fleet-management/vehicle-1.1.png">
+	<img class="screenshot" alt="Vehicle" src="/docs/assets/img/fleet-management/vehicle-1.1.png">
 
 * Enter details like Insurance,Chassis,Vehicle Value,Location and Employee.
 
-	<img class="screenshot" alt="Vehicle" src="{{docs_base_url}}/assets/img/fleet-management/vehicle-1.2.png">
+	<img class="screenshot" alt="Vehicle" src="/docs/assets/img/fleet-management/vehicle-1.2.png">
 
 * Enter Vehicle attributes like color,wheels,doors and last carbon check 
 
-	<img class="screenshot" alt="Vehicle" src="{{docs_base_url}}/assets/img/fleet-management/vehicle-1.3.png">
+	<img class="screenshot" alt="Vehicle" src="/docs/assets/img/fleet-management/vehicle-1.3.png">
 
 ### Vehicle Log
 
@@ -37,17 +39,17 @@
 
 * Enter License Plate,Employee,Date,Odometer reading for a quick entry.
 
-	<img class="screenshot" alt="Vehicle Log" src="{{docs_base_url}}/assets/img/fleet-management/vehicle-log-2.1.png">
+	<img class="screenshot" alt="Vehicle Log" src="/docs/assets/img/fleet-management/vehicle-log-2.1.png">
 
 * Enter Refuelling details,Service details if applicable.
 
-	<img class="screenshot" alt="Vehicle Log" src="{{docs_base_url}}/assets/img/fleet-management/vehicle-log-2.2.png">
+	<img class="screenshot" alt="Vehicle Log" src="/docs/assets/img/fleet-management/vehicle-log-2.2.png">
 
 ### Make Expense Claim
 
 * Click on Make Expense Claim button .This button appears only in case of Submitted Vehicle Logs.
 
-	<img class="screenshot" alt="Vehicle Log" src="{{docs_base_url}}/assets/img/fleet-management/expense-claim-3.1.png">
+	<img class="screenshot" alt="Vehicle Log" src="/docs/assets/img/fleet-management/expense-claim-3.1.png">
 
 When you click on 'Make Expense Claim',
 
@@ -55,10 +57,10 @@
   2. The sum of Fuel Expenses and Service Expenses is copied over to Expense Claim Amount.
   3. Employee can submit the Expense Claim for further processing.
 
-	<img class="screenshot" alt="Vehicle Log" src="{{docs_base_url}}/assets/img/fleet-management/expense-claim-3.2.png">
+	<img class="screenshot" alt="Vehicle Log" src="/docs/assets/img/fleet-management/expense-claim-3.2.png">
 
 ### Vehicle Expenses Report
 
 * To track and monitor Vehicle Expenses you can use the Vehicle Expenses report.This report gives a one stop view of all your vehicle expenses month wise.
 
-	<img class="screenshot" alt="Vehicle Log" src="{{docs_base_url}}/assets/img/fleet-management/vehicle-expenses.png">
+	<img class="screenshot" alt="Vehicle Log" src="/docs/assets/img/fleet-management/vehicle-expenses.png">
diff --git a/erpnext/docs/user/manual/en/human-resources/appraisal.md b/erpnext/docs/user/manual/en/human-resources/appraisal.md
index d3ec301..6ecb898 100644
--- a/erpnext/docs/user/manual/en/human-resources/appraisal.md
+++ b/erpnext/docs/user/manual/en/human-resources/appraisal.md
@@ -1,3 +1,5 @@
+# Appraisal
+
 In ERPNext, you can manage Employee Appraisals by creating an Appraisal
 Template for each role with the parameters that define the performance by
 giving appropriate weightage to each parameter.
@@ -6,13 +8,13 @@
 
 #### Step 1: Select an Appraisal Template
 
-<img class="screenshot" alt="Appraisal" src="{{docs_base_url}}/assets/img/human-resources/appraisal.png">
+<img class="screenshot" alt="Appraisal" src="/docs/assets/img/human-resources/appraisal.png">
 
 After you select the template, the remaining form appears.
 
 #### Step 2: Enter Employee Details
 
-<img class="screenshot" alt="Appraisal" src="{{docs_base_url}}/assets/img/human-resources/appraisal-employee.png">
+<img class="screenshot" alt="Appraisal" src="/docs/assets/img/human-resources/appraisal-employee.png">
 
 Once the Appraisal Template is completed, you can create Appraisal records for
 each period where you track performance. You can give points out of 5 for each
diff --git a/erpnext/docs/user/manual/en/human-resources/articles/employees-loan-management.md b/erpnext/docs/user/manual/en/human-resources/articles/employees-loan-management.md
index d5c4d00..a24ca93 100644
--- a/erpnext/docs/user/manual/en/human-resources/articles/employees-loan-management.md
+++ b/erpnext/docs/user/manual/en/human-resources/articles/employees-loan-management.md
@@ -10,15 +10,15 @@
       
 #### 1.1  Employee Loan Account
 
-Create Group as 'Employees Loans' under Current Assets and create employee loan A/C (Ledger) under it. [Check this link for new account creation]({{docs_base_url}}/user/manual/en/setting-up/articles/managing-tree-structure-masters)
+Create Group as 'Employees Loans' under Current Assets and create employee loan A/C (Ledger) under it. [Check this link for new account creation](/docs/user/manual/en/setting-up/articles/managing-tree-structure-masters)
 
-![CoA]({{docs_base_url}}/assets/img/articles/Selection_433.png)
+![CoA](/docs/assets/img/articles/Selection_433.png)
 
 #### 1.2 Salaries Account
 
 Create Group as 'Salaries' under Current Liabilities and create employee salary loan A/C (Ledger) under it.
 
-![CoA]({{docs_base_url}}/assets/img/articles/Selection_434.png)
+![CoA](/docs/assets/img/articles/Selection_434.png)
 
 #### 1.3 Interest Account
 
@@ -28,7 +28,7 @@
 
 Once loan amount is finalized, make journal voucher to book loan payment entry. You should Credit Loan amount to Bank/Cash account and Debit Loan amount employee loan account.  
 
-![Loan Entry]({{docs_base_url}}/assets/img/articles/Selection_435.png)
+![Loan Entry](/docs/assets/img/articles/Selection_435.png)
 
 ### 3. Book Loan Recovery and Interest
 
@@ -36,13 +36,13 @@
 
 If your employee pays separately for his/her loan installment and loan interest, then create journal voucher. 
 
-![Loan Reco]({{docs_base_url}}/assets/img/articles/Selection_436.png)
+![Loan Reco](/docs/assets/img/articles/Selection_436.png)
 
 #### 3.2 Loan Adjustment in Salary
 
 And if you deduct loan installment and interest from employees salary, then book journal entry for the same.
 
-![Loan Reco]({{docs_base_url}}/assets/img/articles/Selection_437.png)
+![Loan Reco](/docs/assets/img/articles/Selection_437.png)
 
 In the Salary Slip of an employee, then create two Deduction Types in Salary Structure. One as 'Loan Installment' and other one as 'Loan Interest'. So that you can update those values under this deduction heads.
 
@@ -50,6 +50,6 @@
 
 After recovering loan and loan interest, General Ledger report will show the loan account details as follows.
 
-![Loan Reco]({{docs_base_url}}/assets/img/articles/Selection_439.png)
+![Loan Reco](/docs/assets/img/articles/Selection_439.png)
 
 <!-- markdown -->
diff --git a/erpnext/docs/user/manual/en/human-resources/articles/index.md b/erpnext/docs/user/manual/en/human-resources/articles/index.md
index 0dff60b..fb11735 100644
--- a/erpnext/docs/user/manual/en/human-resources/articles/index.md
+++ b/erpnext/docs/user/manual/en/human-resources/articles/index.md
@@ -1 +1,3 @@
+# Articles
+
 {index}
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/human-resources/articles/leave-calculation-in-salary-slip.md b/erpnext/docs/user/manual/en/human-resources/articles/leave-calculation-in-salary-slip.md
index 7153708..7fb045c 100644
--- a/erpnext/docs/user/manual/en/human-resources/articles/leave-calculation-in-salary-slip.md
+++ b/erpnext/docs/user/manual/en/human-resources/articles/leave-calculation-in-salary-slip.md
@@ -27,7 +27,7 @@
     <li>Create Holiday List (if any), and link it with Employee master.</li>
 </ol>
 <p>When creating Salary Slip for an Employee, following is what you will see:</p>
-<img src="{{docs_base_url}}/assets/img/articles/SGrab_282.png">
+<img src="/docs/assets/img/articles/SGrab_282.png">
 <br>
 <br><b>Working Days:</b> Working Days in Salary Slip are calculated based on number of days selected above. If you don't wish to consider holiday in Working Days, then you should do following setting.
 <br>
@@ -46,7 +46,7 @@
 <br>As indicated above, if you have LWP checked for components in the earning and deducted table, you will notice a reduction in Amount based on no. of LWP of an Employee for that month.
 <br>
 <br>
-<img src="{{docs_base_url}}/assets/img/articles/SGrab_283.png" width="760"><br>
+<img src="/docs/assets/img/articles/SGrab_283.png" width="760"><br>
 
 
 <!-- markdown -->
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/human-resources/attendance.md b/erpnext/docs/user/manual/en/human-resources/attendance.md
index b180d23..1cd5ad3 100644
--- a/erpnext/docs/user/manual/en/human-resources/attendance.md
+++ b/erpnext/docs/user/manual/en/human-resources/attendance.md
@@ -1,15 +1,17 @@
+# Attendance
+
 An Attendance record stating that an Employee has been present on a particular
 day can be created manually by:
 
 > Human Resources > Documents > Attendance > New Attendance
 
-<img class="screenshot" alt="Attendence" src="{{docs_base_url}}/assets/img/human-resources/attendence.png">
+<img class="screenshot" alt="Attendence" src="/docs/assets/img/human-resources/attendence.png">
 
 You can get a monthly report of your Attendance data by going to the “Monthly
 Attendance Details” report.
 
-You can easily set attendance for Employees using the [Employee Attendance Tool]({{docs_base_url}}/user/manual/en/human-resources/tools/employee-attendance-tool.html)
+You can easily set attendance for Employees using the [Employee Attendance Tool](/docs/user/manual/en/human-resources/tools/employee-attendance-tool.html)
 
-You can also bulk upload attendence using the [Upload Attendence Tool]({{docs_base_url}}/user/manual/en/human-resources/tools/upload-attendance.html)
+You can also bulk upload attendence using the [Upload Attendence Tool](/docs/user/manual/en/human-resources/tools/upload-attendance.html)
 
 {next}
diff --git a/erpnext/docs/user/manual/en/human-resources/daily-work-summary.md b/erpnext/docs/user/manual/en/human-resources/daily-work-summary.md
index d3ba22a..6ae15e0 100644
--- a/erpnext/docs/user/manual/en/human-resources/daily-work-summary.md
+++ b/erpnext/docs/user/manual/en/human-resources/daily-work-summary.md
@@ -12,4 +12,4 @@
 
 You can also choose to Customize the Message you send to your employees:
 
-<img class="screenshot" alt="Department" src="{{docs_base_url}}/assets/img/human-resources/department.png">
+<img class="screenshot" alt="Department" src="/docs/assets/img/human-resources/department.png">
diff --git a/erpnext/docs/user/manual/en/human-resources/employee-loan-management.md b/erpnext/docs/user/manual/en/human-resources/employee-loan-management.md
index b76a226..28d28b5 100644
--- a/erpnext/docs/user/manual/en/human-resources/employee-loan-management.md
+++ b/erpnext/docs/user/manual/en/human-resources/employee-loan-management.md
@@ -10,7 +10,7 @@
 
 Configure Loan limit and Rate of interest.
 
-<img class="screenshot" alt="Loan Type" src="{{docs_base_url}}/assets/img/human-resources/loan-type.png">
+<img class="screenshot" alt="Loan Type" src="/docs/assets/img/human-resources/loan-type.png">
 
 ### Employee Loan Application
 
@@ -18,7 +18,7 @@
 
 > Human Resources > Employee Loan Management > Employee Loan Application > New Employee Loan Application
 
-<img class="screenshot" alt="Employee Loan Application" src="{{docs_base_url}}/assets/img/human-resources/employee-loan-application.png">
+<img class="screenshot" alt="Employee Loan Application" src="/docs/assets/img/human-resources/employee-loan-application.png">
 
 #### In the Employee Loan Application,
 
@@ -27,7 +27,7 @@
   
 On save, Employee can see Repayment Information and make changes if required before submitting.
 
-<img class="screenshot" alt="Employee Loan Application" src="{{docs_base_url}}/assets/img/human-resources/repayment-info.png">
+<img class="screenshot" alt="Employee Loan Application" src="/docs/assets/img/human-resources/repayment-info.png">
 
 ### Employee Loan
 
@@ -35,7 +35,7 @@
 
 > Human Resources > Employee Loan Management > Employee Loan > New Employee Loan
 
-<img class="screenshot" alt="Employee Loan Application" src="{{docs_base_url}}/assets/img/human-resources/employee-loan.png">
+<img class="screenshot" alt="Employee Loan Application" src="/docs/assets/img/human-resources/employee-loan.png">
 
 #### In the Employee Loan,
 
@@ -44,13 +44,13 @@
  * Enter Disbursement Date and Account Info
  * As soon as you hit save, the repayment schedule is generated.
  
-<img class="screenshot" alt="repayment Schedule" src="{{docs_base_url}}/assets/img/human-resources/repayment-schedule.png">
+<img class="screenshot" alt="repayment Schedule" src="/docs/assets/img/human-resources/repayment-schedule.png">
 
 #### Loan repayment deduction from Salary
 
 To auto deduct the Loan repayment from Salary, check "Repay from Salary" in Employee Loan. It will appear as Loan repayment in Salary Slip.
 
-<img class="screenshot" alt="Salary Slip" src="{{docs_base_url}}/assets/img/human-resources/loan-repayment-salary-slip.png">
+<img class="screenshot" alt="Salary Slip" src="/docs/assets/img/human-resources/loan-repayment-salary-slip.png">
 
 
  
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/human-resources/employee.md b/erpnext/docs/user/manual/en/human-resources/employee.md
index fd14aa9..99cc687 100644
--- a/erpnext/docs/user/manual/en/human-resources/employee.md
+++ b/erpnext/docs/user/manual/en/human-resources/employee.md
@@ -1,9 +1,11 @@
+# Employee
+
 There are many fields you can add in your Employee records.
 
 To create new Employee go to:
 
 > Human Resources > Employee > New
 
-<img class="screenshot" alt="Employee" src="{{docs_base_url}}/assets/img/human-resources/employee.png">
+<img class="screenshot" alt="Employee" src="/docs/assets/img/human-resources/employee.png">
 
 {next}
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/human-resources/expense-claim.md b/erpnext/docs/user/manual/en/human-resources/expense-claim.md
index 1d4996d..2d7432f 100644
--- a/erpnext/docs/user/manual/en/human-resources/expense-claim.md
+++ b/erpnext/docs/user/manual/en/human-resources/expense-claim.md
@@ -1,23 +1,25 @@
+# Expense Claim
+
 Expense Claim is made when Employee’s make expenses out of their pocket on behalf of the company. For example, if they take a customer out for lunch, they can make a request for reimbursement via the Expense Claim form.
 
 To make a new Expense Claim, go to:
 
 > HR > Expense Claim > New Expense Claim
 
-<img class="screenshot" alt="Expense Claim" src="{{docs_base_url}}/assets/img/human-resources/expense_claim.png">
+<img class="screenshot" alt="Expense Claim" src="/docs/assets/img/human-resources/expense_claim.png">
 
 Set the Employee ID, date and the list of expenses that are to be claimed and
 “Submit” the record.
 
 ### Set Account for Employee
 Set employee's expense account on the employee form, system books an expense amount of an employee under this account.
-<img class="screenshot" alt="Expense Claim" src="{{docs_base_url}}/assets/img/human-resources/employee_account.png">
+<img class="screenshot" alt="Expense Claim" src="/docs/assets/img/human-resources/employee_account.png">
 
 ### Approving Expenses
 
 Approver for the Expense Claim is selected by an Employee himself. Users to whom `Expense Approver` role is assigned will shown in the Expense Claim Approver field.
 
-After saving Expense Claim, Employee should [Assign document to Approver]({{docs_base_url}}/user/manual/en/using-eprnext/assignment.html). On assignment, approving user will also receive email notification. To automate email notification, you can also setup [Email Alert]({{docs_base_url}}/user/manual/en/setting-up/email/email-alerts.html).
+After saving Expense Claim, Employee should [Assign document to Approver](/docs/user/manual/en/using-eprnext/assignment.html). On assignment, approving user will also receive email notification. To automate email notification, you can also setup [Email Alert](/docs/user/manual/en/setting-up/email/email-alerts.html).
 
 Expense Claim Approver can update the “Sanctioned Amounts” against Claimed Amount of an Employee. If submitting, Approval Status should be submitted to Approved or Rejected. If Approved, then Expense Claim gets submitted. If rejected, then Expen
 Comments can be added in the Comments section explaining why the claim was approved or rejected.
@@ -25,27 +27,34 @@
 ### Booking the Expense
 
 On submission of Expense Claim, system books an expense against the expense account and the employee account
-<img class="screenshot" alt="Expense Claim" src="{{docs_base_url}}/assets/img/human-resources/expense_claim_book.png">
+<img class="screenshot" alt="Expense Claim" src="/docs/assets/img/human-resources/expense_claim_book.png">
 
 User can view unpaid expense claim using report "Unclaimed Expense Claims"
-<img class="screenshot" alt="Expense Claim" src="{{docs_base_url}}/assets/img/human-resources/unclaimed_expense_claims.png">
+<img class="screenshot" alt="Expense Claim" src="/docs/assets/img/human-resources/unclaimed_expense_claims.png">
 
 ### Payment for Expense Claim
 
 To make payment against the expense claim, user has to click on Make > Bank Entry
 #### Expense Claim
-<img class="screenshot" alt="Expense Claim" src="{{docs_base_url}}/assets/img/human-resources/payment.png">
+<img class="screenshot" alt="Expense Claim" src="/docs/assets/img/human-resources/payment.png">
 
 #### Payment Entry
 <img class="screenshot" alt="Expense Claim" src="{{docs_base_url}}/assets/img/human-resources/payment_entry.png">
 
-
 Note: This amount should not be clubbed with Salary because the amount will then be taxable to the Employee.
 
+Alternatively, a Payment Entry can be made for an employee and all outstanding Expense Claims will be pulled in.
+
+> Accounts > Payment Entry > New Payment Entry
+
+Set the Payment Type to "Pay", the Party Type to Employee, the Party to the employee being paid and the account being paid 
+from. All outstanding expense claims will be pulled in and payments amounts can be allocated to each expense.
+<img class="screenshot" alt="Expense Claim" src="{{docs_base_url}}/assets/img/human-resources/expense_claim_payment_entry.png">
+
 ### Linking with Task & Project
 
 * To Link Expense Claim with Task or Project specify the Task or the Project while making an Expense Claim
 
-<img class="screenshot" alt="Expense Claim - Project Link" src="{{docs_base_url}}/assets/img/project/project_expense_claim_link.png">
+<img class="screenshot" alt="Expense Claim - Project Link" src="/docs/assets/img/project/project_expense_claim_link.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/en/human-resources/fleet-management.md b/erpnext/docs/user/manual/en/human-resources/fleet-management.md
index e55caa5..d7c4564 100644
--- a/erpnext/docs/user/manual/en/human-resources/fleet-management.md
+++ b/erpnext/docs/user/manual/en/human-resources/fleet-management.md
@@ -1,3 +1,5 @@
+# Fleet Management
+
 Fleet Management section of Human Resources helps your Organization manage their fleet of vehicles and track their expenses.
 
 To use Fleet Management in ERPNext,
@@ -17,15 +19,15 @@
 
 * Enter License Plate, Make, Model, Odometer Value, Fuel Type and Fuel UOM for a quick entry.
 
-	<img class="screenshot" alt="Vehicle" src="{{docs_base_url}}/assets/img/human-resources/vehicle-1.1.png">
+	<img class="screenshot" alt="Vehicle" src="/docs/assets/img/human-resources/vehicle-1.1.png">
 
 * Enter details like Insurance, Chassis, Vehicle Value, Location and Employee.
 
-	<img class="screenshot" alt="Vehicle" src="{{docs_base_url}}/assets/img/human-resources/vehicle-1.2.png">
+	<img class="screenshot" alt="Vehicle" src="/docs/assets/img/human-resources/vehicle-1.2.png">
 
 * Enter Vehicle attributes like color, wheels, doors and last carbon check 
 
-	<img class="screenshot" alt="Vehicle" src="{{docs_base_url}}/assets/img/human-resources/vehicle-1.3.png">
+	<img class="screenshot" alt="Vehicle" src="/docs/assets/img/human-resources/vehicle-1.3.png">
 
 ### Vehicle Log
 
@@ -37,17 +39,17 @@
 
 * Enter License Plate, Employee, Date, Odometer reading for a quick entry.
 
-	<img class="screenshot" alt="Vehicle Log" src="{{docs_base_url}}/assets/img/human-resources/vehicle-log-2.1.png">
+	<img class="screenshot" alt="Vehicle Log" src="/docs/assets/img/human-resources/vehicle-log-2.1.png">
 
 * Enter Refueling details, Service details if applicable.
 
-	<img class="screenshot" alt="Vehicle Log" src="{{docs_base_url}}/assets/img/human-resources/vehicle-log-2.2.png">
+	<img class="screenshot" alt="Vehicle Log" src="/docs/assets/img/human-resources/vehicle-log-2.2.png">
 
 ### Make Expense Claim
 
 * Click on Make Expense Claim button. This button appears only in case of Submitted Vehicle Logs.
 
-	<img class="screenshot" alt="Vehicle Log" src="{{docs_base_url}}/assets/img/human-resources/expense-claim-3.1.png">
+	<img class="screenshot" alt="Vehicle Log" src="/docs/assets/img/human-resources/expense-claim-3.1.png">
 
 When you click on 'Make Expense Claim',
 
@@ -55,10 +57,10 @@
   2. The sum of Fuel Expenses and Service Expenses is copied over to Expense Claim Amount.
   3. Employee can submit the Expense Claim for further processing.
 
-	<img class="screenshot" alt="Vehicle Log" src="{{docs_base_url}}/assets/img/human-resources/expense-claim-3.2.png">
+	<img class="screenshot" alt="Vehicle Log" src="/docs/assets/img/human-resources/expense-claim-3.2.png">
 
 ### Vehicle Expenses Report
 
 * To track and monitor Vehicle Expenses you can use the Vehicle Expenses report.This report gives a one stop view of all your vehicle expenses month wise.
 
-	<img class="screenshot" alt="Vehicle Log" src="{{docs_base_url}}/assets/img/human-resources/vehicle-expenses.png">
+	<img class="screenshot" alt="Vehicle Log" src="/docs/assets/img/human-resources/vehicle-expenses.png">
diff --git a/erpnext/docs/user/manual/en/human-resources/holiday-list.md b/erpnext/docs/user/manual/en/human-resources/holiday-list.md
index c1e76f1..0c0463d 100644
--- a/erpnext/docs/user/manual/en/human-resources/holiday-list.md
+++ b/erpnext/docs/user/manual/en/human-resources/holiday-list.md
@@ -1,3 +1,5 @@
+# Holiday List
+
 #Holiday List
 
 Holiday List is a list which contains the dates of holidays.
@@ -14,22 +16,22 @@
 
 Give a name to Holiday List. It can be based in Fiscal Year or location or department as application. Also select From and To Date for the Holiday List.
 
-<img class="screenshot" alt="Holiday List" src="{{docs_base_url}}/assets/img/human-resources/holiday-list-1.png"> 
+<img class="screenshot" alt="Holiday List" src="/docs/assets/img/human-resources/holiday-list-1.png"> 
 
 You can quickly add Weekly Off in the Holiday List as following.
 
-<img class="screenshot" alt="Holiday List" src="{{docs_base_url}}/assets/img/human-resources/holiday-list-2.gif"> 
+<img class="screenshot" alt="Holiday List" src="/docs/assets/img/human-resources/holiday-list-2.gif"> 
 
 After that, you can also add specific days (like festival holidays) manually.
 
-<img class="screenshot" alt="Holiday List" src="{{docs_base_url}}/assets/img/human-resources/holiday-list-3.png"> 
+<img class="screenshot" alt="Holiday List" src="/docs/assets/img/human-resources/holiday-list-3.png"> 
 
   
 ### Holiday List in Employee
 
 If you have created multiple Holiday List, then select specific Holiday List for an Employee in the respective master.
 
-<img class="screenshot" alt="Holiday List" src="{{docs_base_url}}/assets/img/human-resources/holiday-list-4.png"> 
+<img class="screenshot" alt="Holiday List" src="/docs/assets/img/human-resources/holiday-list-4.png"> 
 
 When an Employee applies for the Leave, then days mentioned in the Holiday List will not be counted, as they are holiday already. For more configuration option in Holiday List, check `HR > HR Settings`.
 
diff --git a/erpnext/docs/user/manual/en/human-resources/human-resource-setup.md b/erpnext/docs/user/manual/en/human-resources/human-resource-setup.md
index 8f29974..88b2d28 100644
--- a/erpnext/docs/user/manual/en/human-resources/human-resource-setup.md
+++ b/erpnext/docs/user/manual/en/human-resources/human-resource-setup.md
@@ -1,3 +1,5 @@
+# Human Resource Setup
+
 The HR module has a setup process where you create the masters for all the
 major activities.
 
diff --git a/erpnext/docs/user/manual/en/human-resources/human-resources-reports.md b/erpnext/docs/user/manual/en/human-resources/human-resources-reports.md
index 248a49a..406dbda 100644
--- a/erpnext/docs/user/manual/en/human-resources/human-resources-reports.md
+++ b/erpnext/docs/user/manual/en/human-resources/human-resources-reports.md
@@ -4,37 +4,37 @@
 
 Employee Leave Balance Report shows employees and their respective balance leaves under various leave types. Report is generated as per the number of allowed leaves.
 
-<img alt="Employee Leave Balance" class="screenshot" src="{{docs_base_url}}/assets/img/human-resources/employee-leave-balance-report.png">
+<img alt="Employee Leave Balance" class="screenshot" src="/docs/assets/img/human-resources/employee-leave-balance-report.png">
 
 ### Employee Birthday
 
 Employee Birthday Report shows Birthdays of your employees.
 
-<img alt="Employee Birthday" class="screenshot" src="{{docs_base_url}}/assets/img/human-resources/employee-birthday-report.png">
+<img alt="Employee Birthday" class="screenshot" src="/docs/assets/img/human-resources/employee-birthday-report.png">
 
 ### Employee Information
 
 Employee Information Report shows Report View of important information recorded in Employee master.
 
-<img alt="Employee Information" class="screenshot" src="{{docs_base_url}}/assets/img/human-resources/employee-information-report.png">
+<img alt="Employee Information" class="screenshot" src="/docs/assets/img/human-resources/employee-information-report.png">
 
 ### Employee Holiday Attendance
 
 Employee Holiday Attendance shows the list of Employees who attended on Holidays.
 
-<img alt="Employee Information" class="screenshot" src="{{docs_base_url}}/assets/img/human-resources/employee-holiday-report.png">
+<img alt="Employee Information" class="screenshot" src="/docs/assets/img/human-resources/employee-holiday-report.png">
 
 ### Monthly Salary Register
 
 Monthly Salary Register shows net pay and its components of employee(s) at a glance.
 
-<img alt="Monthly Salary Register" class="screenshot" src="{{docs_base_url}}/assets/img/human-resources/monthly-salary-register-report.png">
+<img alt="Monthly Salary Register" class="screenshot" src="/docs/assets/img/human-resources/monthly-salary-register-report.png">
 
 
 ### Monthly Attendance Sheet
 
 Monthly Attendance Sheet shows monthly attendance of selected employee at a glance.
 
-<img alt="Monthly Attendance Sheet" class="screenshot" src="{{docs_base_url}}/assets/img/human-resources/monthly-attendance-sheet-report.png">
+<img alt="Monthly Attendance Sheet" class="screenshot" src="/docs/assets/img/human-resources/monthly-attendance-sheet-report.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/en/human-resources/index.md b/erpnext/docs/user/manual/en/human-resources/index.md
index 02fcfc6..5191505 100644
--- a/erpnext/docs/user/manual/en/human-resources/index.md
+++ b/erpnext/docs/user/manual/en/human-resources/index.md
@@ -1,3 +1,5 @@
+# Human Resources
+
 The Human Resources (HR) Module covers the processes linked to managing a team
 of co-workers. Most important feature here is processing the payroll by using
 Process Payroll to generate Salary Slips. Most countries have complex tax
diff --git a/erpnext/docs/user/manual/en/human-resources/job-applicant.md b/erpnext/docs/user/manual/en/human-resources/job-applicant.md
index 767780f..d13cf19 100644
--- a/erpnext/docs/user/manual/en/human-resources/job-applicant.md
+++ b/erpnext/docs/user/manual/en/human-resources/job-applicant.md
@@ -1,10 +1,12 @@
-You can mantain a list of People who have applied for a [Job Opening]({{docs_base_url}}/user/manual/en/human-resources/job-opening.html).
+# Job Applicant
+
+You can mantain a list of People who have applied for a [Job Opening](/docs/user/manual/en/human-resources/job-opening.html).
 
 To create a new Job Applicant go to 
 
 > Human Resource > Job Applicant > New
 
-<img class="screenshot" alt="Job Applicant" src="{{docs_base_url}}/assets/img/human-resources/job-applicant.png">
+<img class="screenshot" alt="Job Applicant" src="/docs/assets/img/human-resources/job-applicant.png">
 
 ### Linking with an Email Account
 
@@ -20,6 +22,6 @@
 
 * In 'Append To' select 'Job Applicant'
 
-<img class="screenshot" alt="Email Account" src="{{docs_base_url}}/assets/img/human-resources/email-account.png">
+<img class="screenshot" alt="Email Account" src="/docs/assets/img/human-resources/email-account.png">
 
 {next}
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/human-resources/job-opening.md b/erpnext/docs/user/manual/en/human-resources/job-opening.md
index 7e4f0c3..e198caf 100644
--- a/erpnext/docs/user/manual/en/human-resources/job-opening.md
+++ b/erpnext/docs/user/manual/en/human-resources/job-opening.md
@@ -1,10 +1,12 @@
+# Job Opening
+
 You can make a record of the open vacancies in your company using Job Opening.
 
 To create a new Job Opening go to 
 
 > Human Resource > Job Opening > New
 
-<img class="screenshot" alt="Job Opening" src="{{docs_base_url}}/assets/img/human-resources/job-opening.png">
+<img class="screenshot" alt="Job Opening" src="/docs/assets/img/human-resources/job-opening.png">
 
 
 {next}
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/human-resources/leave-application.md b/erpnext/docs/user/manual/en/human-resources/leave-application.md
index 824cd04..438dbba 100644
--- a/erpnext/docs/user/manual/en/human-resources/leave-application.md
+++ b/erpnext/docs/user/manual/en/human-resources/leave-application.md
@@ -1,3 +1,5 @@
+# Leave Application
+
 If your company has a formal system where Employees have to apply for leaves
 to be able to qualify as paid leaveas, you can create Leave Application to
 track approval and usage of leaves. You have to mention the Employee, Leave
@@ -5,7 +7,7 @@
 
 > Human Resources > Leave Application > New Leave Application
 
-<img class="screenshot" alt="Leave Application" src="{{docs_base_url}}/assets/img/human-resources/leave-application.png">
+<img class="screenshot" alt="Leave Application" src="/docs/assets/img/human-resources/leave-application.png">
 
 ###Setting Leave Approver
 
@@ -13,12 +15,12 @@
 
 * You need to mention a list of Leave Approvers against an Employee in the Employee Master.
 
-<img class="screenshot" alt="Leave Approver" src="{{docs_base_url}}/assets/img/human-resources/employee-leave-approver.png">
+<img class="screenshot" alt="Leave Approver" src="/docs/assets/img/human-resources/employee-leave-approver.png">
 
 > Tip : If you want all users to create their own Leave Applications, you can set
 their “Employee ID” as a match rule in the Leave Application Permission
-settings. See the earlier discussion on [Setting Up Permissions]({{docs_base_url}}/user/manual/en/setting-up/users-and-permissions/user-permissions.html)
+settings. See the earlier discussion on [Setting Up Permissions](/docs/user/manual/en/setting-up/users-and-permissions/user-permissions.html)
 for more info.
 
-You assign Leaves aginast an Employee check [Leave Allocation]({{docs_base_url}}/user/manual/en/human-resources/leave.html)
+You assign Leaves aginast an Employee check [Leave Allocation](/docs/user/manual/en/human-resources/leave.html)
 {next}
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/human-resources/leave.md b/erpnext/docs/user/manual/en/human-resources/leave.md
index 5b32a2b..cd81269 100644
--- a/erpnext/docs/user/manual/en/human-resources/leave.md
+++ b/erpnext/docs/user/manual/en/human-resources/leave.md
@@ -1,3 +1,5 @@
+# Leave
+
 #Overview
 This section enables you to manage leave schedule of your organization. It also explains the way employees can apply for leaves.  
 Employees create leave request and manager (leave approver) approves or rejects the request. You can select from a number of leave types such as sick leave, casual leave, privilege leave and so on. You can also allocate leaves to your employees and generate reports to track leaves record.
@@ -12,7 +14,7 @@
 requirement.
 
 <img class="screenshot" alt="New Leave Type" 
-	src="{{docs_base_url}}/assets/img/human-resources/new-leave-type.png">
+	src="/docs/assets/img/human-resources/new-leave-type.png">
 
 **Max Days Leave Allowed:** It refers to maximum number of days this particular Leave Type can be availed at a stretch. If an employee exceeds the maximum number of days under a particular Leave Type, his/her extended leave may be considered as ‘Leave Without Pay’ and this may affect his/her salary calculation.
 
@@ -45,7 +47,7 @@
 To allocate leaves to an Employee, select the period and the number of leaves you want to allocate. You can also add unused leaves from previous allocation period.
 
 <img class="screenshot" alt="Manual Leave Allocation" 
-	src="{{docs_base_url}}/assets/img/human-resources/manual-leave-allocation.png">
+	src="/docs/assets/img/human-resources/manual-leave-allocation.png">
 
 ###Via Leave Allocation Tool
 > Human Resources > Tools > Leave Allocation Tool
@@ -53,7 +55,7 @@
 This tool enables you to allocate leaves for a category of employees, instead of individual ones. You can allocate leaves based on Employee Type, Branch, Department and Designation. Leave Allocation Tool is also known as Leave Control Panel.
 
 <img class="screenshot" alt="Leave Allocation Tool"
-	src="{{docs_base_url}}/assets/img/human-resources/leave-allocation-tool.png">
+	src="/docs/assets/img/human-resources/leave-allocation-tool.png">
 
 ---
 
@@ -71,7 +73,7 @@
 - Employee gets notification on the status of his/her Leave Application
 
 <img class="screenshot" alt="Leave Allocation Tool"
-	src="{{docs_base_url}}/assets/img/human-resources/new-leave-application.png">
+	src="/docs/assets/img/human-resources/new-leave-application.png">
 
 	
 **Notes:**
@@ -89,4 +91,4 @@
 Leave Block List is a list of dates in a year, on which employees can not apply for leave. You can define a list of users who can approve Leave Application on blocked days, in case of urgency. You can also define whether the list will applied on entire company or any specific departments.
 
 <img class="screenshot" alt="Leave Allocation Tool"
-	src="{{docs_base_url}}/assets/img/human-resources/leave-block-list.png">
\ No newline at end of file
+	src="/docs/assets/img/human-resources/leave-block-list.png">
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/human-resources/offer-letter.md b/erpnext/docs/user/manual/en/human-resources/offer-letter.md
index 9e8c966..1df1a38 100644
--- a/erpnext/docs/user/manual/en/human-resources/offer-letter.md
+++ b/erpnext/docs/user/manual/en/human-resources/offer-letter.md
@@ -1,3 +1,5 @@
+# Offer Letter
+
 Offer Letter is given to candidate after Interview & selection which states the offered salary package, 
 designation, grade, department working, no of days entitled for leave.
 
@@ -5,12 +7,12 @@
 
 > Human Resource > Offer Letter > New
 
-<img class="screenshot" alt="Offer Letter" src="{{docs_base_url}}/assets/img/human-resources/offer-letter.png">
+<img class="screenshot" alt="Offer Letter" src="/docs/assets/img/human-resources/offer-letter.png">
 
-> Note: An offer letter can be made only against a [Job Applicant]({{docs_base_url}}/user/manual/en/human-resources/job-applicant.html)
+> Note: An offer letter can be made only against a [Job Applicant](/docs/user/manual/en/human-resources/job-applicant.html)
 
 There is a pre-designed print format to print you offer letter.
 
-<img class="screenshot" alt="Offer Letter" src="{{docs_base_url}}/assets/img/human-resources/offer-letter-print.png">
+<img class="screenshot" alt="Offer Letter" src="/docs/assets/img/human-resources/offer-letter-print.png">
 
 {next}
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/human-resources/salary-and-payroll.md b/erpnext/docs/user/manual/en/human-resources/salary-and-payroll.md
index 48ff96b..e902617 100644
--- a/erpnext/docs/user/manual/en/human-resources/salary-and-payroll.md
+++ b/erpnext/docs/user/manual/en/human-resources/salary-and-payroll.md
@@ -1,3 +1,5 @@
+# Salary And Payroll
+
 Salary is a fixed amount of money or compensation paid to an employee by an employer in return for the work performed . 
 
 Payroll is the administration of financial records of employees' salaries, wages, bonuses, net pay, and deductions.
@@ -44,7 +46,7 @@
 
 #### Figure 1.1:Salary Structure
 
-<img class="screenshot" alt="Salary Structure" src="{{docs_base_url}}/assets/img/human-resources/salary-structure.png">
+<img class="screenshot" alt="Salary Structure" src="/docs/assets/img/human-resources/salary-structure.png">
 
 ### In the Salary Structure,
 
@@ -53,7 +55,7 @@
 
 #### Figure 1.2:Salary Structure for Salary Slip based on Timesheet
 
-<img class="screenshot" alt="Salary Structure" src="{{docs_base_url}}/assets/img/human-resources/salary-timesheet.png">
+<img class="screenshot" alt="Salary Structure" src="/docs/assets/img/human-resources/salary-timesheet.png">
   
 ### Salary Slip Based on Timesheet 
 
@@ -70,20 +72,20 @@
 
 #### Figure 1.3:Condition and Formula
 
-<img class="screenshot" alt="Salary Structure" src="{{docs_base_url}}/assets/img/human-resources/condition-formula.png">
+<img class="screenshot" alt="Salary Structure" src="/docs/assets/img/human-resources/condition-formula.png">
 
   * Condition and Amount
   
 #### Figure 1.4:Condition and Amount
 
-<img class="screenshot" alt="Salary Structure" src="{{docs_base_url}}/assets/img/human-resources/condition-amount.png">  
+<img class="screenshot" alt="Salary Structure" src="/docs/assets/img/human-resources/condition-amount.png">  
 
   * Only Formula  
   * Only Amount
   
 #### Figure 1.5:Account Details
 
-<img class="screenshot" alt="Salary Structure" src="{{docs_base_url}}/assets/img/human-resources/salary-structure-account.png">  
+<img class="screenshot" alt="Salary Structure" src="/docs/assets/img/human-resources/salary-structure-account.png">  
 
   * Select Mode of Payment and Payment Account for the Salary Slips which will be generated using this Salary Structure
   
@@ -121,7 +123,7 @@
 
 #### Figure 2: Salary Slip
 
-<img class="screenshot" alt="Salary Slip" src="{{docs_base_url}}/assets/img/human-resources/salary-slip.png">
+<img class="screenshot" alt="Salary Slip" src="/docs/assets/img/human-resources/salary-slip.png">
 
 You can also create salary slip for multiple employees using Process Payroll:
 
@@ -129,7 +131,7 @@
 
 #### Figure 3: Process Payroll
 
-<img class="screenshot" alt="Process Payroll" src="{{docs_base_url}}/assets/img/human-resources/process-payroll.png">
+<img class="screenshot" alt="Process Payroll" src="/docs/assets/img/human-resources/process-payroll.png">
 
 In Process Payroll,
 
@@ -164,7 +166,7 @@
 
 #### Figure 3.1: Make Bank Entry
 
-<img class="screenshot" alt="Process Payroll" src="{{docs_base_url}}/assets/img/human-resources/bank-entry.png">
+<img class="screenshot" alt="Process Payroll" src="/docs/assets/img/human-resources/bank-entry.png">
 
 
 {next}
diff --git a/erpnext/docs/user/manual/en/human-resources/setup/branch.md b/erpnext/docs/user/manual/en/human-resources/setup/branch.md
index 8116ca4..75c0c43 100644
--- a/erpnext/docs/user/manual/en/human-resources/setup/branch.md
+++ b/erpnext/docs/user/manual/en/human-resources/setup/branch.md
@@ -1,5 +1,7 @@
+# Branch
+
 Branches of your organization
 
-<img class="screenshot" alt="Branch" src="{{docs_base_url}}/assets/img/human-resources/branch.png">
+<img class="screenshot" alt="Branch" src="/docs/assets/img/human-resources/branch.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/en/human-resources/setup/deduction-type.md b/erpnext/docs/user/manual/en/human-resources/setup/deduction-type.md
index 4371b62..39e7e2a 100644
--- a/erpnext/docs/user/manual/en/human-resources/setup/deduction-type.md
+++ b/erpnext/docs/user/manual/en/human-resources/setup/deduction-type.md
@@ -1,10 +1,12 @@
+# Deduction Type
+
 You can make a record of the tax and other salary deductions and describe it as Deduction Type
 
 To create a new Deduction Type
 
 > Human Resource > Setup > Deduction Type > New
 
-<img class="screenshot" alt="Deduction Type" src="{{docs_base_url}}/assets/img/human-resources/deduction-type.png">
+<img class="screenshot" alt="Deduction Type" src="/docs/assets/img/human-resources/deduction-type.png">
 
 
 {next}
diff --git a/erpnext/docs/user/manual/en/human-resources/setup/department.md b/erpnext/docs/user/manual/en/human-resources/setup/department.md
index 1b088b1..9eb4245 100644
--- a/erpnext/docs/user/manual/en/human-resources/setup/department.md
+++ b/erpnext/docs/user/manual/en/human-resources/setup/department.md
@@ -1,5 +1,7 @@
+# Department
+
 Departments in your organization
 
-<img class="screenshot" alt="Department" src="{{docs_base_url}}/assets/img/human-resources/department.png">
+<img class="screenshot" alt="Department" src="/docs/assets/img/human-resources/department.png">
 
 {next}
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/human-resources/setup/designation.md b/erpnext/docs/user/manual/en/human-resources/setup/designation.md
index 1de779e..5ac771f 100644
--- a/erpnext/docs/user/manual/en/human-resources/setup/designation.md
+++ b/erpnext/docs/user/manual/en/human-resources/setup/designation.md
@@ -1,5 +1,7 @@
+# Designation
+
 Designations in your organization
 
-<img class="screenshot" alt="Designation" src="{{docs_base_url}}/assets/img/human-resources/designation.png">
+<img class="screenshot" alt="Designation" src="/docs/assets/img/human-resources/designation.png">
 
 {next}
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/human-resources/setup/earning-type.md b/erpnext/docs/user/manual/en/human-resources/setup/earning-type.md
index e5c35c6..1758663 100644
--- a/erpnext/docs/user/manual/en/human-resources/setup/earning-type.md
+++ b/erpnext/docs/user/manual/en/human-resources/setup/earning-type.md
@@ -1,10 +1,12 @@
+# Earning Type
+
 You can make a record of the Salary Components and describe it as Earning Type
 
 To create a new Earning Type
 
 > Human Resource > Setup > Earning Type > New
 
-<img class="screenshot" alt="Earning Type" src="{{docs_base_url}}/assets/img/human-resources/earning-type.png">
+<img class="screenshot" alt="Earning Type" src="/docs/assets/img/human-resources/earning-type.png">
 
 
 {next}
diff --git a/erpnext/docs/user/manual/en/human-resources/setup/employment-type.md b/erpnext/docs/user/manual/en/human-resources/setup/employment-type.md
index 37d0fd3..de07ac9 100644
--- a/erpnext/docs/user/manual/en/human-resources/setup/employment-type.md
+++ b/erpnext/docs/user/manual/en/human-resources/setup/employment-type.md
@@ -1,5 +1,7 @@
+# Employment Type
+
 Various employment contracts you have with your employees.
 
-<img class="screenshot" alt="Employment Type" src="{{docs_base_url}}/assets/img/human-resources/employment-type.png">
+<img class="screenshot" alt="Employment Type" src="/docs/assets/img/human-resources/employment-type.png">
 
 {next}
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/human-resources/setup/hr-settings.md b/erpnext/docs/user/manual/en/human-resources/setup/hr-settings.md
index 1741df4..a12bcdb 100644
--- a/erpnext/docs/user/manual/en/human-resources/setup/hr-settings.md
+++ b/erpnext/docs/user/manual/en/human-resources/setup/hr-settings.md
@@ -2,6 +2,6 @@
 
 GLobal settings for HR related documents
 
-<img class="screenshot" alt="HR Settings" src="{{docs_base_url}}/assets/img/human-resources/hr-settings.png">
+<img class="screenshot" alt="HR Settings" src="/docs/assets/img/human-resources/hr-settings.png">
 
 {next}
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/human-resources/setup/index.md b/erpnext/docs/user/manual/en/human-resources/setup/index.md
index 0dff60b..59ddddf 100644
--- a/erpnext/docs/user/manual/en/human-resources/setup/index.md
+++ b/erpnext/docs/user/manual/en/human-resources/setup/index.md
@@ -1 +1,3 @@
+# Setup
+
 {index}
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/human-resources/tools/employee-attendance-tool.md b/erpnext/docs/user/manual/en/human-resources/tools/employee-attendance-tool.md
index f0d6e5f..dfc350e 100644
--- a/erpnext/docs/user/manual/en/human-resources/tools/employee-attendance-tool.md
+++ b/erpnext/docs/user/manual/en/human-resources/tools/employee-attendance-tool.md
@@ -1,9 +1,11 @@
+# Employee Attendance Tool
+
 To go the attendance tool, go to:
 
 > Human Resources > Tools > Employee Attendance Tool
 
 This tool allows you to add attendance records for multiple employees quickly.
 
-<img class="screenshot" alt="Attendence upload" src="{{docs_base_url}}/assets/img/human-resources/employee-attendance-tool.png">
+<img class="screenshot" alt="Attendence upload" src="/docs/assets/img/human-resources/employee-attendance-tool.png">
 
 {next}
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/human-resources/tools/index.md b/erpnext/docs/user/manual/en/human-resources/tools/index.md
index 0dff60b..79547ee 100644
--- a/erpnext/docs/user/manual/en/human-resources/tools/index.md
+++ b/erpnext/docs/user/manual/en/human-resources/tools/index.md
@@ -1 +1,3 @@
+# Tools
+
 {index}
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/human-resources/tools/upload-attendance.md b/erpnext/docs/user/manual/en/human-resources/tools/upload-attendance.md
index adfc66d..7a45002 100644
--- a/erpnext/docs/user/manual/en/human-resources/tools/upload-attendance.md
+++ b/erpnext/docs/user/manual/en/human-resources/tools/upload-attendance.md
@@ -1,9 +1,11 @@
+# Upload Attendance
+
 This tool helps you to upload bulk attendence from a csv file.
 
 To upload the attendance go to:
 
 > Human Resources > Upload Attendance
 
-<img class="screenshot" alt="Attendence upload" src="{{docs_base_url}}/assets/img/human-resources/attendence-upload.png">
+<img class="screenshot" alt="Attendence upload" src="/docs/assets/img/human-resources/attendence-upload.png">
 
 {next}
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/human-resources/training.md b/erpnext/docs/user/manual/en/human-resources/training.md
index 5d55b6c..39b9790 100644
--- a/erpnext/docs/user/manual/en/human-resources/training.md
+++ b/erpnext/docs/user/manual/en/human-resources/training.md
@@ -1,8 +1,10 @@
+# Training
+
 ### Training Event
 
 Schedule seminars, workshops, conferences etc using Training Event. You can also invite your employees to attend the event using this feature.
 
-<img class="screenshot" alt="Employee" src="{{docs_base_url}}/assets/img/human-resources/training_event.png">
+<img class="screenshot" alt="Employee" src="/docs/assets/img/human-resources/training_event.png">
 
 ### Inviting Employees for Event
 
@@ -12,17 +14,17 @@
 The status is changed to 'Invited' when an invitation email is sent to the employee by the system.
 When an Employee confirms his/her presence for the event you can change the status to 'Confirmed'.
 
-<img class="screenshot" alt="Employee" src="{{docs_base_url}}/assets/img/human-resources/training_event_employee.png">
+<img class="screenshot" alt="Employee" src="/docs/assets/img/human-resources/training_event_employee.png">
 
 ### Training Result
 
 After compleation of the training Employee Wise training results can be stored based on the Feedback received from the Trainer.
 
-<img class="screenshot" alt="Employee" src="{{docs_base_url}}/assets/img/human-resources/training_result.png">
+<img class="screenshot" alt="Employee" src="/docs/assets/img/human-resources/training_result.png">
 
 
 ### Trainig Feedback
 
 Collect feedback regarding the event from your Employees using Training Feedback.
 
-<img class="screenshot" alt="Employee" src="{{docs_base_url}}/assets/img/human-resources/training_feedback.png">
+<img class="screenshot" alt="Employee" src="/docs/assets/img/human-resources/training_feedback.png">
diff --git a/erpnext/docs/user/manual/en/introduction/concepts-and-terms.md b/erpnext/docs/user/manual/en/introduction/concepts-and-terms.md
index 7e261b8..3a51286 100644
--- a/erpnext/docs/user/manual/en/introduction/concepts-and-terms.md
+++ b/erpnext/docs/user/manual/en/introduction/concepts-and-terms.md
@@ -1,3 +1,5 @@
+# Concepts And Terms
+
 Before you start implementation, lets get familiar with the terminology that
 is used and some basic concepts in ERPNext.
 
diff --git a/erpnext/docs/user/manual/en/introduction/do-i-need-an-erp.md b/erpnext/docs/user/manual/en/introduction/do-i-need-an-erp.md
index 0c2a0a5..278804d 100644
--- a/erpnext/docs/user/manual/en/introduction/do-i-need-an-erp.md
+++ b/erpnext/docs/user/manual/en/introduction/do-i-need-an-erp.md
@@ -1,3 +1,5 @@
+# Do I Need An Erp
+
 ERPNext is a modern tool that covers not only accounting but also all other
 business functions, on an integrated platform. It has many benefits over both
 traditional accounting as well as ERP applications.
diff --git a/erpnext/docs/user/manual/en/introduction/getting-started-with-erpnext.md b/erpnext/docs/user/manual/en/introduction/getting-started-with-erpnext.md
index 7e783f6..4aae00e 100644
--- a/erpnext/docs/user/manual/en/introduction/getting-started-with-erpnext.md
+++ b/erpnext/docs/user/manual/en/introduction/getting-started-with-erpnext.md
@@ -1,3 +1,9 @@
+# Getting Started With Erpnext
+
+<!-- Getting Started with ERPNext-->
+
+# Getting Started with ERPNext
+
 There are many ways to get started with ERPNext.
 
 ### 1\. See the Demo
@@ -10,7 +16,7 @@
 ### 2\. Start a Free Account at ERPNext.com
 
 
-ERPNext.com is managed by the organization (Frappe) that publishes ERPNext.
+ERPNext.com is managed by the organization (Frappé) that publishes ERPNext.
 You can start with your own account by [signing up on the
 website](https://erpnext.com).
 
@@ -30,6 +36,6 @@
 
 ### 4\. Install ERPNext on your Unix/Linux/Mac machine
 
-If you are familiar with installing applications on *nix platforms, read the instructions on how to install using [Frappe Bench](https://github.com/frappe/bench).
+If you are familiar with installing applications on *nix platforms, read the instructions on how to install using [Frappé Bench](https://github.com/frappe/bench).
 
 {next}
diff --git a/erpnext/docs/user/manual/en/introduction/implementation-strategy.md b/erpnext/docs/user/manual/en/introduction/implementation-strategy.md
index bc494ca..0a10871 100644
--- a/erpnext/docs/user/manual/en/introduction/implementation-strategy.md
+++ b/erpnext/docs/user/manual/en/introduction/implementation-strategy.md
@@ -1,3 +1,5 @@
+# Implementation Strategy
+
 Before you start managing your Operations in EPRNext, you must first become
 familiar with the system and the terms used. For this we recommend
 implementation should happen in two phases.
diff --git a/erpnext/docs/user/manual/en/introduction/index.md b/erpnext/docs/user/manual/en/introduction/index.md
index f1bcb49..fcaf43e 100644
--- a/erpnext/docs/user/manual/en/introduction/index.md
+++ b/erpnext/docs/user/manual/en/introduction/index.md
@@ -1,3 +1,5 @@
+# Introduction
+
 ## What is an ERP and why should I care?
 
 (If you are already convinced you need an all-in-one system for your
diff --git a/erpnext/docs/user/manual/en/introduction/key-workflows.md b/erpnext/docs/user/manual/en/introduction/key-workflows.md
index bb03269..9196014 100644
--- a/erpnext/docs/user/manual/en/introduction/key-workflows.md
+++ b/erpnext/docs/user/manual/en/introduction/key-workflows.md
@@ -3,10 +3,10 @@
 This diagram covers how ERPNext tracks your company information across key
 functions. This diagram does not cover all the features of ERPNext.
 
-![]({{docs_base_url}}/assets/old_images/erpnext/overview.png)
+![](/docs/assets/old_images/erpnext/overview.png)
 
 
-<img class="screenshot" alt="Workflow" src="{{docs_base_url}}/assets/img/setup/overview.png">
+<img class="screenshot" alt="Workflow" src="/docs/assets/img/setup/overview.png">
 
 _Note: Not all of the steps are mandatory. ERPNext allows you to freely skip
 steps if you want to simplify the process._
diff --git a/erpnext/docs/user/manual/en/introduction/open-source.md b/erpnext/docs/user/manual/en/introduction/open-source.md
index 0089ba8..18d61de 100644
--- a/erpnext/docs/user/manual/en/introduction/open-source.md
+++ b/erpnext/docs/user/manual/en/introduction/open-source.md
@@ -1,3 +1,5 @@
+# Open Source
+
 The source code is an Open Source software. It is open for anyone to
 understand, extend or improve. And it is free!
 
diff --git a/erpnext/docs/user/manual/en/introduction/the-champion.md b/erpnext/docs/user/manual/en/introduction/the-champion.md
index 4d75abb..57086cb 100644
--- a/erpnext/docs/user/manual/en/introduction/the-champion.md
+++ b/erpnext/docs/user/manual/en/introduction/the-champion.md
@@ -1,8 +1,10 @@
+# The Champion
+
 <!-- no-heading -->
 
 <h1 class="white">The Champion</h1>
 
-<img alt="Champion" class="screenshot" src="{{docs_base_url}}/assets/img/setup/implementation-image.png">
+<img alt="Champion" class="screenshot" src="/docs/assets/img/setup/implementation-image.png">
 
 We have seen dozens of ERP implementations over the past few years and we
 realize that successful implementation is a lot about intangibles and
diff --git a/erpnext/docs/user/manual/en/manufacturing/articles/index.md b/erpnext/docs/user/manual/en/manufacturing/articles/index.md
index 0dff60b..fb11735 100644
--- a/erpnext/docs/user/manual/en/manufacturing/articles/index.md
+++ b/erpnext/docs/user/manual/en/manufacturing/articles/index.md
@@ -1 +1,3 @@
+# Articles
+
 {index}
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/manufacturing/articles/nested-bom-structure.md b/erpnext/docs/user/manual/en/manufacturing/articles/nested-bom-structure.md
index 3f507af..1e8b2bd 100644
--- a/erpnext/docs/user/manual/en/manufacturing/articles/nested-bom-structure.md
+++ b/erpnext/docs/user/manual/en/manufacturing/articles/nested-bom-structure.md
@@ -1,3 +1,5 @@
+# Nested Bom Structure
+
 #Nested BOM Structure
 
 **Question:** Our manufacturing process involves producing sub-assembly items before final product. How should we manage BOM master in this scenario?
@@ -8,7 +10,7 @@
  
 BOM of PC will have all the raw-material items selected in it. Hard Disk and DVD Drive (sub-assemblies) will also be selected as raw-material items. For the sib-assembly items, respective BOM no. will be fetched as well.
 
-<img alt="Nested BOM" class="screenshot" src="{{docs_base_url}}/assets/img/articles/nested-bom-1.png">
+<img alt="Nested BOM" class="screenshot" src="/docs/assets/img/articles/nested-bom-1.png">
 
 Following is how the structure of nested BOM will look:
 
diff --git a/erpnext/docs/user/manual/en/manufacturing/articles/production-planning-subassembly.md b/erpnext/docs/user/manual/en/manufacturing/articles/production-planning-subassembly.md
index c17b923..050706c 100644
--- a/erpnext/docs/user/manual/en/manufacturing/articles/production-planning-subassembly.md
+++ b/erpnext/docs/user/manual/en/manufacturing/articles/production-planning-subassembly.md
@@ -1,3 +1,5 @@
+# Production Planning Subassembly
+
 #Production Planning & Subassembly
 
 if you need Production Planning Tool to consider raw-materials required for the manufacturing of sub-assembly items selected in the BOM, please check following instructions to achieve the same.
diff --git a/erpnext/docs/user/manual/en/manufacturing/articles/valuation-based-on-field-in-bom.md b/erpnext/docs/user/manual/en/manufacturing/articles/valuation-based-on-field-in-bom.md
index 29803ee..b07366c 100644
--- a/erpnext/docs/user/manual/en/manufacturing/articles/valuation-based-on-field-in-bom.md
+++ b/erpnext/docs/user/manual/en/manufacturing/articles/valuation-based-on-field-in-bom.md
@@ -1,16 +1,18 @@
+# Valuation Based On Field In Bom
+
 #Valuation Based On in BOM
 
 **Question:** What are for various options in `Valuation Based On` in the Bill Of Materials (BOM)? 
 
 **Answer:** There are 3 available options in the <i>Valuation Based On</i> field:
 
-<img alt="Nested BOM" class="screenshot" src="{{docs_base_url}}/assets/img/articles/valuation-based-on-1.png">
+<img alt="Nested BOM" class="screenshot" src="/docs/assets/img/articles/valuation-based-on-1.png">
 
 **Valuation Rate:** Item valuation rate is defined based on it's purchase or manufacture value. 
 
 For Purchase Item, it is defined based on charges entered in the Purchase Receipt. If you don't have any Purchase Receipt
 made for an item or a Stock Reconciliation, then there won't be any Valuation Rate for that item.
 
-**Price List Rate:** This option allows to pull item rates from [Price List.]({{docs_base_url}}/user/manual/en/stock/item/item-price.html) 
+**Price List Rate:** This option allows to pull item rates from [Price List.](/docs/user/manual/en/stock/item/item-price.html) 
 
 **Last Purchase Rate:** It will be the last Purchase (Order) Rate of an item.
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/manufacturing/bill-of-materials.md b/erpnext/docs/user/manual/en/manufacturing/bill-of-materials.md
index 91bf7ed..112efab 100644
--- a/erpnext/docs/user/manual/en/manufacturing/bill-of-materials.md
+++ b/erpnext/docs/user/manual/en/manufacturing/bill-of-materials.md
@@ -1,3 +1,5 @@
+# Bill Of Materials
+
 At the heart of the Manufacturing system is the **Bill of Materials** (BOM).
 The **BOM** is a list of all materials (either bought or made) and operations
 that go into a finished product or sub-Item. In ERPNext, the component could
@@ -8,11 +10,11 @@
 
 > Manufacturing > Bill of Materials > New BOM
 
-<img class="screenshot" alt="Task" src="{{docs_base_url}}/assets/img/manufacturing/bom.png">
+<img class="screenshot" alt="Task" src="/docs/assets/img/manufacturing/bom.png">
 
 * To add Operations select 'With Operation'. The Operations table shall appear.
 
-<img class="screenshot" alt="Task" src="{{docs_base_url}}/assets/img/manufacturing/bom-operations.png">
+<img class="screenshot" alt="Task" src="/docs/assets/img/manufacturing/bom-operations.png">
 
   * Select the Item for which you want to make the BOM.
   * Add the operations that you have to go through to make that particular Item in the “Operations” table. For each operation, you will be asked to enter a Workstation. You must create new Workstations as and when necessary.
@@ -25,22 +27,22 @@
 
 * Add the list of Items you require for each operation, with its quantity. This Item could be a purchased Item or a sub-assembly with its own BOM. If the row Item is a manufactured Item and has multiple BOMs, select the appropriate BOM. You can also define if a part of the Item goes into scrap.
 
-<img class="screenshot" alt="Costing" src="{{docs_base_url}}/assets/img/manufacturing/bom-costing.png">
+<img class="screenshot" alt="Costing" src="/docs/assets/img/manufacturing/bom-costing.png">
 
 * This cost can be updated on by using the 'Update Cost' button.
 
-<img class="screenshot" alt="Update Cost" src="{{docs_base_url}}/assets/img/manufacturing/bom-update-cost.png">
+<img class="screenshot" alt="Update Cost" src="/docs/assets/img/manufacturing/bom-update-cost.png">
 
 * User can select the currency in the BOM 
 * System calculates the costing based on the price list currency
 
-<img class="screenshot" alt="Update Cost" src="{{docs_base_url}}/assets/img/manufacturing/price-list-based-currency-bom.png">
+<img class="screenshot" alt="Update Cost" src="/docs/assets/img/manufacturing/price-list-based-currency-bom.png">
 
 ### Materials Required(exploded) 
 
 This table lists down all the Material required for the Item to be Manufactured.
 It also fetches sub-assemblies along with the quantity.
 
-<img class="screenshot" alt="Exploded Section" src="{{docs_base_url}}/assets/img/manufacturing/bom-exploded.png">
+<img class="screenshot" alt="Exploded Section" src="/docs/assets/img/manufacturing/bom-exploded.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/en/manufacturing/introduction.md b/erpnext/docs/user/manual/en/manufacturing/introduction.md
index f9d827c..b7f0a99 100644
--- a/erpnext/docs/user/manual/en/manufacturing/introduction.md
+++ b/erpnext/docs/user/manual/en/manufacturing/introduction.md
@@ -1,4 +1,6 @@
-<img class="screenshot" alt="Task" src="{{docs_base_url}}/assets/img/manufacturing/manufacturing.png">
+# Introduction
+
+<img class="screenshot" alt="Task" src="/docs/assets/img/manufacturing/manufacturing.png">
 
 ### Types of Production Planning
 
diff --git a/erpnext/docs/user/manual/en/manufacturing/operation.md b/erpnext/docs/user/manual/en/manufacturing/operation.md
index b21304e..8d495f1 100644
--- a/erpnext/docs/user/manual/en/manufacturing/operation.md
+++ b/erpnext/docs/user/manual/en/manufacturing/operation.md
@@ -1,3 +1,5 @@
+# Operation
+
 ### Operation
 
 Stores a list of all Manufacturing Operations, its description and the Default Workstation for the Operation.
@@ -6,6 +8,6 @@
 
 > Manufacturing > Documents > Operation > New
 
-<img class="screenshot" alt="Operation" src="{{docs_base_url}}/assets/img/manufacturing/operation.png">
+<img class="screenshot" alt="Operation" src="/docs/assets/img/manufacturing/operation.png">
 
 {next}
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/manufacturing/production-order.md b/erpnext/docs/user/manual/en/manufacturing/production-order.md
index a19c510..430ef8a 100644
--- a/erpnext/docs/user/manual/en/manufacturing/production-order.md
+++ b/erpnext/docs/user/manual/en/manufacturing/production-order.md
@@ -1,4 +1,6 @@
-<img class="screenshot" alt="Production Order" src="{{docs_base_url}}/assets/img/manufacturing/manufacturing-flow.png">
+# Production Order
+
+<img class="screenshot" alt="Production Order" src="/docs/assets/img/manufacturing/manufacturing-flow.png">
 A Production Order (also known as a Work Order) is a document that is given to
 the manufacturing shop floor by the Production Planner as a signal to produce
 a certain quantity of a certain Item. The Production Order also helps to generate
@@ -11,7 +13,7 @@
 
 > Manufacturing > Documents > Production Order > New
 
-<img class="screenshot" alt="Production Order" src="{{docs_base_url}}/assets/img/manufacturing/production-order.png">
+<img class="screenshot" alt="Production Order" src="/docs/assets/img/manufacturing/production-order.png">
 
 ### Creating Production Orders
 
@@ -33,11 +35,11 @@
 
 * By default the system fetchs workstation and duration for Production Order Operations from the selected BOM.
 
-<img class="screenshot" alt="PO Opeartions" src="{{docs_base_url}}/assets/img/manufacturing/PO-operations.png">
+<img class="screenshot" alt="PO Opeartions" src="/docs/assets/img/manufacturing/PO-operations.png">
 
 * If you wish to reassign the workstation for a particular opeeration in the Production Order, you can do so before submitting the Production Order.
 
-<img class="screenshot" alt="PO reassigning Operations" src="{{docs_base_url}}/assets/img/manufacturing/PO-reassigning-operations.png">
+<img class="screenshot" alt="PO reassigning Operations" src="/docs/assets/img/manufacturing/PO-reassigning-operations.png">
 
 * Select the respective operation, and change its workstation.
 * You can also change the Operating Time for that operation
@@ -54,19 +56,19 @@
 
 * Click on 'Start'.
 
-<img class="screenshot" alt="Transfer Materials" src="{{docs_base_url}}/assets/img/manufacturing/PO-material-transfer.png">
+<img class="screenshot" alt="Transfer Materials" src="/docs/assets/img/manufacturing/PO-material-transfer.png">
 
 * Mention the quantity of materials to be transfered.
 
-<img class="screenshot" alt="Material Transfer Qty" src="{{docs_base_url}}/assets/img/manufacturing/PO-material-transfer-qty.png">
+<img class="screenshot" alt="Material Transfer Qty" src="/docs/assets/img/manufacturing/PO-material-transfer-qty.png">
 
 * Submit the Stock Entry
 
-<img class="screenshot" alt="Stock Entry for PO" src="{{docs_base_url}}/assets/img/manufacturing/PO-SE-for-material-transfer.png">
+<img class="screenshot" alt="Stock Entry for PO" src="/docs/assets/img/manufacturing/PO-SE-for-material-transfer.png">
 
 * Material Transfered for Manufacturing will be updated in the Production Order based on the Stock Entry.
 
-<img class="screenshot" alt="Stock Entry for PO" src="{{docs_base_url}}/assets/img/manufacturing/PO-material-transfer-updated.png">
+<img class="screenshot" alt="Stock Entry for PO" src="/docs/assets/img/manufacturing/PO-material-transfer-updated.png">
 
 #### Material Transfer through Stock Entry
 Use cases for this option are:
@@ -77,12 +79,12 @@
 
 ### Making Time Logs
 
-* Progress in the Production Order can be tracked using [Timesheet]({{docs_base_url}}/user/manual/en/projects/timesheet/timesheet-against-production-order.html)
+* Progress in the Production Order can be tracked using [Timesheet](/docs/user/manual/en/projects/timesheet/timesheet-against-production-order.html)
 * Timesheet's time slots are created against Production Order Operations.
 * Drafts of Timesheet are created based on the scheduled operations when an Production Order is Submitted.
 * To create more Timesheets against an operation click 'Make Timesheet' button.
 
-<img class="screenshot" alt="Make timesheet against PO" src="{{docs_base_url}}/assets/img/manufacturing/PO-operations-make-ts.png">
+<img class="screenshot" alt="Make timesheet against PO" src="/docs/assets/img/manufacturing/PO-operations-make-ts.png">
 
 ###Updating Finished Goods
 
@@ -90,11 +92,11 @@
 * This will create a Stock Entry that will deduct all the sub-Items from the WIP Warehouse and add them to the Finished Goods Warehouse.
 * Click on 'Finish'.
 
-<img class="screenshot" alt="Update Finished Goods" src="{{docs_base_url}}/assets/img/manufacturing/PO-FG-update.png">
+<img class="screenshot" alt="Update Finished Goods" src="/docs/assets/img/manufacturing/PO-FG-update.png">
 
 * Mention the quantity of materials to be transfered.
 
-<img class="screenshot" alt="Update Finished Goods Qty" src="{{docs_base_url}}/assets/img/manufacturing/PO-FG-update-qty.png">
+<img class="screenshot" alt="Update Finished Goods Qty" src="/docs/assets/img/manufacturing/PO-FG-update-qty.png">
 
  > Tip : You can also partially complete a Production Order by updating the Finished Goods stock creating a Stock Entry.
  
@@ -109,7 +111,7 @@
   4. Update Finished Goods: This will create a Stock Entry that will deduct all the sub-Items from the WIP Warehouse and add them to the Finished Goods Warehouse.
   5. To check all Time Logs made against the Production Order click on 'Show Time Logs'
 
-<img class="screenshot" alt="PO - stop" src="{{docs_base_url}}/assets/img/manufacturing/PO-stop.png">
+<img class="screenshot" alt="PO - stop" src="/docs/assets/img/manufacturing/PO-stop.png">
 
 * You can also re-start a stopped Production Order.
 
diff --git a/erpnext/docs/user/manual/en/manufacturing/setup/index.md b/erpnext/docs/user/manual/en/manufacturing/setup/index.md
index ec22505..ac54772 100644
--- a/erpnext/docs/user/manual/en/manufacturing/setup/index.md
+++ b/erpnext/docs/user/manual/en/manufacturing/setup/index.md
@@ -1,3 +1,5 @@
+# Setup
+
 Global settings for manufacturing Processes
 
 ### Topics
diff --git a/erpnext/docs/user/manual/en/manufacturing/setup/manufacturing-settings.md b/erpnext/docs/user/manual/en/manufacturing/setup/manufacturing-settings.md
index 1912a55..2c09f52 100644
--- a/erpnext/docs/user/manual/en/manufacturing/setup/manufacturing-settings.md
+++ b/erpnext/docs/user/manual/en/manufacturing/setup/manufacturing-settings.md
@@ -1,10 +1,12 @@
+# Manufacturing Settings
+
 #Manufacturing Settings
 
 Manufacturing Settings can be found at:
 
 `Manufacturing > Setup > Manufacturing Settings`
 
-<img class="screenshot" alt="Manufacturing Settings" src="{{docs_base_url}}/assets/img/manufacturing/manufacturing-settings-1.png">
+<img class="screenshot" alt="Manufacturing Settings" src="/docs/assets/img/manufacturing/manufacturing-settings-1.png">
 
 ####Disable Capacity Planning and Time Tracking
 
@@ -16,15 +18,15 @@
 
 In the Workstation master, actual working hours are defined (say 101m to 6pm). As per the Capacity Planning, Time Logs are created against Workstation, for tracking actual operations hour. It also considers working hours of a Workstation when scheduling job (via Time Log). 
 
-<img class="screenshot" alt="Manufacturing Settings" src="{{docs_base_url}}/assets/img/articles/manufacturing-settings-2.png">
+<img class="screenshot" alt="Manufacturing Settings" src="/docs/assets/img/articles/manufacturing-settings-2.png">
 
 As per the standard validation, if Operation cannot be completed within working hours of Workstation, then user is asked to divide an Operation into multiple and smaller Operations. However, if `Allow Overtime` field is checked, while creating Time Logs for Operation, working hours of Workstation will not be validated. In this case, Time Logs for Operation will be created beyond working hours of Workstation as well.
 
 ####Allow Production on Holidays
 
-Holiday of a company can be recorded in the [Holiday List]({{docs_base_url}}/user/manual/en/human-resources/) master. While scheduling production job on workstation, system doesn't consider a day listed in the Holiday list. If you want production job to be scheduled on holidays as well, `Allow Production on Holidays` field should be checked.
+Holiday of a company can be recorded in the [Holiday List](/docs/user/manual/en/human-resources/) master. While scheduling production job on workstation, system doesn't consider a day listed in the Holiday list. If you want production job to be scheduled on holidays as well, `Allow Production on Holidays` field should be checked.
 
-<img class="screenshot" alt="Manufacturing Settings" src="{{docs_base_url}}/assets/img/articles/manufacturing-settings-3.png">
+<img class="screenshot" alt="Manufacturing Settings" src="/docs/assets/img/articles/manufacturing-settings-3.png">
 
 ####Over Production Allowance Percentage
 
@@ -34,7 +36,7 @@
 
 When creating Manufacture Entry, raw-material items are back-flush based on BOM of production item. If you want raw-material items to be back-flushed based on Material Transfer entry made against that Production Order instead, then you should set Back-flush Raw Materials Based On "Material Transferred for Manufacture".
 
-<img class="screenshot" alt="Manufacturing Settings" src="{{docs_base_url}}/assets/img/articles/manufacturing-settings-4.png">
+<img class="screenshot" alt="Manufacturing Settings" src="/docs/assets/img/articles/manufacturing-settings-4.png">
 
 ####Capacity Planning For (Days)
 
diff --git a/erpnext/docs/user/manual/en/manufacturing/subcontracting.md b/erpnext/docs/user/manual/en/manufacturing/subcontracting.md
index 1589d1b..925afe3 100644
--- a/erpnext/docs/user/manual/en/manufacturing/subcontracting.md
+++ b/erpnext/docs/user/manual/en/manufacturing/subcontracting.md
@@ -1,3 +1,5 @@
+# Subcontracting
+
 Subcontracting is a type of job contract that seeks to outsource certain types
 of work to other companies. It allows work on more than one phase of the
 project to be done at once, often leading to a quicker completion.
@@ -15,7 +17,7 @@
   2. Create a Warehouse for your Supplier so that you can keep track of Items supplied. (you may supply a months worth of Items in one go).
   3. For the processed Item, in the Item master, set “Is Sub Contracted Item” to “Yes”.
 
-<img class="screenshot" alt="Sub-Contracting" src="{{docs_base_url}}/assets/img/manufacturing/subcontract.png">
+<img class="screenshot" alt="Sub-Contracting" src="/docs/assets/img/manufacturing/subcontract.png">
   
 
 __Step 1:__ Make a Bill of Materials for the processed Item, with the unprocessed
@@ -23,20 +25,20 @@
 pen will be named under Bill of Materials(BOM), whereas, the refill, knob, and
 other items which go into the making of pen, will be categorized as sub-items.
 
-<img class="screenshot" alt="Sub-Contracting" src="{{docs_base_url}}/assets/img/manufacturing/subcontract2.png">
+<img class="screenshot" alt="Sub-Contracting" src="/docs/assets/img/manufacturing/subcontract2.png">
 
 __Step 2:__ Make a Purchase Order for the processed Item. When you “Save”, in the “Raw Materials Supplied”, all your un-processed Items will be updated based on your Bill of Materials.
 
-<img class="screenshot" alt="Sub-Contracting" src="{{docs_base_url}}/assets/img/manufacturing/subcontract3.png">
+<img class="screenshot" alt="Sub-Contracting" src="/docs/assets/img/manufacturing/subcontract3.png">
 
 __Step 3:__ Make a Stock Entry to deliver the raw material Items to your Supplier.
 
-<img class="screenshot" alt="Sub-Contracting" src="{{docs_base_url}}/assets/img/manufacturing/subcontract4.png">
+<img class="screenshot" alt="Sub-Contracting" src="/docs/assets/img/manufacturing/subcontract4.png">
 
 __Step 4:__ Receive the Items from your Supplier via Purchase Receipt. Make sure to check the “Consumed Quantity” in the “Raw Materials” table so that the
 correct stock is maintained at the Supplier’s end.
 
-<img class="screenshot" alt="Sub-Contracting" src="{{docs_base_url}}/assets/img/manufacturing/subcontract5.png">
+<img class="screenshot" alt="Sub-Contracting" src="/docs/assets/img/manufacturing/subcontract5.png">
 
 > Note 1: Make sure that the “Rate” of processed Item is the processing rate
 (excluding the raw material rate).
diff --git a/erpnext/docs/user/manual/en/manufacturing/tools/bom-replace-tool.md b/erpnext/docs/user/manual/en/manufacturing/tools/bom-replace-tool.md
index 794d982..98d1f3b 100644
--- a/erpnext/docs/user/manual/en/manufacturing/tools/bom-replace-tool.md
+++ b/erpnext/docs/user/manual/en/manufacturing/tools/bom-replace-tool.md
@@ -33,7 +33,7 @@
 
 To update new BOM updated in the BOM of finished item, where CPU is selected as raw-material, you can use BOM Replace tool.
 
-<img class="screenshot" alt="BOM replace Tool" src="{{docs_base_url}}/assets/img/manufacturing/bom-replace-tool.png">
+<img class="screenshot" alt="BOM replace Tool" src="/docs/assets/img/manufacturing/bom-replace-tool.png">
 
 In this tool, you should select Current BOM, and New BOM. On clicking Replace button, current BOM of CPU will be replaced with New BOM in the BOM of finished Item (Computer).
 
diff --git a/erpnext/docs/user/manual/en/manufacturing/tools/index.md b/erpnext/docs/user/manual/en/manufacturing/tools/index.md
index 259b5eb..25a46a7 100644
--- a/erpnext/docs/user/manual/en/manufacturing/tools/index.md
+++ b/erpnext/docs/user/manual/en/manufacturing/tools/index.md
@@ -1,3 +1,5 @@
+# Tools
+
 
 ### Topics
 
diff --git a/erpnext/docs/user/manual/en/manufacturing/tools/production-planning-tool.md b/erpnext/docs/user/manual/en/manufacturing/tools/production-planning-tool.md
index 4bdc487..e9ba2a5 100644
--- a/erpnext/docs/user/manual/en/manufacturing/tools/production-planning-tool.md
+++ b/erpnext/docs/user/manual/en/manufacturing/tools/production-planning-tool.md
@@ -1,3 +1,5 @@
+# Production Planning Tool
+
 Production Planning Tool helps you plan production and purchase of Items for a
 period (usually a week or a month).
 
@@ -11,7 +13,7 @@
 
 > Manufacturing > Tools > Production Planning Tool
 
-<img class="screenshot" alt="Production Planing Tool" src="{{docs_base_url}}/assets/img/manufacturing/ppt.png">
+<img class="screenshot" alt="Production Planing Tool" src="/docs/assets/img/manufacturing/ppt.png">
 
 #### Step 1: Specify source to get Production Items
 
@@ -25,7 +27,7 @@
 * Use filters to get the Sales Order / Material Request
 * Click on Get Sales Order / Get Material Requests to generate a list.
 
-<img class="screenshot" alt="Production Planing Tool" src="{{docs_base_url}}/assets/img/manufacturing/ppt-get-sales-orders.png">
+<img class="screenshot" alt="Production Planing Tool" src="/docs/assets/img/manufacturing/ppt-get-sales-orders.png">
 
 
 
@@ -34,11 +36,11 @@
 * Get the items for the Sales Order / Material request list
 * You can add/remove or change quantity of these Items.
 
-<img class="screenshot" alt="Production Planing Tool" src="{{docs_base_url}}/assets/img/manufacturing/ppt-get-item.png">
+<img class="screenshot" alt="Production Planing Tool" src="/docs/assets/img/manufacturing/ppt-get-item.png">
 
 #### Step 4: Create Production Orders
 
-<img class="screenshot" alt="Production Planing Tool" src="{{docs_base_url}}/assets/img/manufacturing/ppt-create-production-order.png">
+<img class="screenshot" alt="Production Planing Tool" src="/docs/assets/img/manufacturing/ppt-create-production-order.png">
 
 
 
@@ -46,7 +48,7 @@
 
 Create Material Request for Items with projected shortfall.
 
-<img class="screenshot" alt="Production Planing Tool" src="{{docs_base_url}}/assets/img/manufacturing/ppt-create-material-request.png">
+<img class="screenshot" alt="Production Planing Tool" src="/docs/assets/img/manufacturing/ppt-create-material-request.png">
 
 
 
diff --git a/erpnext/docs/user/manual/en/manufacturing/workstation.md b/erpnext/docs/user/manual/en/manufacturing/workstation.md
index 0ff2a6b..5670893 100644
--- a/erpnext/docs/user/manual/en/manufacturing/workstation.md
+++ b/erpnext/docs/user/manual/en/manufacturing/workstation.md
@@ -1,3 +1,5 @@
+# Workstation
+
 ### Workstation
 
 Workstation stores information regarding the place where the workstation operations is carried out.
@@ -8,12 +10,12 @@
 
 > Manufacturing > Documents > Workstation > New
 
-<img class="screenshot" alt="Workstation" src="{{docs_base_url}}/assets/img/manufacturing/workstation.png">
+<img class="screenshot" alt="Workstation" src="/docs/assets/img/manufacturing/workstation.png">
 
 In workstation specify the workstation working hours under the 'working hour' section. 
 You can also specify the working hours based on shifts.
 While scheduling Production Order, system will check for the availability of the workstation based on the working hours specified.	
 
-> Note : You can enable overtime for your workstation in [Manufacturing Settings]({{docs_base_url}}/user/manual/en/manufacturing/setup/manufacturing-settings.html)
+> Note : You can enable overtime for your workstation in [Manufacturing Settings](/docs/user/manual/en/manufacturing/setup/manufacturing-settings.html)
 
 {next}
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/projects/activity-cost.md b/erpnext/docs/user/manual/en/projects/activity-cost.md
index d4e2106..88d4f0a 100644
--- a/erpnext/docs/user/manual/en/projects/activity-cost.md
+++ b/erpnext/docs/user/manual/en/projects/activity-cost.md
@@ -1,4 +1,6 @@
+# Activity Cost
+
 Activity Cost records the per-hour billing rate and costing rate of an Employee against an Activity Type.
 This rate is pulled by the system while making Time Logs. It is used for Project Costing.
 
-<img class="screenshot" alt="Activity Cost" src="{{docs_base_url}}/assets/img/project/activity_cost.png">
+<img class="screenshot" alt="Activity Cost" src="/docs/assets/img/project/activity_cost.png">
diff --git a/erpnext/docs/user/manual/en/projects/activity-type.md b/erpnext/docs/user/manual/en/projects/activity-type.md
index 7f37f51..4e968a6 100644
--- a/erpnext/docs/user/manual/en/projects/activity-type.md
+++ b/erpnext/docs/user/manual/en/projects/activity-type.md
@@ -1,6 +1,8 @@
+# Activity Type
+
 Activity Type makes a list of the different types of activities against which a Time Log can be made.
 
-<img class="screenshot" alt="Activity Type" src="{{docs_base_url}}/assets/img/project/activity_type.png">
+<img class="screenshot" alt="Activity Type" src="/docs/assets/img/project/activity_type.png">
 
 By default the following Activity Types are created.
 
diff --git a/erpnext/docs/user/manual/en/projects/articles/index.md b/erpnext/docs/user/manual/en/projects/articles/index.md
index 0dff60b..fb11735 100644
--- a/erpnext/docs/user/manual/en/projects/articles/index.md
+++ b/erpnext/docs/user/manual/en/projects/articles/index.md
@@ -1 +1,3 @@
+# Articles
+
 {index}
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/projects/articles/project-costing.md b/erpnext/docs/user/manual/en/projects/articles/project-costing.md
index e5c5940..dad849e 100644
--- a/erpnext/docs/user/manual/en/projects/articles/project-costing.md
+++ b/erpnext/docs/user/manual/en/projects/articles/project-costing.md
@@ -12,17 +12,17 @@
 
 Activity Cost is a master where you can track billing and costing rate for each Employee, and for each Activity Type.
 
-![Activity Cost]({{docs_base_url}}/assets/img/articles/Screen Shot 2015-06-11 at 4.57.01 pm.png)
+![Activity Cost](/docs/assets/img/articles/Screen Shot 2015-06-11 at 4.57.01 pm.png)
 
 #### Time Log
 
 Based on Actual Time spent on the Project-Task, Employee will create a time log.
 
-![Time Log]({{docs_base_url}}/assets/img/articles/Screen Shot 2015-06-11 at 4.59.49 pm.png)
+![Time Log](/docs/assets/img/articles/Screen Shot 2015-06-11 at 4.59.49 pm.png)
 
 On selection of Activity Type in the Time Log, Billing and Costing Rate will fetched for that Employee from respective Activity Cost master. 
 
-![Time Log Costing]({{docs_base_url}}/assets/img/articles/Screen Shot 2015-06-11 at 5.00.06 pm.png)
+![Time Log Costing](/docs/assets/img/articles/Screen Shot 2015-06-11 at 5.00.06 pm.png)
 
 Multiplying these rates with total no. of Hours in the Time Log gives Costing Amount and Billing Amount for the specific Time Log.
 
@@ -30,10 +30,10 @@
 
 Based on total Time Logs created for a specific Task, its costing will be updated in the respective Task master. 
 
-![Costing in Task]({{docs_base_url}}/assets/img/articles/Screen Shot 2015-06-11 at 5.02.54 pm.png)
+![Costing in Task](/docs/assets/img/articles/Screen Shot 2015-06-11 at 5.02.54 pm.png)
 
 Same way, Project master will have cost updated based on Time Log created against that Projects, and tasks associated with that Project.
 
-![Costing in Project]({{docs_base_url}}/assets/img/articles/Screen Shot 2015-06-11 at 5.02.29 pm.png)
+![Costing in Project](/docs/assets/img/articles/Screen Shot 2015-06-11 at 5.02.29 pm.png)
 
 <!-- markdown -->
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/projects/index.md b/erpnext/docs/user/manual/en/projects/index.md
index 220c67f..95af437 100644
--- a/erpnext/docs/user/manual/en/projects/index.md
+++ b/erpnext/docs/user/manual/en/projects/index.md
@@ -1,3 +1,5 @@
+# Projects
+
 ERPNext helps you manage your Projects by breaking them into Tasks and
 allocating them to different people.
 
diff --git a/erpnext/docs/user/manual/en/projects/project.md b/erpnext/docs/user/manual/en/projects/project.md
index 7522396..d835295 100644
--- a/erpnext/docs/user/manual/en/projects/project.md
+++ b/erpnext/docs/user/manual/en/projects/project.md
@@ -1,6 +1,8 @@
+# Project
+
 Project management in ERPNext is Task driven. You can create Project and assign multiple Tasks against it.
 
-<img class="screenshot" alt="Project" src="{{docs_base_url}}/assets/img/project/project.png">
+<img class="screenshot" alt="Project" src="/docs/assets/img/project/project.png">
 
 You can also track % Completion of a Project using different methods.
 
@@ -8,80 +10,80 @@
   2. Task Progress
   3. Task Weight
 
-<img class="screenshot" alt="Project" src="{{docs_base_url}}/assets/img/project/project-percent-complete.png">
+<img class="screenshot" alt="Project" src="/docs/assets/img/project/project-percent-complete.png">
 
 Some examples of how the % Completion is calculated based on Tasks.
 
-<img class="screenshot" alt="Project" src="{{docs_base_url}}/assets/img/project/percent-complete-calc.png">
+<img class="screenshot" alt="Project" src="/docs/assets/img/project/percent-complete-calc.png">
 
-<img class="screenshot" alt="Project" src="{{docs_base_url}}/assets/img/project/percent-complete-formula.png">
+<img class="screenshot" alt="Project" src="/docs/assets/img/project/percent-complete-formula.png">
 
 ### Managing tasks
 Project can be divided into multiple Tasks.
-Task can be created via Project document itself or can be created via  [Task]({{docs_base_url}}/user/manual/en/projects/tasks.html)
+Task can be created via Project document itself or can be created via  [Task](/docs/user/manual/en/projects/tasks.html)
 
-<img class="screenshot" alt="Project" src="{{docs_base_url}}/assets/img/project/project_task.png">
+<img class="screenshot" alt="Project" src="/docs/assets/img/project/project_task.png">
 
 * To view Task made against a Project click on 'Tasks'
 
-<img class="screenshot" alt="Project - View Task" src="{{docs_base_url}}/assets/img/project/project_view_task.png">
+<img class="screenshot" alt="Project - View Task" src="/docs/assets/img/project/project_view_task.png">
 
-<img class="screenshot" alt="Project - Task List" src="{{docs_base_url}}/assets/img/project/project_task_list.png">
+<img class="screenshot" alt="Project - Task List" src="/docs/assets/img/project/project_task_list.png">
 
 * You can also view the Tasks from the Project document itself
 
-<img class="screenshot" alt="Project - Task Grid" src="{{docs_base_url}}/assets/img/project/project_task_grid.png">
+<img class="screenshot" alt="Project - Task Grid" src="/docs/assets/img/project/project_task_grid.png">
 
 * To add Weights to Tasks you can follow the below steps
 
-<img class="screenshot" alt="Project - Task Grid" src="{{docs_base_url}}/assets/img/project/tasks.png">
-<img class="screenshot" alt="Project - Task Grid" src="{{docs_base_url}}/assets/img/project/task-weights.png">
+<img class="screenshot" alt="Project - Task Grid" src="/docs/assets/img/project/tasks.png">
+<img class="screenshot" alt="Project - Task Grid" src="/docs/assets/img/project/task-weights.png">
 
 
 ### Managing time
 
-ERPNext uses [Time Log]({{docs_base_url}}/user/manual/en/projects/time-log.html) to track the progress of a Project.
+ERPNext uses [Time Log](/docs/user/manual/en/projects/time-log.html) to track the progress of a Project.
 You can create Time Logs against each task.
 The Actual Start and End Time along with the costing shall then be updated based on the Time Log.
 
 * To view Time Log made against a Project click on 'Time Logs'
 
-<img class="screenshot" alt="Project - View Time Log" src="{{docs_base_url}}/assets/img/project/project_view_time_log.png">
+<img class="screenshot" alt="Project - View Time Log" src="/docs/assets/img/project/project_view_time_log.png">
 
-<img class="screenshot" alt="Project - Time Log List" src="{{docs_base_url}}/assets/img/project/project_time_log_list.png">
+<img class="screenshot" alt="Project - Time Log List" src="/docs/assets/img/project/project_time_log_list.png">
 
 * You can also create a Time Log directlly and link it to the Project.
 
-<img class="screenshot" alt="Project - Link Time Log" src="{{docs_base_url}}/assets/img/project/project_time_log_link.png">
+<img class="screenshot" alt="Project - Link Time Log" src="/docs/assets/img/project/project_time_log_link.png">
 
 ### Managing expenses
 
-You can book [Expense Claim]({{docs_base_url}}/user/manual/en/human-resources/expense-claim.html) against a project task.
+You can book [Expense Claim](/docs/user/manual/en/human-resources/expense-claim.html) against a project task.
 The system shall update the total amount from expense claims in the project costing section.
 
 * To view Expense Claims made against a Project click on 'Expense Claims'
 
-<img class="screenshot" alt="Project - View Expense Claim" src="{{docs_base_url}}/assets/img/project/project_view_expense_claim.png">
+<img class="screenshot" alt="Project - View Expense Claim" src="/docs/assets/img/project/project_view_expense_claim.png">
 
 * You can also create a Expense Claims directlly and link it to the Project.
 
-<img class="screenshot" alt="Project - Link Expense Claim" src="{{docs_base_url}}/assets/img/project/project_expense_claim_link.png">
+<img class="screenshot" alt="Project - Link Expense Claim" src="/docs/assets/img/project/project_expense_claim_link.png">
 
 * Total amount of Expense Claims booked against a project is shown under 'Total Expense Claim' in the Project Costing Section
 
-<img class="screenshot" alt="Project - Total Expense Claim" src="{{docs_base_url}}/assets/img/project/project_total_expense_claim.png">
+<img class="screenshot" alt="Project - Total Expense Claim" src="/docs/assets/img/project/project_total_expense_claim.png">
 
 ### Cost Center
 
-You can make a [Cost Center]({{docs_base_url}}/user/manual/en/accounts/setup/cost-center.html) against a Project or use an existing cost center to track all expenses made against that project.
+You can make a [Cost Center](/docs/user/manual/en/accounts/setup/cost-center.html) against a Project or use an existing cost center to track all expenses made against that project.
 
-<img class="screenshot" alt="Project - Cost Center" src="{{docs_base_url}}/assets/img/project/project_cost_center.png">
+<img class="screenshot" alt="Project - Cost Center" src="/docs/assets/img/project/project_cost_center.png">
 
 ###Project Costing
 
 The Project Costing section helps you track the time and expenses incurred against the project.
 
-<img class="screenshot" alt="Project - Costing" src="{{docs_base_url}}/assets/img/project/project_costing.png">
+<img class="screenshot" alt="Project - Costing" src="/docs/assets/img/project/project_costing.png">
 
 * The Costing Section is updated based on Time Logs made.
 
@@ -89,9 +91,9 @@
 
 ###Billing
 
-You can make/link a [Sales Order]({{docs_base_url}}/user/manual/en/selling/sales-order.html) against a project. Once linked you can use the standard sales module to bill your customer against the Project.
+You can make/link a [Sales Order](/docs/user/manual/en/selling/sales-order.html) against a project. Once linked you can use the standard sales module to bill your customer against the Project.
 
-<img class="screenshot" alt="Project - Sales Order" src="{{docs_base_url}}/assets/img/project/project_sales_order.png">
+<img class="screenshot" alt="Project - Sales Order" src="/docs/assets/img/project/project_sales_order.png">
 
 ###Gantt Chart
 
@@ -100,8 +102,8 @@
 
 * To view gantt chart against a project, go to that project and click on 'Gantt Chart'
 
-<img class="screenshot" alt="Project - View Gantt Chart" src="{{docs_base_url}}/assets/img/project/project_view_gantt_chart.png">
+<img class="screenshot" alt="Project - View Gantt Chart" src="/docs/assets/img/project/project_view_gantt_chart.png">
 
-<img class="screenshot" alt="Project - Gantt Chart" src="{{docs_base_url}}/assets/img/project/project_gantt_chart.png">
+<img class="screenshot" alt="Project - Gantt Chart" src="/docs/assets/img/project/project_gantt_chart.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/en/projects/tasks.md b/erpnext/docs/user/manual/en/projects/tasks.md
index ef59748..9447a2e 100644
--- a/erpnext/docs/user/manual/en/projects/tasks.md
+++ b/erpnext/docs/user/manual/en/projects/tasks.md
@@ -1,13 +1,15 @@
+# Tasks
+
 Project is divided into Tasks. 
 In ERPNext, you can also create a Task independently.
 
-<img class="screenshot" alt="Task" src="{{docs_base_url}}/assets/img/project/task.png">
+<img class="screenshot" alt="Task" src="/docs/assets/img/project/task.png">
 
 ### Status of the Task
 
 A Task can have one of the following statuses - Open, Working, Pending Review, Closed, or Cancelled.
 
-<img class="screenshot" alt="Task - Status" src="{{docs_base_url}}/assets/img/project/task_status.png">
+<img class="screenshot" alt="Task - Status" src="/docs/assets/img/project/task_status.png">
 
 * By default each new Task created has the status set to 'Open'.
 
@@ -17,7 +19,7 @@
 
 You can specify a list of dependent tasks under the 'Depends On' section.
 
-<img class="screenshot" alt="Depends On" src="{{docs_base_url}}/assets/img/project/task_depends_on.png">
+<img class="screenshot" alt="Depends On" src="/docs/assets/img/project/task_depends_on.png">
 
 * You cannot close the parent task until all dependent tasks are closed.
 
@@ -25,35 +27,35 @@
 
 ### Managing Time
 
-ERPNext uses [Time Log]({{docs_base_url}}/user/manual/en/projects/time-log.html) to track the progress of a Task.
+ERPNext uses [Time Log](/docs/user/manual/en/projects/time-log.html) to track the progress of a Task.
 You can create multiple Time Logs against each task.
 The Actual Start and End Time along with the costing is updated based on the Time Log.
 
 * To view Time Log made against a Task click on 'Time Logs'
 
-<img class="screenshot" alt="Task - View Time Log" src="{{docs_base_url}}/assets/img/project/task_view_time_log.png">
+<img class="screenshot" alt="Task - View Time Log" src="/docs/assets/img/project/task_view_time_log.png">
 
-<img class="screenshot" alt="Task - Time Log List" src="{{docs_base_url}}/assets/img/project/task_time_log_list.png">
+<img class="screenshot" alt="Task - Time Log List" src="/docs/assets/img/project/task_time_log_list.png">
 
 * You can also create a Time Log directly and link it to the Task.
 
-<img class="screenshot" alt="Task - Link Time Log" src="{{docs_base_url}}/assets/img/project/task_time_log_link.png">
+<img class="screenshot" alt="Task - Link Time Log" src="/docs/assets/img/project/task_time_log_link.png">
 
 ### Managing Expenses
 
-You can book [Expense Claim]({{docs_base_url}}/user/manual/en/human-resources/expense-claim.html) against a task.
+You can book [Expense Claim](/docs/user/manual/en/human-resources/expense-claim.html) against a task.
 The system shall update the total amount from expense claims in the costing section.
 
 * To view Expense Claims made against a Task click on 'Expense Claims'
 
-<img class="screenshot" alt="Task - View Expense Claim" src="{{docs_base_url}}/assets/img/project/task_view_expense_claim.png">
+<img class="screenshot" alt="Task - View Expense Claim" src="/docs/assets/img/project/task_view_expense_claim.png">
 
 * You can also create a Expense Claims directly and link it to the Task.
 
-<img class="screenshot" alt="Task - Link Expense Claim" src="{{docs_base_url}}/assets/img/project/task_expense_claim_link.png">
+<img class="screenshot" alt="Task - Link Expense Claim" src="/docs/assets/img/project/task_expense_claim_link.png">
 
 * Total amount of Expense Claims booked against a task is shown under 'Total Expense Claim' in the Task Costing Section
 
-<img class="screenshot" alt="Task - Total Expense Claim" src="{{docs_base_url}}/assets/img/project/task_total_expense_claim.png">
+<img class="screenshot" alt="Task - Total Expense Claim" src="/docs/assets/img/project/task_total_expense_claim.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/en/projects/time-log-batch.md b/erpnext/docs/user/manual/en/projects/time-log-batch.md
index f4f76dc..b307f6a 100644
--- a/erpnext/docs/user/manual/en/projects/time-log-batch.md
+++ b/erpnext/docs/user/manual/en/projects/time-log-batch.md
@@ -1,3 +1,5 @@
+# Time Log Batch
+
 You can bill Time Logs by batching them together. This gives you the flexiblity to manage your customer billing in the way you want. To create a new Time Sheet, go to 
 
 > Projects > Time Sheet > New Time Sheet
@@ -6,17 +8,17 @@
 
 Just open your Time Log list and check the Items to you want to add to the Time Log. Then click on "Make Time Sheet" button and these Time Logs will be selected.
 
-<img class="screenshot" alt="Time Log - Drag Calender" src="{{docs_base_url}}/assets/img/project/time_sheet.gif">
+<img class="screenshot" alt="Time Log - Drag Calender" src="/docs/assets/img/project/time_sheet.gif">
 
 ###Making Sales Invoice
 
 * After submitting the Time Sheet, "Make Invoice" button shall appear.
 
-<img class="screenshot" alt="Time Log - Drag Calender" src="{{docs_base_url}}/assets/img/project/time_sheet_make_invoice.png">
+<img class="screenshot" alt="Time Log - Drag Calender" src="/docs/assets/img/project/time_sheet_make_invoice.png">
 
 * Click on that button to raise a Sales Invoice against the Time Sheet.
 
-<img class="screenshot" alt="Time Log - Drag Calender" src="{{docs_base_url}}/assets/img/project/time_sheet_sales_invoice.png">
+<img class="screenshot" alt="Time Log - Drag Calender" src="/docs/assets/img/project/time_sheet_sales_invoice.png">
 
 * When you "Submit" the Sales Invoice, the Sales Invoice number will get updated in the Time Logs and Time Sheet and their status will change to "Billed".
 
diff --git a/erpnext/docs/user/manual/en/projects/timesheet/index.md b/erpnext/docs/user/manual/en/projects/timesheet/index.md
index 7a80ab7..8fd30c4 100644
--- a/erpnext/docs/user/manual/en/projects/timesheet/index.md
+++ b/erpnext/docs/user/manual/en/projects/timesheet/index.md
@@ -1,3 +1,5 @@
+# Timesheet
+
 Timesheet can be used for track actual hours worked. It can be used for multiple purposes like:
 
 * Billable work to Customers
diff --git a/erpnext/docs/user/manual/en/projects/timesheet/salary-slip-from-timesheet.md b/erpnext/docs/user/manual/en/projects/timesheet/salary-slip-from-timesheet.md
index 32faf03..5069247 100644
--- a/erpnext/docs/user/manual/en/projects/timesheet/salary-slip-from-timesheet.md
+++ b/erpnext/docs/user/manual/en/projects/timesheet/salary-slip-from-timesheet.md
@@ -1,3 +1,5 @@
+# Salary Slip From Timesheet
+
 #Salary Slip from Timesheet
 
 If salary / wages for your employees are calculated based on number of hours worked, you can use Timesheet to track actual hours worked, and for creating Salary Slip.
@@ -6,7 +8,7 @@
 
 To track actual hours employee has worked for, create Timesheet for each Employee. We suggest you to create Timesheet based on a payment period. For example, if you paying employee on a weekly bases, create one Timesheet for an Employee for one week. However, you can create multiple Timesheets, and create one Salary Slip for the multiple Timesheets.
 
-<img class="screenshot" alt="Sales Invoice" src="{{docs_base_url}}/assets/img/project/timesheet/timesheet-salary-slip-1.png">
+<img class="screenshot" alt="Sales Invoice" src="/docs/assets/img/project/timesheet/timesheet-salary-slip-1.png">
 
 ####Salary Structure for the Employee
 
@@ -16,17 +18,17 @@
 
 Amount directly for other Salary Components (eg: House Rent Allowance, Phone Allowance) can be define directly. When creating Salary Slip, Amount for these Salary Component will be fetched as it is.
 
-<img class="screenshot" alt="Sales Invoice" src="{{docs_base_url}}/assets/img/project/timesheet/timesheet-salary-slip-2.png">
+<img class="screenshot" alt="Sales Invoice" src="/docs/assets/img/project/timesheet/timesheet-salary-slip-2.png">
 
 ####Create Salary Slip from Timesheet
 
 To create Salary Slip against Timesheet, open Timesheet and click on "Salary Slip".
 
-<img class="screenshot" alt="Sales Invoice" src="{{docs_base_url}}/assets/img/project/timesheet/timesheet-salary-slip-3.png">
+<img class="screenshot" alt="Sales Invoice" src="/docs/assets/img/project/timesheet/timesheet-salary-slip-3.png">
 
 In the Salary Slip, Timesheet ID will be updated. You can select more Timesheet to be paid via this Salary Slip. Based on the Timesheets selected, Total Working Hours will be calculated.
 
-<img class="screenshot" alt="Sales Invoice" src="{{docs_base_url}}/assets/img/project/timesheet/timesheet-salary-slip-4.gif">
+<img class="screenshot" alt="Sales Invoice" src="/docs/assets/img/project/timesheet/timesheet-salary-slip-4.gif">
 
 Hour Rate will be fetched from the Salary Structure of an Employee. Based on Total Working Hours and Hour Rate, Amount will be calculated for the Salary Component is to be calculated based on actual hours worked.
 
@@ -34,7 +36,7 @@
 
 On Submission of Salary Slip, Timesheet's status will be updated to "Payslip".
 
-<img class="screenshot" alt="Sales Invoice" src="{{docs_base_url}}/assets/img/project/timesheet/timesheet-salary-slip-5.png">
+<img class="screenshot" alt="Sales Invoice" src="/docs/assets/img/project/timesheet/timesheet-salary-slip-5.png">
 
 <div class=well> 
 
diff --git a/erpnext/docs/user/manual/en/projects/timesheet/sales-invoice-from-timesheet.md b/erpnext/docs/user/manual/en/projects/timesheet/sales-invoice-from-timesheet.md
index 383a881..0d03bd3 100644
--- a/erpnext/docs/user/manual/en/projects/timesheet/sales-invoice-from-timesheet.md
+++ b/erpnext/docs/user/manual/en/projects/timesheet/sales-invoice-from-timesheet.md
@@ -1,3 +1,5 @@
+# Sales Invoice From Timesheet
+
 #Sales Invoice from Timesheet
 
 Customer can be invoiced based on total no. of hours your Employees has worked for that Customer. Timesheet can be used to track actual no. of hours Employee has worked. For example, in the IT services domain, clients are billed based on man-hour bases, where per hour billing cost is pre-determined.s
@@ -14,15 +16,15 @@
 
 In the Employee field, only ones having ative Salary Structure will be selectable. Further in the Salary Structure , is created for the E on the actual hours worked, Employee can create Timesheet. To be able to create Sales Invoice against this Timesheet, ensure `Billable` field is checked.
 
-<img class="screenshot" alt="Sales Invoice" src="{{docs_base_url}}/assets/img/project/timesheet/timesheet-salary-structure.png">
+<img class="screenshot" alt="Sales Invoice" src="/docs/assets/img/project/timesheet/timesheet-salary-structure.png">
 
 #### Step 3:Activity Type
 
 Employee will have to select an Activity Type (like planning, site visit, repairing etc. ). Costing and Billing Rate for each Activity can be different for each Employee. These cost can be tracked in the Activity Cost. On selection of Activity Type, Activity Cost is fetched from that Employee. Based on total Activity Cost and total no. of hours, Total Billing Amount (to the Customer) is calculated.
 
-To learn more on how to setup Activity Type and Activity Cost, click [here]({{docs_base_url}}/user/manual/en/projects/articles/project-costing).
+To learn more on how to setup Activity Type and Activity Cost, click [here](/docs/user/manual/en/projects/articles/project-costing).
 
-<img class="screenshot" alt="Sales Invoice" src="{{docs_base_url}}/assets/img/project/timesheet/timesheet-cost.png">
+<img class="screenshot" alt="Sales Invoice" src="/docs/assets/img/project/timesheet/timesheet-cost.png">
 
 #### Step 4: Enter Actual Time
 
@@ -30,7 +32,7 @@
 
 To be able to create Sales Invoice from the Time Sheet, ensure 'Is Billable' field is checked.
 
-<img class="screenshot" alt="Sales Invoice" src="{{docs_base_url}}/assets/img/project//timesheet/timesheet-billable.png">
+<img class="screenshot" alt="Sales Invoice" src="/docs/assets/img/project//timesheet/timesheet-billable.png">
 
 Based on the actual hours worked and Activity Cost of an Employee, Total Billing Amount will be calculated for Timesheet.
 
@@ -38,7 +40,7 @@
 
 After submitting Timesheet, you will find buttons to create Sales Invoice and Salary Slip against this Timesheet.
 
-<img class="screenshot" alt="Sales Invoice" src="{{docs_base_url}}/assets//img/project/timesheet/timesheet-total.png">
+<img class="screenshot" alt="Sales Invoice" src="/docs/assets//img/project/timesheet/timesheet-total.png">
 
 ###Create Sales Invoice from Timesheet
 
@@ -46,13 +48,13 @@
 
 In the Timesheet, if "Is Billable" is checked, you will find option to create Sales Invoice against it.
 
-<img class="screenshot" alt="Sales Invoice" src="{{docs_base_url}}/assets/img/project/timesheet/timesheet-invoice-1.png">
+<img class="screenshot" alt="Sales Invoice" src="/docs/assets/img/project/timesheet/timesheet-invoice-1.png">
 
 ####Sales Invoice
 
 Sales Invoice has dedicated table for the Timesheet table where Timesheet details will be updated. You can select more Timesheets in this table.
 
-<img class="screenshot" alt="Sales Invoice" src="{{docs_base_url}}/assets/img/project/timesheet/timesheet-to-invoice.gif">
+<img class="screenshot" alt="Sales Invoice" src="/docs/assets/img/project/timesheet/timesheet-to-invoice.gif">
 
 
 ####Select Customer and Item
@@ -65,4 +67,4 @@
 
 On submitting Sales Invoice, status of the Timesheets linked to the Sales Invoice will be updated as Billed.
 
-<img class="screenshot" alt="Sales Invoice" src="{{docs_base_url}}/assets/img/project/timesheet/timesheet-billed.png">
+<img class="screenshot" alt="Sales Invoice" src="/docs/assets/img/project/timesheet/timesheet-billed.png">
diff --git a/erpnext/docs/user/manual/en/projects/timesheet/timesheet-against-production-order.md b/erpnext/docs/user/manual/en/projects/timesheet/timesheet-against-production-order.md
index 6e108b3..da7bf2f 100644
--- a/erpnext/docs/user/manual/en/projects/timesheet/timesheet-against-production-order.md
+++ b/erpnext/docs/user/manual/en/projects/timesheet/timesheet-against-production-order.md
@@ -1,10 +1,12 @@
+# Timesheet Against Production Order
+
 #Timesheet based on Production Order
 
 Creating Timesheet for Production Order helps in capacity planning for the Workstations. Also it helps in tracking actual time consumed the Workstation for completing specific operation.
 
 When a Production Order is submitted, based on the Planned Start Date and the availability of the Workstations, system schedules all operations by creating Timesheet.
 
-<img class="screenshot" alt="Sales Invoice" src="{{docs_base_url}}/assets/img/project/timesheet/timesheet-capacity-planning.png">
+<img class="screenshot" alt="Sales Invoice" src="/docs/assets/img/project/timesheet/timesheet-capacity-planning.png">
 
 Let's assume we are manufacturing a mobile phone. As per the Bill of Material, time required for the assembly of components could be one hour. However the actual time taken for it's completion could be more than planned. The actual time tracking provides actual operation cost, hence helps in determining accurate valuation of the manufacturing item.
 
@@ -12,28 +14,28 @@
 
 As per the Bill of Materials of manufacturing item, following are the Operations and Workstation through which raw-material items are processed.
 
-<img class="screenshot" alt="Sales Invoice" src="{{docs_base_url}}/assets/img/project/timesheet/timesheet-production-order-1.png">
+<img class="screenshot" alt="Sales Invoice" src="/docs/assets/img/project/timesheet/timesheet-production-order-1.png">
 
 On submission on Production Order, Timesheet will be created automatically.
 
-<img class="screenshot" alt="Sales Invoice" src="{{docs_base_url}}/assets/img/project/timesheet/timesheet-production-order-2.png">
+<img class="screenshot" alt="Sales Invoice" src="/docs/assets/img/project/timesheet/timesheet-production-order-2.png">
 
 ####Time Sheet created from Production Order
 
 In the Timesheet, unique row will be added for each Operation - Workstation. This allows operator/supervisor at the workstation to enter actual From Time and To Time taken for each Operation.
 
-<img class="screenshot" alt="Sales Invoice" src="{{docs_base_url}}/assets/img/project/timesheet/timesheet-production-order-3.gif">
+<img class="screenshot" alt="Sales Invoice" src="/docs/assets/img/project/timesheet/timesheet-production-order-3.gif">
 
 After enter From Time and To Time for all the Operations, Total Hours will be calculated.
 
-<img class="screenshot" alt="Sales Invoice" src="{{docs_base_url}}/assets/img/project/timesheet/timesheet-production-order-6.png">
+<img class="screenshot" alt="Sales Invoice" src="/docs/assets/img/project/timesheet/timesheet-production-order-6.png">
 
 With updating actual time, you can also enter "Completed Qty". If all the items are not processed in the same Timesheet, you can create another Timesheet from the Production Order.
 
-<img class="screenshot" alt="Sales Invoice" src="{{docs_base_url}}/assets/img/project/timesheet/timesheet-production-order-4.png">
+<img class="screenshot" alt="Sales Invoice" src="/docs/assets/img/project/timesheet/timesheet-production-order-4.png">
 
 ####Save and Submit Timesheet
 
 On the submission of Timesheet, Total Hours is calculated. Also, in the Production Order, for each Operation, actual Start and End Time is updated.
 
-<img class="screenshot" alt="Sales Invoice" src="{{docs_base_url}}/assets/img/project/timesheet/timesheet-production-order-5.png">
+<img class="screenshot" alt="Sales Invoice" src="/docs/assets/img/project/timesheet/timesheet-production-order-5.png">
diff --git a/erpnext/docs/user/manual/en/projects/timesheet/timesheet-against-project.md b/erpnext/docs/user/manual/en/projects/timesheet/timesheet-against-project.md
index a8b2a6b..0a9f32f 100644
--- a/erpnext/docs/user/manual/en/projects/timesheet/timesheet-against-project.md
+++ b/erpnext/docs/user/manual/en/projects/timesheet/timesheet-against-project.md
@@ -1,12 +1,14 @@
+# Timesheet Against Project
+
 #Timesheet against Project and Task
 
 Timesheets can be tracked against Project and Tasks so that you can get reports on how much time was spent on each Task or Project.
 
-<img class="screenshot" alt="Sales Invoice" src="{{docs_base_url}}/assets/img/project/timesheet/timesheet-project.gif">
+<img class="screenshot" alt="Sales Invoice" src="/docs/assets/img/project/timesheet/timesheet-project.gif">
 
 ####Billable Timesheet
 
-To bill Customer based on Timesheet, check "Is Billable" in the Timesheet created against Project and Task. To learn more about billing Customer from Timesheet, click [here]({{docs_base_url}}/user/manual/en/projects/timesheet/sales-invoice-from-timesheet.html).
+To bill Customer based on Timesheet, check "Is Billable" in the Timesheet created against Project and Task. To learn more about billing Customer from Timesheet, click [here](/docs/user/manual/en/projects/timesheet/sales-invoice-from-timesheet.html).
 
 User can also make invoice against timesheet by selecting the project on the invoice. System will fetch the records from the timesheet based on selected project, for mode detail check below video
 <iframe width="560" height="315" src="https://www.youtube.com/embed/hVAjtOFFhDI" frameborder="0" allowfullscreen></iframe>
@@ -17,4 +19,4 @@
 
 In the Timesheet, costing will be done based on Activity Cost multiplied with number of hours. Based the Timesheet Cost, total costing will be doen for the Task and Project as well.
 
-To learn about setup of Activity Type and Activity Cost, click [here]({{docs_base_url}}/user/manual/en/projects/articles/project-costing).
\ No newline at end of file
+To learn about setup of Activity Type and Activity Cost, click [here](/docs/user/manual/en/projects/articles/project-costing).
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/regional/index.md b/erpnext/docs/user/manual/en/regional/index.md
index 5798860..2598110 100644
--- a/erpnext/docs/user/manual/en/regional/index.md
+++ b/erpnext/docs/user/manual/en/regional/index.md
@@ -1,3 +1,5 @@
+# Regional
+
 ERPNext aims to support local regulation for all the regions in the world. In most cases ERPNext is very flexible so you can easily add Custom Fields and make Custom Reports to support the regluation of your region.
 
 As of mid-2017, ERPNext aims to pre-set additional fields and forms required for companies to easily submit reports to the relevant authorities.
diff --git a/erpnext/docs/user/manual/en/regional/india/gst-remimders.md b/erpnext/docs/user/manual/en/regional/india/gst-remimders.md
index 97f016d..b1061e4 100644
--- a/erpnext/docs/user/manual/en/regional/india/gst-remimders.md
+++ b/erpnext/docs/user/manual/en/regional/india/gst-remimders.md
@@ -4,7 +4,7 @@
 
 To send GSTIN Reminders, you can either open the Customer / Supplier record or **GST Settings**
 
-<img class="screenshot" alt="GST Settings" src="{{docs_base_url}}/assets/img/regional/india/gst-settings.png">
+<img class="screenshot" alt="GST Settings" src="/docs/assets/img/regional/india/gst-settings.png">
 
 Here you can click on the "Send GSTIN Update Reminders" button to send email reminders to all your customers
 
@@ -12,10 +12,10 @@
 
 Your customers will receive an email asking them to update their GSTIN and that email will link them to a portal page:
 
-<img class="screenshot" alt="GST Portal Page" src="{{docs_base_url}}/assets/img/regional/india/gstin-portal-update.png">
+<img class="screenshot" alt="GST Portal Page" src="/docs/assets/img/regional/india/gstin-portal-update.png">
 
 Here they can update their GSTIN and it will automatically be added to your customer GSTIN record.
 
 #### Sample GSTIN Reminder Email
 
-<img class="screenshot" alt="GST Reminder Email" src="{{docs_base_url}}/assets/img/regional/india/gstin-reminder-email.png">
+<img class="screenshot" alt="GST Reminder Email" src="/docs/assets/img/regional/india/gstin-reminder-email.png">
diff --git a/erpnext/docs/user/manual/en/regional/india/gst-setup.md b/erpnext/docs/user/manual/en/regional/india/gst-setup.md
index 49d75b1..b89be53 100644
--- a/erpnext/docs/user/manual/en/regional/india/gst-setup.md
+++ b/erpnext/docs/user/manual/en/regional/india/gst-setup.md
@@ -4,7 +4,7 @@
 
 GST Law requires that you maintain the GSTIN number for all your suppliers and vendors. In ERPNext, GSTIN is linked to the **Address**
 
-<img class="screenshot" alt="GST in Customer" src="{{docs_base_url}}/assets/img/regional/india/gstin-customer.gif">
+<img class="screenshot" alt="GST in Customer" src="/docs/assets/img/regional/india/gstin-customer.gif">
 
 **GST for your Company Address**
 
@@ -12,20 +12,20 @@
 
 Go to the Company master and add the GSTIN to your default address.
 
-<img class="screenshot" alt="GST in Company" src="{{docs_base_url}}/assets/img/regional/india/gstin-company.gif">
+<img class="screenshot" alt="GST in Company" src="/docs/assets/img/regional/india/gstin-company.gif">
 
 **Include GSTIN number in the Address Template**
 
 Open Address Template record for India, add GSTIN number and State Code there if not exists.
 
-<img class="screenshot" alt="GST in Company" src="{{docs_base_url}}/assets/img/regional/india/address-template-gstin.png">
+<img class="screenshot" alt="GST in Company" src="/docs/assets/img/regional/india/address-template-gstin.png">
 
 
 ### 2. Setting up HSN Codes
 
 According to the GST Law, your itemised invoices must contain the HSN Code related to that Item. ERPNext comes pre-installed with all 12,000+ HSN Codes so that you can easily select the relevant HSN Code in your Item
 
-<img class="screenshot" alt="HSN in Item" src="{{docs_base_url}}/assets/img/regional/india/hsn-item.gif">
+<img class="screenshot" alt="HSN in Item" src="/docs/assets/img/regional/india/hsn-item.gif">
 
 ### 3. Making Tax Masters
 
@@ -35,7 +35,7 @@
 
 **Note:** Usually the rate in CGST and SGST is half of IGST. For example if most of your items are billed at 18%, then create IGST at 18%, CGST and SGST at 9% each.
 
-<img class="screenshot" alt="GST in Customer" src="{{docs_base_url}}/assets/img/regional/india/gst-in-coa.png">
+<img class="screenshot" alt="GST in Customer" src="/docs/assets/img/regional/india/gst-in-coa.png">
 
 ### 4. Make Tax Templates
 
@@ -43,7 +43,7 @@
 
 In your **In State GST** template, select 2 accounts, SGST and CGST
 
-<img class="screenshot" alt="GST in Customer" src="{{docs_base_url}}/assets/img/regional/india/gst-template-in-state.png">
+<img class="screenshot" alt="GST in Customer" src="/docs/assets/img/regional/india/gst-template-in-state.png">
 
 In your **Out of State GST** template, select IGST
 
@@ -59,22 +59,22 @@
 4. Select the the **In State GST** or **Out of State GST** template that you have created based on the type of transaction
 5. Save and Submit the Invoice
 
-<img class="screenshot" alt="GST Invoice" src="{{docs_base_url}}/assets/img/regional/india/gst-invoice.gif">
+<img class="screenshot" alt="GST Invoice" src="/docs/assets/img/regional/india/gst-invoice.gif">
 
 ### 6. Print GST Tax Invoice
 
 To print Tax Invoice as per GSTN guidelines, please select **GST Tax Invoice** print format. This print format includes company address, GSTIN numbers, HSN/SAC Code and item-wise tax breakup. And while printing select correct value of Invoice Copy field, to mention whether it is for the Customer, Supplier or Transporter.
 
-<img class="screenshot" alt="Sample GST Tax Invoice" src="{{docs_base_url}}/assets/img/regional/india/sample-gst-tax-invoice.png">
+<img class="screenshot" alt="Sample GST Tax Invoice" src="/docs/assets/img/regional/india/sample-gst-tax-invoice.png">
 
 ### Reports
 
 ERPNext comes with most of your reports you need to prepare your GST Returns. Go to Accounts > GST India head for the list.
 
-<img class="screenshot" alt="GST Menus" src="{{docs_base_url}}/assets/img/regional/india/gst-menu.png">
+<img class="screenshot" alt="GST Menus" src="/docs/assets/img/regional/india/gst-menu.png">
 
 You can check the impact of your invoice in the **GST Sales Register** and **GST Itemised Sales Register**
 
-<img class="screenshot" alt="GST Itemised Sales Register" src="{{docs_base_url}}/assets/img/regional/india/gst-itemised.png">
+<img class="screenshot" alt="GST Itemised Sales Register" src="/docs/assets/img/regional/india/gst-itemised.png">
 
 
diff --git a/erpnext/docs/user/manual/en/schools/Assessment/assessment_criteria.md b/erpnext/docs/user/manual/en/schools/Assessment/assessment_criteria.md
index 1538463..fbaa70f 100644
--- a/erpnext/docs/user/manual/en/schools/Assessment/assessment_criteria.md
+++ b/erpnext/docs/user/manual/en/schools/Assessment/assessment_criteria.md
@@ -1,13 +1,15 @@
+# Assessment Criteria
+
 #Assessment Criteria
 
 Assessment Criteria is the parameter based on which you assess the Student.
 
-<img class="screenshot" alt="Assessment Criteria" src="{{docs_base_url}}/assets/img/schools/assessment/assessment-criteria.png">
+<img class="screenshot" alt="Assessment Criteria" src="/docs/assets/img/schools/assessment/assessment-criteria.png">
 
 After assessment is conducted for a Course, marks earned are entered based on the Assessment Criteria. For example, if assessment was conducted for science subject, then you can evaluate Student in Science on various criteria like Writing, Practicals, Presentation etc.
 
 Assessment Criteria is be used when scheduling Assessment Plan for Student Group and Course.
 
-<img class="screenshot" alt="Assessment Plan Criteria" src="{{docs_base_url}}/assets/img/schools/assessment/assessment-plan-criteria.png">
+<img class="screenshot" alt="Assessment Plan Criteria" src="/docs/assets/img/schools/assessment/assessment-plan-criteria.png">
 
 {next}
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/schools/Assessment/assessment_group.md b/erpnext/docs/user/manual/en/schools/Assessment/assessment_group.md
index ae67dba..53e95a9 100644
--- a/erpnext/docs/user/manual/en/schools/Assessment/assessment_group.md
+++ b/erpnext/docs/user/manual/en/schools/Assessment/assessment_group.md
@@ -1,13 +1,15 @@
+# Assessment Group
+
 #Assessment Group
 
 Assessment Group tree is a master where you can define the hierarchy for examination conducted in your education institute.
 
 For example, if you conduct two assessment in a academic year, then setup Assessment Group as following.
 
-<img class="screenshot" alt="Assessment Group Term" src="{{docs_base_url}}/assets/img/schools/assessment/assessment-group-term.png">
+<img class="screenshot" alt="Assessment Group Term" src="/docs/assets/img/schools/assessment/assessment-group-term.png">
 
 On the same lines, you can also define multiple Assessment Group bases on assessment conducted in your institute.
 
-<img class="screenshot" alt="Assessment Group Term" src="{{docs_base_url}}/assets/img/schools/assessment/assessment-group-details.png">
+<img class="screenshot" alt="Assessment Group Term" src="/docs/assets/img/schools/assessment/assessment-group-details.png">
 
 {next}
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/schools/Assessment/assessment_plan.md b/erpnext/docs/user/manual/en/schools/Assessment/assessment_plan.md
index 85b03bf..8a3d427 100644
--- a/erpnext/docs/user/manual/en/schools/Assessment/assessment_plan.md
+++ b/erpnext/docs/user/manual/en/schools/Assessment/assessment_plan.md
@@ -1,3 +1,5 @@
+# Assessment Plan
+
 #Assessment Plan
 
 To schedule an assessment/examination for a Student Group, for specific Course, create Assessment Plan. In the Assessment Plan, you can also capture details like:
@@ -10,10 +12,10 @@
 
 4. Examiner and Supervisor
 
-<img class="screenshot" alt="Assessment Plan Details" src="{{docs_base_url}}/assets/img/schools/assessment/assessment-plan-details.png">
+<img class="screenshot" alt="Assessment Plan Details" src="/docs/assets/img/schools/assessment/assessment-plan-details.png">
 
 5. Assessment Criteria is list of criteria based which each student in will be evaluated and grades will be assigned.
 
-<img class="screenshot" alt="Assessment Plan Criteria" src="{{docs_base_url}}/assets/img/schools/assessment/assessment-plan-criteria.png">
+<img class="screenshot" alt="Assessment Plan Criteria" src="/docs/assets/img/schools/assessment/assessment-plan-criteria.png">
 
 {next}
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/schools/Assessment/assessment_result.md b/erpnext/docs/user/manual/en/schools/Assessment/assessment_result.md
index 68d17e1..766f5d8 100644
--- a/erpnext/docs/user/manual/en/schools/Assessment/assessment_result.md
+++ b/erpnext/docs/user/manual/en/schools/Assessment/assessment_result.md
@@ -1,7 +1,9 @@
+# Assessment Result
+
 #Assessment Result
 
-Assessment Result is a log of marks/grades earned by the student for specific Assessment. Assessment Result is created in the backend based on the marks entered in the [Assessment Result Tool]({{docs_base_url}}/user/manual/en/schools/assessment/assessment_result_tool.html).
+Assessment Result is a log of marks/grades earned by the student for specific Assessment. Assessment Result is created in the backend based on the marks entered in the [Assessment Result Tool](/docs/user/manual/en/schools/assessment/assessment_result_tool.html).
 
-<img class="screenshot" alt="Assessment Result" src="{{docs_base_url}}/assets/img/schools/assessment/assessment-result.png">
+<img class="screenshot" alt="Assessment Result" src="/docs/assets/img/schools/assessment/assessment-result.png">
 
 {next}
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/schools/Assessment/assessment_result_tool.md b/erpnext/docs/user/manual/en/schools/Assessment/assessment_result_tool.md
index a1111eb..3e60835 100644
--- a/erpnext/docs/user/manual/en/schools/Assessment/assessment_result_tool.md
+++ b/erpnext/docs/user/manual/en/schools/Assessment/assessment_result_tool.md
@@ -1,8 +1,10 @@
+# Assessment Result Tool
+
 #Assessment Result Tool
 
 Assessment Result Tool help you entering marks earned by the Students for specific course. In this tool, based on the Assessment Plan, all the Student will be fetched into Assessment Result Tool. Also, Columns for Assessment Criteria will be where marks earned can be entered for each Student.
 
-<img class="screenshot" alt="Assessment Result Tool" src="{{docs_base_url}}/assets/img/schools/assessment/assessment-result-tool.png">
+<img class="screenshot" alt="Assessment Result Tool" src="/docs/assets/img/schools/assessment/assessment-result-tool.png">
 
 As you go on entering marks for a Student, and switch to next student, in the backend, Student Result record will be auto-created for that Student.
 
diff --git a/erpnext/docs/user/manual/en/schools/Assessment/grading_scale.md b/erpnext/docs/user/manual/en/schools/Assessment/grading_scale.md
index c0a39cb..11858dd 100644
--- a/erpnext/docs/user/manual/en/schools/Assessment/grading_scale.md
+++ b/erpnext/docs/user/manual/en/schools/Assessment/grading_scale.md
@@ -1,7 +1,9 @@
+# Grading Scale
+
 #Grading Scale
 
 In the Grading Scale, you can define various grades and threshold for them. Based on the score earned by an Student for an Assessment, Grade will be assigned.
 
-<img class="screenshot" alt="Grading Scale" src="{{docs_base_url}}/assets/img/schools/assessment/grading-scale.png">
+<img class="screenshot" alt="Grading Scale" src="/docs/assets/img/schools/assessment/grading-scale.png">
 
 {next}
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/schools/Assessment/index.md b/erpnext/docs/user/manual/en/schools/Assessment/index.md
index 3dab62a..2bbab8e 100644
--- a/erpnext/docs/user/manual/en/schools/Assessment/index.md
+++ b/erpnext/docs/user/manual/en/schools/Assessment/index.md
@@ -1,3 +1,5 @@
+# Assessment
+
 #Assessment
 
 Every education institute organizes assessment / examination to evaluates progress of their Students. In ERPNext, you can manage complete assessment processing for your ERPNext account.
diff --git a/erpnext/docs/user/manual/en/schools/admission/program-enrollment.md b/erpnext/docs/user/manual/en/schools/admission/program-enrollment.md
index 060033c..2dcc6cb 100644
--- a/erpnext/docs/user/manual/en/schools/admission/program-enrollment.md
+++ b/erpnext/docs/user/manual/en/schools/admission/program-enrollment.md
@@ -1,5 +1,7 @@
+# Program Enrollment
+
 This form allows you to enroll a student to a program. A student can be enrolled to multiple programs.  
 
-<img class="screenshot" alt="Student Applicant Enrollment" src="{{url_prefix}}/assets/img/schools/admission/program-enrollment.png">
+<img class="screenshot" alt="Student Applicant Enrollment" src="/docs/assets/img/schools/admission/program-enrollment.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/en/schools/admission/student-applicant.md b/erpnext/docs/user/manual/en/schools/admission/student-applicant.md
index 2b33cf9..e67c1dc 100644
--- a/erpnext/docs/user/manual/en/schools/admission/student-applicant.md
+++ b/erpnext/docs/user/manual/en/schools/admission/student-applicant.md
@@ -3,7 +3,7 @@
 A Student Applicant record needs to be created when a student applies for a program at your institute.
 You can Approve or Reject a student applicant. By accepting a student applicant you can add them to the student master.
 
-<img class="screenshot" alt="Student Applicant" src="{{url_prefix}}/assets/img/schools/admission/student-applicant.png">
+<img class="screenshot" alt="Student Applicant" src="/docs/assets/img/schools/admission/student-applicant.png">
 
 ### Application Status
 
@@ -21,8 +21,8 @@
 
 
 Once you approve a Student Applicant you can enroll them to a program. When you click the 'Enroll' buttom,
-the system shall create a student against that applicant and redirect you to the [Program Enrollment form]({{docs_base_url}}/user/manual/en/schools/student/program-enrollment.html).
+the system shall create a student against that applicant and redirect you to the [Program Enrollment form](/docs/user/manual/en/schools/student/program-enrollment.html).
 
-<img class="screenshot" alt="Student Applicant Enrollment" src="{{url_prefix}}/assets/img/schools/admission/student-applicant-enroll.png">
+<img class="screenshot" alt="Student Applicant Enrollment" src="/docs/assets/img/schools/admission/student-applicant-enroll.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/en/schools/fees/fee-category.md b/erpnext/docs/user/manual/en/schools/fees/fee-category.md
index d6694b5..fbf43e6 100644
--- a/erpnext/docs/user/manual/en/schools/fees/fee-category.md
+++ b/erpnext/docs/user/manual/en/schools/fees/fee-category.md
@@ -2,6 +2,6 @@
 
 List of all different type of fees collected.
 
-<img class="screenshot" alt="Fees Category" src="{{url_prefix}}/assets/img/schools/fees/fee-category.png">
+<img class="screenshot" alt="Fees Category" src="/docs/assets/img/schools/fees/fee-category.png">
 
 {next}
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/schools/fees/fee-structure.md b/erpnext/docs/user/manual/en/schools/fees/fee-structure.md
index 08d09e5..a1dd9be 100644
--- a/erpnext/docs/user/manual/en/schools/fees/fee-structure.md
+++ b/erpnext/docs/user/manual/en/schools/fees/fee-structure.md
@@ -2,6 +2,6 @@
 
 A Fee Structure is a template that can be used while making fee records.
 
-<img class="screenshot" alt="Fees Structure" src="{{url_prefix}}/assets/img/schools/fees/fee-structure.png">
+<img class="screenshot" alt="Fees Structure" src="/docs/assets/img/schools/fees/fee-structure.png">
 
 {next}
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/schools/fees/fees.md b/erpnext/docs/user/manual/en/schools/fees/fees.md
index 242abf8..f17720c 100644
--- a/erpnext/docs/user/manual/en/schools/fees/fees.md
+++ b/erpnext/docs/user/manual/en/schools/fees/fees.md
@@ -1,8 +1,8 @@
 # Fees
 
 Maintain a record of fees collected from students.
-The [Fee Structure]({{docs_base_url}}/user/manual/en/schools/fees/fee-structure.html) is fetched based on the selected Program and Academic Term.
+The [Fee Structure](/docs/user/manual/en/schools/fees/fee-structure.html) is fetched based on the selected Program and Academic Term.
 
-<img class="screenshot" alt="Fees" src="{{url_prefix}}/assets/img/schools/fees/fees.png">
+<img class="screenshot" alt="Fees" src="/docs/assets/img/schools/fees/fees.png">
 
 {next}
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/schools/fees/index.md b/erpnext/docs/user/manual/en/schools/fees/index.md
index f75c537..c5be5f6 100644
--- a/erpnext/docs/user/manual/en/schools/fees/index.md
+++ b/erpnext/docs/user/manual/en/schools/fees/index.md
@@ -2,7 +2,7 @@
 
 This section contains 'Fee' related documents.
 
-<img class="screenshot" alt="Fees Section" src="{{url_prefix}}/assets/img/schools/fees/fees-section.png">
+<img class="screenshot" alt="Fees Section" src="/docs/assets/img/schools/fees/fees-section.png">
 
 ### Topics
 
diff --git a/erpnext/docs/user/manual/en/schools/index.md b/erpnext/docs/user/manual/en/schools/index.md
index e2172ff..8c766d6 100644
--- a/erpnext/docs/user/manual/en/schools/index.md
+++ b/erpnext/docs/user/manual/en/schools/index.md
@@ -1,6 +1,8 @@
+# Schools
+
 
 The School Modules is designed to meet requirements of Schools, Colleges & Educational Institutes.
 
-<img class="screenshot" alt="Fees Section" src="{{url_prefix}}/assets/img/schools/module.png">
+<img class="screenshot" alt="Fees Section" src="/docs/assets/img/schools/module.png">
 
 {index}
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/schools/schedule/course-schedule.md b/erpnext/docs/user/manual/en/schools/schedule/course-schedule.md
index 9c27f61..9f7d980 100644
--- a/erpnext/docs/user/manual/en/schools/schedule/course-schedule.md
+++ b/erpnext/docs/user/manual/en/schools/schedule/course-schedule.md
@@ -3,13 +3,13 @@
 Course Schedule is the schedule of a session conducted by an Instructor for a particular Course.
 You can see the overall course schedule in the Calendar view.
 
-<img class="screenshot" alt="Course Schedule" src="{{url_prefix}}/assets/img/schools/schedule/course-schedule.png">
+<img class="screenshot" alt="Course Schedule" src="/docs/assets/img/schools/schedule/course-schedule.png">
 
 ### Marking Attendance
 
 You can mark attendance for a Student Group against a Course Schedule.
 
-<img class="screenshot" alt="Course Schedule Attendance" src="{{url_prefix}}/assets/img/schools/schedule/course-schedule-att.png">
+<img class="screenshot" alt="Course Schedule Attendance" src="/docs/assets/img/schools/schedule/course-schedule-att.png">
 
 - To make attendance, expand the attendance section.
 - Check the students who were present for that session.
@@ -20,6 +20,6 @@
 Once you have marked Attendance against a Course Schedule the Attendance section in the Course Schedule shall be hidden. 
 A View Attendance button shall appear. Click on that button to view all attendance records created against that Course Schedule.
 
-<img class="screenshot" alt="Course Schedule Attendance" src="{{url_prefix}}/assets/img/schools/schedule/course-schedule-att-1.png">
+<img class="screenshot" alt="Course Schedule Attendance" src="/docs/assets/img/schools/schedule/course-schedule-att-1.png">
 
 {next}
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/schools/schedule/examination.md b/erpnext/docs/user/manual/en/schools/schedule/examination.md
index cd5d838..d167e9c 100644
--- a/erpnext/docs/user/manual/en/schools/schedule/examination.md
+++ b/erpnext/docs/user/manual/en/schools/schedule/examination.md
@@ -2,7 +2,7 @@
 
 The Examination record can be used to track the exam schedule and the results of that exam.
 
-<img class="screenshot" alt="Examination" src="{{url_prefix}}/assets/img/schools/schedule/examination.png">
+<img class="screenshot" alt="Examination" src="/docs/assets/img/schools/schedule/examination.png">
 
 
 {next}
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/schools/schedule/index.md b/erpnext/docs/user/manual/en/schools/schedule/index.md
index 3fd993e..57e578b 100644
--- a/erpnext/docs/user/manual/en/schools/schedule/index.md
+++ b/erpnext/docs/user/manual/en/schools/schedule/index.md
@@ -1,6 +1,6 @@
 # Schedule
 
-<img class="screenshot" alt="Schedule Section" src="{{url_prefix}}/assets/img/schools/schedule/schedule-section.png">
+<img class="screenshot" alt="Schedule Section" src="/docs/assets/img/schools/schedule/schedule-section.png">
 
 ### Topics
 
diff --git a/erpnext/docs/user/manual/en/schools/schedule/scheduling-tool.md b/erpnext/docs/user/manual/en/schools/schedule/scheduling-tool.md
index 84b3908..9e13d6d 100644
--- a/erpnext/docs/user/manual/en/schools/schedule/scheduling-tool.md
+++ b/erpnext/docs/user/manual/en/schools/schedule/scheduling-tool.md
@@ -2,7 +2,7 @@
 
 This tool can be used to create 'Course Schedules'. 
 
-<img class="screenshot" alt="Scheduling Tool" src="{{url_prefix}}/assets/img/schools/schedule/scheduling-tool.png">
+<img class="screenshot" alt="Scheduling Tool" src="/docs/assets/img/schools/schedule/scheduling-tool.png">
 
 ### Creating Course Schedules
 
diff --git a/erpnext/docs/user/manual/en/schools/schedule/student-attendance.md b/erpnext/docs/user/manual/en/schools/schedule/student-attendance.md
index 474b543..84e1ea8 100644
--- a/erpnext/docs/user/manual/en/schools/schedule/student-attendance.md
+++ b/erpnext/docs/user/manual/en/schools/schedule/student-attendance.md
@@ -2,6 +2,6 @@
 
 Maintains attendance record of the student. Attendance Records can be created against Course Schedules.
 
-<img class="screenshot" alt="Student Attendance" src="{{url_prefix}}/assets/img/schools/schedule/student-attendance.png">
+<img class="screenshot" alt="Student Attendance" src="/docs/assets/img/schools/schedule/student-attendance.png">
 
 {next}
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/schools/setup/academic-term.md b/erpnext/docs/user/manual/en/schools/setup/academic-term.md
index dbce6d9..6306444 100644
--- a/erpnext/docs/user/manual/en/schools/setup/academic-term.md
+++ b/erpnext/docs/user/manual/en/schools/setup/academic-term.md
@@ -1,6 +1,6 @@
 # Academic Term
 
-<img class="screenshot" alt="Academic Term" src="{{url_prefix}}/assets/img/schools/setup/academic-term.png">
+<img class="screenshot" alt="Academic Term" src="/docs/assets/img/schools/setup/academic-term.png">
 
 
 {next}
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/schools/setup/academic-year.md b/erpnext/docs/user/manual/en/schools/setup/academic-year.md
index 4a15393..3913eb6 100644
--- a/erpnext/docs/user/manual/en/schools/setup/academic-year.md
+++ b/erpnext/docs/user/manual/en/schools/setup/academic-year.md
@@ -1,5 +1,5 @@
 # Academic Year
 
-<img class="screenshot" alt="Academic Year" src="{{url_prefix}}/assets/img/schools/setup/academic-year.png">
+<img class="screenshot" alt="Academic Year" src="/docs/assets/img/schools/setup/academic-year.png">
 
 {next}
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/schools/setup/course.md b/erpnext/docs/user/manual/en/schools/setup/course.md
index da5fa37..140131d 100644
--- a/erpnext/docs/user/manual/en/schools/setup/course.md
+++ b/erpnext/docs/user/manual/en/schools/setup/course.md
@@ -1,5 +1,5 @@
 # Course
 
-<img class="screenshot" alt="Course" src="{{url_prefix}}/assets/img/schools/setup/course.png">
+<img class="screenshot" alt="Course" src="/docs/assets/img/schools/setup/course.png">
 
 {next}
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/schools/setup/index.md b/erpnext/docs/user/manual/en/schools/setup/index.md
index 5a360dd..9de7536 100644
--- a/erpnext/docs/user/manual/en/schools/setup/index.md
+++ b/erpnext/docs/user/manual/en/schools/setup/index.md
@@ -1,6 +1,6 @@
 # Setup
 
-<img class="screenshot" alt="Setup Section" src="{{url_prefix}}/assets/img/schools/setup/setup-section.png">
+<img class="screenshot" alt="Setup Section" src="/docs/assets/img/schools/setup/setup-section.png">
 
 ### Topics
 
diff --git a/erpnext/docs/user/manual/en/schools/setup/instructor.md b/erpnext/docs/user/manual/en/schools/setup/instructor.md
index adbfe2a..1a4d351 100644
--- a/erpnext/docs/user/manual/en/schools/setup/instructor.md
+++ b/erpnext/docs/user/manual/en/schools/setup/instructor.md
@@ -1,5 +1,5 @@
 # Instructor
 
-<img class="screenshot" alt="Instructor" src="{{url_prefix}}/assets/img/schools/setup/instructor.png">
+<img class="screenshot" alt="Instructor" src="/docs/assets/img/schools/setup/instructor.png">
 
 {next}
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/schools/setup/program.md b/erpnext/docs/user/manual/en/schools/setup/program.md
index 813019b..64513e2 100644
--- a/erpnext/docs/user/manual/en/schools/setup/program.md
+++ b/erpnext/docs/user/manual/en/schools/setup/program.md
@@ -1,5 +1,5 @@
 # Program
 
-<img class="screenshot" alt="Program" src="{{url_prefix}}/assets/img/schools/setup/program.png">
+<img class="screenshot" alt="Program" src="/docs/assets/img/schools/setup/program.png">
 
 {next}
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/schools/setup/room.md b/erpnext/docs/user/manual/en/schools/setup/room.md
index 052e962..bb265e3 100644
--- a/erpnext/docs/user/manual/en/schools/setup/room.md
+++ b/erpnext/docs/user/manual/en/schools/setup/room.md
@@ -1,6 +1,6 @@
 # Room
 
 
-<img class="screenshot" alt="Room" src="{{url_prefix}}/assets/img/schools/setup/room.png">
+<img class="screenshot" alt="Room" src="/docs/assets/img/schools/setup/room.png">
 
 {next}
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/schools/student/student-batch.md b/erpnext/docs/user/manual/en/schools/student/student-batch.md
index 0f29d46..4987c03 100644
--- a/erpnext/docs/user/manual/en/schools/student/student-batch.md
+++ b/erpnext/docs/user/manual/en/schools/student/student-batch.md
@@ -2,6 +2,6 @@
 
 Student batch is a collection of students from Student Groups.
 
-<img class="screenshot" alt="Student" src="{{url_prefix}}/assets/img/schools/student/student-batch.png">
+<img class="screenshot" alt="Student" src="/docs/assets/img/schools/student/student-batch.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/en/schools/student/student-group-creation-tool.md b/erpnext/docs/user/manual/en/schools/student/student-group-creation-tool.md
index 1fcd87c..130c944 100644
--- a/erpnext/docs/user/manual/en/schools/student/student-group-creation-tool.md
+++ b/erpnext/docs/user/manual/en/schools/student/student-group-creation-tool.md
@@ -1,6 +1,8 @@
+# Student Group Creation Tool
+
 This tool allows you to create student groups in bulk. You can specify multiple parameters to create them.
 
 
-<img class="screenshot" alt="Student Group Creation Tool" src="{{url_prefix}}/assets/img/schools/student/student-group-creation-tool.png">
+<img class="screenshot" alt="Student Group Creation Tool" src="/docs/assets/img/schools/student/student-group-creation-tool.png">
 
 {next}
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/schools/student/student-group.md b/erpnext/docs/user/manual/en/schools/student/student-group.md
index eaa60f7..191e917 100644
--- a/erpnext/docs/user/manual/en/schools/student/student-group.md
+++ b/erpnext/docs/user/manual/en/schools/student/student-group.md
@@ -3,6 +3,6 @@
 A student group is a collection of students taking a same course. You can create Course Schedules and Examinations against a Student Group.
 A student group needs to be created for every course in a particular academic term and academic year.
 
-<img class="screenshot" alt="Student Group" src="{{url_prefix}}/assets/img/schools/student/student-group.png">
+<img class="screenshot" alt="Student Group" src="/docs/assets/img/schools/student/student-group.png">
 
 {next}
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/schools/student/student-log.md b/erpnext/docs/user/manual/en/schools/student/student-log.md
index 787dacb..a037a23 100644
--- a/erpnext/docs/user/manual/en/schools/student/student-log.md
+++ b/erpnext/docs/user/manual/en/schools/student/student-log.md
@@ -3,6 +3,6 @@
 You can make a note of student activities using student log.
 Logs can be categorised as 'General', 'Academic', 'Medical' or 'Achievement'
 
-<img class="screenshot" alt="Student" src="{{url_prefix}}/assets/img/schools/student/student-log.png">
+<img class="screenshot" alt="Student" src="/docs/assets/img/schools/student/student-log.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/en/schools/student/student.md b/erpnext/docs/user/manual/en/schools/student/student.md
index a86d36e..dd99a80 100644
--- a/erpnext/docs/user/manual/en/schools/student/student.md
+++ b/erpnext/docs/user/manual/en/schools/student/student.md
@@ -5,6 +5,6 @@
 
 You can view everything related to a particular student on this page. Eg : Fees, Student Group, etc
 
-<img class="screenshot" alt="Student" src="{{url_prefix}}/assets/img/schools/student/student.png">
+<img class="screenshot" alt="Student" src="/docs/assets/img/schools/student/student.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/en/selling/articles/Selling-in-different-UOM.md b/erpnext/docs/user/manual/en/selling/articles/Selling-in-different-UOM.md
index 1efed75..2589133 100644
--- a/erpnext/docs/user/manual/en/selling/articles/Selling-in-different-UOM.md
+++ b/erpnext/docs/user/manual/en/selling/articles/Selling-in-different-UOM.md
@@ -1,3 +1,5 @@
+# Selling In Different Uom
+
 #Selling in Different Unit (UoM)
  
 A sell price unit of measure (UOM) is the UOM with which you price items. You can have multiple sell price UOMs for any inventory item.  However, when Customer places, UoM for an item could change. 
@@ -7,7 +9,7 @@
 ###Step 1: In the Item master, under Unit of Measure section, you can list all the possible UoM of an item, with its UoM Conversion Factor. Update UoM Conversion Factors
 In one Box, if you get 10 Nos. of Pen, UoM Conversion Factor would be 10.
 
-<img class="screenshot" alt="Item Unit of Measure" src="{{docs_base_url}}/assets/img/selling/Item-UOM.png">
+<img class="screenshot" alt="Item Unit of Measure" src="/docs/assets/img/selling/Item-UOM.png">
 
 
 ###Setp 2: In the Sale Order, you will find two UoM fields
@@ -17,7 +19,7 @@
 
 In both the fields, default UoM of an item will be fetched by default. You should edit UoM field, and select Sale UoM (Box in this case).  Updating Sales UoM is mainly for the reference of the Customer. In the print format, you will see item quantity in the Sales UoM.
 
-<img class="screenshot" alt="Sale order Unit of Measure" src="{{docs_base_url}}/assets/img/selling/Sale-Order-UOM.png">
+<img class="screenshot" alt="Sale order Unit of Measure" src="/docs/assets/img/selling/Sale-Order-UOM.png">
  
 Based on the Qty and Conversion Factor, qty will be calculated in the Stock UoM of an item. If you sell just one Box, then Qty as per stock UoM will be set as 10.
  
@@ -26,4 +28,4 @@
  
 Irrespective of the Sales UoM selected in the Sale Order, stock ledger posting will be done in the Default UoM of an item. Hence you should ensure that conversion factor is entered correctly while selling item in different UoM.
 
-<img class="screenshot" alt="Stock report in UOM" src="{{docs_base_url}}/assets/img/selling/stock ledger for as STOCK-UOM.png">
+<img class="screenshot" alt="Stock report in UOM" src="/docs/assets/img/selling/stock ledger for as STOCK-UOM.png">
diff --git a/erpnext/docs/user/manual/en/selling/articles/adding-margin.md b/erpnext/docs/user/manual/en/selling/articles/adding-margin.md
index 2725fee..fd96d46 100644
--- a/erpnext/docs/user/manual/en/selling/articles/adding-margin.md
+++ b/erpnext/docs/user/manual/en/selling/articles/adding-margin.md
@@ -1,3 +1,5 @@
+# Adding Margin
+
 #Adding Margin
 
 User Can apply the margin on Quotation Item and Sales Order Item using following two options.
@@ -9,7 +11,7 @@
 
 ####Adding Margin in Pricing Rule
 
-<img alt="Adding Margin in Pricing Rule" class="screenshot"  src="{{docs_base_url}}/assets/img/selling/margin-pricing-rule.png">
+<img alt="Adding Margin in Pricing Rule" class="screenshot"  src="/docs/assets/img/selling/margin-pricing-rule.png">
 
 Total Margin is calculated as follows:
 `Rate = Price List Rate + Margin Rate`
@@ -22,7 +24,7 @@
 
 ####Adding Item Price
 
-<img alt="Adding Margin in Pricing Rule" class="screenshot"  src="{{docs_base_url}}/assets/img/selling/margin-item-price-list.png">
+<img alt="Adding Margin in Pricing Rule" class="screenshot"  src="/docs/assets/img/selling/margin-item-price-list.png">
 
 2) Apply margin direct on Item: If user wants to apply the margin without pricing rule, they can use this option. In Quotation Item and Sales Order Item, user can select the margin type and rate or amount. The system will calculate the margin and apply it on price list rate to calculate the rate of the product.
 
@@ -34,4 +36,4 @@
 
 ####Adding Margin in Quotation
 
-<img alt="Adding Margin in Quotation" class="screenshot"  src="{{docs_base_url}}/assets/img/selling/margin-quotation-item.png">
+<img alt="Adding Margin in Quotation" class="screenshot"  src="/docs/assets/img/selling/margin-quotation-item.png">
diff --git a/erpnext/docs/user/manual/en/selling/articles/applying-discount.md b/erpnext/docs/user/manual/en/selling/articles/applying-discount.md
index ad66ccc..a2a62a4 100644
--- a/erpnext/docs/user/manual/en/selling/articles/applying-discount.md
+++ b/erpnext/docs/user/manual/en/selling/articles/applying-discount.md
@@ -1,3 +1,5 @@
+# Applying Discount
+
 #Applying Discount
 
 There are several ways Discount can be applied on an item in the sales transactions.
@@ -6,28 +8,28 @@
 
 You can find the Discount (%) field in the Item table. Discount (%) is applied on the Price List Rate to get the selling Rate of the Item.
 
-<img alt="Discount Percentage" class="screenshot" src="{{docs_base_url}}/assets/img/articles/discount-1.png">
+<img alt="Discount Percentage" class="screenshot" src="/docs/assets/img/articles/discount-1.png">
 
 The feature of Discount (%) is available in all sales and purchase transactions.
 
-You can use Pricing Rule for auto-application of Discount (%). [Click here to learn how Pricing Rule functions.]({{docs_base_url}}/user/manual/en/accounts/pricing-rule.html)
+You can use Pricing Rule for auto-application of Discount (%). [Click here to learn how Pricing Rule functions.](/docs/user/manual/en/accounts/pricing-rule.html)
 
 #### 2. Discount on Net Total and Grand Total
 
 In the "Additional Discount" section, you can apply discount as amount or as percentage.
 
-<img alt="Discount Percentage" class="screenshot" src="{{docs_base_url}}/assets/img/articles/discount-2.png">
+<img alt="Discount Percentage" class="screenshot" src="/docs/assets/img/articles/discount-2.png">
 
 ##### Discount on Net Total
 
 If Discount Amount is applied on **Net Total**, then item's Net Rate and Net Amount is calculated as per the Discount Amount. Net Rate and Amount field will be visible only if Discount is applied using this feature.
 
-<img alt="Discount Percentage" class="screenshot" src="{{docs_base_url}}/assets/img/articles/discount-on-net-total.png">
+<img alt="Discount Percentage" class="screenshot" src="/docs/assets/img/articles/discount-on-net-total.png">
 
 ##### Discount on Grand Total
 
 If Discount Amount is applied based on the **Grand Total**, then with item's Net Rate, Net Amount as well as taxes are also re-calculated as per Discount Amount.
 
-<img alt="Discount Percentage" class="screenshot" src="{{docs_base_url}}/assets/img/articles/discount-on-grand-total.png">
+<img alt="Discount Percentage" class="screenshot" src="/docs/assets/img/articles/discount-on-grand-total.png">
 
 <!-- markdown -->
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/selling/articles/close-sales-order.md b/erpnext/docs/user/manual/en/selling/articles/close-sales-order.md
index 3990e7d..0b41a64 100644
--- a/erpnext/docs/user/manual/en/selling/articles/close-sales-order.md
+++ b/erpnext/docs/user/manual/en/selling/articles/close-sales-order.md
@@ -1,8 +1,10 @@
+# Close Sales Order
+
 #Close Sales Order
 
 In the submitted Sales Orders, you will find **Stop** option. Stopping Sales Order will restrict user from creating Delivery Note and Sales Invoice against it.
 
-<img alt="Close SO" class="screenshot"  src="{{docs_base_url}}/assets/img/articles/close-1.png">
+<img alt="Close SO" class="screenshot"  src="/docs/assets/img/articles/close-1.png">
 
 ####Scenario
 
@@ -10,7 +12,7 @@
 
 In this case, create Delivery Note and Sales Invoice will be created only for the seven units. And the Sales Order should be set as stopped.
 
-<img alt="Closed SO" class="screenshot"  src="{{docs_base_url}}/assets/img/articles/close-2.png">
+<img alt="Closed SO" class="screenshot"  src="/docs/assets/img/articles/close-2.png">
 
 Once Sales Order is set as stopped, you will not have pending quantities (three in this case) reflecting in Pending to Deliver and Pending to Invoice reports. To make further transactions against Stopped Sales Order, you should first Unstop it.
 
diff --git a/erpnext/docs/user/manual/en/selling/articles/drop-shipping.md b/erpnext/docs/user/manual/en/selling/articles/drop-shipping.md
index 2d12ff4..fd39d48 100644
--- a/erpnext/docs/user/manual/en/selling/articles/drop-shipping.md
+++ b/erpnext/docs/user/manual/en/selling/articles/drop-shipping.md
@@ -1,3 +1,5 @@
+# Drop Shipping
+
 #Drop Ship
 
 **Drop shipping** is a supply chain management technique in which the retailer does not keep goods in stock. Instead they transfer customer orders and shipment details to either the manufacturer, another retailer, or a wholesaler, who then ships the goods directly to the customer
@@ -10,19 +12,19 @@
 
 Set **_Delivered by Supplier (Drop Ship)_** and **_Default Supplier_** in Item Master.
 
-<img class="screenshot" alt="Setup Item Master" src="{{docs_base_url}}/assets/img/selling/setup-drop-ship-on-item-master.png">
+<img class="screenshot" alt="Setup Item Master" src="/docs/assets/img/selling/setup-drop-ship-on-item-master.png">
 
 #### Setup on Sales Order
 If Drop Shipping has set on Item master, it will automatically set **Supplier delivers to Customer** and **Supplier** on Sales Order Item.
 
 You can setup Drop Shipping, on Sales Order Item. Under **Drop Ship** section, set **Supplier delivers to Customer** and select **Supplier** agaist which Purchase Order will get created.
 
-<img class="screenshot" alt="Setup Drop Shipping on Sales Order Item" src="{{docs_base_url}}/assets/img/selling/setup-drop-ship-on-sales-order-item.png">
+<img class="screenshot" alt="Setup Drop Shipping on Sales Order Item" src="/docs/assets/img/selling/setup-drop-ship-on-sales-order-item.png">
 
 #### Create Purchase Order
 After submitting a Sales Order, create Puchase Order.
 
-<img class="screenshot" alt="Setup Drop Shipping on Sales Order Item" src="{{docs_base_url}}/assets/img/selling/drop-ship-sales-order.png">
+<img class="screenshot" alt="Setup Drop Shipping on Sales Order Item" src="/docs/assets/img/selling/drop-ship-sales-order.png">
 
 From Sales Order, all items, having **Supplier delivers to Customer**  checked or **Supplier**(matching with supplier selected on For Supplier popup) mentioned, will get mapped onto Purchase Order. 
 
@@ -30,16 +32,16 @@
 
 After submitting Purchase Order, to update delivery status, use **Mark as Delivered** button on Purchase Order. It will update delivery percetage and delivered quantity on Sales Order.
 
-<img class="screenshot" alt="Purchase Order for Drop Shipping" src="{{docs_base_url}}/assets/img/selling/drop-ship-purchase-order.png">
+<img class="screenshot" alt="Purchase Order for Drop Shipping" src="/docs/assets/img/selling/drop-ship-purchase-order.png">
 
 <span style="color:#18B52D">**_Close_**</span>, is a new feature introduced on **Purchase Order** and **Sales Order**, to close or to mark fulfillment.
 
-<img class="screenshot" alt="Close Sales Order" src="{{docs_base_url}}/assets/img/selling/close-sales-order.png">
+<img class="screenshot" alt="Close Sales Order" src="/docs/assets/img/selling/close-sales-order.png">
 
 ###Drop Shipping Print Format
 You can notify, Suppliers by sending a email after submitting Purchase Order by attaching Drop Shipping print format.
 
-<img class="screenshot" alt="Drop Dhip Print Format" src="{{docs_base_url}}/assets/img/selling/drop-ship-print-format.png">
+<img class="screenshot" alt="Drop Dhip Print Format" src="/docs/assets/img/selling/drop-ship-print-format.png">
 
 ###Video Help on Drop Ship
 
diff --git a/erpnext/docs/user/manual/en/selling/articles/erpnext-for-services-organization.md b/erpnext/docs/user/manual/en/selling/articles/erpnext-for-services-organization.md
index f905dfd..09d071f 100644
--- a/erpnext/docs/user/manual/en/selling/articles/erpnext-for-services-organization.md
+++ b/erpnext/docs/user/manual/en/selling/articles/erpnext-for-services-organization.md
@@ -1,3 +1,5 @@
+# Erpnext For Services Organization
+
 #ERPNext for Service Organization
 
 **Question:** ERPNext looks primarily designed for the traders and manufacturers. Is ERPNext used by companies offering servies?
@@ -14,7 +16,7 @@
 
 To create a Service (non-stock) Item, in the item master, uncheck "Maintain Stock" field.
 
-<img alt="Service Item" class="screenshot"  src="{{docs_base_url}}/assets/img/articles/services-1.png">
+<img alt="Service Item" class="screenshot"  src="/docs/assets/img/articles/services-1.png">
 
 When creating Sales Order for the services, select Order Type as **Maintenance**. Sales Order of Maintenance Type needs lesser details compared to stock item's order like Delivery Note, item warehouse etc.
 
@@ -32,11 +34,11 @@
 
 Within the form, there are many fields only needed for companies into trading and manufacturing businesses. These fields can be hidden for the service company. Feature Setup is a tool where you can enable/disable specific feature. If a feature is disabled, then fields relevant to that feature is hidden from all the forms. For example, if Serial No. feature is disabled, then Serial. No. field from Item as well as from all the sales and purchase transaction will be hidden.
 
-[To learn more about Feature Setup, click here.]({{docs_base_url}}/user/manual/en/customize-erpnext/hiding-modules-and-features.html).
+[To learn more about Feature Setup, click here.](/docs/user/manual/en/customize-erpnext/hiding-modules-and-features.html).
 
 ####Permissions
 
-ERPNext is the permission controlled system. Users access system based on permissions assigned to them. So, if user is not assigned Role related to Stock and Manufacturing module, it will be hidden from that User. [Click here to learn more about permission management.]({{docs_base_url}}/user/manual/en/setting-up/users-and-permissions.html).
+ERPNext is the permission controlled system. Users access system based on permissions assigned to them. So, if user is not assigned Role related to Stock and Manufacturing module, it will be hidden from that User. [Click here to learn more about permission management.](/docs/user/manual/en/setting-up/users-and-permissions.html).
 
 You can also refer to help video on User and Permissions setting in ERPNext.
 
diff --git a/erpnext/docs/user/manual/en/selling/articles/index.md b/erpnext/docs/user/manual/en/selling/articles/index.md
index 0dff60b..fb11735 100644
--- a/erpnext/docs/user/manual/en/selling/articles/index.md
+++ b/erpnext/docs/user/manual/en/selling/articles/index.md
@@ -1 +1,3 @@
+# Articles
+
 {index}
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/selling/articles/sales-persons-in-the-sales-transactions.md b/erpnext/docs/user/manual/en/selling/articles/sales-persons-in-the-sales-transactions.md
index 781d2ce..8cbfd1f 100644
--- a/erpnext/docs/user/manual/en/selling/articles/sales-persons-in-the-sales-transactions.md
+++ b/erpnext/docs/user/manual/en/selling/articles/sales-persons-in-the-sales-transactions.md
@@ -1,16 +1,18 @@
+# Sales Persons In The Sales Transactions
+
 #Sales Persons in the Sales Transactions
 
-In ERPNext, Sales Person master is maintained in [tree structure]({{docs_base_url}}/user/manual/en/setting-up/articles/managing-tree-structure-masters.html). Sales Person is selectable in all the sales transactions.
+In ERPNext, Sales Person master is maintained in [tree structure](/docs/user/manual/en/setting-up/articles/managing-tree-structure-masters.html). Sales Person is selectable in all the sales transactions.
 
 Sales Persons can be updated in the Customer master as well. On selection of Customer in the transactions, Sales Persons as updated in the Customer will fetch into sales transaction.
 
-<img class="screenshot" alt="Sales Person Customer" src="{{docs_base_url}}/assets/img/articles/sales-person-transaction-1.png">
+<img class="screenshot" alt="Sales Person Customer" src="/docs/assets/img/articles/sales-person-transaction-1.png">
 
 ####Sales Person Contribution
 
 If more than one sales persons are working together on an order, then contribution (%) should be set for each Sales Person.
 
-<img class="screenshot" alt="Sales Person Order" src="{{docs_base_url}}/assets/img/articles/sales-person-transaction-2.png">
+<img class="screenshot" alt="Sales Person Order" src="/docs/assets/img/articles/sales-person-transaction-2.png">
 
 On saving transaction, based on the Net Total and Contriution (%), `Contribution to Net Total` will be calculated for each Sales Person.
 
@@ -24,7 +26,7 @@
 
 This report can be generated based on Sales Order, Delivery Note and Sales Invoice. It will give you total amount of sale made by an employe.
 
-<img class="screenshot" alt="Sales Person Report" src="{{docs_base_url}}/assets/img/articles/sales-person-transaction-3.png">
+<img class="screenshot" alt="Sales Person Report" src="/docs/assets/img/articles/sales-person-transaction-3.png">
 
 ####Sales Person wise Commission
 
diff --git a/erpnext/docs/user/manual/en/selling/articles/shipping-rule.md b/erpnext/docs/user/manual/en/selling/articles/shipping-rule.md
index d87ba36..fc82ba4 100644
--- a/erpnext/docs/user/manual/en/selling/articles/shipping-rule.md
+++ b/erpnext/docs/user/manual/en/selling/articles/shipping-rule.md
@@ -1,3 +1,5 @@
+# Shipping Rule
+
 #Shipping Rule
 
 Shipping Rule master helps in defining a rule based on which shipping charge is applied on a sales transactions.
@@ -10,7 +12,7 @@
 
 ####Shipping Rule Conditions
 
-<img alt="Shipping Rule Prices" class="screenshot"  src="{{docs_base_url}}/assets/img/articles/shipping-charges-1.png">
+<img alt="Shipping Rule Prices" class="screenshot"  src="/docs/assets/img/articles/shipping-charges-1.png">
 
 Referring above, you will notice that shipping charges are reducing as valye is increasing. This shipping charge will only be applied if transaction total falls under one of the above range.
 
@@ -18,16 +20,16 @@
 
 You can set Shipping Charges valid for all the countries, or specify specific Country. If specific countries mentioned, then Shipping Charges will be applied only if Customer's country matches Country mentioned in the Shipping Rule.
 
-<img alt="Shipping Rule " class="screenshot"  src="{{docs_base_url}}/assets/img/articles/shipping-charges-2.gif">
+<img alt="Shipping Rule " class="screenshot"  src="/docs/assets/img/articles/shipping-charges-2.gif">
 
 ####Shipping Account
 
 If shipping charges are applied based on Shipping Rule, then more values like Shipping Account, Cost Center will be needed as well to add row in the Taxes and Other Charges table of transaction. Hence these details are tracked as well in the Shipping Rule.
 
-<img alt="Shipping Account" class="screenshot"  src="{{docs_base_url}}/assets/img/articles/shipping-charges-3.png">
+<img alt="Shipping Account" class="screenshot"  src="/docs/assets/img/articles/shipping-charges-3.png">
 
 ####Shipping Rule Application
 
 Following is an example of how shipping charges is auto-applied on Sales Order based on Shipping Rule.
 
-<img alt="Shipping Rule Application" class="screenshot"  src="{{docs_base_url}}/assets/img/articles/shipping-charges-4.gif">
\ No newline at end of file
+<img alt="Shipping Rule Application" class="screenshot"  src="/docs/assets/img/articles/shipping-charges-4.gif">
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/selling/quotation.md b/erpnext/docs/user/manual/en/selling/quotation.md
index 1f7b06c..80af009 100644
--- a/erpnext/docs/user/manual/en/selling/quotation.md
+++ b/erpnext/docs/user/manual/en/selling/quotation.md
@@ -1,3 +1,5 @@
+# Quotation
+
 During a sale, the customer may request for a written note about the products
 or services you are planning to offer, along with the prices and other terms
 of engagement. This is called a “Proposal” or an “Estimate” or a “Pro Forma
@@ -5,7 +7,7 @@
 
 A typical Selling flow looks like:
 
-<img class="screenshot" alt="Make Quotation from Opportunity" src="{{docs_base_url}}/assets/img/selling/selling-flow.png">
+<img class="screenshot" alt="Make Quotation from Opportunity" src="/docs/assets/img/selling/selling-flow.png">
 
 To create a new Quotation navigate to:
 
@@ -15,7 +17,7 @@
 
 You can also create a Quotation from an Opportunity.
 
-<img class="screenshot" alt="Make Quotation from Opportunity" src="{{docs_base_url}}/assets/img/selling/make-quote-from-opp.png">
+<img class="screenshot" alt="Make Quotation from Opportunity" src="/docs/assets/img/selling/make-quote-from-opp.png">
 
 A Quotation contains details about:
 
@@ -34,7 +36,7 @@
 
 The rates you quote may depend on two things.
 
-  * The Price List: If you have multiple Price Lists, you can select a Price List or tag it to the Customer (so that it is auto-selected). Your Item prices will automatically be updated from the Price List. For details refer [Price List]({{docs_base_url}}/user/manual/en/setting-up/price-lists.html)
+  * The Price List: If you have multiple Price Lists, you can select a Price List or tag it to the Customer (so that it is auto-selected). Your Item prices will automatically be updated from the Price List. For details refer [Price List](/docs/user/manual/en/setting-up/price-lists.html)
 
   * The Currency: If you are quoting to a Customer in a different currency, you will have to update the conversion rates to enable ERPNext to save the information in your standard Currency. This will help you to analyze the value of your Quotations in standard Currency.
 
@@ -44,9 +46,9 @@
 
 For e.g
 
-<img class="screenshot" alt="Taxes and Charges" src="{{docs_base_url}}/assets/img/selling/taxes-and-charges.gif">
+<img class="screenshot" alt="Taxes and Charges" src="/docs/assets/img/selling/taxes-and-charges.gif">
 
-To understand taxes in detail visit [Taxes]({{docs_base_url}}/user/manual/en/setting-up/setting-up-taxes.html).
+To understand taxes in detail visit [Taxes](/docs/user/manual/en/setting-up/setting-up-taxes.html).
 
 ### Terms and Conditions
 
@@ -83,6 +85,6 @@
 
 While making your sales transactions like a Quotation (or Sales Order) you
 can also give discounts to your customers. In the Discount section, add
-the discount in percentage or fixed amount. Read [Discount](https://frappe.github.io/erpnext/user/manual/en/selling/articles/applying-discount) for more explanation.
+the discount in percentage or fixed amount. Read [Discount](https://erpnext.org/docs/user/manual/en/selling/articles/applying-discount) for more explanation.
 
 {next}
diff --git a/erpnext/docs/user/manual/en/selling/sales-order.md b/erpnext/docs/user/manual/en/selling/sales-order.md
index b103038..05f178b 100644
--- a/erpnext/docs/user/manual/en/selling/sales-order.md
+++ b/erpnext/docs/user/manual/en/selling/sales-order.md
@@ -11,7 +11,7 @@
 
 ### Sales Order Flow-Chart
 
-<img class="screenshot" alt="Sales Order flow" src="{{docs_base_url}}/assets/img/selling/sales-order-f.jpg">
+<img class="screenshot" alt="Sales Order flow" src="/docs/assets/img/selling/sales-order-f.jpg">
 
 To create a new Sales Order go to:
 
@@ -21,11 +21,11 @@
 
 You can also create a Sales Order from a submitted Quotation.
 
-<img class="screenshot" alt="Make Sales Order from Quotation" src="{{docs_base_url}}/assets/img/selling/make-SO-from-quote.png">
+<img class="screenshot" alt="Make Sales Order from Quotation" src="/docs/assets/img/selling/make-SO-from-quote.png">
 
 Or you can create a new Sales Order and pull details from an Quotation.
 
-<img class="screenshot" alt="Make Sales Order from Quotation" src="{{docs_base_url}}/assets/img/selling/make-so.gif">
+<img class="screenshot" alt="Make Sales Order from Quotation" src="/docs/assets/img/selling/make-so.gif">
 
 Most of the information in your Sales Order is the same as the Quotation.
 There are a few amongst other things that a Sales Order will ask you to
@@ -56,9 +56,9 @@
 
 For e.g
 
-<img class="screenshot" alt="Taxes and Charges" src="{{docs_base_url}}/assets/img/selling/taxes-and-charges.gif">
+<img class="screenshot" alt="Taxes and Charges" src="/docs/assets/img/selling/taxes-and-charges.gif">
 
-To understand taxes in detail visit [Taxes]({{docs_base_url}}/user/manual/en/setting-up/setting-up-taxes.html).
+To understand taxes in detail visit [Taxes](/docs/user/manual/en/setting-up/setting-up-taxes.html).
 
 ### Sales Team
 
@@ -82,7 +82,7 @@
 
 ERPNext will automatically create new Order and mail a notification to the Email Addresses you set in the 'Notification Email Address'field.
 
-<img class="screenshot" alt="Reccuring Sales Order" src="{{docs_base_url}}/assets/img/selling/recurring-sales-order.png">
+<img class="screenshot" alt="Reccuring Sales Order" src="/docs/assets/img/selling/recurring-sales-order.png">
 
 ### Next Steps
 
diff --git a/erpnext/docs/user/manual/en/selling/setup/index.md b/erpnext/docs/user/manual/en/selling/setup/index.md
index 0ab4b5a..48add3e 100644
--- a/erpnext/docs/user/manual/en/selling/setup/index.md
+++ b/erpnext/docs/user/manual/en/selling/setup/index.md
@@ -1,3 +1,5 @@
+# Setup
+
 This section includes information on how to setup customer groups, sales partners, sales persons and terms and conditions.
 
 It has instructions on how to configure selling settings, in order to enable default fields.
diff --git a/erpnext/docs/user/manual/en/selling/setup/item-price.md b/erpnext/docs/user/manual/en/selling/setup/item-price.md
index 92b41fb..7e352b9 100644
--- a/erpnext/docs/user/manual/en/selling/setup/item-price.md
+++ b/erpnext/docs/user/manual/en/selling/setup/item-price.md
@@ -1,3 +1,5 @@
+# Item Price
+
 Item Price is the record in which you can log sellig and buying rate of an item.
 
 There are two ways to reach to new Item Price form.
@@ -14,7 +16,7 @@
 
 You can create multiple Price List in ERPNext to track Selling and Buying Price List of an item separtely. Also if item's selling prices id changing based on territory, or due to other criteria, you can create multiple selling Price List for it.
 
-+<img class="screenshot" alt="Item Price list" src="{{docs_base_url}}/assets/img/stock/item-price-1.png">
++<img class="screenshot" alt="Item Price list" src="/docs/assets/img/stock/item-price-1.png">
 
 On selection of Price List, its currency and for selling or buying property will be fetched as well.
 
@@ -24,13 +26,13 @@
 
 Select item for which Item Price record is to be created. On selection of Item Code, Item Name and Description will be fetched as well.
 
-+<img class="screenshot" alt="Item Price list" src="{{docs_base_url}}/assets/img/stock/item-price-2.png">
++<img class="screenshot" alt="Item Price list" src="/docs/assets/img/stock/item-price-2.png">
 
 Step 3: Enter Rate
 
 Enter selling/buying rate of an item in Price List currency.
 
-+<img class="screenshot" alt="Item Price list" src="{{docs_base_url}}/assets/img/stock/item-price-3.png">
++<img class="screenshot" alt="Item Price list" src="/docs/assets/img/stock/item-price-3.png">
 
 Step 4: Save Item Price
 
diff --git a/erpnext/docs/user/manual/en/selling/setup/product-bundle.md b/erpnext/docs/user/manual/en/selling/setup/product-bundle.md
index 123eeaf..b587374 100644
--- a/erpnext/docs/user/manual/en/selling/setup/product-bundle.md
+++ b/erpnext/docs/user/manual/en/selling/setup/product-bundle.md
@@ -1,3 +1,5 @@
+# Product Bundle
+
 #Product Bundle
 
 Product Bundle can be seen as something like a "Bill-of-Material" on the Sales side. It's a master where you can list existing items which are bundled together and sold as a set (or bundle). For instance, when you sell a laptop, you need to ensure that charger, mouse and laptop bag are delivered with it and stock levels of these items get affected. 
@@ -11,7 +13,7 @@
 
 Selling > Setup > Product Bundle > New
 
-<img class="screenshot" alt="Product Bundle" src="{{docs_base_url}}/assets/img/selling/product-bundle.png">
+<img class="screenshot" alt="Product Bundle" src="/docs/assets/img/selling/product-bundle.png">
 
 ###Select Parent Item
 
@@ -33,7 +35,7 @@
 When making Sales transactions (Sales Invoice, Sales Order, Delivery Note) 
 the Parent Item will be selected in the main item table.
 
-<img class="screenshot" alt="Product Bundle" src="{{docs_base_url}}/assets/img/selling/product-bundle.gif">
+<img class="screenshot" alt="Product Bundle" src="/docs/assets/img/selling/product-bundle.gif">
 
 On selection of a Parent Item in the main item table, its child items will be fetched in Packing List 
 table of the transaction. If child item is the serialized item, you will be able to specify its Serial Mo. 
diff --git a/erpnext/docs/user/manual/en/selling/setup/sales-partner.md b/erpnext/docs/user/manual/en/selling/setup/sales-partner.md
index 728218f..d8bf0d0 100644
--- a/erpnext/docs/user/manual/en/selling/setup/sales-partner.md
+++ b/erpnext/docs/user/manual/en/selling/setup/sales-partner.md
@@ -1,3 +1,5 @@
+# Sales Partner
+
 People who assist you in getting business are termed as Sales Partners. Sales Partners can be represented by different names in ERPNext. You can call them Channel Partner, Distributor, Dealer, Agent, Retailer, Implementation Partner, Reseller etc.
 
 For each Sales Partner, you can define commission offer to them. When Sales Partner is selected in transactions, their commission is calculated over Net Total of Sales Order/Invoice or Delivery Note.
@@ -10,7 +12,7 @@
 
 Sales Partners are saved with Sales Partner name provided by user.
 
-<img class="screenshot" alt="Sales Partner" src="{{docs_base_url}}/assets/img/selling/sales-partner.png">
+<img class="screenshot" alt="Sales Partner" src="/docs/assets/img/selling/sales-partner.png">
 
 You can track their address and contact details and also allocate Sales Partner for each Item Group, based on Qty and Amount.
 
@@ -19,13 +21,13 @@
 To include the name of your Partner on your website, check the "Show in
 Website" box. When click on "Show in Website", you will see field where you can attach logo of partner's company and enter brief and introduction of partner.
 
-<img class="screenshot" alt="Sales Partner" src="{{docs_base_url}}/assets/img/selling/sales-partner-website.png">
+<img class="screenshot" alt="Sales Partner" src="/docs/assets/img/selling/sales-partner-website.png">
 
 To see listing of partner, you should go to:
 
 https://example.erpnext.com/partners
 
-<img class="screenshot" alt="Sales Partner" src="{{docs_base_url}}/assets/img/crm/sales-partner-listing.png">
+<img class="screenshot" alt="Sales Partner" src="/docs/assets/img/crm/sales-partner-listing.png">
 
 
 {next}
diff --git a/erpnext/docs/user/manual/en/selling/setup/sales-person-target-allocation.md b/erpnext/docs/user/manual/en/selling/setup/sales-person-target-allocation.md
index 08bbd78..874a95e 100644
--- a/erpnext/docs/user/manual/en/selling/setup/sales-person-target-allocation.md
+++ b/erpnext/docs/user/manual/en/selling/setup/sales-person-target-allocation.md
@@ -1,3 +1,5 @@
+# Sales Person Target Allocation
+
 With management of Sales Person, ERPNext also allow you to assign target to Sales Persons based on Item Group and Territory. Based on target allocated and actual sales booked by Sales Person, you will get target variance report for the Sales Person.
 
 ###1. Sales Person - Item Groupwise Target Allocation
@@ -12,7 +14,7 @@
 
 In the Sales Person master, you will find table called Sales Person Target.
 
-<img class="screenshot" alt="Sales person target " src="{{docs_base_url}}/assets/img/selling/sales-person-target-item-group.png">
+<img class="screenshot" alt="Sales person target " src="/docs/assets/img/selling/sales-person-target-item-group.png">
 
 In this table, you should select Item Group, Fiscal Year, Target Qty and Amount. 
 
@@ -23,7 +25,7 @@
 If you wish to spread allocated target across months, then you should setup Monthly Distribution master, and select it in the Sales Person master. Considering our example, target for the month of December will be set as 5 qty (10% of total allocation).
 
 
-<img class="screenshot" alt="Target Distribution" src="{{docs_base_url}}/assets/im/selling/sales-person-target-distribution.gif">
+<img class="screenshot" alt="Target Distribution" src="/docs/assets/im/selling/sales-person-target-distribution.gif">
 
 ####Report - Sales Person Target Variance Item Groupwise
 
@@ -34,7 +36,7 @@
 This report will provide you variance between target and actual performance of Sales Person. This report is based on Sales Order report.
 
 
-<img class="screenshot" alt="Target Item Group" src="{{docs_base_url}}/assets/img/selling/sales-person-item-group-report.png">
+<img class="screenshot" alt="Target Item Group" src="/docs/assets/img/selling/sales-person-item-group-report.png">
 
 As per the report, allocated target to Sales Person for the month of December was 5 qty. However, Sales Order was made for this employee and Item Group for only 3 qty. Hence, variance of 2 qty is shown in the report.
 
@@ -50,7 +52,7 @@
 
 In the Territory master, you will find field to select Territory Manager. This field is linked to "Sales Person" master.
 
-<img class="screenshot" alt="Sales Person Territory Manager" src="{{docs_base_url}}/assets/img/selling/sales-person-territory-manager.png">
+<img class="screenshot" alt="Sales Person Territory Manager" src="/docs/assets/img/selling/sales-person-territory-manager.png">
 
 ####2.2 Allocating Target
 
@@ -64,7 +66,7 @@
 
 This report will provide you variance between target and actual performance of Sales in particular territory. This report is based on Sales Order report. Though Sales Person is defined in the Territory master, its details are not pulled in the report.
 
-<img class="screenshot" alt="Sales Person Territory Report" src="{{docs_base_url}}/assets/img/selling/sales-person-territory-report.png">
+<img class="screenshot" alt="Sales Person Territory Report" src="/docs/assets/img/selling/sales-person-territory-report.png">
 
 ---
 
@@ -76,13 +78,13 @@
 
 `Accounts > Monthly Distributon`
 
-<img class="screenshot" alt="Target Distribution" src="{{docs_base_url}}/assets/img.selling/erpnext/target-distribution.png">
+<img class="screenshot" alt="Target Distribution" src="/docs/assets/img.selling/erpnext/target-distribution.png">
 
 You can link Monthly Distribution while allocating targets in Sales Person as well as in Territory master.
 
 ###See Also
 
-1. [Sales Person Target Allocation]({{docs_base_url}}/user/manual/en/selling/setup/sales-person-target-allocation)
-2. [Using Sales Person in transactions]({{docs_base_url}}/user/manual/en/selling/articles/sales-persons-in-the-sales-transactions)
+1. [Sales Person Target Allocation](/docs/user/manual/en/selling/setup/sales-person-target-allocation)
+2. [Using Sales Person in transactions](/docs/user/manual/en/selling/articles/sales-persons-in-the-sales-transactions)
 
 {next}
diff --git a/erpnext/docs/user/manual/en/selling/setup/selling-settings.md b/erpnext/docs/user/manual/en/selling/setup/selling-settings.md
index d5d7117..96dbc29 100644
--- a/erpnext/docs/user/manual/en/selling/setup/selling-settings.md
+++ b/erpnext/docs/user/manual/en/selling/setup/selling-settings.md
@@ -1,7 +1,9 @@
+# Selling Settings
+
 Selling Setting is where you can define propertiese which will be applied in your selling transactions. 
 Let's check into each property one by one.
 
-<img class="screenshot" alt="Selling Settings" src="{{docs_base_url}}/assets/img/selling/selling-settings.png">
+<img class="screenshot" alt="Selling Settings" src="/docs/assets/img/selling/selling-settings.png">
 
 ####1. Customer Naming By
 
diff --git a/erpnext/docs/user/manual/en/selling/setup/shipping-rule.md b/erpnext/docs/user/manual/en/selling/setup/shipping-rule.md
index c4369cb..0d8c269 100644
--- a/erpnext/docs/user/manual/en/selling/setup/shipping-rule.md
+++ b/erpnext/docs/user/manual/en/selling/setup/shipping-rule.md
@@ -1,6 +1,8 @@
+# Shipping Rule
+
 Using Shipping Rule you can define the cost for delivering the product to the customer.
 You can define different shipping rules for the same item across different territories.
 
-<img class="screenshot" alt="Shipping Rule" src="{{docs_base_url}}/assets/img/selling/shipping-rule.png">
+<img class="screenshot" alt="Shipping Rule" src="/docs/assets/img/selling/shipping-rule.png">
 
 {next}
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/setting-up/articles/change-password.md b/erpnext/docs/user/manual/en/setting-up/articles/change-password.md
index 505d6f3..1a36d8a 100644
--- a/erpnext/docs/user/manual/en/setting-up/articles/change-password.md
+++ b/erpnext/docs/user/manual/en/setting-up/articles/change-password.md
@@ -1,3 +1,5 @@
+# Change Password
+
 #Change User Password
 
 Each ERPNext user can customize password for his/her ERPNext account. Also user with System Manager role will be able to reset password for himself as well as for other users. Following are the steps to go about changing your password.
@@ -5,11 +7,11 @@
 
 ####Step 1: Go to My Setting
 
-<img alt="Change Password" class="screenshot" src="{{docs_base_url}}/assets/img/articles/change-password-1.png">
+<img alt="Change Password" class="screenshot" src="/docs/assets/img/articles/change-password-1.png">
 
 ####Step 2: Set New Password
 
-<img alt="Change Password" class="screenshot" src="{{docs_base_url}}/assets/img/articles/change-password-2.png">
+<img alt="Change Password" class="screenshot" src="/docs/assets/img/articles/change-password-2.png">
 
 Enter the new password and save the form to save changes.
 
diff --git a/erpnext/docs/user/manual/en/setting-up/articles/delete-a-company-and-all-related-transactions.md b/erpnext/docs/user/manual/en/setting-up/articles/delete-a-company-and-all-related-transactions.md
index fa7614f..66db2ec 100644
--- a/erpnext/docs/user/manual/en/setting-up/articles/delete-a-company-and-all-related-transactions.md
+++ b/erpnext/docs/user/manual/en/setting-up/articles/delete-a-company-and-all-related-transactions.md
@@ -1,3 +1,5 @@
+# Delete A Company And All Related Transactions
+
 #Delete All Related Transactions for a Company
 
 Often, users setup all the master data and then create a few dummy records. Then they want to delete the dummy records and the company and start over again, keeping the other master data like Customers, Items, BOMs intact.
@@ -12,7 +14,7 @@
 
 This action will wipe out all the data related to that company like Quotation, Invoices, Purchase Orders etc. So be careful
 
-<img alt="Delete Transactions" class="screenshot" src="{{docs_base_url}}/assets/img/articles/delete-transactions.gif">
+<img alt="Delete Transactions" class="screenshot" src="/docs/assets/img/articles/delete-transactions.gif">
 
 **Note:** If you want to delete the company record itself, use the normal "Delete" button from Menu options. It will also delete Chart of Accounts, Chart of Cost Centers and Warehouse records for that company.
 
diff --git a/erpnext/docs/user/manual/en/setting-up/articles/edit-submitted-document.md b/erpnext/docs/user/manual/en/setting-up/articles/edit-submitted-document.md
index 7148611..09f1f6b 100644
--- a/erpnext/docs/user/manual/en/setting-up/articles/edit-submitted-document.md
+++ b/erpnext/docs/user/manual/en/setting-up/articles/edit-submitted-document.md
@@ -1,3 +1,5 @@
+# Edit Submitted Document
+
 #Edit Submitted Document
 
 To edit submitted document, you need to cancel it first. Followings are steps to edit submitted document.
@@ -6,19 +8,19 @@
 
 You will find Cancel button on upper right corner of submitted document.
 
-<img alt="Cancel Doc" class="screenshot" src="{{docs_base_url}}/assets/img/articles/edit-submitted-doc-1.png">
+<img alt="Cancel Doc" class="screenshot" src="/docs/assets/img/articles/edit-submitted-doc-1.png">
 
 ####Step 2: Amend the document
 
 On cancellation of submitted document, Amend button will be became visible.
 
-<img alt="Amend Doc" class="screenshot" src="{{docs_base_url}}/assets/img/articles/edit-submitted-doc-2.png">
+<img alt="Amend Doc" class="screenshot" src="/docs/assets/img/articles/edit-submitted-doc-2.png">
 
 ####Step 3: Save and Submit the document
 
 On clicking Amend button, same document will become editable again. After Making required changes, save and submit the document.
 
-<img alt="Resave and Submit Doc" class="screenshot" src="{{docs_base_url}}/assets/img/articles/edit-submitted-doc-3.png">
+<img alt="Resave and Submit Doc" class="screenshot" src="/docs/assets/img/articles/edit-submitted-doc-3.png">
 
 <div class="well">Note: If your document linked with other documents, then you will need to cancel last document you made on top of this document. 
 	
diff --git a/erpnext/docs/user/manual/en/setting-up/articles/index.md b/erpnext/docs/user/manual/en/setting-up/articles/index.md
index 0dff60b..fb11735 100644
--- a/erpnext/docs/user/manual/en/setting-up/articles/index.md
+++ b/erpnext/docs/user/manual/en/setting-up/articles/index.md
@@ -1 +1,3 @@
+# Articles
+
 {index}
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/setting-up/articles/integrating-erpnext-with-other-application.md b/erpnext/docs/user/manual/en/setting-up/articles/integrating-erpnext-with-other-application.md
index 3cbf159..e2f6c71 100644
--- a/erpnext/docs/user/manual/en/setting-up/articles/integrating-erpnext-with-other-application.md
+++ b/erpnext/docs/user/manual/en/setting-up/articles/integrating-erpnext-with-other-application.md
@@ -1,7 +1,9 @@
+# Integrating Erpnext With Other Application
+
 #Integrating ERPNext with other Applications
 
-For now, ERPNext has out-of-the-box integration available for some applications like Shopify, your SMS gateway and payment gateway. To integrate ERPNext with other application, you can use REST API of Frappe. Check following links to learn more about REST API of Frappe.
+For now, ERPNext has out-of-the-box integration available for some applications like Shopify, your SMS gateway and payment gateway. To integrate ERPNext with other application, you can use REST API of Frappé. Check following links to learn more about REST API of Frappé.
 
-[Frappe Rest API](https://frappe.github.io/frappe/user/en/guides/integration/rest_api.html)
+[Frappé Rest API](https://frappe.io/docs/user/en/guides/integration/rest_api.html)
 
 <!-- markdown -->
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/setting-up/articles/manage-header-and-footer.md b/erpnext/docs/user/manual/en/setting-up/articles/manage-header-and-footer.md
index 24a9a55..679f0c8 100644
--- a/erpnext/docs/user/manual/en/setting-up/articles/manage-header-and-footer.md
+++ b/erpnext/docs/user/manual/en/setting-up/articles/manage-header-and-footer.md
@@ -1,9 +1,11 @@
+# Manage Header And Footer
+
 #Manage Header And Footer
 
 Check following to learn how to setup Letter Head in ERPNext.
 
-[Managing Letter head]({{docs_base_url}}/user/manual/en/setting-up/setup-wizard/step-5-letterhead-and-logo.html)
+[Managing Letter head](/docs/user/manual/en/setting-up/setup-wizard/step-5-letterhead-and-logo.html)
 
 ERPNext doesn't have option to define standard Footer. As a work around, you can use Terms and Condition master for footer. Content of Terms and Condition is already the last to appear in the standard print formats on transactions. Check following link to learn how to manage Terms and Conditions in ERPNext.
 
-[Terms and Condition]({{docs_base_url}}/user/manual/en/setting-up/print/terms-and-conditions.html)
+[Terms and Condition](/docs/user/manual/en/setting-up/print/terms-and-conditions.html)
diff --git a/erpnext/docs/user/manual/en/setting-up/articles/managing-multiple-companies.md b/erpnext/docs/user/manual/en/setting-up/articles/managing-multiple-companies.md
index 40c12f4..8957408 100644
--- a/erpnext/docs/user/manual/en/setting-up/articles/managing-multiple-companies.md
+++ b/erpnext/docs/user/manual/en/setting-up/articles/managing-multiple-companies.md
@@ -1,10 +1,12 @@
+# Managing Multiple Companies
+
 #Managing Multiple Companies
 
 ERPNext allows you to create multiple companies in a single ERPNext instance.
 
 In one account has multiple companies, you will find option to select Company in each transactions. While most of the records (mostly transactions) will be separated based on Company, there are few masters like Item, Item Group, Customer Group, Territory etc. which are common among all the companies.
 
-If you have separate teams working on each company, you can restrict access of the User to the data of specific Company. Click [here]({{docs_base_url}}/user/manual/en/setting-up/users-and-permissions/) to know how to set permission rules for giving restricted access to the User.
+If you have separate teams working on each company, you can restrict access of the User to the data of specific Company. Click [here](/docs/user/manual/en/setting-up/users-and-permissions/) to know how to set permission rules for giving restricted access to the User.
 
 Following are the steps to add new Company.
 
@@ -16,7 +18,7 @@
 
 Company will be saved with Company Name provided.
 
-<img alt="New Company" class="screenshot" src="{{docs_base_url}}/assets/img/articles/new-company-1.png">
+<img alt="New Company" class="screenshot" src="/docs/assets/img/articles/new-company-1.png">
 
 Also, you can define other properties for new company like:
 
@@ -28,13 +30,13 @@
 
 Value will be auto-filled in most of these field to define company-wise defaults. You can edit/customize it as per your requirement. 
 
-<img alt="New Company" class="screenshot" src="{{docs_base_url}}/assets/img/articles/new-company-2.png">
+<img alt="New Company" class="screenshot" src="/docs/assets/img/articles/new-company-2.png">
 
 ####Chart of Account for New Company
 
 A separate Chart of Account master will be set for each company in the ERPNext. This allows you managing Accounts/Ledger master separately for each company. Also it allows you avail financial statement and reports like Balance Sheet and Profit and Loss Statement separately for each company.
 
-<img alt="New Company" class="screenshot" src="{{docs_base_url}}/assets/img/articles/new-company-3.png">
+<img alt="New Company" class="screenshot" src="/docs/assets/img/articles/new-company-3.png">
 
 
 <!-- markdown -->
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/setting-up/articles/managing-perm-level.md b/erpnext/docs/user/manual/en/setting-up/articles/managing-perm-level.md
index f79229b..9923645 100644
--- a/erpnext/docs/user/manual/en/setting-up/articles/managing-perm-level.md
+++ b/erpnext/docs/user/manual/en/setting-up/articles/managing-perm-level.md
@@ -1,10 +1,12 @@
+# Managing Perm Level
+
 #Managing Perm Level in Permission Manager
 
 In each document, you can group fields by "levels". Each group of field is denoted by a unique number (0, 1, 2, 3 etc.). A separate set of permission rules can be applied to each field group. By default all fields are of level 0.
 
-Perm Level for a field can be defined in the [Customize Form]({{docs_base_url}}/user/manual/en/customize-erpnext/customize-form.html).
+Perm Level for a field can be defined in the [Customize Form](/docs/user/manual/en/customize-erpnext/customize-form.html).
 
-<img alt="Perm Level Field" class="screenshot" src="{{docs_base_url}}/assets/img/articles/perm-level-1.gif">
+<img alt="Perm Level Field" class="screenshot" src="/docs/assets/img/articles/perm-level-1.gif">
 
 If you need to assign different permission of particular field to different users, you can achieve it via Perm Level. Let's consider an example for better understanding.
 
@@ -14,11 +16,11 @@
 
 For Stock Manager, they will have permission on fields on Delivery Note as Perm Level 2 whereas a Stock User will not have any permission on Perm Level 2 for Delivery Note.
 
-<img alt="Perm Level Rule" class="screenshot" src="{{docs_base_url}}/assets/img/articles/perm-level-2.png">
+<img alt="Perm Level Rule" class="screenshot" src="/docs/assets/img/articles/perm-level-2.png">
 
 Considering the same scenario, if you want a Stock User to access a field at Perm Level 2, but not edit it, the Stock User will be assigned permission on Perm Level 2, but only for read, and not for write/edit.
 
-<img alt="Perm Level Rule 2" class="screenshot" src="{{docs_base_url}}/assets/img/articles/perm-level-3.png">
+<img alt="Perm Level Rule 2" class="screenshot" src="/docs/assets/img/articles/perm-level-3.png">
 
 Perm Level (1, 2, 3) not need be in order. Perm Level is primarily for grouping number of fields together, and then assigning permission to Roles for that group. Hence, you can set any perm level for an item, and then do permission setting for it.
 
diff --git a/erpnext/docs/user/manual/en/setting-up/articles/managing-tree-structure-masters.md b/erpnext/docs/user/manual/en/setting-up/articles/managing-tree-structure-masters.md
index 98e67c6..021f36a 100644
--- a/erpnext/docs/user/manual/en/setting-up/articles/managing-tree-structure-masters.md
+++ b/erpnext/docs/user/manual/en/setting-up/articles/managing-tree-structure-masters.md
@@ -1,3 +1,5 @@
+# Managing Tree Structure Masters
+
 #Managing Tree Structure Masters
 
 Some of the masters in ERPNext are maintained in tree structure. Tree structured masters allow you to set Parent master, and Child masters under those Parents. Setting up this structure allows you creating intelligent report, and track growth at each level in the hierarchy. 
@@ -24,7 +26,7 @@
 
 ####Step 2 : Parent Territory
 
-<img alt="Default Territories" class="screenshot" src="{{docs_base_url}}/assets/img/articles/territory-2.png">
+<img alt="Default Territories" class="screenshot" src="/docs/assets/img/articles/territory-2.png">
 
 When click on Parent territory, you will see option to add child territory under it. All default Territory groups will be listed under Parent group called "All Territories". You can add further Parent or child Territory Groups under it.
 
@@ -42,11 +44,11 @@
 
 <div class="well">Only child Territory Groups are selectable in another masters and transactions.</div>
 
-<img alt="Default Territories" class="screenshot" src="{{docs_base_url}}/assets/img/articles/territory-1.gif">
+<img alt="Default Territories" class="screenshot" src="/docs/assets/img/articles/territory-1.gif">
 
 Following is how Child Territories will be listed under a Parent Territory.
 
-<img alt="Adding new Territories" class="screenshot" src="{{docs_base_url}}/assets/img/articles/territory-3.png">
+<img alt="Adding new Territories" class="screenshot" src="/docs/assets/img/articles/territory-3.png">
 
 Following this steps, you can manage other tree masters as well in ERPNext.
 
diff --git a/erpnext/docs/user/manual/en/setting-up/articles/naming-series-current-value.md b/erpnext/docs/user/manual/en/setting-up/articles/naming-series-current-value.md
index 2e7145d..c6b6abe 100644
--- a/erpnext/docs/user/manual/en/setting-up/articles/naming-series-current-value.md
+++ b/erpnext/docs/user/manual/en/setting-up/articles/naming-series-current-value.md
@@ -1,6 +1,8 @@
+# Naming Series Current Value
+
 #Setting the Current Value for Naming Series
 
-Naming Series feature allows you to define prefix for naming of a documents. For example, if a Sales Order has prefix "SO", then the series will be generated as SO-00001, SO-00002... and so on. Click [here]({{docs_base_url}}/user/manual/en/setting-up/settings/naming-series.html) to learn how you can customize Number Series for a transaction/master in ERPNext.
+Naming Series feature allows you to define prefix for naming of a documents. For example, if a Sales Order has prefix "SO", then the series will be generated as SO-00001, SO-00002... and so on. Click [here](/docs/user/manual/en/setting-up/settings/naming-series.html) to learn how you can customize Number Series for a transaction/master in ERPNext.
 
 ### 1. Setting the Current Value
 
@@ -14,19 +16,19 @@
 
 #### Update Series Section
 
-<img alt="Update Series Section" class="screenshot" src="{{docs_base_url}}/assets/img/articles/current-no-1.png">
+<img alt="Update Series Section" class="screenshot" src="/docs/assets/img/articles/current-no-1.png">
 
 #### Select Prefix
 
 Considering our scenario, prefix for Sales Order will be "SO".
 
-<img alt="Series Prefix" class="screenshot" src="{{docs_base_url}}/assets/img/articles/current-no-2.png">
+<img alt="Series Prefix" class="screenshot" src="/docs/assets/img/articles/current-no-2.png">
 
 #### Current Value
 
 If you have currently 12 Sales Orders created in your account, then current value updated will be 12. You can edit Current Value to 322, and then click on Update Series Number.
 
-<img alt="Series Current Value" class="screenshot" src="{{docs_base_url}}/assets/img/articles/current-no-3.png">
+<img alt="Series Current Value" class="screenshot" src="/docs/assets/img/articles/current-no-3.png">
 
 With this setting, you will have numbering for the New Sales Orders starting with #323.
 
diff --git a/erpnext/docs/user/manual/en/setting-up/articles/overwriting-data-from-data-import-tool.md b/erpnext/docs/user/manual/en/setting-up/articles/overwriting-data-from-data-import-tool.md
index dafac3b..4632af4 100644
--- a/erpnext/docs/user/manual/en/setting-up/articles/overwriting-data-from-data-import-tool.md
+++ b/erpnext/docs/user/manual/en/setting-up/articles/overwriting-data-from-data-import-tool.md
@@ -1,3 +1,5 @@
+# Overwriting Data From Data Import Tool
+
 #Overwriting Data from Data Import Tool
 
 Data Import Tool allows importing documents (like customers, Suppliers, Orders, Invoices etc.) from spreadsheet file into ERPNext. The very same tool can also be used for overwrite values in the existing documents.
@@ -14,7 +16,7 @@
 
 Since items to be over-written will be already available in the system, while downloading template, click on "Download with data" to get all the existing items in the template.
 
-<img alt="Download Template" class="screenshot" src="{{docs_base_url}}/assets/img/articles/overwrite-1.gif">
+<img alt="Download Template" class="screenshot" src="/docs/assets/img/articles/overwrite-1.gif">
 	
 ####Step 2: Prepare Data
 
@@ -22,7 +24,7 @@
 
 Enter new value in the Item Group column for an item. Since Item Group is a master in itself, ensure Item Group entered in the spreadsheet file is already added in the Item Group master.
 
-<img alt="Update Values" class="screenshot" src="{{docs_base_url}}/assets/img/articles/overwrite-2.png">
+<img alt="Update Values" class="screenshot" src="/docs/assets/img/articles/overwrite-2.png">
 
 Since we are overwriting only Item Group, only following columns will be mandatory.
 
@@ -36,13 +38,13 @@
 
 After updating Item Groups in spreadheet, come back to Data Import Tool in ERPNext. Browse and select the File/template which has data to be overwritten.
 
-<img alt="Browse template" class="screenshot" src="{{docs_base_url}}/assets/img/articles/overwrite-3.gif">
+<img alt="Browse template" class="screenshot" src="/docs/assets/img/articles/overwrite-3.gif">
 
 ####Step 4: Upload
 
 On clicking Import, Item Group will be over-written.
 
-<img alt="Upload" class="screenshot" src="{{docs_base_url}}/assets/img/articles/overwrite-4.png">
+<img alt="Upload" class="screenshot" src="/docs/assets/img/articles/overwrite-4.png">
 
 If validation of values fails, then it will indicate row no. of spreadsheet for which validation failed and needs correction. In that case, you should corrected value in that row of spreadsheet, and then import same file again. If validation fails even for one row, none of the records are imported/overwritten.
 
diff --git a/erpnext/docs/user/manual/en/setting-up/articles/rename-user.md b/erpnext/docs/user/manual/en/setting-up/articles/rename-user.md
index 643d243..71f7b8b 100644
--- a/erpnext/docs/user/manual/en/setting-up/articles/rename-user.md
+++ b/erpnext/docs/user/manual/en/setting-up/articles/rename-user.md
@@ -1,3 +1,5 @@
+# Rename User
+
 #Rename User
 
 Renaming functionality allows you to edit id of specific record. User is saved with person's Email Address. Only User with System Manager's role will be able to rename User IDs.
@@ -14,13 +16,13 @@
 
 From Menu, select Rename.
 
-<img alt="Rename" class="screenshot" src="{{docs_base_url}}/assets/img/articles/rename-user-1.png">
+<img alt="Rename" class="screenshot" src="/docs/assets/img/articles/rename-user-1.png">
 
 #### Step 3: Update
 
 Enter valid Email Address and click on Rename.
 
-<img alt="Update" class="screenshot" src="{{docs_base_url}}/assets/img/articles/rename-user-2.png"> 
+<img alt="Update" class="screenshot" src="/docs/assets/img/articles/rename-user-2.png"> 
 
 After successful renaming, User will be able login using updated user id.
 
diff --git a/erpnext/docs/user/manual/en/setting-up/articles/using-custom-domain-on-erpnext.md b/erpnext/docs/user/manual/en/setting-up/articles/using-custom-domain-on-erpnext.md
index ff631b1..2d82a53 100644
--- a/erpnext/docs/user/manual/en/setting-up/articles/using-custom-domain-on-erpnext.md
+++ b/erpnext/docs/user/manual/en/setting-up/articles/using-custom-domain-on-erpnext.md
@@ -1,3 +1,5 @@
+# Using Custom Domain On Erpnext
+
 <!-- markdown -->
 
 If you have subscribed to any of the plans at [ERPNext](https://erpnext.com), you can have us serve your site on your custom domain (for example at http://example.com). This enables your website to be served on a custom domain.
diff --git a/erpnext/docs/user/manual/en/setting-up/authorization-rule.md b/erpnext/docs/user/manual/en/setting-up/authorization-rule.md
index f6daa19..8221366 100644
--- a/erpnext/docs/user/manual/en/setting-up/authorization-rule.md
+++ b/erpnext/docs/user/manual/en/setting-up/authorization-rule.md
@@ -1,3 +1,5 @@
+# Authorization Rule
+
 Authorization Rule is a tool to define rule for conditional authorization.
 
 If you sales and purchase transactions of higher value or discount requires an authorization from senior manager, you can set authorization rule for it.
@@ -34,7 +36,7 @@
 
 Set Above Value. Given the exmaple, Above Value will be set as 10000.
 
-<img class="screenshot" alt="Authorization Rule" src="{{docs_base_url}}/assets/img/setup/auth-rule.png">
+<img class="screenshot" alt="Authorization Rule" src="/docs/assets/img/setup/auth-rule.png">
 
 If Sales User tries submitting Sales Order of value higher than 10000, then he will get error message.
 
diff --git a/erpnext/docs/user/manual/en/setting-up/bar-code.md b/erpnext/docs/user/manual/en/setting-up/bar-code.md
index 2077842..e317628 100644
--- a/erpnext/docs/user/manual/en/setting-up/bar-code.md
+++ b/erpnext/docs/user/manual/en/setting-up/bar-code.md
@@ -1,3 +1,5 @@
+# Bar Code
+
 A Barcode is a machine-readable code in the form of numbers and a pattern of
 parallel lines of varying widths, printed on a commodity and used especially
 for stock control.
@@ -18,7 +20,7 @@
 
 #### Figure 1: Check the box 'Item Barcode'
 
-<img class="screenshot" alt="Barcode" src="{{docs_base_url}}/assets/img/setup/barcode-1.png">
+<img class="screenshot" alt="Barcode" src="/docs/assets/img/setup/barcode-1.png">
 
 
 To start scanning with a bar-code, go to  
@@ -39,7 +41,7 @@
   
 #### Figure 2: Check the box 'Is POS'
 
-<img class="screenshot" alt="Barcode" src="{{docs_base_url}}/assets/img/setup/barcode-2.png">
+<img class="screenshot" alt="Barcode" src="/docs/assets/img/setup/barcode-2.png">
 
 
 Go to Item and click on Add new row.  
diff --git a/erpnext/docs/user/manual/en/setting-up/calculate-incentive-for-sales-team.md b/erpnext/docs/user/manual/en/setting-up/calculate-incentive-for-sales-team.md
index 72f36c0..d591f40 100644
--- a/erpnext/docs/user/manual/en/setting-up/calculate-incentive-for-sales-team.md
+++ b/erpnext/docs/user/manual/en/setting-up/calculate-incentive-for-sales-team.md
@@ -1,3 +1,5 @@
+# Calculate Incentive For Sales Team
+
 Can be used in any Sales Transaction with **Sales Team** Table:
 
     
diff --git a/erpnext/docs/user/manual/en/setting-up/company-setup.md b/erpnext/docs/user/manual/en/setting-up/company-setup.md
index 1a07b86..429e201 100644
--- a/erpnext/docs/user/manual/en/setting-up/company-setup.md
+++ b/erpnext/docs/user/manual/en/setting-up/company-setup.md
@@ -1,3 +1,5 @@
+# Company Setup
+
 Enter your company details to complete Company Setup. Mention the type of
 business, under Domain. You can enter manufacturing, retail, or services
 depending on the nature of your business activity. If you have more than one
diff --git a/erpnext/docs/user/manual/en/setting-up/data/bulk-rename.md b/erpnext/docs/user/manual/en/setting-up/data/bulk-rename.md
index e1c8b13..57db1a5 100644
--- a/erpnext/docs/user/manual/en/setting-up/data/bulk-rename.md
+++ b/erpnext/docs/user/manual/en/setting-up/data/bulk-rename.md
@@ -12,4 +12,4 @@
 
 To rename multiple records, upload a **.csv** file with the old name in the first column and the new name in the second column and click on **Upload**.
 
-<img class="screenshot" alt="Bulk Rename" src="{{docs_base_url}}/assets/img/setup/data/rename.png">
\ No newline at end of file
+<img class="screenshot" alt="Bulk Rename" src="/docs/assets/img/setup/data/rename.png">
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/setting-up/data/data-import-tool.md b/erpnext/docs/user/manual/en/setting-up/data/data-import-tool.md
index a5dd939..b9c6ccc 100644
--- a/erpnext/docs/user/manual/en/setting-up/data/data-import-tool.md
+++ b/erpnext/docs/user/manual/en/setting-up/data/data-import-tool.md
@@ -1,8 +1,10 @@
+# Data Import Tool
+
 The Data Import Tool is a great way to upload (or edit) bulk data, specially master data, into the system.
 
 To Open the data import tool, you either go to Setup or go to the Transaction you want to Import. If Data Import is allowed, you will see an Import Button:
 
-<img alt="Start Import" class="screenshot" src="{{docs_base_url}}/assets/img/setup/data-import/data-import-1.png">
+<img alt="Start Import" class="screenshot" src="/docs/assets/img/setup/data-import/data-import-1.png">
 
 The tool has two sections, one to download a template and the second to upload
 the data.
@@ -23,33 +25,33 @@
   * Click on "Download Blank Template".
   * For bulk editing, you can click on "Download With Data".
   
-<img alt="Download Template" class="screenshot" src="{{docs_base_url}}/assets/img/setup/data-import/data-import-tool-template.gif">
+<img alt="Download Template" class="screenshot" src="/docs/assets/img/setup/data-import/data-import-tool-template.gif">
 
 ### 2\. Fill in the Template
 
 After downloading the template, open it in a spreadsheet application and fill
 in the data below the column headings.
 
-<img alt="Download Template" class="screenshot" src="{{docs_base_url}}/assets/img/setup/data-import/import-file.png">
+<img alt="Download Template" class="screenshot" src="/docs/assets/img/setup/data-import/import-file.png">
 
 Then export your template or save it as a Excel or Comma Separated Values (CSV)
 file. To export the document in Excel tick the checkbox for Download in Excel File Format 
 
-<img alt="Download Template" class="screenshot" src="{{docs_base_url}}/assets/img/setup/data-import/import-csv.png">
+<img alt="Download Template" class="screenshot" src="/docs/assets/img/setup/data-import/import-csv.png">
 
 ### Download in Excel
 
-<img alt="Download Template" class="screenshot" src="{{docs_base_url}}/assets/img/setup/data-import/data-import-excel.png">
+<img alt="Download Template" class="screenshot" src="/docs/assets/img/setup/data-import/data-import-excel.png">
 
 ### 3\. Upload the File ethier in .xlsx or .csv 
 
 Finally attach the  file in the section. Click on the "Upload". Once the upload is successfull click Import"
 button.
 
-<img alt="Upload" class="screenshot" src="{{docs_base_url}}/assets/img/setup/data-import/data-import-3.png">
+<img alt="Upload" class="screenshot" src="/docs/assets/img/setup/data-import/data-import-3.png">
 
 
-<img alt="Upload" class="screenshot" src="{{docs_base_url}}/assets/img/setup/data-import/data-import-4.png">
+<img alt="Upload" class="screenshot" src="/docs/assets/img/setup/data-import/data-import-4.png">
 
 #### Notes:
 
diff --git a/erpnext/docs/user/manual/en/setting-up/email/.md b/erpnext/docs/user/manual/en/setting-up/email/.md
index 5e024b0..5f85a80 100644
--- a/erpnext/docs/user/manual/en/setting-up/email/.md
+++ b/erpnext/docs/user/manual/en/setting-up/email/.md
@@ -1,3 +1,5 @@
+# 
+
 Emails are the nervous system of business communication and ERPNext has been
 designed to make good use of this.
 
diff --git a/erpnext/docs/user/manual/en/setting-up/email/email-account.md b/erpnext/docs/user/manual/en/setting-up/email/email-account.md
index d5aca1a..7e9b8a7 100644
--- a/erpnext/docs/user/manual/en/setting-up/email/email-account.md
+++ b/erpnext/docs/user/manual/en/setting-up/email/email-account.md
@@ -10,7 +10,7 @@
 
 There are 2 types of email accounts, outgoing and incoming. Outgoing email accounts use an SMTP service to send emails and emails are retrived from your inbox using a IMAP or POP service. Most email providers such as GMail, Outlook or Yahoo provide these services.
 
-<img class="screenshot" alt="Defining Criteria" src="{{docs_base_url}}/assets/img/setup/email/email-account-list.png">
+<img class="screenshot" alt="Defining Criteria" src="/docs/assets/img/setup/email/email-account-list.png">
 
 ### Outgoing Email Accounts
 
@@ -18,19 +18,19 @@
 
 To setup an outgoing Email Account, check on **Enable Outgoing** and set your SMTP server settings, if you are using a popular email service, these will be preset for you.
 
-<img class="screenshot" alt="Outgoing EMail" src="{{docs_base_url}}/assets/img/setup/email/email-account-sending.png">
+<img class="screenshot" alt="Outgoing EMail" src="/docs/assets/img/setup/email/email-account-sending.png">
 
 ### Incoming Email Accounts
 
 To setup an incoming Email Account, check on **Enable Incoming** and set your POP3 settings, if you are using a popular email service, these will be preset for you.
 
-<img class="screenshot" alt="Incoming EMail" src="{{docs_base_url}}/assets/img/setup/email/email-account-incoming.png">
+<img class="screenshot" alt="Incoming EMail" src="/docs/assets/img/setup/email/email-account-incoming.png">
 
 ### Setting Import Conditions for Email Import
 
 Email Accounts allows you to set conditions according to the data of the incoming emails. The email will be imported to ERPNext only if the all conditions are true. For example if you want to import an email if the subject is "Some important email", you put doc.subject == "Some important email" in the conditions textbox. You can also set more complex conditions by combining them, as shown on the following screenshot.
 
-<img class="screenshot" alt="Incoming EMail Conditions" src="{{docs_base_url}}/assets/img/setup/email/email-account-incoming-conditions.png">
+<img class="screenshot" alt="Incoming EMail Conditions" src="/docs/assets/img/setup/email/email-account-incoming-conditions.png">
 
 ### How ERPNext handles replies
 
@@ -40,6 +40,6 @@
 
 If you would like ERPNext to notify you if an email is unreplied for a certain amount of time, then you can set **Notify if Unreplied**. Here you can set the number of minutes to wait before notifications are sent and whom the notifications must go to.
 
-<img class="screenshot" alt="Incoming EMail" src="{{docs_base_url}}/assets/img/setup/email/email-account-unreplied.png">
+<img class="screenshot" alt="Incoming EMail" src="/docs/assets/img/setup/email/email-account-unreplied.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/en/setting-up/email/email-alerts.md b/erpnext/docs/user/manual/en/setting-up/email/email-alerts.md
index 8d239ea..2b89d7d 100644
--- a/erpnext/docs/user/manual/en/setting-up/email/email-alerts.md
+++ b/erpnext/docs/user/manual/en/setting-up/email/email-alerts.md
@@ -32,13 +32,13 @@
 ### Setting a Subject
 You can retrieve the data for a particular field by using `doc.[field_name]`. To use it in your subject / message, you have to surround it with `{% raw %}{{ }}{% endraw %}`. These are called [Jinja](http://jinja.pocoo.org/) tags. So, for example to get the name of a document, you use `{% raw %}{{ doc.name }}{% endraw %}`. The below example sends an email on saving a Task with the Subject, "TASK##### has been created"
 
-<img class="screenshot" alt="Setting Subject" src="{{docs_base_url}}/assets/img/setup/email/email-alert-subject.png">
+<img class="screenshot" alt="Setting Subject" src="/docs/assets/img/setup/email/email-alert-subject.png">
 
 ### Setting Conditions
 
 Email alerts allow you to set conditions according to the field data in your documents. For example, if you want to recieve an Email if a Lead has been saved as "Interested" as it's status, you put `doc.status == "Interested"` in the conditions textbox. You can also set more complex conditions by combining them.
 
-<img class="screenshot" alt="Setting Condition" src="{{docs_base_url}}/assets/img/setup/email/email-alert-condition.png">
+<img class="screenshot" alt="Setting Condition" src="/docs/assets/img/setup/email/email-alert-condition.png">
 
 The above example will send an Email Alert when a Task is saved with the status "Open" and the Expected End Date for the Task is the date on or before the date on which it was saved on.
 
@@ -74,14 +74,14 @@
 
 Then you can use that as a condition in the **Condition** rules to ensure emails are not sent multiple times
 
-<img class="screenshot" alt="Setting Property in Email Alert" src="{{docs_base_url}}/assets/img/setup/email/email-alert-subject.png">
+<img class="screenshot" alt="Setting Property in Email Alert" src="/docs/assets/img/setup/email/email-alert-subject.png">
 
 ### Example
 
 1. Defining the Criteria
-    <img class="screenshot" alt="Defining Criteria" src="{{docs_base_url}}/assets/img/setup/email/email-alert-1.png">
+    <img class="screenshot" alt="Defining Criteria" src="/docs/assets/img/setup/email/email-alert-1.png">
 
 1. Setting the Recipients and Message
-    <img class="screenshot" alt="Set Message" src="{{docs_base_url}}/assets/img/setup/email/email-alert-2.png">
+    <img class="screenshot" alt="Set Message" src="/docs/assets/img/setup/email/email-alert-2.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/en/setting-up/email/email-digest.md b/erpnext/docs/user/manual/en/setting-up/email/email-digest.md
index 5fa836e..bceba37 100644
--- a/erpnext/docs/user/manual/en/setting-up/email/email-digest.md
+++ b/erpnext/docs/user/manual/en/setting-up/email/email-digest.md
@@ -12,6 +12,6 @@
 
 Set your frequency, check all the items you want to receive in your weekly update and select the user ids whom you want to send the Digest to.
 
-<img class="screenshot" alt="Email Digest" src="{{docs_base_url}}/assets/img/setup/email/email-digest.png">
+<img class="screenshot" alt="Email Digest" src="/docs/assets/img/setup/email/email-digest.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/en/setting-up/email/email-inbox.md b/erpnext/docs/user/manual/en/setting-up/email/email-inbox.md
index d098d0c..14dad78 100644
--- a/erpnext/docs/user/manual/en/setting-up/email/email-inbox.md
+++ b/erpnext/docs/user/manual/en/setting-up/email/email-inbox.md
@@ -12,7 +12,7 @@
 
 `Setup > User > New User`
 
-<img class="screenshot" alt="Email User" src="{{docs_base_url}}/assets/img/setup/email/email-user.png">
+<img class="screenshot" alt="Email User" src="/docs/assets/img/setup/email/email-user.png">
 
 #### Step 2: Create Email Domain
 
@@ -22,7 +22,7 @@
 
 `Setup > Emails > Email Domain > New`
 
-<img class="screenshot" alt="Email Domain" src="{{docs_base_url}}/assets/img/setup/email/email-domain.png">
+<img class="screenshot" alt="Email Domain" src="/docs/assets/img/setup/email/email-domain.png">
 
 Once you have configured an Email Domain for your Email Service, it will be used for creating Email Accounts for all the Users in your ERPNext account.
 
@@ -43,44 +43,44 @@
 
 If you are creating an Email Account for your colleague who's Email Password is unknown to you, then check field "Awaiting Password". As per this setting, a User (for whom Email Account is created) will get a prompt to enter email password when accessing his/her ERPNext Account.
 
-<img class="screenshot" alt="Email Password" src="{{docs_base_url}}/assets/img/setup/email/email-password.png">
+<img class="screenshot" alt="Email Password" src="/docs/assets/img/setup/email/email-password.png">
 
 In the Email Account, select Email Domain only if you are using Email Service other than Email Services listed above. Else, you can just select Email Service, leave Email Domain blank and proceed forward.
 
-<img class="screenshot" alt="Email Service" src="{{docs_base_url}}/assets/img/setup/email/email-service.png">
+<img class="screenshot" alt="Email Service" src="/docs/assets/img/setup/email/email-service.png">
 
 >If you are creating an Email Account for Email Inbox of a User, then leave Append To field as blank.
 
-For more details on how to setup Email Account, [click here]({{docs_base_url}}/user/manual/en/setting-up/email/email-account.html").
+For more details on how to setup Email Account, [click here](/docs/user/manual/en/setting-up/email/email-account.html").
 
 #### Step 4: Linking Email Account in User master
 
 Once an Email Account is created for an User, select that Email Account in the User. This will ensure that emails pulled from the said Email ID will accessible only to this User in your ERPNext account.
 
-<img class="screenshot" alt="Email User Link" src="{{docs_base_url}}/assets/img/setup/email/email-user-link.png">
+<img class="screenshot" alt="Email User Link" src="/docs/assets/img/setup/email/email-user-link.png">
 
 ## Email Inbox
 
 If you have correctly configured Email Inbox as instructed above, then on the login of a User, Email Inbox icon will be visible. This will navigate user to Email Inbox view within the ERPNext account. All the Emails received on that email will be fetch and listed in the Email Inbox view. User will be able to open emails and take various actions against it.
 
-<img class="screenshot" alt="Email Inbox" src="{{docs_base_url}}/assets/img/setup/email/email-inbox.png">
+<img class="screenshot" alt="Email Inbox" src="/docs/assets/img/setup/email/email-inbox.png">
 
 #### Folders
 
 In ERPNext, you can link multiple Email Accounts with the single User. To switch to Inbox of different email account and access other folders like Sent Emails, Spam, Trash, check Email Inbox option in the left bar.
 
-<img class="screenshot" alt="Email Folders" src="{{docs_base_url}}/assets/img/setup/email/email-folders.png">
+<img class="screenshot" alt="Email Folders" src="/docs/assets/img/setup/email/email-folders.png">
 
 #### Actions
 
 On the emails in your inbox, you can take various actions like Reply, Forward, Mark as Spam or Trash.
 
-<img class="screenshot" alt="Email Actions" src="{{docs_base_url}}/assets/img/setup/email/email-actions.png">
+<img class="screenshot" alt="Email Actions" src="/docs/assets/img/setup/email/email-actions.png">
 
 #### Make Options
 
 The Email Inbox within ERPNext also allow you to quickly create ERPNext transaction based on email received. From an Email itself, you can a Issue, Lead or Opportunity based on the context of the email.
 
-<img class="screenshot" alt="Make from Email" src="{{docs_base_url}}/assets/img/setup/email/make-from-email.png">
+<img class="screenshot" alt="Make from Email" src="/docs/assets/img/setup/email/make-from-email.png">
 
 
diff --git a/erpnext/docs/user/manual/en/setting-up/email/email-reports.md b/erpnext/docs/user/manual/en/setting-up/email/email-reports.md
index a27a2dc..95db8ba 100644
--- a/erpnext/docs/user/manual/en/setting-up/email/email-reports.md
+++ b/erpnext/docs/user/manual/en/setting-up/email/email-reports.md
@@ -14,7 +14,7 @@
 
 Select the Report, the user for which you want to create this report (permissions will apply for this user), the Email Addresses where you want this report emailed and the frequency of the report.
 
-<img class="screenshot" alt="Make Auto Email Report" src="{{docs_base_url}}/assets/img/setup/email/auto-email-1.png">
+<img class="screenshot" alt="Make Auto Email Report" src="/docs/assets/img/setup/email/auto-email-1.png">
 
 #### Step 2
 
@@ -22,11 +22,11 @@
 
 Step 1. Select the Report, the user for which you want to create this report. Permissions will apply for this user
 
-<img class="screenshot" alt="With Filters" src="{{docs_base_url}}/assets/img/setup/email/auto-email-2.png">
+<img class="screenshot" alt="With Filters" src="/docs/assets/img/setup/email/auto-email-2.png">
 
 Click on the table to edit the table
 
-<img class="screenshot" alt="Edit Filters" src="{{docs_base_url}}/assets/img/setup/email/auto-email-3.png">
+<img class="screenshot" alt="Edit Filters" src="/docs/assets/img/setup/email/auto-email-3.png">
 
 #### Test
 
@@ -34,4 +34,4 @@
 
 Here is an example of the email you will receive for a report
 
-<img class="screenshot" alt="Report by Email" src="{{docs_base_url}}/assets/img/setup/email/auto-email-4.png">
+<img class="screenshot" alt="Report by Email" src="/docs/assets/img/setup/email/auto-email-4.png">
diff --git a/erpnext/docs/user/manual/en/setting-up/email/sending-email.md b/erpnext/docs/user/manual/en/setting-up/email/sending-email.md
index 504c76d..b4566de 100644
--- a/erpnext/docs/user/manual/en/setting-up/email/sending-email.md
+++ b/erpnext/docs/user/manual/en/setting-up/email/sending-email.md
@@ -2,8 +2,8 @@
 
 In ERPNext you can send any document as email (with a PDF attachment) by clicking on `Menu > Email` from any open document.
 
-<img class="screenshot" alt="Send Email" src="{{docs_base_url}}/assets/img/setup/email/send-email.gif">
+<img class="screenshot" alt="Send Email" src="/docs/assets/img/setup/email/send-email.gif">
 
-**Note:** You must have outgoing [email accounts]({{docs_base_url}}/user/manual/en/setting-up/email/email-account.html) setup for this.
+**Note:** You must have outgoing [email accounts](/docs/user/manual/en/setting-up/email/email-account.html) setup for this.
 
 {next}
diff --git a/erpnext/docs/user/manual/en/setting-up/feedback/manual-feedback-request.md b/erpnext/docs/user/manual/en/setting-up/feedback/manual-feedback-request.md
index 4afaee1..7f873ce 100644
--- a/erpnext/docs/user/manual/en/setting-up/feedback/manual-feedback-request.md
+++ b/erpnext/docs/user/manual/en/setting-up/feedback/manual-feedback-request.md
@@ -6,12 +6,12 @@
 To request a feedback manually go to respective document e.g. Sales Order, Issue etc.
 and click on Ask a Feedback option in Menu.
 
-<img class="screenshot" alt="Setting Condition" src="{{docs_base_url}}/assets/img/setup/feedback/manual-feedback-request-option.png">
+<img class="screenshot" alt="Setting Condition" src="/docs/assets/img/setup/feedback/manual-feedback-request-option.png">
 
 Then, user can enter the feedback request details like email id, message and send the
 feedback request mail.
 
-<img class="screenshot" alt="Setting Condition" src="{{docs_base_url}}/assets/img/setup/feedback/manual-feedback-request.png">
+<img class="screenshot" alt="Setting Condition" src="/docs/assets/img/setup/feedback/manual-feedback-request.png">
 
 Note. If Feedback Trigger is already configured for the document then system will fetch
 Feedback Request details (email id, message)
diff --git a/erpnext/docs/user/manual/en/setting-up/feedback/resend-feedback-request.md b/erpnext/docs/user/manual/en/setting-up/feedback/resend-feedback-request.md
index 0dbb3b7..641d0a0 100644
--- a/erpnext/docs/user/manual/en/setting-up/feedback/resend-feedback-request.md
+++ b/erpnext/docs/user/manual/en/setting-up/feedback/resend-feedback-request.md
@@ -2,15 +2,15 @@
 
 We can also Resend the Feedback Request to the Customer/User.
 
-<img class="screenshot" alt="Setting Condition" src="{{docs_base_url}}/assets/img/setup/feedback/timeline-rating-and-feedback.png">
+<img class="screenshot" alt="Setting Condition" src="/docs/assets/img/setup/feedback/timeline-rating-and-feedback.png">
 
 To resend the Feedback Request we will need to navigate the Communication by clicking the `Details` link on Timeline Feedback.
 
-<img class="screenshot" alt="Setting Condition" src="{{docs_base_url}}/assets/img/setup/feedback/resend-feedback-request-button.png">
+<img class="screenshot" alt="Setting Condition" src="/docs/assets/img/setup/feedback/resend-feedback-request-button.png">
 
 On Resend Button click a dialog with the Feedback Request message will appear user can either send the
 Feedback Request with same message or he/she can make the changes in the Feedback Request message.
 
-<img class="screenshot" alt="Setting Condition" src="{{docs_base_url}}/assets/img/setup/feedback/resend-feedback-request-custom-message.png">
+<img class="screenshot" alt="Setting Condition" src="/docs/assets/img/setup/feedback/resend-feedback-request-custom-message.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/en/setting-up/feedback/setting-up-feedback.md b/erpnext/docs/user/manual/en/setting-up/feedback/setting-up-feedback.md
index 373d703..441e78e 100644
--- a/erpnext/docs/user/manual/en/setting-up/feedback/setting-up-feedback.md
+++ b/erpnext/docs/user/manual/en/setting-up/feedback/setting-up-feedback.md
@@ -19,13 +19,13 @@
 ### Setting a Subject
 You can retrieve the data for a particular field by using `doc.[field_name]`. To use it in your subject/message, you have to surround it with `{% raw %}{{ }}{% endraw %}`. These are called [Jinja](http://jinja.pocoo.org/) tags. So, for example, to get the name of a document, you use `{% raw %}{{ doc.name }}{% endraw %}`. The below example sends an feedback request whenever Issue is Closed with the Subject, "ISS-##### Issue is Resolved"
 
-<img class="screenshot" alt="Setting Subject" src="{{docs_base_url}}/assets/img/setup/feedback/feedback-trigger-subject.png">
+<img class="screenshot" alt="Setting Subject" src="/docs/assets/img/setup/feedback/feedback-trigger-subject.png">
 
 ### Setting Conditions
 
 Feedback Trigger allows you to set conditions according to the field data in your documents. The feedback request email will be sent on document save only if the all conditions are true For example if you want to trigger the feedback request mail to a customer if an Issue is has been saved as "Closed" as it's status, you put `doc.status == "Closed"` in the conditions textbox. You can also set more complex conditions by combining them.
 
-<img class="screenshot" alt="Setting Condition" src="{{docs_base_url}}/assets/img/setup/feedback/feedback-trigger-condition.png">
+<img class="screenshot" alt="Setting Condition" src="/docs/assets/img/setup/feedback/feedback-trigger-condition.png">
 
 ### Setting a Message
 
@@ -45,9 +45,9 @@
 ### Example
 
 1. Setting up Feedback Trigger
-    <img class="screenshot" alt="Defining Criteria" src="{{docs_base_url}}/assets/img/setup/feedback/setting-up-feedback-trigger.png">
+    <img class="screenshot" alt="Defining Criteria" src="/docs/assets/img/setup/feedback/setting-up-feedback-trigger.png">
 
 1. Setting the Recipients and Message
-    <img class="screenshot" alt="Set Message" src="{{docs_base_url}}/assets/img/setup/feedback/setting-up-feedback-trigger-message.png">
+    <img class="screenshot" alt="Set Message" src="/docs/assets/img/setup/feedback/setting-up-feedback-trigger-message.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/en/setting-up/feedback/submit-feedback.md b/erpnext/docs/user/manual/en/setting-up/feedback/submit-feedback.md
index 9069f37..663aae1 100644
--- a/erpnext/docs/user/manual/en/setting-up/feedback/submit-feedback.md
+++ b/erpnext/docs/user/manual/en/setting-up/feedback/submit-feedback.md
@@ -3,17 +3,17 @@
 Once feedback request mail is sent the user/customer. He/She can visit the URL to submit the feedback
 as well as rating for the document.
 
-<img class="screenshot" alt="Setting Condition" src="{{docs_base_url}}/assets/img/setup/feedback/submit-feedback.png">
+<img class="screenshot" alt="Setting Condition" src="/docs/assets/img/setup/feedback/submit-feedback.png">
 
 Once Feedback is submitted the feedback details message and ratings will be recorded and will be shown on Document sidebar and timeline. Also once the Feedback is successfully submitted by the user the link shared to the user will be expired and can not be used to submit the Feedback again.
 
 On Document sidebar the latest feedback ratings will displayed.
 
-<img class="screenshot" alt="Setting Condition" src="{{docs_base_url}}/assets/img/setup/feedback/sidebar-ratings.png">
+<img class="screenshot" alt="Setting Condition" src="/docs/assets/img/setup/feedback/sidebar-ratings.png">
 
 Also, The Feedback details such as Feedback message and ratings will be shown in the Document's Timeline along
 with Comment, Email.
 
-<img class="screenshot" alt="Setting Condition" src="{{docs_base_url}}/assets/img/setup/feedback/timeline-rating-and-feedback.png">
+<img class="screenshot" alt="Setting Condition" src="/docs/assets/img/setup/feedback/timeline-rating-and-feedback.png">
 
 {next}
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/setting-up/integrations/dropbox-backup.md b/erpnext/docs/user/manual/en/setting-up/integrations/dropbox-backup.md
index 0839072..37f74a2 100644
--- a/erpnext/docs/user/manual/en/setting-up/integrations/dropbox-backup.md
+++ b/erpnext/docs/user/manual/en/setting-up/integrations/dropbox-backup.md
@@ -1,3 +1,5 @@
+# Dropbox Backup
+
 #Setting Up Dropbox Backups
 
 We always recommend customers to maintain backup of their data in ERPNext. The database backup is downloaded in the form of an SQL file. If needed, this SQL file of backup can be restored in the another ERPNext account as well.
@@ -11,7 +13,7 @@
 
 Set Frequency to download backup in your Dropbox account.
 
-<img class="screenshot" alt="set frequency" src="{{docs_base_url}}/assets/img/setup/integrations/setup-backup-frequency.png">
+<img class="screenshot" alt="set frequency" src="/docs/assets/img/setup/integrations/setup-backup-frequency.png">
 
 ####Step 2: Allow Dropbox Access
 
@@ -21,13 +23,13 @@
 
 Login to your Dropbox account by entering login credentials.
 
-<img class="screenshot" alt="Login" src="{{docs_base_url}}/assets/img/setup/integrations/dropbox-2.png">
+<img class="screenshot" alt="Login" src="/docs/assets/img/setup/integrations/dropbox-2.png">
 
 ####Step 4: Allow
 
 On successful login, you will find a confirmation message as following. Click on "Allow" to let your ERPNext account have access to your Dropbox account.
 
-<img class="screenshot" alt="Allow" src="{{docs_base_url}}/assets/img/setup/integrations/dropbox-3.png">
+<img class="screenshot" alt="Allow" src="/docs/assets/img/setup/integrations/dropbox-3.png">
 
 With this, a folder called "ERPNext" will be created in your Dropbox account, and database backup will start to auto-download in it.
 
@@ -39,18 +41,18 @@
 
 ####Step 2:Create a new app
 
-<img class="screenshot" alt="Create new" src="{{docs_base_url}}/assets/img/setup/integrations/dropbox-open-3.png">
+<img class="screenshot" alt="Create new" src="/docs/assets/img/setup/integrations/dropbox-open-3.png">
 
 ####Step 3: Fill in details for the app
 
-<img class="screenshot" alt="Choose Dropbox API and type as APP Folder" src="{{docs_base_url}}/assets/img/setup/integrations/dropbox-open-1.png">
+<img class="screenshot" alt="Choose Dropbox API and type as APP Folder" src="/docs/assets/img/setup/integrations/dropbox-open-1.png">
 
 -
-<img class="screenshot" alt="Setup APP Name" src="{{docs_base_url}}/assets/img/setup/integrations/dropbox-open-2.png">
+<img class="screenshot" alt="Setup APP Name" src="/docs/assets/img/setup/integrations/dropbox-open-2.png">
 
 ####Step  4: Setup Redirect URL in app
 
-<img class="screenshot" alt="Set Redirect URL" src="{{docs_base_url}}/assets/img/setup/integrations/dropbox_redirect_uri.png">
+<img class="screenshot" alt="Set Redirect URL" src="/docs/assets/img/setup/integrations/dropbox_redirect_uri.png">
 
 ####Step 5: Settings in Site Config
 
diff --git a/erpnext/docs/user/manual/en/setting-up/integrations/index.md b/erpnext/docs/user/manual/en/setting-up/integrations/index.md
index e7b5a61..ed5a56e 100644
--- a/erpnext/docs/user/manual/en/setting-up/integrations/index.md
+++ b/erpnext/docs/user/manual/en/setting-up/integrations/index.md
@@ -1,3 +1,5 @@
+# Integrations
+
 
 Integration Services is platform to configure 3rd Party Services.
 
diff --git a/erpnext/docs/user/manual/en/setting-up/integrations/ldap-integration.md b/erpnext/docs/user/manual/en/setting-up/integrations/ldap-integration.md
index ec6e848..759077a 100644
--- a/erpnext/docs/user/manual/en/setting-up/integrations/ldap-integration.md
+++ b/erpnext/docs/user/manual/en/setting-up/integrations/ldap-integration.md
@@ -1,3 +1,5 @@
+# Ldap Integration
+
 #Setting up LDAP
 
 Lightweight Directory Access Protocol is a centralised access controll system used by many small medium scale organisations.
@@ -11,9 +13,9 @@
 
 To enable ldap service, you need to configure parameters like LDAP Server Url, Organizational Unit, UID, Base Distinguished Name (DN) and Password for Base DN
 
-<img class="screenshot" alt="LDAP Settings" src="{{docs_base_url}}/assets/img/setup/integrations/ldap_settings.png">
+<img class="screenshot" alt="LDAP Settings" src="/docs/assets/img/setup/integrations/ldap_settings.png">
 
 
 After setting up LDAP parameters, on login screen, the system enables **Login Via LDAP** option.
 
-<img class="screenshot" alt="LOGIN via LDAP" src="{{docs_base_url}}/assets/img/setup/integrations/login_via_ldap.png">
+<img class="screenshot" alt="LOGIN via LDAP" src="/docs/assets/img/setup/integrations/login_via_ldap.png">
diff --git a/erpnext/docs/user/manual/en/setting-up/integrations/paypal-integration.md b/erpnext/docs/user/manual/en/setting-up/integrations/paypal-integration.md
index 314eb64..8b309e8 100644
--- a/erpnext/docs/user/manual/en/setting-up/integrations/paypal-integration.md
+++ b/erpnext/docs/user/manual/en/setting-up/integrations/paypal-integration.md
@@ -1,3 +1,5 @@
+# Paypal Integration
+
 #Setting up PayPal
 
 A payment gateway is an e-commerce application service provider service that authorizes credit card payments for e-businesses, online retailers, bricks and clicks, or traditional brick and mortar.
@@ -11,17 +13,17 @@
 
 To enable PayPal payment service, you need to configure parameters like API Username, API Password and Signature.
 
-<img class="screenshot" alt="PayPal Settings" src="{{docs_base_url}}/assets/img/setup/integrations/paypal_settings.png">
+<img class="screenshot" alt="PayPal Settings" src="/docs/assets/img/setup/integrations/paypal_settings.png">
 
 You also can set test payment environment, by settings `Use Sandbox`
 
 On enabling service, the system will create Payment Gateway record and Account head in chart of accounts having account type as Bank.
 
-<img class="screenshot" alt="PayPal COA" src="{{docs_base_url}}/assets/img/setup/integrations/paypal_coa.png">
+<img class="screenshot" alt="PayPal COA" src="/docs/assets/img/setup/integrations/paypal_coa.png">
 
 Also it will create Payment Gateway Account entry. Payment Gateway Account is configuration hub from this you can set account head from existing COA, default Payment Request email body template.
 
-<img class="screenshot" alt="Payment Gateway Account" src="{{docs_base_url}}/assets/img/setup/integrations/payment_gateway_account_paypal.png">
+<img class="screenshot" alt="Payment Gateway Account" src="/docs/assets/img/setup/integrations/payment_gateway_account_paypal.png">
 
 After enabling service and configuring Payment Gateway Account your system is able to accept online payments.
 
@@ -33,20 +35,20 @@
 #### Paypal Sanbox API Signature
  - Login to paypal developer account, <a href="https://developer.paypal.com/">PayPal Developer Account</a>
  - From **Accounts** tab. create a new business account.
-<img class="screenshot" alt="Payment Request" src="{{ docs_base_url }}/assets/img/setup/integrations/setup-sanbox-1.png">
+<img class="screenshot" alt="Payment Request" src="/docs/assets/img/setup/integrations/setup-sanbox-1.png">
  
  - From this account profile you will get your sandbox api credentials
-<img class="screenshot" alt="Payment Request" src="{{ docs_base_url }}/assets/img/setup/integrations/sanbox-credentials.png">
+<img class="screenshot" alt="Payment Request" src="/docs/assets/img/setup/integrations/sanbox-credentials.png">
 
 
 ---
 
 #### PayPal Account API Signature
  - Login to PayPal Account and go to profile
-<img class="screenshot" alt="Payment Request" src="{{ docs_base_url }}/assets/img/setup/integrations/api-step-1.png">
+<img class="screenshot" alt="Payment Request" src="/docs/assets/img/setup/integrations/api-step-1.png">
 
  - From **My Selling Tools** go to **api Access**
-<img class="screenshot" alt="Payment Request" src="{{ docs_base_url }}/assets/img/setup/integrations/api-step-2.png">
+<img class="screenshot" alt="Payment Request" src="/docs/assets/img/setup/integrations/api-step-2.png">
 
  - On API Access Page, choose option 2 to generate API credentials
-<img class="screenshot" alt="Payment Request" src="{{ docs_base_url }}/assets/img/setup/integrations/api-step-3.png">
+<img class="screenshot" alt="Payment Request" src="/docs/assets/img/setup/integrations/api-step-3.png">
diff --git a/erpnext/docs/user/manual/en/setting-up/integrations/razorpay-integration.md b/erpnext/docs/user/manual/en/setting-up/integrations/razorpay-integration.md
index 09cd911..ac8bfd7 100644
--- a/erpnext/docs/user/manual/en/setting-up/integrations/razorpay-integration.md
+++ b/erpnext/docs/user/manual/en/setting-up/integrations/razorpay-integration.md
@@ -1,3 +1,5 @@
+# Razorpay Integration
+
 #Setting up Razorpay
 
 A payment gateway is an e-commerce application service provider service that authorizes credit card payments for e-businesses, online retailers, bricks and clicks, or traditional brick and mortar.
@@ -10,15 +12,15 @@
 #### Setup  Razorpay 
 
 To enable Razorpay payment service, you need to configure parameters like API Key, API Secret
-<img class="screenshot" alt="Razorpay Settings" src="{{docs_base_url}}/assets/img/setup/integrations/razorpay_settings.png">
+<img class="screenshot" alt="Razorpay Settings" src="/docs/assets/img/setup/integrations/razorpay_settings.png">
 
 On enabling service, the system will create Payment Gateway record and Account head in chart of account with account type as Bank.
 
-<img class="screenshot" alt="Razorpay COA" src="{{docs_base_url}}/assets/img/setup/integrations/razorpay_coa.png">
+<img class="screenshot" alt="Razorpay COA" src="/docs/assets/img/setup/integrations/razorpay_coa.png">
 
 Also it will create Payment Gateway Account entry. Payment Gateway Account is configuration hub from this you can set account head from existing COA, default Payment Request email body template.
 
-<img class="screenshot" alt="Payment Gateway Account" src="{{docs_base_url}}/assets/img/setup/integrations/payment_gateway_account_razorpay.png">
+<img class="screenshot" alt="Payment Gateway Account" src="/docs/assets/img/setup/integrations/payment_gateway_account_razorpay.png">
 
 After enabling service and configuring Payment Gateway Account your system is able to accept online payments.
 
diff --git a/erpnext/docs/user/manual/en/setting-up/integrations/stripe-integration.md b/erpnext/docs/user/manual/en/setting-up/integrations/stripe-integration.md
index 05f70f0..6915a9c 100644
--- a/erpnext/docs/user/manual/en/setting-up/integrations/stripe-integration.md
+++ b/erpnext/docs/user/manual/en/setting-up/integrations/stripe-integration.md
@@ -1,3 +1,5 @@
+# Stripe Integration
+
 #Setting up Stripe
 
 To setup Stripe,
@@ -6,15 +8,15 @@
 #### Setup  Stripe 
 
 To enable Stripe payment service, you need to configure parameters like Publishable Key, Secret Key
-<img class="screenshot" alt="Razorpay Settings" src="{{docs_base_url}}/assets/img/setup/integrations/stripe_setting.png">
+<img class="screenshot" alt="Razorpay Settings" src="/docs/assets/img/setup/integrations/stripe_setting.png">
 
 On enabling service, the system will create Payment Gateway record and Account head in chart of account with account type as Bank.
 
-<img class="screenshot" alt="Stripe COA" src="{{docs_base_url}}/assets/img/setup/integrations/stripe_coa.png">
+<img class="screenshot" alt="Stripe COA" src="/docs/assets/img/setup/integrations/stripe_coa.png">
 
 Also it will create Payment Gateway Account entry. Payment Gateway Account is configuration hub from this you can set account head from existing COA, default Payment Request email body template.
 
-<img class="screenshot" alt="Payment Gateway Account" src="{{docs_base_url}}/assets/img/setup/integrations/payment_gateway_account_stripe.png">
+<img class="screenshot" alt="Payment Gateway Account" src="/docs/assets/img/setup/integrations/payment_gateway_account_stripe.png">
 
 After configuring Payment Gateway Account your system is able to accept online payments.
 
diff --git a/erpnext/docs/user/manual/en/setting-up/pos-setting.md b/erpnext/docs/user/manual/en/setting-up/pos-setting.md
index 9bfd819..375c251 100644
--- a/erpnext/docs/user/manual/en/setting-up/pos-setting.md
+++ b/erpnext/docs/user/manual/en/setting-up/pos-setting.md
@@ -1,4 +1,4 @@
-# Point of Sale Setting
+# Point of Sale Profile
 
 POS includes advanced features to cater to different functionality, such as
 inventory management, CRM, financials, warehousing, etc., all built into the
@@ -10,14 +10,20 @@
 and efficient as possible. To do this, you can create a POS Setting for a user
 from:
 
-> Accounts > Setup > Point-of-Sale Setting
+> Accounts > Setup > Point-of-Sale Profile
 
 Set default values as defined.
 
-<img class="screenshot" alt="POS Setting" src="{{docs_base_url}}/assets/img/pos-setting/pos-setting.png">
+<img class="screenshot" alt="POS Setting" src="/docs/assets/img/pos-setting/pos_profile.png">
+
+To set the default mode of payment, enabled the option default in the mode of payments table
+<img class="screenshot" alt="POS Setting" src="/docs/assets/img/pos-setting/default_mop.png">
+
+User can sale the particular products to the particular customers from the POS by adding item groups, customer groups in the POS Profile.
+<img class="screenshot" alt="POS Setting" src="/docs/assets/img/pos-setting/item_customer_group.png">
 
 > Important : If you specify a particular User, the POS setting will be
 applied only to that User. If the User option is left blank, the setting will
-be set for all users. To understand POS in detail visit [Point of Sale]({{docs_base_url}}/user/manual/en/accounts/point-of-sale-pos-invoice.html)
+be set for all users. To understand POS in detail visit [Point of Sale](/docs/user/manual/en/accounts/point-of-sale-pos-invoice.html)
 
 {next}
diff --git a/erpnext/docs/user/manual/en/setting-up/price-lists.md b/erpnext/docs/user/manual/en/setting-up/price-lists.md
index a42afb9..a965581 100644
--- a/erpnext/docs/user/manual/en/setting-up/price-lists.md
+++ b/erpnext/docs/user/manual/en/setting-up/price-lists.md
@@ -1,3 +1,5 @@
+# Price Lists
+
 ERPNext lets you maintain multiple selling and buying prices for an Item using Price Lists. A PriceList is a name you can give to a set of Item prices. 
 
 Why would you want Price Lists? You have different prices for different zones (based on the shipping costs), for different currencies etc.
@@ -8,7 +10,7 @@
 
 > Selling/Buying/Stock  > Setup > Price List >> New
 
-<img class="screenshot" alt="Price List" src="{{docs_base_url}}/assets/img/price-list/price-list.png">
+<img class="screenshot" alt="Price List" src="/docs/assets/img/price-list/price-list.png">
 
 * These Price List will be used when creating Item Price record to track selling or buying price of an item. Click here to learn more about Item Price.
 
diff --git a/erpnext/docs/user/manual/en/setting-up/print/address-template.md b/erpnext/docs/user/manual/en/setting-up/print/address-template.md
index 53dfef1..34df11c 100644
--- a/erpnext/docs/user/manual/en/setting-up/print/address-template.md
+++ b/erpnext/docs/user/manual/en/setting-up/print/address-template.md
@@ -26,6 +26,6 @@
 
 ### Example
 
-<img class="screenshot" alt="Print Heading" src="{{docs_base_url}}/assets/img/setup/print/address-format.png">
+<img class="screenshot" alt="Print Heading" src="/docs/assets/img/setup/print/address-format.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/en/setting-up/print/cheque-print-template.md b/erpnext/docs/user/manual/en/setting-up/print/cheque-print-template.md
index 44dd412..3a4566a 100644
--- a/erpnext/docs/user/manual/en/setting-up/print/cheque-print-template.md
+++ b/erpnext/docs/user/manual/en/setting-up/print/cheque-print-template.md
@@ -1,8 +1,10 @@
+# Cheque Print Template
+
 #Cheque Print Template
 
 Business involves making payment to various parties like suppliers and employees. Payment can be made in various modes like cash, NEFT or cheque. If you are making a payment via cheque, you can also create a Print Format for printing Cheque from ERPNext based on the Payment Entry.
 
-<img class="screenshot" alt="Sample Cheque" src="{{docs_base_url}}/assets/img/setup/print/sample-cheque.jpg">
+<img class="screenshot" alt="Sample Cheque" src="/docs/assets/img/setup/print/sample-cheque.jpg">
 
 Using the Cheque Print Template you can generate a new Print Format based. It will be created based the cheque format provided by your bank. 
 
@@ -14,13 +16,13 @@
 
 In the Cheque Print Template, for each value (say Payee, Date), exact co-ordinates are provided based on where that value should be printed on a cheque. Co-ordinates are provided in centi-meter.
 
-<img class="screenshot" alt="Sample Cheque" src="{{docs_base_url}}/assets/img/setup/print/cheque-1.png">
+<img class="screenshot" alt="Sample Cheque" src="/docs/assets/img/setup/print/cheque-1.png">
 
 ####New Format via Scanning
 
 To speed up creation of a new cheque printing format, you can upload scanned image of the cheque. Considering the scanned image for the cheque, system automatically updates co-ordinates for each value like party name, amount, date, amount in words etc.
 
-<img class="screenshot" alt="Sample Cheque" src="{{docs_base_url}}/assets/img/setup/print/cheque-2.png">
+<img class="screenshot" alt="Sample Cheque" src="/docs/assets/img/setup/print/cheque-2.png">
 
 ####New format by manual entry
 You can manually provide the co-ordinate for each value based on where you want to to be printed on the cheque.
@@ -28,18 +30,18 @@
 ####Preview
 Based on co-ordinates provided for all the values, a preview be shown as to how the values will be printed on the cheque.
 
-<img class="screenshot" alt="Sample Cheque" src="{{docs_base_url}}/assets/img/setup/print/cheque-3.png">
+<img class="screenshot" alt="Sample Cheque" src="/docs/assets/img/setup/print/cheque-3.png">
 
 ####New Print Format
 
 If the preview looks promising, click on the button to create a new Print Format for printing cheque. Based on the values provided in the Cheque Print Template, the system will auto-generate an HTML script for the cheque’s Print Format.
 
-<img class="screenshot" alt="Sample Cheque" src="{{docs_base_url}}/assets/img/setup/print/cheque-4.png">
+<img class="screenshot" alt="Sample Cheque" src="/docs/assets/img/setup/print/cheque-4.png">
 
 ####Printing Cheque
 
 New print format generated for the cheque will be visible in the Payment Entry form. After creating the payment entry, you will be able to print transaction details on the cheque.
 
-<img class="screenshot" alt="Sample Cheque" src="{{docs_base_url}}/assets/img/setup/print/cheque-5.gif">
+<img class="screenshot" alt="Sample Cheque" src="/docs/assets/img/setup/print/cheque-5.gif">
 
 
diff --git a/erpnext/docs/user/manual/en/setting-up/print/custom-translations.md b/erpnext/docs/user/manual/en/setting-up/print/custom-translations.md
index 1dab1c1..fe5a0d1 100644
--- a/erpnext/docs/user/manual/en/setting-up/print/custom-translations.md
+++ b/erpnext/docs/user/manual/en/setting-up/print/custom-translations.md
@@ -1,3 +1,5 @@
+# Custom Translations
+
 #Custom Translations
 
 User can print the customer's and supplier's document in their local language. For an example if I have customers from germany, france who want quotation in german, french language will be possible with these feature.
@@ -6,11 +8,11 @@
 
 In the Customer master, select default Language. Say default language for the Customer is <b>deutsch</b>.
 
-<img src="{{docs_base_url}}/assets/img/multilingual_print_format/set_customer_default_lang.png" class="screenshot">
+<img src="/docs/assets/img/multilingual_print_format/set_customer_default_lang.png" class="screenshot">
 
 Same way, you can also set default language in the Supplier master.
 
-<img src="{{docs_base_url}}/assets/img/multilingual_print_format/set_supplier_default_lang.png" class="screenshot">
+<img src="/docs/assets/img/multilingual_print_format/set_supplier_default_lang.png" class="screenshot">
 
 ####Print Preview in the Party's Language
 
@@ -18,17 +20,17 @@
 
 Customer Quotation print preview in customer's default language.
 
-<img src="{{ docs_base_url }}/assets/img/multilingual_print_format/customer_quotation.png" class="screenshot">
+<img src="/docs/assets/img/multilingual_print_format/customer_quotation.png" class="screenshot">
 
 Supplier Quotation print preview in supplier's default language.
 
-<img src="{{ docs_base_url }}/assets/img/multilingual_print_format/supplier_quotation.png" class="screenshot">
+<img src="/docs/assets/img/multilingual_print_format/supplier_quotation.png" class="screenshot">
 
 ####What to do if want to print with another language?
 
 User can have option to select alternate language on print view.
 
-<img src="{{ docs_base_url }}/assets/img/multilingual_print_format/alternate_language.png" class="screenshot">
+<img src="/docs/assets/img/multilingual_print_format/alternate_language.png" class="screenshot">
 
 ####Custom Translation
 
@@ -36,11 +38,11 @@
 
 `Setup > Settings > Translation List > New`
 
-<img src="{{ docs_base_url }}/assets/img/multilingual_print_format/translation.png" class="screenshot">
+<img src="/docs/assets/img/multilingual_print_format/translation.png" class="screenshot">
 
 The translation is applied when user select language as Italiano on supplier quotation's print preview.
 
-<img src="{{ docs_base_url }}/assets/img/multilingual_print_format/custom_translation.png" class="screenshot">
+<img src="/docs/assets/img/multilingual_print_format/custom_translation.png" class="screenshot">
 
 
 
diff --git a/erpnext/docs/user/manual/en/setting-up/print/letter-head.md b/erpnext/docs/user/manual/en/setting-up/print/letter-head.md
index 72b79e1..1243903 100644
--- a/erpnext/docs/user/manual/en/setting-up/print/letter-head.md
+++ b/erpnext/docs/user/manual/en/setting-up/print/letter-head.md
@@ -1,3 +1,5 @@
+# Letter Head
+
 #Letter Head
 
 Each company has default Letter Head for their company. This Letter Head values are generally set as Header and Footer in the documents. In ERPNext, you can capture the these details in the Letter Head master.
@@ -19,7 +21,7 @@
   * Logo Image: You can insert the image in your Letter Head record by clicking on image icon. Once image is inserted, HTML for it will be generated automatically.
   * Other information (like Address, tax ID etc.) that you want to put on your letter head.
 
-<img class="screenshot" alt="Print Heading" src="{{docs_base_url}}/assets/img/setup/print/letter-head.png">
+<img class="screenshot" alt="Print Heading" src="/docs/assets/img/setup/print/letter-head.png">
   
 > If you want to make this the default letter head, click on “Is Default”.
 
@@ -31,7 +33,7 @@
 
 This is how the letter head looks in a document's print.
 
-<img class="screenshot" alt="Print Heading" src="{{docs_base_url}}/assets/img/setup/print/letter-head-1.png">
+<img class="screenshot" alt="Print Heading" src="/docs/assets/img/setup/print/letter-head-1.png">
 
 > Please note that Footer will be visible only when document's print is seen in the PDF. Footer will not be visible in the HTML based print preview.
 
diff --git a/erpnext/docs/user/manual/en/setting-up/print/print-format-builder.md b/erpnext/docs/user/manual/en/setting-up/print/print-format-builder.md
index f979927..4e94045 100644
--- a/erpnext/docs/user/manual/en/setting-up/print/print-format-builder.md
+++ b/erpnext/docs/user/manual/en/setting-up/print/print-format-builder.md
@@ -10,19 +10,19 @@
 
 ### Step 1: Make a new Format
 
-<img class="screenshot" alt="Send Email" src="{{docs_base_url}}/assets/img/setup/print/print-format-builder-1.gif">
+<img class="screenshot" alt="Send Email" src="/docs/assets/img/setup/print/print-format-builder-1.gif">
 
 ### Step 2: Add a new Field
 
 To add a field, just drag it from the left sidebar and add it in your layout. You can edit the layout by clicking on the settings <i class="octicon octicon-gear"></i> icon.
 
-<img class="screenshot" alt="Send Email" src="{{docs_base_url}}/assets/img/setup/print/print-format-builder-2.gif">
+<img class="screenshot" alt="Send Email" src="/docs/assets/img/setup/print/print-format-builder-2.gif">
 
 ### Step 3
 
 To remove a field, just drag it back into the fields sidebar.
 
-<img class="screenshot" alt="Send Email" src="{{docs_base_url}}/assets/img/setup/print/print-format-builder-3.gif">
+<img class="screenshot" alt="Send Email" src="/docs/assets/img/setup/print/print-format-builder-3.gif">
 
 ### Step 4
 
@@ -30,7 +30,7 @@
 
 Then click on **Edit HTML** to edit your content.
 
-<img class="screenshot" alt="Send Email" src="{{docs_base_url}}/assets/img/setup/print/print-format-builder-4.gif">
+<img class="screenshot" alt="Send Email" src="/docs/assets/img/setup/print/print-format-builder-4.gif">
 
 To save your format, just click on the **Save** button on the top.
 
diff --git a/erpnext/docs/user/manual/en/setting-up/print/print-headings.md b/erpnext/docs/user/manual/en/setting-up/print/print-headings.md
index 98fbf53..de3395b 100644
--- a/erpnext/docs/user/manual/en/setting-up/print/print-headings.md
+++ b/erpnext/docs/user/manual/en/setting-up/print/print-headings.md
@@ -1,3 +1,5 @@
+# Print Headings
+
 Print Headings are the names which you can give to your sales invoices,
 supplier quotations etc. You can create a list of names for different business
 communications.
@@ -8,10 +10,10 @@
 
 #### Figure 1: Save Print Heading
 
-<img class="screenshot" alt="Print Heading" src="{{docs_base_url}}/assets/img/setup/print/print-heading.png">
+<img class="screenshot" alt="Print Heading" src="/docs/assets/img/setup/print/print-heading.png">
 
 Example of a change in print heading is shown below:
 
-<img class="screenshot" alt="Print Heading" src="{{docs_base_url}}/assets/img/setup/print/print-heading-1.png">
+<img class="screenshot" alt="Print Heading" src="/docs/assets/img/setup/print/print-heading-1.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/en/setting-up/print/print-settings.md b/erpnext/docs/user/manual/en/setting-up/print/print-settings.md
index cdf3c54..220b467 100644
--- a/erpnext/docs/user/manual/en/setting-up/print/print-settings.md
+++ b/erpnext/docs/user/manual/en/setting-up/print/print-settings.md
@@ -6,6 +6,6 @@
 
 > Setup > Printing and Branding > Print Settings
 
-<img class="screenshot" alt="Print Settings" src="{{docs_base_url}}/assets/img/setup/print/print-settings.png">
+<img class="screenshot" alt="Print Settings" src="/docs/assets/img/setup/print/print-settings.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/en/setting-up/print/terms-and-conditions.md b/erpnext/docs/user/manual/en/setting-up/print/terms-and-conditions.md
index 7340f17..28e803d 100644
--- a/erpnext/docs/user/manual/en/setting-up/print/terms-and-conditions.md
+++ b/erpnext/docs/user/manual/en/setting-up/print/terms-and-conditions.md
@@ -1,3 +1,5 @@
+# Terms And Conditions
+
 Terms and conditions are the general and special arrangements, provisions, requirements, rules, specifications, and standards that a company follows. These specifications are an integral part of an agreement or contract that the company gets into with its customers, suppliers or partners.
 
 ### 1. Make a new Terms and Conditions
@@ -6,13 +8,13 @@
 
 `Selling > Terms and Condition > New`
 
-<img class="screenshot" alt="Terms and Conditions" src="{{docs_base_url}}/assets/img/setup/print/terms-1.png">
+<img class="screenshot" alt="Terms and Conditions" src="/docs/assets/img/setup/print/terms-1.png">
 
 ### 2. Editing in HTML
 
 Content of Terms and Condition can be formatted as per your preference, and also insert images where needed. If you have expertise in HTML, you will also find option to edit the content of Terms and Condition in HTML.
 
-<img class="screenshot" alt="Terms and Conditions, Edit HTML" src="{{docs_base_url}}/assets/img/setup/print/terms-2.png">
+<img class="screenshot" alt="Terms and Conditions, Edit HTML" src="/docs/assets/img/setup/print/terms-2.png">
 
 This also allows you to use Terms and Condition master for footer, which otherwise is not available in ERPNext as dedicated functionality. Since contents of Terms and Condition is always the last to appear in the print format, details of footer should be inserted at the end of the content, so that it actually appears as footer in the print format.
 
@@ -20,6 +22,6 @@
 
 In transactions, you will find section of Terms and Condition where you will be able to search and fetched required Terms and Condition master.
 
-<img class="screenshot" alt="Terms and Conditions, Select in document" src="{{docs_base_url}}/assets/img/setup/print/terms-3.png">
+<img class="screenshot" alt="Terms and Conditions, Select in document" src="/docs/assets/img/setup/print/terms-3.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/en/setting-up/setting-company-sales-goal.md b/erpnext/docs/user/manual/en/setting-up/setting-company-sales-goal.md
index e18ad05..ca0c32a 100644
--- a/erpnext/docs/user/manual/en/setting-up/setting-company-sales-goal.md
+++ b/erpnext/docs/user/manual/en/setting-up/setting-company-sales-goal.md
@@ -2,14 +2,14 @@
 
 Monthly sales targets can be set for a company via the Company master. By default, the Company master dashboard features past sales stats.
 
-<img class="screenshot" alt="Sales Graph" src="{{docs_base_url}}/assets/img/sales_goal/sales_history_graph.png">
+<img class="screenshot" alt="Sales Graph" src="/docs/assets/img/sales_goal/sales_history_graph.png">
 
 You can set the **Sales Target** field to track progress to track progress with respect to it.
 
-<img class="screenshot" alt="Setting Sales Goal" src="{{docs_base_url}}/assets/img/sales_goal/setting_sales_goal.gif">
+<img class="screenshot" alt="Setting Sales Goal" src="/docs/assets/img/sales_goal/setting_sales_goal.gif">
 
 The target progress is also shown in notifications:
 
-<img class="screenshot" alt="Sales Notification" src="{{docs_base_url}}/assets/img/sales_goal/sales_goal_notification.png">
+<img class="screenshot" alt="Sales Notification" src="/docs/assets/img/sales_goal/sales_goal_notification.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/en/setting-up/setting-up-taxes.md b/erpnext/docs/user/manual/en/setting-up/setting-up-taxes.md
index a3c11ab..18f2f01 100644
--- a/erpnext/docs/user/manual/en/setting-up/setting-up-taxes.md
+++ b/erpnext/docs/user/manual/en/setting-up/setting-up-taxes.md
@@ -1,3 +1,5 @@
+# Setting Up Taxes
+
 One of the primary motivator for compulsory use of accounting tools is
 calculation of Taxes. You may or may not make money but your government will
 (to help your country be safe and prosperous). And if you don’t calculate your
@@ -22,11 +24,11 @@
 
 Item Tax table can be found as a section within the Item Master document.
 
-<img class="screenshot" alt="Item Tax" src="{{docs_base_url}}/assets/img/taxes/item-tax.png">
+<img class="screenshot" alt="Item Tax" src="/docs/assets/img/taxes/item-tax.png">
 
   * **Inclusive and Exclusive Tax**: ERPNext allows you to enter Item rates which are tax inclusive.
 
-<img class="screenshot" alt="Inclusive Tax" src="{{docs_base_url}}/assets/img/taxes/inclusive-tax.png">
+<img class="screenshot" alt="Inclusive Tax" src="/docs/assets/img/taxes/inclusive-tax.png">
 
   * **Exception to the rule**: Item tax settings are required only if a particular Item has a different tax rate than the rate defined in the standard tax Account
   * **Item tax is overwrite-able**: You can overwrite or change the item tax rate by going to the Item master in the Item tax table.
@@ -49,7 +51,7 @@
 
 > Setup > Accounts > Sales Taxes and Charge Master
 
-<img class="screenshot" alt="Sales Tax Master" src="{{docs_base_url}}/assets/img/taxes/sales-tax-master.png">
+<img class="screenshot" alt="Sales Tax Master" src="/docs/assets/img/taxes/sales-tax-master.png">
 
 When you create a new master, you will have to add a row for each tax type.
 
diff --git a/erpnext/docs/user/manual/en/setting-up/settings/global-defaults.md b/erpnext/docs/user/manual/en/setting-up/settings/global-defaults.md
index 412572a..87ebcba 100644
--- a/erpnext/docs/user/manual/en/setting-up/settings/global-defaults.md
+++ b/erpnext/docs/user/manual/en/setting-up/settings/global-defaults.md
@@ -6,6 +6,6 @@
 
 Whenever a new document is created, these values will be set as default.
 
-<img class="screenshot" alt="Global Defaults" src="{{docs_base_url}}/assets/img/setup/settings/global-defaults.png">
+<img class="screenshot" alt="Global Defaults" src="/docs/assets/img/setup/settings/global-defaults.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/en/setting-up/settings/module-settings.md b/erpnext/docs/user/manual/en/setting-up/settings/module-settings.md
index 3e2a109..f6ede50 100644
--- a/erpnext/docs/user/manual/en/setting-up/settings/module-settings.md
+++ b/erpnext/docs/user/manual/en/setting-up/settings/module-settings.md
@@ -10,6 +10,6 @@
 
 Check / uncheck the items to show / hide.
 
-<img class="screenshot" alt="Module Settings" src="{{docs_base_url}}/assets/img/setup/settings/show-hide-modules.png">
+<img class="screenshot" alt="Module Settings" src="/docs/assets/img/setup/settings/show-hide-modules.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/en/setting-up/settings/naming-series.md b/erpnext/docs/user/manual/en/setting-up/settings/naming-series.md
index 086a272..71029bc 100644
--- a/erpnext/docs/user/manual/en/setting-up/settings/naming-series.md
+++ b/erpnext/docs/user/manual/en/setting-up/settings/naming-series.md
@@ -42,7 +42,7 @@
 
 See how to set the naming series
 
-<img class="screenshot" alt="Naming Series" src="{{docs_base_url}}/assets/img/setup/settings/naming-series.gif">
+<img class="screenshot" alt="Naming Series" src="/docs/assets/img/setup/settings/naming-series.gif">
 
 {next}
 
diff --git a/erpnext/docs/user/manual/en/setting-up/settings/system-settings.md b/erpnext/docs/user/manual/en/setting-up/settings/system-settings.md
index b436b46..43f47f1 100644
--- a/erpnext/docs/user/manual/en/setting-up/settings/system-settings.md
+++ b/erpnext/docs/user/manual/en/setting-up/settings/system-settings.md
@@ -8,6 +8,6 @@
 
 > Setup > Settings > System Settings
 
-<img class="screenshot" alt="System Settings" src="{{docs_base_url}}/assets/img/setup/settings/system-settings.png">
+<img class="screenshot" alt="System Settings" src="/docs/assets/img/setup/settings/system-settings.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-1-language.md b/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-1-language.md
index 00219fd..c8fba43 100644
--- a/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-1-language.md
+++ b/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-1-language.md
@@ -2,7 +2,7 @@
 
 Select your language. ERPNext is available in more than 20 languages.
 
-<img alt="Language" class="screenshot" src="{{docs_base_url}}/assets/img/setup-wizard/step-1.png">
+<img alt="Language" class="screenshot" src="/docs/assets/img/setup-wizard/step-1.png">
 
 ---
 
diff --git a/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-10-item.md b/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-10-item.md
index bc71b98..837c333 100644
--- a/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-10-item.md
+++ b/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-10-item.md
@@ -3,7 +3,7 @@
 In this final step, please enter the names of the Items you buy or sell.
 
 <img alt="Add Items" class="screenshot"
-src="{{docs_base_url}}/assets/img/setup-wizard/step-10.png">
+src="/docs/assets/img/setup-wizard/step-10.png">
 
 Please set the group of the item (Product / Service) and unit of measure. Don't worry you will be able to edit all of this later.
 
diff --git a/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-2-currency-and-timezone.md b/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-2-currency-and-timezone.md
index 5dc1648..6809f40 100644
--- a/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-2-currency-and-timezone.md
+++ b/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-2-currency-and-timezone.md
@@ -2,7 +2,7 @@
 
 Set your country name, currency and timezone.
 
-<img alt="Currency" class="screenshot" src="{{docs_base_url}}/assets/img/setup-wizard/step-2.png">
+<img alt="Currency" class="screenshot" src="/docs/assets/img/setup-wizard/step-2.png">
 
 ---
 
diff --git a/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-3-user-details.md b/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-3-user-details.md
index b9eff18..5d6002a 100644
--- a/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-3-user-details.md
+++ b/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-3-user-details.md
@@ -3,7 +3,7 @@
 Enter Users Profile Details like Name, User ID and preferred password.
 
 <img alt="User" class="screenshot"
-src="{{docs_base_url}}/assets/img/setup-wizard/step-3.png">
+src="/docs/assets/img/setup-wizard/step-3.png">
 
 ---
 
diff --git a/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-4-company-details.md b/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-4-company-details.md
index f88d31c..2558f16 100644
--- a/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-4-company-details.md
+++ b/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-4-company-details.md
@@ -3,7 +3,7 @@
 Enter Company Details like Name, Abbreviation and Financial Year Details.
 
 <img alt="Company Details" class="screenshot"
-src="{{docs_base_url}}/assets/img/setup-wizard/step-4.png">
+src="/docs/assets/img/setup-wizard/step-4.png">
 
 ---
 
diff --git a/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-5-letterhead-and-logo.md b/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-5-letterhead-and-logo.md
index 8694960..9f45642 100644
--- a/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-5-letterhead-and-logo.md
+++ b/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-5-letterhead-and-logo.md
@@ -3,7 +3,7 @@
 Attach Company Letterhead and Company Logo.
 
 <img alt="Company Logo and Letterhead" class="screenshot"
-src="{{docs_base_url}}/assets/img/setup-wizard/step-5.png">
+src="/docs/assets/img/setup-wizard/step-5.png">
 
 ---
 
@@ -15,7 +15,7 @@
 
 You may choose to skip this step if your letterhead is not ready.
 
-To select letterhead later through the setup module, read [Letter-head]({{docs_base_url}}/user/manual/en/setting-up/print/letter-head.html)
+To select letterhead later through the setup module, read [Letter-head](/docs/user/manual/en/setting-up/print/letter-head.html)
 
 #### To "attach as web-link"
 
diff --git a/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-6-add-users.md b/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-6-add-users.md
index 7e8f083..0a0cd00 100644
--- a/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-6-add-users.md
+++ b/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-6-add-users.md
@@ -3,6 +3,6 @@
 Add other users and assign them roles based on their job responsibilities.
 
 <img alt="Users" class="screenshot"
-src="{{docs_base_url}}/assets/img/setup-wizard/step-6.png">
+src="/docs/assets/img/setup-wizard/step-6.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-7-tax-details.md b/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-7-tax-details.md
index 1d353b6..3b42ebe 100644
--- a/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-7-tax-details.md
+++ b/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-7-tax-details.md
@@ -3,7 +3,7 @@
 Enter any three types of taxes which you regularly pay. This wizard will create a tax master which will calculate the taxes as per the tax-type.
 
 <img alt="Tax Details" class="screenshot"
-src="{{docs_base_url}}/assets/img/setup-wizard/step-7.png">
+src="/docs/assets/img/setup-wizard/step-7.png">
 
 Just set the tax name and the standard percentage levied.
 
@@ -17,6 +17,6 @@
 
 The purpose of VAT is to generate tax revenues to the government similar to the corporate income tax or the personal income tax. For Example: When you shop at a departmental store and avail discount on the products, the store charges you 5% extra on the total bill as the VAT.
 
-To setup VAT in the setup wizard , simply enter the percentage amount levied by your government. To setup VAT at a later stage read [setting-up-taxes]({{docs_base_url}}/user/manual/en/setting-up/setting-up-taxes.html)
+To setup VAT in the setup wizard , simply enter the percentage amount levied by your government. To setup VAT at a later stage read [setting-up-taxes](/docs/user/manual/en/setting-up/setting-up-taxes.html)
 
 {next}
diff --git a/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-8-customer-names.md b/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-8-customer-names.md
index 8143f0b..2b6ae0c 100644
--- a/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-8-customer-names.md
+++ b/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-8-customer-names.md
@@ -4,7 +4,7 @@
 
 
 <img alt="Customers" class="screenshot"
-src="{{docs_base_url}}/assets/img/setup-wizard/step-8.png">
+src="/docs/assets/img/setup-wizard/step-8.png">
 
 ---
 
@@ -18,6 +18,6 @@
 
 Contact Name:  Shiv Agarwal
 
-To understand Customer in detail visit [Customer Details]({{docs_base_url}}/user/manual/en/CRM/customer.html)
+To understand Customer in detail visit [Customer Details](/docs/user/manual/en/CRM/customer.html)
 
 {next}
diff --git a/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-9-suppliers.md b/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-9-suppliers.md
index 762c984..46bcfba 100644
--- a/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-9-suppliers.md
+++ b/erpnext/docs/user/manual/en/setting-up/setup-wizard/step-9-suppliers.md
@@ -3,10 +3,10 @@
 Enter a few of your Suppliers' names.
 
 <img alt="Suppliers" class="screenshot"
-src="{{docs_base_url}}/assets/img/setup-wizard/step-9.png">
+src="/docs/assets/img/setup-wizard/step-9.png">
 
 ---
 
-To understand Suppliers in detail visit [Supplier Master]({{docs_base_url}}/user/manual/en/buying/supplier.html)
+To understand Suppliers in detail visit [Supplier Master](/docs/user/manual/en/buying/supplier.html)
 
 {next}
diff --git a/erpnext/docs/user/manual/en/setting-up/sms-setting.md b/erpnext/docs/user/manual/en/setting-up/sms-setting.md
index 7c66692..1cb7c36 100644
--- a/erpnext/docs/user/manual/en/setting-up/sms-setting.md
+++ b/erpnext/docs/user/manual/en/setting-up/sms-setting.md
@@ -17,7 +17,7 @@
     http://instant.smses.com/web2sms.php?username=<USERNAME>&password;=<PASSWORD>&to;=<MOBILENUMBER>&sender;=<SENDERID>&message;=<MESSAGE>
     
 
-<img class="screenshot" alt="SMS Setting 2" src="{{docs_base_url}}/assets/img/setup/sms-settings2.jpg">
+<img class="screenshot" alt="SMS Setting 2" src="/docs/assets/img/setup/sms-settings2.jpg">
 
 
 > Note: the string up to the "?" is the SMS Gateway URL
@@ -36,6 +36,6 @@
 from your SMS Provider like username, password etc. These static values should
 be entered in the Static Parameters table.
 
-<img class="screenshot" alt="SMS Setting" src="{{docs_base_url}}/assets/img/setup/sms-settings1.png">
+<img class="screenshot" alt="SMS Setting" src="/docs/assets/img/setup/sms-settings1.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/en/setting-up/stock-reconciliation-for-non-serialized-item.md b/erpnext/docs/user/manual/en/setting-up/stock-reconciliation-for-non-serialized-item.md
index 743f398..36ad65a 100644
--- a/erpnext/docs/user/manual/en/setting-up/stock-reconciliation-for-non-serialized-item.md
+++ b/erpnext/docs/user/manual/en/setting-up/stock-reconciliation-for-non-serialized-item.md
@@ -1,3 +1,5 @@
+# Stock Reconciliation For Non Serialized Item
+
 Stock Reconciliation is the process of counting and evaluating stock-in-trade,
 usually at an organisations year end in order to value the total stock for
 preparation of the accounts. In this process actual physical stocks are
@@ -27,17 +29,17 @@
 
 A predefined template of an spreadsheet file should be followed for importing item's stock levels and valuations. Open new Stock Reconciliation form to see download option.
 
-<img class="screenshot" alt="Stock Reconciliation" src="{{docs_base_url}}/assets/img/setup/stock-recon-1.png">
+<img class="screenshot" alt="Stock Reconciliation" src="/docs/assets/img/setup/stock-recon-1.png">
 
 #### Step 2: Enter Data in csv file.
 
-<img class="screenshot" alt="Stock Reconciliation" src="{{docs_base_url}}/assets/img/setup/stock-reco-data.png">
+<img class="screenshot" alt="Stock Reconciliation" src="/docs/assets/img/setup/stock-reco-data.png">
 
 The csv format is case-sensitive. Do not edit the headers which are preset in the template. In the Item Code and Warehouse column, enter exact Item Code and Warehouse as created in your ERPNext account. For quatity, enter stock level you wish to set for that item, in a specific warehouse.
 
 #### Step 3: Upload file and Enter Values in Stock Reconciliation Form
 
-<img class="screenshot" alt="Stock Reconciliation" src="{{docs_base_url}}/assets/img/setup/stock-recon-2.png">
+<img class="screenshot" alt="Stock Reconciliation" src="/docs/assets/img/setup/stock-recon-2.png">
 
 **Posting Date**
 
@@ -59,11 +61,11 @@
 
 #### Step 4: Review the reconciliation data
 
-<img class="screenshot" alt="Stock Reconciliation" src="{{docs_base_url}}/assets/img/setup/stock-reco-upload.gif">
+<img class="screenshot" alt="Stock Reconciliation" src="/docs/assets/img/setup/stock-reco-upload.gif">
 
 ### Stock Ledger Report
 
-<img class="screenshot" alt="Stock Reconciliation" src="{{docs_base_url}}/assets/img/setup//stock-reco-ledger.png">
+<img class="screenshot" alt="Stock Reconciliation" src="/docs/assets/img/setup//stock-reco-ledger.png">
 
 
 **How Stock Reconciliation Works**
diff --git a/erpnext/docs/user/manual/en/setting-up/territory.md b/erpnext/docs/user/manual/en/setting-up/territory.md
index 3a1abfd..c82bfe4 100644
--- a/erpnext/docs/user/manual/en/setting-up/territory.md
+++ b/erpnext/docs/user/manual/en/setting-up/territory.md
@@ -1,3 +1,5 @@
+# Territory
+
 If your business operates in multiple Territories (could be countries, states
 or cities) it is usually a great idea to build your structure in the system.
 Once you group your Customers by Territories, you can set annual targets for
@@ -5,6 +7,6 @@
 territory v/s what you had planned.
 You can also set different pricing for the same product sold across different territories.
 
-<img class="screenshot" alt="Territory Tree" src="{{docs_base_url}}/assets/img/crm/territory-tree.png">
+<img class="screenshot" alt="Territory Tree" src="/docs/assets/img/crm/territory-tree.png">
 
 {next}
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/setting-up/users-and-permissions/adding-users.md b/erpnext/docs/user/manual/en/setting-up/users-and-permissions/adding-users.md
index 6fb64df..16bf19e 100644
--- a/erpnext/docs/user/manual/en/setting-up/users-and-permissions/adding-users.md
+++ b/erpnext/docs/user/manual/en/setting-up/users-and-permissions/adding-users.md
@@ -11,7 +11,7 @@
 
 ### 1. List of Users
 
-<img class="screenshot" src="{{docs_base_url}}/assets/img/setup/users/user-1.png" alt="User List">
+<img class="screenshot" src="/docs/assets/img/setup/users/user-1.png" alt="User List">
 
 
 To add a new user, click on "New"
@@ -22,8 +22,8 @@
 
 The user's Email will become the user id. Mobile No can also be used to log in if you check the Allow Login using Mobile No checkbox under the Security section in System Settings. While Mobile No will be unique, it will not be treated as a user id.
 
-<img class="screenshot" src="{{docs_base_url}}/assets/img/setup/users/user-login-email.png" alt="Email Login">
-<img class="screenshot" src="{{docs_base_url}}/assets/img/setup/users/user-login-mobile.png" alt="Mobile No Login">
+<img class="screenshot" src="/docs/assets/img/setup/users/user-login-email.png" alt="Email Login">
+<img class="screenshot" src="/docs/assets/img/setup/users/user-login-mobile.png" alt="Mobile No Login">
 
 After adding these details, save the user.
 
@@ -32,19 +32,19 @@
 After saving, you will see a list of roles and a checkbox next to it. Just check the roles you want the user to have and save the document. To click on what permissions translate into roles, click on the role
 name.
 
-<img class="screenshot" src="{{docs_base_url}}/assets/img/setup/users/user-2.png" alt="User Roles">
+<img class="screenshot" src="/docs/assets/img/setup/users/user-2.png" alt="User Roles">
 
 ### 4. Setting Module Access
 
 Users will have access to all modules for which they have role based access. If you want to block certain modules for certain users, un-check the module from the list.
 
-<img class="screenshot" src="{{docs_base_url}}/assets/img/setup/users/user-3.png" alt="User Block Module">
+<img class="screenshot" src="/docs/assets/img/setup/users/user-3.png" alt="User Block Module">
 
 ### 5. Security Settings
 
 If you wish to give the user access to the system only between office hours,
 or during weekends, mention it under security settings.
 
-<img class="screenshot" src="{{docs_base_url}}/assets/img/setup/users/user-4.png" alt="User Security">
+<img class="screenshot" src="/docs/assets/img/setup/users/user-4.png" alt="User Security">
 
 {next}
diff --git a/erpnext/docs/user/manual/en/setting-up/users-and-permissions/index.md b/erpnext/docs/user/manual/en/setting-up/users-and-permissions/index.md
index 05ad060..dcfd776 100644
--- a/erpnext/docs/user/manual/en/setting-up/users-and-permissions/index.md
+++ b/erpnext/docs/user/manual/en/setting-up/users-and-permissions/index.md
@@ -1,3 +1,5 @@
+# Users And Permissions
+
 
 In ERPNext, you can create multiple users and assign them different roles. There are some users which can only access the public facing part of ERPNext (i.e. the website). Such users are called "Website Users".
 
diff --git a/erpnext/docs/user/manual/en/setting-up/users-and-permissions/role-based-permissions.md b/erpnext/docs/user/manual/en/setting-up/users-and-permissions/role-based-permissions.md
index 0c4042c..6f11ecb 100644
--- a/erpnext/docs/user/manual/en/setting-up/users-and-permissions/role-based-permissions.md
+++ b/erpnext/docs/user/manual/en/setting-up/users-and-permissions/role-based-permissions.md
@@ -5,7 +5,7 @@
 To start with, go to:
 > Setup > Permissions > Role Permissions Manager
 
-<img alt="Manage Read, Write, Create, Submit, Amend access using the Role Permissions Manager" class="screenshot" src="{{docs_base_url}}/assets/img/users-and-permissions/setting-up-permissions-leave-application.png">
+<img alt="Manage Read, Write, Create, Submit, Amend access using the Role Permissions Manager" class="screenshot" src="/docs/assets/img/users-and-permissions/setting-up-permissions-leave-application.png">
 
 Permissions are applied on a combination of:
 
@@ -28,7 +28,7 @@
 	If enabled, a user with that role will be able to access only specific Documents for that Document Type. Such specific Document access is defined in the list of User Permissions. Additionally, User Permissions defined for other Document Types also get applied if they are related to the current Document Type through Link Fields.
 
 	To set, User Permissions go to:
-    > Setup > Permissions > [User Permissions Manager]({{docs_base_url}}/user/manual/en/setting-up/users-and-permissions/user-permissions.html)
+    > Setup > Permissions > [User Permissions Manager](/docs/user/manual/en/setting-up/users-and-permissions/user-permissions.html)
 
 ---
 
@@ -38,37 +38,37 @@
 
 Leave Application is a good **example** that encompasses all areas of Permission System.
 
-<img class="screenshot" alt="Leave Application Form should be created by an Employee, and approved by Leave Approver or HR User" src="{{docs_base_url}}/assets/img/users-and-permissions/setting-up-permissions-leave-application-form.png">
+<img class="screenshot" alt="Leave Application Form should be created by an Employee, and approved by Leave Approver or HR User" src="/docs/assets/img/users-and-permissions/setting-up-permissions-leave-application-form.png">
 
    1. **It should be created by an Employee.**
      For this, Employee Role should be given Read, Write, Create permissions.
 
-<img class="screenshot" alt="Giving Read, Write and Create Permissions to Employee for Leave Application"  src="{{docs_base_url}}/assets/img/users-and-permissions/setting-up-permissions-employee-role.png">
+<img class="screenshot" alt="Giving Read, Write and Create Permissions to Employee for Leave Application"  src="/docs/assets/img/users-and-permissions/setting-up-permissions-employee-role.png">
 
    1. **An Employee should only be able to access his/her Leave Application.**
      Hence, Apply User Permissions should be enabled for Employee Role, and a User Permission record should be created for each User Employee combination. (This effort is reduced for Employee Document Type, by programmatically creating User Permission records.)
 
-<img class="screenshot" alt="Limiting access to Leave Applications for a user with Employee Role via User Permissions Manager" src="{{docs_base_url}}/assets/old_images/erpnext/setting-up-permissions-employee-user-permissions.png">
+<img class="screenshot" alt="Limiting access to Leave Applications for a user with Employee Role via User Permissions Manager" src="/docs/assets/old_images/erpnext/setting-up-permissions-employee-user-permissions.png">
 
    1. **HR Manager should be able to see all Leave Applications.**
      Create a Permission Rule for HR Manager at Level 0, with Read permissions. Apply User Permissions should be disabled.
 
-<img class="screenshot" alt="Giving Submit and Cancel permissions to HR Manager for Leave Applications. 'Apply User Permissions' is unchecked to give full access." src="{{docs_base_url}}/assets/img/users-and-permissions/setting-up-permissions-hr-manager-role.png">
+<img class="screenshot" alt="Giving Submit and Cancel permissions to HR Manager for Leave Applications. 'Apply User Permissions' is unchecked to give full access." src="/docs/assets/img/users-and-permissions/setting-up-permissions-hr-manager-role.png">
 
    2. **Leave Approver should be able to see and update Leave Applications applicable to him/her.**
      Leave Approver is given Read and Write access at Level 0, with Apply User Permissions enabled. Relevant Employee Documents should be enlisted in the User Permissions of Leave Approvers. (This effort is reduced for Leave Approvers mentioned in Employee Documents, by programmatically creating User Permission records.)
 
-<img class="screenshot" alt="Giving Read, Write and Submit permissions to Leave Approver for Leave Applications.'Apply User Permissions' is checked to limit access based on Employee." src="{{docs_base_url}}/assets/img/users-and-permissions/setting-up-permissions-leave-approver-role.png">
+<img class="screenshot" alt="Giving Read, Write and Submit permissions to Leave Approver for Leave Applications.'Apply User Permissions' is checked to limit access based on Employee." src="/docs/assets/img/users-and-permissions/setting-up-permissions-leave-approver-role.png">
 
    3. **It should be Approved / Rejected only by HR User or Leave Approver.**
      The Status field of Leave Application is set at Level 1. HR User and Leave Approver are given Read and Write permissions for Level 1, while everyone else (All) are given Read permission for Level 1.
 
-<img class="screenshot" alt="Limiting read access for a set of fields to certain Roles" src="{{docs_base_url}}/assets/old_images/erpnext/setting-up-permissions-level-1.png">
+<img class="screenshot" alt="Limiting read access for a set of fields to certain Roles" src="/docs/assets/old_images/erpnext/setting-up-permissions-level-1.png">
 
 
    4. **HR User should be able to delegate Leave Applications to his/her subordinates**
      HR User is given the right to Set User Permissions. A User with HR User role would be able to defined User Permissions on Leave Application for other users.
 
-<img class="screenshot" alt="Let HR User delegate access to Leave Applications by checking 'Set User Permissions'. This will allow HR User to access User Permissions Manager for 'Leave Application'" src="{{docs_base_url}}/assets/img/users-and-permissions/setting-up-permissions-hr-user-role.png">
+<img class="screenshot" alt="Let HR User delegate access to Leave Applications by checking 'Set User Permissions'. This will allow HR User to access User Permissions Manager for 'Leave Application'" src="/docs/assets/img/users-and-permissions/setting-up-permissions-hr-user-role.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/en/setting-up/users-and-permissions/role-permisison-for-page-and-report.md b/erpnext/docs/user/manual/en/setting-up/users-and-permissions/role-permisison-for-page-and-report.md
index 3a26a32..5483af7 100644
--- a/erpnext/docs/user/manual/en/setting-up/users-and-permissions/role-permisison-for-page-and-report.md
+++ b/erpnext/docs/user/manual/en/setting-up/users-and-permissions/role-permisison-for-page-and-report.md
@@ -5,10 +5,10 @@
 If user has enabled the developer mode, then they can add the roles directly in the page and report record. But in that case, the permissions will also be reflected in the json file for the page / report.
 
 ### For Page
-<img alt="Assign roles to the page" class="screenshot" src="{{docs_base_url}}/assets/img/users-and-permissions/roles-for-page.png">
+<img alt="Assign roles to the page" class="screenshot" src="/docs/assets/img/users-and-permissions/roles-for-page.png">
 
 ### For Report
-<img alt="Assign roles to the report" class="screenshot" src="{{docs_base_url}}/assets/img/users-and-permissions/roles-for-report.png">
+<img alt="Assign roles to the report" class="screenshot" src="/docs/assets/img/users-and-permissions/roles-for-report.png">
 
 ## Tool for custom roles assignment
 
@@ -16,10 +16,10 @@
 
 To access, goto Setup > Permissions > Role Permission for Page and Report
 
-<img alt="Tools to assign custom roles to the page" class="screenshot" src="{{docs_base_url}}/assets/img/users-and-permissions/role-permission-for-page-and-report.png">
+<img alt="Tools to assign custom roles to the page" class="screenshot" src="/docs/assets/img/users-and-permissions/role-permission-for-page-and-report.png">
 
 ### Reset to defaults
 
 Using "Reset to Default" button, user can remove the custom permissions applied on a page or report. Then default permissions will be applicable on that page or report.
 
-<img alt="Reset the default roles" class="screenshot" src="{{docs_base_url}}/assets/img/users-and-permissions/reset-roles-permisison-for-page-report.png">
+<img alt="Reset the default roles" class="screenshot" src="/docs/assets/img/users-and-permissions/reset-roles-permisison-for-page-report.png">
diff --git a/erpnext/docs/user/manual/en/setting-up/users-and-permissions/sharing.md b/erpnext/docs/user/manual/en/setting-up/users-and-permissions/sharing.md
index a939e65..23e5b32 100644
--- a/erpnext/docs/user/manual/en/setting-up/users-and-permissions/sharing.md
+++ b/erpnext/docs/user/manual/en/setting-up/users-and-permissions/sharing.md
@@ -4,6 +4,6 @@
 
 To share a document, open the document, click on the "+" icon under sharing and select the user
 
-<img class="screenshot" src="{{docs_base_url}}/assets/img/setup/users/share.gif">
+<img class="screenshot" src="/docs/assets/img/setup/users/share.gif">
 
 {next}
diff --git a/erpnext/docs/user/manual/en/setting-up/users-and-permissions/user-permissions.md b/erpnext/docs/user/manual/en/setting-up/users-and-permissions/user-permissions.md
index 7fae95c..896fd85 100644
--- a/erpnext/docs/user/manual/en/setting-up/users-and-permissions/user-permissions.md
+++ b/erpnext/docs/user/manual/en/setting-up/users-and-permissions/user-permissions.md
@@ -1,60 +1,52 @@
 # User Permissions
 
-Role Base Permissions define the periphery of document types within which a user with a set of Roles can move around in. However, you can have an even finer control by defining User Permissions for a User. By setting specific documents in User Permissions list, you can limit access for that User to specific documents of a particular DocType, on the condition that "Apply User Permissions" is checked in Role Permissions Manager.
+Along with Role based permissions, you can also set user level permissions that are based on rules that are evaluated against the data containted in the document being accessed. This is particularly useful when you want to restrict based on:
 
-To start with, go to:
+1. Allow user to access data belonging to one Company
+1. Allow user to access data related to a specific Customer or Territory
 
-> Setup > Permissions > User Permissions Manager
+### Creating User Permissions
 
-User Permissions Manager displaying how users can access only a specific Company.
+To create a User Permission, go to Setup > Permission > User Permissions
 
-#### Example
+When you create a new record you will have to specify
 
-User 'tom.hagen@riosolutions.com' has Sales User role and we want to limit the user to access records for only a specific Company 'Rio Solutions'.
+1. The user for which the rule has to be applied
+1. The type of document which will be allowed (for example "Company")
+1. The specific item that you want to allow (the name of the "Company)
 
-  1. We add a User Permissions row for Company.
-	
-	<img src="{{docs_base_url}}/assets/img/users-and-permissions/user-permissions-new.gif" class="screen" alt="User Permissions For Company">
+<img src="/docs/assets/img/users-and-permissions/user-perms/new-user-permission.png" class="screenshot" alt="Creating a new user permission">
 
-	Add User Permissions row for a combination of User 'tom.hagen@riosolutions.com' and Company 'Rio Solutions'.
+If you want to apply the permissions to all Roles for that user, keep the "Apply Permissions for all Roles of this User" checked. If you check this, it will automatically setup the rules for Roles to check for User Permissions.
 
-  1. Also Role "All" has only Read permission for Company, with 'Apply User Permissions' checked.
-	
-	<img src="{{docs_base_url}}/assets/img/users-and-permissions/user-permissions-company-role-all.png" class="screen" alt="Role Permissions for All on Company">
+### Choosing Which Roles to Apply
 
-	Read Permission with Apply User Permissions checked for DocType Company.
+You can also manually edit the the roles for which you want the user permissions to apply. To do that go the the **Role Permission Manager** and select the role for which you want to Edit the User Permissions.
 
-  1. The combined effect of the above two rules lead to User 'tom.hagen@riosolutions.com' having only Read access to Company 'Rio Solutions'.
-	
-	<img src="{{docs_base_url}}/assets/img/users-and-permissions/user-permission-company.png" class="screen" alt="Effect of Role and User Permissions on Company">
-	
-	Access is limited to Company 'Rio Solutions'.
+Note that the "Apply User Permissions" is already checked for this role. Then click on "Select Document Types"
 
-  1. We want this User Permission on Company to get applied on other documents like Quotation, Sales Order, etc.
-	 
-	 These forms have a **Link Field based on Company**. As a result, User Permissions on Company also get applied on these documents, which leads to User 'tom.hagen@riosolutions' to acces these documents having Company 'Rio Solutions'.
+<img src="/docs/assets/img/users-and-permissions/user-perms/select-document-types.png" class="screenshot" alt="Select Document Types to Edit the Setting">
 
-    <img class="screen" alt="Sales User Role Permissions for Quotation" src="{{docs_base_url}}/assets/img/users-and-permissions/user-permissions-quotation-sales-user.png" >
-	 
-	 Users with Sales User Role can Read, Write, Create, Submit and Cancel Quotations based on their User Permissions, since 'Apply User Permissions' is checked.
+Here you will see that Company has already been checked. If you want user permissions not be applied for that particular rule, you can un check it.
 
-	<img src="{{docs_base_url}}/assets/img/users-and-permissions/user-permission-quotation.png" class="screenshot" alt="Quotation List limited to results for Company 'Rio Solutions'">
+<img src="/docs/assets/img/users-and-permissions/user-perms/view-selected-documents.png" class="screenshot" alt="Select Document Types to Edit the Setting">
 
-	Quotation List is limited to results for Company 'Rio Solutions' for User 'tom.hagen@riosolutions.com'.
+### Ignoring User Permissions on Certain Fields
 
-  1. User Permissions get applied automatically based on Link Fields, just like how it worked for Quotation. But, Lead Form has 4 Link fields: Territory, Company, Lead Owner and Next Contact By. Say, you want Leads to limit access to Users based only on Territory, even though you have defined User Permissions for DocTypes User, Territory and Company. You can do this by setting 'Ignore User Permissions' for Link fields: Company, Lead Owner and Next Contact By.  
-    
-<img src="{{docs_base_url}}/assets/img/users-and-permissions/user-permissions-lead-role-permissions.png" class="screen" alt="Role Permissions on Lead for Sales User Role">
+Another way of allowing documents to be seen that have been restricited by User Permissions is to check "Ignore User Permissions" on a particular field by going to **Customize Form**
 
-Sales User can Read, Write and Create Leads limited by User Permissions.
+For example you don't want Assets to be restricited for any user, then select **Asset** in **Customize Form** and in the Company field, check on "Ignore User Permissions"
 
-<img src="{{docs_base_url}}/assets/img/users-and-permissions/user-permissions-ignore-user-permissions.png" class="screenshot" alt="Set Ingore User Permissions from Setup > Customize > Customize Form">	
+<img src="/docs/assets/img/users-and-permissions/user-perms/ignore-user-user-permissions.png" class="screenshot" alt="Ignore User Permissions on specific properties">
 
-Check 'Ingore User Permissions' for Company, Lead Owner and Next Contact By fields using Setup > Customize > Customize Form for Lead.
+### Strict Permisssions
 
-<img src="{{docs_base_url}}/assets/img/users-and-permissions/permissions-lead-list.png" class="screenshot" alt="Lead List is limited to records with Territory 'United States'">	
+Since User Permissions are applied via Roles, there may be many users belonging to a particular Role. Suppose you have three users belonging to Role "Accounts User" and you have applied **User Permissions** to only one user, then the permissions will only be restricted to that user.
 
-Due to the effect of the above combination, User 'tom.hagen@riosolutions.com' can only access Leads with Territory 'United States'.
+You can change this setting incase you want the user permissions to be assigned to all users, even if they are not assigned any user permissions by going to **System Settings** and checking "Apply Strict User Permissions"
 
-{next}
+### Checking How User Permissions are Applied
 
+Finally once you have created your air-tight permission model, and you want to check how it applies to various users, you can see it via the **Permitted Documents for User** report. Using this report, you can select the **User** and document type and check how user permissions get applied.
+
+<img src="/docs/assets/img/users-and-permissions/user-perms/permitted-documents.png" class="screenshot" alt="Permitted Documents for User report">
diff --git a/erpnext/docs/user/manual/en/setting-up/workflows.md b/erpnext/docs/user/manual/en/setting-up/workflows.md
index bedb6db..4b2cabb 100644
--- a/erpnext/docs/user/manual/en/setting-up/workflows.md
+++ b/erpnext/docs/user/manual/en/setting-up/workflows.md
@@ -1,3 +1,5 @@
+# Workflows
+
 In order to allow multiple people to submit multiple requests, for approvals,
 by multiple users, ERPNext requires you to fill the workflow conditions.
 ERPNext tracks the multiple permissions before submission.
@@ -11,7 +13,7 @@
 Manager, who is the approving authority, will either Approve or Reject this
 request. Accordingly,the user will get his Approved or Rejected status.
 
-<img class="screenshot" alt="Workflow" src="{{docs_base_url}}/assets/img/setup/workflow-leave-fl.jpg">
+<img class="screenshot" alt="Workflow" src="/docs/assets/img/setup/workflow-leave-fl.jpg">
 
 To make this Workflow and transition rules go to :
 
@@ -19,11 +21,11 @@
 
 #### Step 1: Enter the different states of Leave Approval Process.
 
-<img class="screenshot" alt="Workflow" src="{{docs_base_url}}/assets/img/setup/workflow-1.png">
+<img class="screenshot" alt="Workflow" src="/docs/assets/img/setup/workflow-1.png">
 
 #### Step 2: Enter Transition Rules.
 
-<img class="screenshot" alt="Workflow" src="{{docs_base_url}}/assets/img/setup/workflow-2.png">
+<img class="screenshot" alt="Workflow" src="/docs/assets/img/setup/workflow-2.png">
 
 #### Notes:
 
@@ -46,15 +48,15 @@
 
 When a Leave Application is saved by Employee, the status of the document changes to "Applied"
 
-<img class="screenshot" alt="Workflow" src="{{docs_base_url}}/assets/img/setup/workflow-3.png">
+<img class="screenshot" alt="Workflow" src="/docs/assets/img/setup/workflow-3.png">
 
 When the HR User logs in, he can either Approve or Reject. If approved the
 status of the document changes to "Approved by HR". However, it is yet to be approved by Leave Approver.
 
-<img class="screenshot" alt="Workflow" src="{{docs_base_url}}/assets/img/setup/workflow-4.png">
+<img class="screenshot" alt="Workflow" src="/docs/assets/img/setup/workflow-4.png">
 
 When the Leave Approver opens the Leave Application page, he can finally "Approve" or "Reject" the Leave Application.
 
-<img class="screenshot" alt="Workflow" src="{{docs_base_url}}/assets/img/setup/workflow-5.png">
+<img class="screenshot" alt="Workflow" src="/docs/assets/img/setup/workflow-5.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/en/stock/accounting-of-inventory-stock/index.md b/erpnext/docs/user/manual/en/stock/accounting-of-inventory-stock/index.md
index b758ff7..96b792d 100644
--- a/erpnext/docs/user/manual/en/stock/accounting-of-inventory-stock/index.md
+++ b/erpnext/docs/user/manual/en/stock/accounting-of-inventory-stock/index.md
@@ -1,3 +1,5 @@
+# Accounting Of Inventory Stock
+
 The value of available inventory is treated as an Asset in company's Chart of
 Accounts. Depending on the type of items, it can be treated as Fixed Asset or
 Current Asset. To prepare Balance Sheet, you should make the accounting
@@ -19,7 +21,7 @@
 statement.
 
 To check accounting entries for a particular stock transaction, please check
-[examples]({{docs_base_url}}/user/manual/en/stock/accounting-of-inventory-stock/perpetual-inventory.html)
+[examples](/docs/user/manual/en/stock/accounting-of-inventory-stock/perpetual-inventory.html)
 
 #### **Advantages**
 
@@ -64,6 +66,6 @@
 
 If you are an existing user using Periodic Inventory and want to use Perpetual
 Inventory, you have to follow some steps to migrate. For details, check
-[Migration From Periodic Inventory]({{docs_base_url}}/user/manual/en/stock/accounting-of-inventory-stock/migrate-to-perpetual-inventory.html).
+[Migration From Periodic Inventory](/docs/user/manual/en/stock/accounting-of-inventory-stock/migrate-to-perpetual-inventory.html).
 
 {next}
diff --git a/erpnext/docs/user/manual/en/stock/accounting-of-inventory-stock/migrate-to-perpetual-inventory.md b/erpnext/docs/user/manual/en/stock/accounting-of-inventory-stock/migrate-to-perpetual-inventory.md
index 38ae897..0e4d2d7 100644
--- a/erpnext/docs/user/manual/en/stock/accounting-of-inventory-stock/migrate-to-perpetual-inventory.md
+++ b/erpnext/docs/user/manual/en/stock/accounting-of-inventory-stock/migrate-to-perpetual-inventory.md
@@ -1,3 +1,5 @@
+# Migrate To Perpetual Inventory
+
 Perpetual Inventory Valuation is activated by default in the system.
 
 For the users who are currently following periodic inventory valuation system, and wish to migrate to perpetual inventory valuation system, please follow the steps explained below.
@@ -20,7 +22,7 @@
 
 	`Explore > Accounts > Accounts Settings`
 	
-	<img class="screenshot" alt="Perpetual Inventory" src="{{docs_base_url}}/assets/img/accounts/perpetual-1.png">
+	<img class="screenshot" alt="Perpetual Inventory" src="/docs/assets/img/accounts/perpetual-1.png">
   
 
   * Create Stock Entry (Material Transfer) to transfer available stock from existing warehouse to new warehouse. As stock will be available in the new warehouse, you should select the new warehouse for all the future transactions.
diff --git a/erpnext/docs/user/manual/en/stock/accounting-of-inventory-stock/perpetual-inventory.md b/erpnext/docs/user/manual/en/stock/accounting-of-inventory-stock/perpetual-inventory.md
index 343e3f4..90bdbbf 100644
--- a/erpnext/docs/user/manual/en/stock/accounting-of-inventory-stock/perpetual-inventory.md
+++ b/erpnext/docs/user/manual/en/stock/accounting-of-inventory-stock/perpetual-inventory.md
@@ -1,3 +1,5 @@
+# Perpetual Inventory
+
 As per the perpetual inventory system, accounts posting is done for every stock transaction.
 
 On creating new Warehouse, the system will automatically create an Account in the Chart of Account, with the same name as Warehouse Name.
@@ -10,7 +12,7 @@
 
 	 > Setup > Company > Stock Settings > "Enable Perpetual Inventory"
 
-<img class="screenshot" alt="Perpetual Inventory" src="{{docs_base_url}}/assets/img/accounts/perpetual-1.png">
+<img class="screenshot" alt="Perpetual Inventory" src="/docs/assets/img/accounts/perpetual-1.png">
 
   * Setup the following default accounts for each Company. These accounts are created automatically in the new ERPNext accounts.
 
@@ -131,11 +133,11 @@
 
 **Stock Ledger**
 
-<img class="screenshot" alt="Perpetual Inventory" src="{{docs_base_url}}/assets/img/accounts/perpetual-receipt-sl-1.png">
+<img class="screenshot" alt="Perpetual Inventory" src="/docs/assets/img/accounts/perpetual-receipt-sl-1.png">
 
 **General Ledger**
 
-<img class="screenshot" alt="Perpetual Inventory" src="{{docs_base_url}}/assets/img/accounts/perpetual-receipt-gl-2.png">
+<img class="screenshot" alt="Perpetual Inventory" src="/docs/assets/img/accounts/perpetual-receipt-gl-2.png">
 
 As stock balance increases through Purchase Receipt, "Store" accounts are debited and a temporary account "Stock Receipt But Not Billed" account is credited, to maintain double entry accounting system. At the same time, negative expense is booked in account "Expense included in Valuation" for the amount added for valuation purpose, to avoid double expense booking.
 
@@ -147,7 +149,7 @@
 
 **General Ledger**
 
-<img class="screenshot" alt="Perpetual Inventory" src="{{docs_base_url}}/assets/img/accounts/perpetual-pinv-gl-3.png">
+<img class="screenshot" alt="Perpetual Inventory" src="/docs/assets/img/accounts/perpetual-pinv-gl-3.png">
 
 Here "Stock Received But Not Billed" account is debited and nullified the
 effect of Purchase Receipt.
@@ -205,11 +207,11 @@
 
 **Stock Ledger**
 
-<img class="screenshot" alt="Perpetual Inventory" src="{{docs_base_url}}/assets/img/accounts/perpetual-dn-sl-4.png">
+<img class="screenshot" alt="Perpetual Inventory" src="/docs/assets/img/accounts/perpetual-dn-sl-4.png">
 
 **General Ledger**
 
-<img class="screenshot" alt="Perpetual Inventory" src="{{docs_base_url}}/assets/img/accounts/perpetual-dn-gl-5.png">
+<img class="screenshot" alt="Perpetual Inventory" src="/docs/assets/img/accounts/perpetual-dn-gl-5.png">
 
 As item is delivered from "Stores" warehouse, "Stores" account is credited and
 equal amount is debited to the expense account "Cost of Goods Sold". The
@@ -238,11 +240,11 @@
 
 **Stock Ledger**
 
-<img class="screenshot" alt="Perpetual Inventory" src="{{docs_base_url}}/assets/img/accounts/perpetual-inv-sl-6.png">
+<img class="screenshot" alt="Perpetual Inventory" src="/docs/assets/img/accounts/perpetual-inv-sl-6.png">
 
 **General Ledger**
 
-<img class="screenshot" alt="Perpetual Inventory" src="{{docs_base_url}}/assets/img/accounts/perpetual-inv-gl-7.png">
+<img class="screenshot" alt="Perpetual Inventory" src="/docs/assets/img/accounts/perpetual-inv-gl-7.png">
 
 Here, apart from normal account entries for invoice, "Stores" and "Cost of
 Goods Sold" accounts are also affected based on the valuation amount.
@@ -276,11 +278,11 @@
 
 **Stock Ledger**
 
-<img class="screenshot" alt="Perpetual Inventory" src="{{docs_base_url}}/assets/img/accounts/perpetual-st-receipt-sl.png">
+<img class="screenshot" alt="Perpetual Inventory" src="/docs/assets/img/accounts/perpetual-st-receipt-sl.png">
 
 **General Ledger**
 
-<img class="screenshot" alt="Perpetual Inventory" src="{{docs_base_url}}/assets/img/accounts/perpetual-st-receipt-gl.png">
+<img class="screenshot" alt="Perpetual Inventory" src="/docs/assets/img/accounts/perpetual-st-receipt-gl.png">
 
 * * *
 
@@ -311,11 +313,11 @@
 
 **Stock Ledger**
 
-<img class="screenshot" alt="Perpetual Inventory" src="{{docs_base_url}}/assets/img/accounts/perpetual-st-issue-sl.png">
+<img class="screenshot" alt="Perpetual Inventory" src="/docs/assets/img/accounts/perpetual-st-issue-sl.png">
 
 **General Ledger**
 
-<img class="screenshot" alt="Perpetual Inventory" src="{{docs_base_url}}/assets/img/accounts/perpetual-st-issue-gl.png">
+<img class="screenshot" alt="Perpetual Inventory" src="/docs/assets/img/accounts/perpetual-st-issue-gl.png">
 
 * * *
 
@@ -348,10 +350,10 @@
 
 **Stock Ledger**
 
-<img class="screenshot" alt="Perpetual Inventory" src="{{docs_base_url}}/assets/img/accounts/perpetual-st-transfer-sl.png">
+<img class="screenshot" alt="Perpetual Inventory" src="/docs/assets/img/accounts/perpetual-st-transfer-sl.png">
 
 **General Ledger**
 
-<img class="screenshot" alt="Perpetual Inventory" src="{{docs_base_url}}/assets/img/accounts/perpetual-st-transfer-gl.png">
+<img class="screenshot" alt="Perpetual Inventory" src="/docs/assets/img/accounts/perpetual-st-transfer-gl.png">
 	
 {next}
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/stock/articles/allow-over-delivery-billing-against-sales-order-upto-certain-limit.md b/erpnext/docs/user/manual/en/stock/articles/allow-over-delivery-billing-against-sales-order-upto-certain-limit.md
index 9b140a6..5838432 100644
--- a/erpnext/docs/user/manual/en/stock/articles/allow-over-delivery-billing-against-sales-order-upto-certain-limit.md
+++ b/erpnext/docs/user/manual/en/stock/articles/allow-over-delivery-billing-against-sales-order-upto-certain-limit.md
@@ -1,8 +1,10 @@
+# Allow Over Delivery Billing Against Sales Order Upto Certain Limit
+
 #Allow Over Delivery/Billing
 
 While creating Delivery Note, system validates if item's Qty mentined is same as in the Sales Order. If Item Qty has been increased, you will get over-delivery validation. If you want to be able to deliver more items than mentioned in the Sales Order, you should update "Allow over delivery or receipt upto this percent" in the Item master.
 
-<img alt="Item wise Allowance percentage" class="screenshot" src="{{docs_base_url}}/assets/img/articles/allowance-percentage-1.png">
+<img alt="Item wise Allowance percentage" class="screenshot" src="/docs/assets/img/articles/allowance-percentage-1.png">
 
 Item's and Rate is also validated when creating Sales Invoice from Sales Order. Also when creating Purchase Receipt and Purchaes Invoice from Purchase Order. Updating "Allow over delivery or receipt upto this percent" will be affective in all sales and purchase transactions.
 
@@ -16,7 +18,7 @@
 
 3. Save Stock Settings.
 
-<img alt="Item wise Allowance percentage" class="screenshot" src="{{docs_base_url}}/assets/img/articles/allowance-percentage-2.png">
+<img alt="Item wise Allowance percentage" class="screenshot" src="/docs/assets/img/articles/allowance-percentage-2.png">
 
 
 <!-- markdown -->
diff --git a/erpnext/docs/user/manual/en/stock/articles/auto-creation-of-material-request.md b/erpnext/docs/user/manual/en/stock/articles/auto-creation-of-material-request.md
index 02d88d8..2d5e935 100644
--- a/erpnext/docs/user/manual/en/stock/articles/auto-creation-of-material-request.md
+++ b/erpnext/docs/user/manual/en/stock/articles/auto-creation-of-material-request.md
@@ -1,20 +1,22 @@
+# Auto Creation Of Material Request
+
 #Auto Creation of Material Request
 
 To prevent stockouts, you can track item's reorder level. When stock level goes below reorder level, purchase manager is notified and instructed to initiate purchase process for the item.
 
 In ERPNext, you can update item's Reorder Level and Reorder Qty in the Item master. If same item has different reorder level, you can also update warehouse-wise reorder level and reorder qty.
 
-<img alt="reorder level" class="screenshot" src="{{docs_base_url}}/assets/img/articles/reorder-request-1.png">
+<img alt="reorder level" class="screenshot" src="/docs/assets/img/articles/reorder-request-1.png">
 
 With reorder level, you can also define what should be the next action. Either new purchase or transfer from another warehouse. Based on setting in Item master, purpose will be updated in the Material Request as well.
 
-<img alt="reorder level next action" class="screenshot" src="{{docs_base_url}}/assets/img/articles/reorder-request-2.png">
+<img alt="reorder level next action" class="screenshot" src="/docs/assets/img/articles/reorder-request-2.png">
 
 When item's stock reaches reorder level, Material Request is auto-created automatically. You can enable this feature from:
 
 `Stock > Setup > Stock Settings`
 
-<img alt="active auto-material request" class="screenshot" src="{{docs_base_url}}/assets/img/articles/reorder-request-3.png">
+<img alt="active auto-material request" class="screenshot" src="/docs/assets/img/articles/reorder-request-3.png">
 
 A separate Material Request will be created for each item. User with Purchase Manager's role will receive email alert about these Material Requests.
 
@@ -23,5 +25,5 @@
 **An error occurred for certain Items while creating Material Requests based on Re-order level.**
 **Date 01-04-2016 not in any Fiscal Year.**
 
-One of the reason of error could be Fiscal Year as well. Click [here]({{docs_base_url}}/user/manual/en/accounts/articles/fiscal-year-error.html) to learn more about it.
+One of the reason of error could be Fiscal Year as well. Click [here](/docs/user/manual/en/accounts/articles/fiscal-year-error.html) to learn more about it.
 <!-- markdown -->
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/stock/articles/creating-depreciation-for-item.md b/erpnext/docs/user/manual/en/stock/articles/creating-depreciation-for-item.md
index 491427c..fbe00cb 100644
--- a/erpnext/docs/user/manual/en/stock/articles/creating-depreciation-for-item.md
+++ b/erpnext/docs/user/manual/en/stock/articles/creating-depreciation-for-item.md
@@ -1,8 +1,10 @@
+# Creating Depreciation For Item
+
 #Depreciation Entry
 
 **Question:** A Fixed Asset Item has been purchased and stored in a warehouse. How to create a depreciation for a Fixed Asset Item?
 
-**Answer:**You can post asset depreciation entry for the fixed asset item via [Stock Reconciliation]({{docs_base_url}}/user/manual/en/stock/opening-stock.html) Entry.
+**Answer:**You can post asset depreciation entry for the fixed asset item via [Stock Reconciliation](/docs/user/manual/en/stock/opening-stock.html) Entry.
 
 ####Step 1:
 
@@ -13,7 +15,7 @@
 - **Qty (Quantity)** Leave this column blank.
 - **Valuation Rate** will be item's value after depreciation.
 
-<img alt="reorder level" class="screenshot" src="{{docs_base_url}}/assets/img/articles/fixed-asset-dep-1.gif">
+<img alt="reorder level" class="screenshot" src="/docs/assets/img/articles/fixed-asset-dep-1.gif">
 
 After updating Valuation Rate for an item, come back to Stock Reconciliation and upload save .csv file.
 
@@ -21,7 +23,7 @@
 
 Select Expense account for depreciation in **Difference Account**. Value booked in the depreciation account will be the difference of old and next valuation rate of the fixed asset item, which will be actually the depreciation amount.
 
-<img alt="reorder level" class="screenshot" src="{{docs_base_url}}/assets/img/articles/fixed-asset-dep-2.png">
+<img alt="reorder level" class="screenshot" src="/docs/assets/img/articles/fixed-asset-dep-2.png">
 
 ####Stock Reconciliation Help Video
 
diff --git a/erpnext/docs/user/manual/en/stock/articles/index.md b/erpnext/docs/user/manual/en/stock/articles/index.md
index 0dff60b..fb11735 100644
--- a/erpnext/docs/user/manual/en/stock/articles/index.md
+++ b/erpnext/docs/user/manual/en/stock/articles/index.md
@@ -1 +1,3 @@
+# Articles
+
 {index}
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/stock/articles/maintain-stock-field-frozen-in-item-master.md b/erpnext/docs/user/manual/en/stock/articles/maintain-stock-field-frozen-in-item-master.md
index f93e668..e1fe295 100644
--- a/erpnext/docs/user/manual/en/stock/articles/maintain-stock-field-frozen-in-item-master.md
+++ b/erpnext/docs/user/manual/en/stock/articles/maintain-stock-field-frozen-in-item-master.md
@@ -1,3 +1,5 @@
+# Maintain Stock Field Frozen In Item Master
+
 #Maintain Stock field Frozen in the Item master
 
 In the item master, you might witness values in the following fields to be frozen.
@@ -6,7 +8,7 @@
 1. Has Batch No.
 1. Has Serial No.
 
-<img alt="Item Field Frozen" class="screenshot" src="{{docs_base_url}}/assets/img/articles/maintain-stock-1.png">
+<img alt="Item Field Frozen" class="screenshot" src="/docs/assets/img/articles/maintain-stock-1.png">
 
 For an item, once stock ledger entry is created, values in these fields will be froze. This is to prevent user from changing value which can lead to mis-match of actual stock, and stock level in the system of an item.
 
diff --git a/erpnext/docs/user/manual/en/stock/articles/manage-rejected-finished-goods-items.md b/erpnext/docs/user/manual/en/stock/articles/manage-rejected-finished-goods-items.md
index 2d57d64..b0d33eb 100644
--- a/erpnext/docs/user/manual/en/stock/articles/manage-rejected-finished-goods-items.md
+++ b/erpnext/docs/user/manual/en/stock/articles/manage-rejected-finished-goods-items.md
@@ -1,3 +1,5 @@
+# Manage Rejected Finished Goods Items
+
 #Manage Rejected Finished Goods Items
 
 There could be manufactured Items which would not pass quality test, hence rejected.
diff --git a/erpnext/docs/user/manual/en/stock/articles/managing-batch-wise-inventory.md b/erpnext/docs/user/manual/en/stock/articles/managing-batch-wise-inventory.md
index ccf39c1..85fc00f 100644
--- a/erpnext/docs/user/manual/en/stock/articles/managing-batch-wise-inventory.md
+++ b/erpnext/docs/user/manual/en/stock/articles/managing-batch-wise-inventory.md
@@ -1,16 +1,18 @@
+# Managing Batch Wise Inventory
+
 #Managing Batch wise Inventory
 
 Set of items which has same properties and attributes can be group in a single Batch. For example, pharmaceuticals  items are batch, so that it's manufacturing and expiry date can be tracked together. 
 
 To maintain batches against an Item you need to mention 'Has Batch No' as yes in the Item Master. 
 
-<img alt="Batch Item" class="screenshot" src="{{docs_base_url}}/assets/img/articles/batchwise-stock-1.png">
+<img alt="Batch Item" class="screenshot" src="/docs/assets/img/articles/batchwise-stock-1.png">
 
 You can create a new Batch from:
 
 `Stock > Documents > Batch > New`
 
-To learn more about batch, click [here.]({{docs_base_url}}/user/manual/en/stock/batch.html)
+To learn more about batch, click [here.](/docs/user/manual/en/stock/batch.html)
 
 For the Batch item, updating Batch No. in the stock transactions (Purchase Receipt & Delivery Note) is mandatory.
 
@@ -18,13 +20,13 @@
 
 When creating Purchase Receipt, you should create new Batch, or select one of the existing Batch master. One Batch can be associated with one Batch Item.
 
-<img alt="Batch in Purchase Receipt" class="screenshot" src="{{docs_base_url}}/assets/img/articles/batchwise-stock-2.png">
+<img alt="Batch in Purchase Receipt" class="screenshot" src="/docs/assets/img/articles/batchwise-stock-2.png">
 
 #### Delivery Note
 
 Define Batch in Delivery Note Item table. If Batch item is added under Product Bundle, you can update it's Batch No. in the Packing List table sa well.
 
-<img alt="Batch in Delivery Note" class="screenshot" src="{{docs_base_url}}/assets/img/articles/batchwise-stock-3.png">
+<img alt="Batch in Delivery Note" class="screenshot" src="/docs/assets/img/articles/batchwise-stock-3.png">
 
 #### Batch-wise Stock Balance Report
 
@@ -32,4 +34,4 @@
 
 Stock > Standard Reports > Batch-wise Balance History
 
-<img alt="Batchwise Stock Balance" class="screenshot" src="{{docs_base_url}}/assets/img/articles/batchwise-stock-4.png">
+<img alt="Batchwise Stock Balance" class="screenshot" src="/docs/assets/img/articles/batchwise-stock-4.png">
diff --git a/erpnext/docs/user/manual/en/stock/articles/managing-fractions-in-uom.md b/erpnext/docs/user/manual/en/stock/articles/managing-fractions-in-uom.md
index 12447e0..904abd9 100644
--- a/erpnext/docs/user/manual/en/stock/articles/managing-fractions-in-uom.md
+++ b/erpnext/docs/user/manual/en/stock/articles/managing-fractions-in-uom.md
@@ -1,3 +1,5 @@
+# Managing Fractions In Uom
+
 #Managing Fractions in UoM
 
 UoM stands for Unit of Measurement. Few examples of UoM are Numbers (Nos), Kgs, Litre, Meter, Box, Carton etc.
@@ -18,7 +20,7 @@
 
 In the UoM master, you will find a field called "Must be whole number". Check this field to restrict user from enter value in decimal places in quantity field, for item having this UoM.
 
-<img alt="UoM Must be Whole No" class="screenshot" src="{{docs_base_url}}/assets/img/articles/uom-fraction-1.png">
+<img alt="UoM Must be Whole No" class="screenshot" src="/docs/assets/img/articles/uom-fraction-1.png">
 
 ####Validation
 
@@ -26,7 +28,7 @@
 
 `Quantity cannot be a fraction at row #`
 
-<img alt="UoM Validation Message" class="screenshot" src="{{docs_base_url}}/assets/img/articles/uom-fraction-2.png">
+<img alt="UoM Validation Message" class="screenshot" src="/docs/assets/img/articles/uom-fraction-2.png">
 
 
 <!-- markdown -->
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/stock/articles/opening-stock-balance-entry-for-the-serialized-and-batch-item.md b/erpnext/docs/user/manual/en/stock/articles/opening-stock-balance-entry-for-the-serialized-and-batch-item.md
index 9b8684a..169fe9f 100644
--- a/erpnext/docs/user/manual/en/stock/articles/opening-stock-balance-entry-for-the-serialized-and-batch-item.md
+++ b/erpnext/docs/user/manual/en/stock/articles/opening-stock-balance-entry-for-the-serialized-and-batch-item.md
@@ -1,6 +1,8 @@
+# Opening Stock Balance Entry For The Serialized And Batch Item
+
 #Opening Stock Balance Entry for the Serialized and Batch Item
 
-Items for which Serial No. and Batch No. is maintained, opening stock balance entry for them is update via Stock Entry. [Click here to learn how serialized inventory is managed in ERPNext]({{docs_base_url}}/user/manual/en/stock/serial-no.html).
+Items for which Serial No. and Batch No. is maintained, opening stock balance entry for them is update via Stock Entry. [Click here to learn how serialized inventory is managed in ERPNext](/docs/user/manual/en/stock/serial-no.html).
 
 **Question:** Why Opening Balance entry for the Serialized and Batch Item cannot be updated via Stock Reconciliation?
 
@@ -34,13 +36,13 @@
 
 For the serialized item, update quantity as many Serial Nos are their.
 
-For the serialized item, mention Serial Nos. equivalent to it's Qty. Or if Serial Nos. are configured to be created based on Prefix, then no need to mention Serial Nos. manually. Click [here]({{docs_base_url}}/user/manual/en/stock/articles/serial-no-naming.html) to learn more about Serial No. naming.
+For the serialized item, mention Serial Nos. equivalent to it's Qty. Or if Serial Nos. are configured to be created based on Prefix, then no need to mention Serial Nos. manually. Click [here](/docs/user/manual/en/stock/articles/serial-no-naming.html) to learn more about Serial No. naming.
 
 For a batch item, provide Batch ID in which opening balance will be updated. Keep batch master ready, and updated it for the Batch Item. To create new Batch, go to:
 
 `Stock > Setup > Batch > New`
 
-[Click here to learn how Batchwise inventory is managed in ERPNext.]({{docs_base_url}}/user/manual/en/stock/articles/managing-batch-wise-inventory.html)
+[Click here to learn how Batchwise inventory is managed in ERPNext.](/docs/user/manual/en/stock/articles/managing-batch-wise-inventory.html)
 
 #### Step 7: Update Valuation Rate an Item
 
@@ -50,7 +52,7 @@
 
 As per perpetual inventory valuation system, accounting entry is created for every stock transaction. Double entry accounting system requires Total Debit matching with Total Credit in an entry. On the submission of Stock Entry, system debits Warehouse account by total value of items. To balance the same, we use Temporary Opening account as a Difference Account.
 
-<img alt="Difference Account" class="screenshot" src="{{docs_base_url}}/assets/img/articles/difference-account-1.png">
+<img alt="Difference Account" class="screenshot" src="/docs/assets/img/articles/difference-account-1.png">
 
 #### Step 9: Save and Submit Stock Entry
 
diff --git a/erpnext/docs/user/manual/en/stock/articles/repack-entry.md b/erpnext/docs/user/manual/en/stock/articles/repack-entry.md
index 1d758c8..3011bad 100644
--- a/erpnext/docs/user/manual/en/stock/articles/repack-entry.md
+++ b/erpnext/docs/user/manual/en/stock/articles/repack-entry.md
@@ -1,3 +1,5 @@
+# Repack Entry
+
 #Repack Entry
 
 Repack Entry is created for item bought in bulk, which is being packed into smaller packages. For example, item bought in tons can be repacked into Kgs. 
@@ -22,7 +24,7 @@
 
 For repacked/output items, only Target Warehouse will be provided. You will have to provide valuation for the repack items.
 
-<img alt="Repack Entry" class="screenshot" src="{{docs_base_url}}/assets/img/articles/repack-1.png">
+<img alt="Repack Entry" class="screenshot" src="/docs/assets/img/articles/repack-1.png">
 
 Update Qty for all the items selected.
 
@@ -30,6 +32,6 @@
 
 On submitting Stock Entry, stock of input item will be reduced from Source Warehouse, and stock of repack/output item will be added in the Target Warehouse.
 
-<img alt="Repack Stock Entry" class="screenshot" src="{{docs_base_url}}/assets/img/articles/repack-2.png">
+<img alt="Repack Stock Entry" class="screenshot" src="/docs/assets/img/articles/repack-2.png">
 
 <!-- markdown --> 
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/stock/articles/serial-no-naming.md b/erpnext/docs/user/manual/en/stock/articles/serial-no-naming.md
index 4f2425f..3ed608e 100644
--- a/erpnext/docs/user/manual/en/stock/articles/serial-no-naming.md
+++ b/erpnext/docs/user/manual/en/stock/articles/serial-no-naming.md
@@ -1,3 +1,5 @@
+# Serial No Naming
+
 #Serial No. Naming
 
 Serial Nos. is unique value assigned on each unit of an item. Serial no. helps in tracking item's warranty and expiry details. Generally high value items like machines, computers, costly equipments are serialized.
@@ -14,11 +16,11 @@
 
 On submission of Purchase Receipt or Stock entry for the serialized item, Serial Nos. will be auto-generated.
 
-<img alt="Serial Nos Entry" class="screenshot" src="{{docs_base_url}}/assets/img/articles/serial-naming-1.png">
+<img alt="Serial Nos Entry" class="screenshot" src="/docs/assets/img/articles/serial-naming-1.png">
 
 Generated Serial numbers will be updated for each item.
 
-<img alt="Serial Nos Created" class="screenshot" src="{{docs_base_url}}/assets/img/articles/serial-naming-2.png">
+<img alt="Serial Nos Created" class="screenshot" src="/docs/assets/img/articles/serial-naming-2.png">
 
 ###2. Serializing Manufacturing Item
 
@@ -28,12 +30,12 @@
 
 When Item is set as serialized, it will allow you to mentioned Series for it.
 
-<img alt="Serial Nos Created" class="screenshot" src="{{docs_base_url}}/assets/img/articles/serial-naming-3.png">
+<img alt="Serial Nos Created" class="screenshot" src="/docs/assets/img/articles/serial-naming-3.png">
 
 ####2.2 Production Entry for Serialized Item
 
 On submission of production entry for manufacturing item, system will automatically generate Serial Nos. following Series as specified in the Item master.
 
-<img alt="Serial Nos Created" class="screenshot" src="{{docs_base_url}}/assets/img/articles/serial-naming-4.png">
+<img alt="Serial Nos Created" class="screenshot" src="/docs/assets/img/articles/serial-naming-4.png">
 
 <!-- markdown -->
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/stock/articles/stock-entry-purpose.md b/erpnext/docs/user/manual/en/stock/articles/stock-entry-purpose.md
index 426328e..be5a962 100644
--- a/erpnext/docs/user/manual/en/stock/articles/stock-entry-purpose.md
+++ b/erpnext/docs/user/manual/en/stock/articles/stock-entry-purpose.md
@@ -1,3 +1,5 @@
+# Stock Entry Purpose
+
 #Stock Entry Purpose
 
 Stock Entry is a stock transaction, which can be used for multiple purposes. Let's learn about each Stock Entry Purpose below.
@@ -8,7 +10,7 @@
 
 Material Issue is generally made for the low value consumable items like office stationary, product consumables etc. Also you can create Material Issue to reconcile serialized and batched item's stock.
 
-<img alt="Material Issue" class="screenshot" src="{{docs_base_url}}/assets/img/articles/stock-entry-issue.png">
+<img alt="Material Issue" class="screenshot" src="/docs/assets/img/articles/stock-entry-issue.png">
 
 #### 2.Purpose: Material Receipt
 
@@ -16,34 +18,34 @@
 
 For the stock valuation purpose, provided Item Valuation becomes a mandatory field in the Material Receipt entry.
 
-<img alt="Material Receipt" class="screenshot" src="{{docs_base_url}}/assets/img/articles/stock-entry-receipt.png">
+<img alt="Material Receipt" class="screenshot" src="/docs/assets/img/articles/stock-entry-receipt.png">
 
 #### 3.Purpose: Material Transfer
 
 Material Transfer entry is created for the inter-warehouse Material Transfer.
 
-<img alt="Material Transfer" class="screenshot" src="{{docs_base_url}}/assets/img/articles/stock-entry-transfer.png">
+<img alt="Material Transfer" class="screenshot" src="/docs/assets/img/articles/stock-entry-transfer.png">
  
 #### 4.Purpose: Material Transfer for Manufacture 
 
 In the manufacturing process, raw-materials are issued from the stores to the production department (generally WIP warehouse). This Material Transfer entry is created from Production Order. Items in this entry are fetched from the BOM of production Item, as selected in Production Order.
 
-<img alt="Transfer for Manufacture" class="screenshot" src="{{docs_base_url}}/assets/img/articles/stock-entry-manufacture-transfer.gif">
+<img alt="Transfer for Manufacture" class="screenshot" src="/docs/assets/img/articles/stock-entry-manufacture-transfer.gif">
 
 #### 4.Purpose: Manufacture
 
 Manufacture is created from Production Order. In this entry, both raw-material item as well as production item are fetched from the BOM, selected in the Production Order. For the raw-material items, only Source Warehouse (generally WIP warehouse) is mentioned. For the production item, only target warehouse as mentioned in the Production Order is updated. On submission, stock of raw-material items are deducted from Source Warehouse, which indicates that raw-material items were consumed in the manufacturing process. Production Item is added to the Target Warehouse marking the completion of production cycle.
 
-<img alt="Manufacture" class="screenshot" src="{{docs_base_url}}/assets/img/articles/stock-entry-manufacture.gif">
+<img alt="Manufacture" class="screenshot" src="/docs/assets/img/articles/stock-entry-manufacture.gif">
 
 #### 5.Purpose: Repack
 
-Repack Entry is created when items purchases in bulk is repacked under smaller packs. ![Check this page to know more about Repack entry.]({{docs_base_url}}/user/manual/en/stock/articles/repack-entry.html)
+Repack Entry is created when items purchases in bulk is repacked under smaller packs. ![Check this page to know more about Repack entry.](/docs/user/manual/en/stock/articles/repack-entry.html)
 
 #### 6.Purpose: Subcontract
 
-Subcontracting transaction involves company transfer raw-material items to the sub-contractors warehouse. This requires adding a warehouse for the sub-contractor as well. Sub-contract entry transfers stock from the companies warehouse to the sub-contractors warehouse.![Check this page to know more about Subcontracting]({{docs_base_url}}/user/manual/en/manufacturing/subcontracting.html).
+Subcontracting transaction involves company transfer raw-material items to the sub-contractors warehouse. This requires adding a warehouse for the sub-contractor as well. Sub-contract entry transfers stock from the companies warehouse to the sub-contractors warehouse.![Check this page to know more about Subcontracting](/docs/user/manual/en/manufacturing/subcontracting.html).
 
-<img alt="Subcontract" class="screenshot" src="{{docs_base_url}}/assets/img/articles/stock-entry-subcontract.gif">
+<img alt="Subcontract" class="screenshot" src="/docs/assets/img/articles/stock-entry-subcontract.gif">
 
 <!-- markdown -->
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/stock/articles/stock-level-report.md b/erpnext/docs/user/manual/en/stock/articles/stock-level-report.md
index b674470..de71a91 100644
--- a/erpnext/docs/user/manual/en/stock/articles/stock-level-report.md
+++ b/erpnext/docs/user/manual/en/stock/articles/stock-level-report.md
@@ -1,3 +1,5 @@
+# Stock Level Report
+
 #Stock Level Report
 
 Stock Level report list stock item's quantity available in a particular warehouse.
diff --git a/erpnext/docs/user/manual/en/stock/articles/track-items-using-barcode.md b/erpnext/docs/user/manual/en/stock/articles/track-items-using-barcode.md
index 6d8fcb6..bafa035 100644
--- a/erpnext/docs/user/manual/en/stock/articles/track-items-using-barcode.md
+++ b/erpnext/docs/user/manual/en/stock/articles/track-items-using-barcode.md
@@ -1,3 +1,5 @@
+# Track Items Using Barcode
+
 #Track Items Using Barcode
 
 A barcode is a value decoded into vertical spaced lines. Barcode scanners are the input medium, like Keyboard. When it scans a barcode, the data appears in the computer screens at the point of a cursor.
@@ -6,10 +8,10 @@
 
 To set the barcode of a particular item, you will have to open the Item record. You can also enter barcode while creating a new item.
 
-<img alt="Material Transfer" class="screenshot" src="{{docs_base_url}}/assets/img/articles/barcode-item-master.png">
+<img alt="Material Transfer" class="screenshot" src="/docs/assets/img/articles/barcode-item-master.png">
 
 Once barcode field is updated in item master, items can be fetched using barcode. This feature will be availble in Delivery Note, Sales Invoice and Purchase Receipt transactions only.
 
-<img alt="Material Transfer" class="screenshot" src="{{docs_base_url}}/assets/img/articles/barcode-item-selection.gif">
+<img alt="Material Transfer" class="screenshot" src="/docs/assets/img/articles/barcode-item-selection.gif">
 
 <!-- markdown -->
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/stock/batch.md b/erpnext/docs/user/manual/en/stock/batch.md
index 73309f4..a97be92 100644
--- a/erpnext/docs/user/manual/en/stock/batch.md
+++ b/erpnext/docs/user/manual/en/stock/batch.md
@@ -1,3 +1,5 @@
+# Batch
+
 Batch feature in ERPNext allows you to group multiple units of an item,
 and assign them a unique value/number/tag called Batch No.
 
@@ -9,7 +11,7 @@
 
 If you want automatic batch creation at the time of Purchase Receipt, you must check "Create New Batches Automatically"
 
-<img class="screenshot" alt="Item Setup for Batches" src="{{docs_base_url}}/assets/img/stock/item_setup_for_batch.png">
+<img class="screenshot" alt="Item Setup for Batches" src="/docs/assets/img/stock/item_setup_for_batch.png">
 
 ### Creating Batches
 
@@ -23,7 +25,7 @@
 
 When you open a batch, you will see all the quantities relating this that batch on the page.
 
-<img class="screenshot" alt="Batch View" src="{{docs_base_url}}/assets/img/stock/batch_view.png">
+<img class="screenshot" alt="Batch View" src="/docs/assets/img/stock/batch_view.png">
 
 To move the batch from one warehouse to another, you can click on the move button.
 
diff --git a/erpnext/docs/user/manual/en/stock/delivery-note.md b/erpnext/docs/user/manual/en/stock/delivery-note.md
index ad5f2c8..a59ac35 100644
--- a/erpnext/docs/user/manual/en/stock/delivery-note.md
+++ b/erpnext/docs/user/manual/en/stock/delivery-note.md
@@ -1,3 +1,5 @@
+# Delivery Note
+
 A Delivery Note is made when a shipment is shipped from the company’s
 Warehouse.
 
@@ -13,7 +15,7 @@
 or from a “Submitted” Sales Order (that is not already shipped) by clicking on
 “Make Delivery Note”.
 
-<img class="screenshot" alt="Delivery Note" src="{{docs_base_url}}/assets/img/stock/delivery-note.png">
+<img class="screenshot" alt="Delivery Note" src="/docs/assets/img/stock/delivery-note.png">
 
 You can also “fetch” the details from an unshipped Sales Order.
 
@@ -22,7 +24,7 @@
 
 ### Shipping Packets or Items with Product Bundle
 
-If you are shipping Items that have a [Product Bundle]({{docs_base_url}}/user/manual/en/selling/setup/product-bundle.html), ERPNext will automatically
+If you are shipping Items that have a [Product Bundle](/docs/user/manual/en/selling/setup/product-bundle.html), ERPNext will automatically
 create a “Packing List” table for you based on the sub-Items in that Item.
 
 If your Items are serialized, then for Product Bundle type of Items, you will have
diff --git a/erpnext/docs/user/manual/en/stock/index.md b/erpnext/docs/user/manual/en/stock/index.md
index 971c33c..75872ee 100644
--- a/erpnext/docs/user/manual/en/stock/index.md
+++ b/erpnext/docs/user/manual/en/stock/index.md
@@ -1,3 +1,5 @@
+# Stock
+
 For most small business that deal in physical goods, a large part of their net
 worth is invested in the stock in hand.
 
diff --git a/erpnext/docs/user/manual/en/stock/installation-note.md b/erpnext/docs/user/manual/en/stock/installation-note.md
index 0519652..a75e15f 100644
--- a/erpnext/docs/user/manual/en/stock/installation-note.md
+++ b/erpnext/docs/user/manual/en/stock/installation-note.md
@@ -1,5 +1,7 @@
+# Installation Note
+
 You can use installation note to record the instalation of a product having a serial number.
 
-<img class="screenshot" alt="Installation Note" src="{{docs_base_url}}/assets/img/stock/installation-note.png">
+<img class="screenshot" alt="Installation Note" src="/docs/assets/img/stock/installation-note.png">
 
 {next}
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/stock/item/index.md b/erpnext/docs/user/manual/en/stock/item/index.md
index aea38f5..3e2bdd3 100644
--- a/erpnext/docs/user/manual/en/stock/item/index.md
+++ b/erpnext/docs/user/manual/en/stock/item/index.md
@@ -1,3 +1,5 @@
+# Item
+
 An Item is your companys' product or a service. The term Item is applicable to things (products or services) you sell as well as raw materials or components of products yet to be produced (before they can be sold to customers). An Item can be a physical product or a service that you buy/sell from your customers/suppliers. ERPNext allows you to manage all sorts of items like raw-materials, sub-assemblies, finished goods, item variants and service items.
 
 ERPNext is optimised for itemised management of your sales and purchase. If you are in services, you can create an Item for each services that your offer. Completing the Item Master is very essential for successful implementation of ERPNext.
@@ -5,11 +7,11 @@
 ## Item Properties
 
   * **Item Name:** Item name is the actual name of your product or service.
-  * **Item Code:** Item Code is a short-form to denote your Item. If you have very few Items, it is advisable to keep the Item Name and the Item Code same. This helps new users to recognise and update Item details in all transactions. In case you have lot of Items with long names and the list runs in hundreds, it is advisable to code. To understand naming Item codes see [Item Codification]({{docs_base_url}}/user/manual/en/stock/item/item-codification.html)
-  * **Item Group:** Item Group is used to categorize an Item under various criterias like products, raw materials, services, sub-assemblies, consumables or all Item groups. Create your default Item Group list under Setup> Item Group and pre-select the option while filling your New Item details under [Item Group]({{docs_base_url}}/user/manual/en/stock/setup/item-group.html)
+  * **Item Code:** Item Code is a short-form to denote your Item. If you have very few Items, it is advisable to keep the Item Name and the Item Code same. This helps new users to recognise and update Item details in all transactions. In case you have lot of Items with long names and the list runs in hundreds, it is advisable to code. To understand naming Item codes see [Item Codification](/docs/user/manual/en/stock/item/item-codification.html)
+  * **Item Group:** Item Group is used to categorize an Item under various criterias like products, raw materials, services, sub-assemblies, consumables or all Item groups. Create your default Item Group list under Setup> Item Group and pre-select the option while filling your New Item details under [Item Group](/docs/user/manual/en/stock/setup/item-group.html)
   * **Default Unit of Measure:** This is the default measuring unit that you will use for your product. It could be in nos, kgs, meters, etc. You can store all the UOM’s that your product will require under Set Up> Master Data > UOM. These can be preselected while filling New Item by using % sign to get a pop up of the UOM list.
   * **Brand:** If you have more than one brand save them under Set Up> Master Data> Brand and pre-select them while filling a New Item.
-  * **Variant:** A Item Variant is a different version of a Item.To learn more about managing variants see [Item Variants]({{docs_base_url}}/user/manual/en/stock/item/item-variants.html)
+  * **Variant:** A Item Variant is a different version of a Item.To learn more about managing variants see [Item Variants](/docs/user/manual/en/stock/item/item-variants.html)
 
 ### Upload an Image
 
@@ -29,11 +31,11 @@
 These numbers help to track individual units or batches of Items which you sell. It also tracks warranty and returns. In case any individual Item is recalled by the supplier the number system helps to track individual Item. The numbering system also manages expiry dates. Please note that if you sell your items in thousands, and if the items are very small like pens or erasers, you need not serialize them. In ERPNext, you will have to mention the serial number in some accounting entries. To create serial numbers you will have to manually create all the numbers in your entries. If your product is not a big consumer durable Item, if it has no warranty and has no chances of being recalled, avoid giving serial numbers.
 
 > Tip: While entering an item code in an items table, if the table requires inventory details, then depending on whether the entered item is batched or serialized, you can enter serial or batch numbers right away in a pop-up dialog.
-<img alt="Serial No modal" class="screenshot" src="{{docs_base_url}}/assets/img/stock/serial_no_modal.gif"><img alt="Batch No modal" class="screenshot" src="{{docs_base_url}}/assets/img/stock/batch_no_modal.png">
+<img alt="Serial No modal" class="screenshot" src="/docs/assets/img/stock/serial_no_modal.gif"><img alt="Batch No modal" class="screenshot" src="/docs/assets/img/stock/batch_no_modal.png">
 
 > Important: Once you mark an item as serialized or batched or neither, you cannot change it after you have made any stock entry.
 
-  * [Discussion on Serialized Inventory]({{docs_base_url}}/user/manual/en/setting-up/stock-reconciliation-for-non-serialized-item.html)
+  * [Discussion on Serialized Inventory](/docs/user/manual/en/setting-up/stock-reconciliation-for-non-serialized-item.html)
 
 ### Re Ordering
 
@@ -45,7 +47,7 @@
 
 These settings are required only if a particular Item has a different tax rate than the rate defined in the standard tax Account. For example, If you have a tax Account, “VAT 10%” and this particular Item is exempted from tax, then you select “VAT 10%” in the first column, and set “0” as the tax rate in the second column.
 
-Go to [Setting Up Taxes]({{docs_base_url}}/user/manual/en/setting-up/setting-up-taxes.html) to understand this topic in detail.
+Go to [Setting Up Taxes](/docs/user/manual/en/setting-up/setting-up-taxes.html) to understand this topic in detail.
 
 ### Inspection
 
@@ -55,9 +57,9 @@
 
 ### Purchase Details
 
-<img alt="Item Purchase Details" class="screenshot" src="{{docs_base_url}}/assets/img/stock/item-purchase.png">
+<img alt="Item Purchase Details" class="screenshot" src="/docs/assets/img/stock/item-purchase.png">
 
-<img class="screenshot" alt="Purchase details" src="{{docs_base_url}}/assets/img/stock/item-purchase.png">
+<img class="screenshot" alt="Purchase details" src="/docs/assets/img/stock/item-purchase.png">
 
 * **Lead time days:** Lead time days are the number of days required for the Item to reach the warehouse.
 
@@ -67,7 +69,7 @@
 
 ###Supplier Details
 
-<img alt="Item Supplier Details" class="screenshot" src="{{docs_base_url}}/assets/img/stock/item-supplier.png">
+<img alt="Item Supplier Details" class="screenshot" src="/docs/assets/img/stock/item-supplier.png">
 
 * **Default Supplier:** Supplier from whom you generally purchase this item.
 
@@ -77,25 +79,25 @@
 
 ### Sales Details
 
-<img alt="Item Sales Details" class="screenshot" src="{{docs_base_url}}/assets/img/stock/item-sales.png">
+<img alt="Item Sales Details" class="screenshot" src="/docs/assets/img/stock/item-sales.png">
 
 * **Default Income Account:** Income account selected here will be fetched automatically in sales invoice for this item.
 
-<img class="screenshot" alt="Sales details" src="{{docs_base_url}}/assets/img/stock/item-sales.png)">
+<img class="screenshot" alt="Sales details" src="/docs/assets/img/stock/item-sales.png)">
 
-<img class="screenshot" alt="Sales details" src="{{docs_base_url}}/assets/img/stock/item-sales.png">
+<img class="screenshot" alt="Sales details" src="/docs/assets/img/stock/item-sales.png">
 
 ***Cost Centre:** Cost center selected here will be fetched automatically in sales invoice for this item.
 
 ***Customer Codes:** Track Item Code assigned by the Customers for this Item. This will help you in searching item while creating Sales Order based on the Item Code in the Customer's Purchase Order.
 
-<img class="screenshot" alt="Sales details" src="{{docs_base_url}}/assets/img/stock/item-sales.png)">
+<img class="screenshot" alt="Sales details" src="/docs/assets/img/stock/item-sales.png)">
 
 ### Manufacturing And Website
 
-<img class="screenshot" alt="Manufaturing details" src="{{docs_base_url}}/assets/img/stock/item-manufacturing-website.png">
+<img class="screenshot" alt="Manufaturing details" src="/docs/assets/img/stock/item-manufacturing-website.png">
 
-Visit [Manufacturing]({{docs_base_url}}/user/manual/en/manufacturing.html) and [Website ]({{docs_base_url}}/user/manual/en/website.html)to understand these topics in detail.
+Visit [Manufacturing](/docs/user/manual/en/manufacturing.html) and [Website ](/docs/user/manual/en/website.html)to understand these topics in detail.
 
 ### Learn more about Item
 
diff --git a/erpnext/docs/user/manual/en/stock/item/item-codification.md b/erpnext/docs/user/manual/en/stock/item/item-codification.md
index eeb4f49..82ed307 100644
--- a/erpnext/docs/user/manual/en/stock/item/item-codification.md
+++ b/erpnext/docs/user/manual/en/stock/item/item-codification.md
@@ -1,3 +1,5 @@
+# Item Codification
+
 If you already have a full-fledged business with a number of physical items,
 you would have probably coded your items. If you have not, you have a choice.
 We recommend that you should codify if you have lot of products with long or
diff --git a/erpnext/docs/user/manual/en/stock/item/item-price.md b/erpnext/docs/user/manual/en/stock/item/item-price.md
index 342e419..52850c2 100644
--- a/erpnext/docs/user/manual/en/stock/item/item-price.md
+++ b/erpnext/docs/user/manual/en/stock/item/item-price.md
@@ -1,3 +1,5 @@
+# Item Price
+
 Item Price is the record in which you can log selling and buying rate of an item.
 
 There are two ways to reach to new Item Price form.
@@ -14,7 +16,7 @@
 
 You can create multiple Price List in ERPNext to track Selling and Buying Price List of an item separtely. Also if item's selling prices id changing based on territory, or due to other criteria, you can create multiple selling Price List for it.
 
-![Item Price list]({{docs_base_url}}/assets/old_images/erpnext/item-price-list.png)
+![Item Price list](/docs/assets/old_images/erpnext/item-price-list.png)
 
 On selection of Price List, its currency and for selling or buying property will be fetched as well.
 
@@ -24,13 +26,13 @@
 
 Select item for which Item Price record is to be created. On selection of Item Code, Item Name and Description will be fetched as well.
 
-![Item Price Item]({{docs_base_url}}/assets/old_images/erpnext/item-price-item.png)
+![Item Price Item](/docs/assets/old_images/erpnext/item-price-item.png)
 
 Step 3: Enter Rate
 
 Enter selling/buying rate of an item in Price List currency.
 
-![Item Price Rate]({{docs_base_url}}/assets/old_images/erpnext/item-price-rate.png)
+![Item Price Rate](/docs/assets/old_images/erpnext/item-price-rate.png)
 
 Step 4: Save Item Price
 
diff --git a/erpnext/docs/user/manual/en/stock/item/item-valuation-fifo-and-moving-average.md b/erpnext/docs/user/manual/en/stock/item/item-valuation-fifo-and-moving-average.md
index d1456ee..cc59618 100644
--- a/erpnext/docs/user/manual/en/stock/item/item-valuation-fifo-and-moving-average.md
+++ b/erpnext/docs/user/manual/en/stock/item/item-valuation-fifo-and-moving-average.md
@@ -1,3 +1,5 @@
+# Item Valuation Fifo And Moving Average
+
 ### How are Items Valued?
 
 One of the major features of any inventory system is that you can find out the
@@ -19,7 +21,7 @@
 
   * **FIFO (First In First Out):** In this system, ERPNext assumes that you will consume / sell those Items first which you bought first. For example, if you buy an Item at price X and then after a few days at price Y, whenever you sell your Item, ERPNext will reduce the quantity of the Item priced at X first and then Y.
 
-<img alt="FIFO" class="screenshot" src="{{docs_base_url}}/assets/img/stock/fifo.png">
+<img alt="FIFO" class="screenshot" src="/docs/assets/img/stock/fifo.png">
 
   * **Moving Average:** In this method, ERPNext assumes that the value of the item at any point is the average price of the units of that Item in stock. For example, if the value of an Item is X in a Warehouse with quantity Y and another quantity Y1 is added to the Warehouse at cost X1, the new value X2 would be:
 
diff --git a/erpnext/docs/user/manual/en/stock/item/item-variants.md b/erpnext/docs/user/manual/en/stock/item/item-variants.md
index 7514404..8b6da16 100644
--- a/erpnext/docs/user/manual/en/stock/item/item-variants.md
+++ b/erpnext/docs/user/manual/en/stock/item/item-variants.md
@@ -19,33 +19,33 @@
 
 * The Item shall then be referred to as a so called 'Template'. Such a Template is not identical to a regular 'Item' any longer. For example it (the Template) can not be used directly in any Transactions (Sales Order, Delivery Note, Purchase Invoice) itself. Only the Variants of an Item (_blue_ t-shirt in size _small)_ can be practically used in such. Therefore it would be ideal to decide whether an item 'Has Variants' or not directly when creating it.
 
-<img class="screenshot" alt="Has Variants" src="{{docs_base_url}}/assets/img/stock/item-has-variants.png">
+<img class="screenshot" alt="Has Variants" src="/docs/assets/img/stock/item-has-variants.png">
 
 On selecting 'Has Variants' a table shall appear. Specify the variant attributes for the Item in the table.
 In case the attribute has Numeric Values, you can specify the range and increment values here.
 
-<img class="screenshot" alt="Valid Attributes" src="{{docs_base_url}}/assets/img/stock/item-attributes.png">
+<img class="screenshot" alt="Valid Attributes" src="/docs/assets/img/stock/item-attributes.png">
 
 > Note: You cannot make Transactions against a 'Template'
 
 To create 'Item Variants' against a 'Template' select 'Make Variants'
 
-<img class="screenshot" alt="Make Variants" src="{{docs_base_url}}/assets/img/stock/make-variant.png">
+<img class="screenshot" alt="Make Variants" src="/docs/assets/img/stock/make-variant.png">
 
-<img class="screenshot" alt="Make Variants" src="{{docs_base_url}}/assets/img/stock/make-variant-1.png">
+<img class="screenshot" alt="Make Variants" src="/docs/assets/img/stock/make-variant-1.png">
 
-To learn more about setting Attributes Master check [Item Attributes]({{docs_base_url}}/user/manual/en/stock/setup/item-attribute.html)
+To learn more about setting Attributes Master check [Item Attributes](/docs/user/manual/en/stock/setup/item-attribute.html)
 
 ### Variants Based on Manufacturers
 
 To setup variants based on Manufactueres, in your Item template, set "Variants Based On" as "Manufacturers"
 
 <img class='screenshot' alt='Setup Item Variant by Manufacturer'
-	src='{{docs_base_url}}/assets/img/stock/select-mfg-for-variant.png'>
+	src='/docs/assets/img/stock/select-mfg-for-variant.png'>
 
 When you make a new Variant, the system will prompt you to select a Manufacturer. You can also optionally put in a Manufacturer Part Number
 
 <img class='screenshot' alt='Setup Item Variant by Manufacturer'
-	src='{{docs_base_url}}/assets/img/stock/set-variant-by-mfg.png'>
+	src='/docs/assets/img/stock/set-variant-by-mfg.png'>
 
 The naming of the variant will be the name (ID) of the template Item with a number suffix. e.g. "ITEM000" will have variant "ITEM000-1"
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/stock/item/purchase-details.md b/erpnext/docs/user/manual/en/stock/item/purchase-details.md
index 134d551..3de1724 100644
--- a/erpnext/docs/user/manual/en/stock/item/purchase-details.md
+++ b/erpnext/docs/user/manual/en/stock/item/purchase-details.md
@@ -4,4 +4,4 @@
 
 A warranty means a guarantee or a promise which provides assurance by one party to the other party which allows for a legal remedy if that promise is not true or followed. A warranty period is a time period in which a purchased product may be returned or exchanged.
 
-<img class="screenshot" alt="Item Warranty" src="{{docs_base_url}}/assets/img/stock/item-warranty.png">
\ No newline at end of file
+<img class="screenshot" alt="Item Warranty" src="/docs/assets/img/stock/item-warranty.png">
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/stock/item/reorder.md b/erpnext/docs/user/manual/en/stock/item/reorder.md
index 548a8a9..06caa2c 100644
--- a/erpnext/docs/user/manual/en/stock/item/reorder.md
+++ b/erpnext/docs/user/manual/en/stock/item/reorder.md
@@ -10,4 +10,4 @@
 
 For example, If reorder level is 100 items, your reorder quantity may not necessarily be 100 items. The Reorder quantity can be greater than or equal to reorder level. It may depend upon lead time, discount, transportation and average daily consumption.
 
-<img alt="Item Reorder" class="screenshot" src="{{docs_base_url}}/assets/img/stock/item-reorder.png">
\ No newline at end of file
+<img alt="Item Reorder" class="screenshot" src="/docs/assets/img/stock/item-reorder.png">
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/stock/material-request.md b/erpnext/docs/user/manual/en/stock/material-request.md
index 8e4caea..c3ba13c 100644
--- a/erpnext/docs/user/manual/en/stock/material-request.md
+++ b/erpnext/docs/user/manual/en/stock/material-request.md
@@ -1,7 +1,9 @@
+# Material Request
+
 A Material Request is a simple document identifying a requirement of a set of
 Items (products or services) for a particular reason.
 
-<img class="screenshot" alt="Material Request" src="{{docs_base_url}}/assets/img/buying/material-request-flowchart.png">
+<img class="screenshot" alt="Material Request" src="/docs/assets/img/buying/material-request-flowchart.png">
 
 To generate a Material Request manually go to:
 
@@ -9,14 +11,14 @@
 
 #### Creating Material Request 
 
-<img class="screenshot" alt="Material Request" src="{{docs_base_url}}/assets/img/buying/material-request.png">
+<img class="screenshot" alt="Material Request" src="/docs/assets/img/buying/material-request.png">
 
 A Material Request can be generated:
 
   * Automatically from a Sales Order.
   * Automatically when the Projected Quantity of an Item in stores reaches a particular level.
   * Automatically from your Bill of Materials if you use Production Plan to plan your manufacturing activities.
-  * If your Items are inventory items, you must also mention the Warehouse where you expect these Items to be delivered. This helps to keep track of the [Projected Quantity]({{docs_base_url}}/user/manual/en/stock/projected-quantity.html) for this Item.
+  * If your Items are inventory items, you must also mention the Warehouse where you expect these Items to be delivered. This helps to keep track of the [Projected Quantity](/docs/user/manual/en/stock/projected-quantity.html) for this Item.
 
 A Material Request can be of type:
 
@@ -25,7 +27,7 @@
 * Material Issue - If the requested material is to be Issued.
 * Manufacture - If the requested material is to be Produced.
 
-The User can also raise a [Request For Quotation]({{docs_base_url}}/user/manual/en/buying/request-for-quotation.html) against a Material Request. To create a Request For Quotation the user can click on 'Make'.
+The User can also raise a [Request For Quotation](/docs/user/manual/en/buying/request-for-quotation.html) against a Material Request. To create a Request For Quotation the user can click on 'Make'.
 
 > Info: Material Request is not mandatory. It is ideal if you have centralized
 buying so that you can collect this information from various departments.
diff --git a/erpnext/docs/user/manual/en/stock/opening-stock.md b/erpnext/docs/user/manual/en/stock/opening-stock.md
index e59fb42..ea77999 100644
--- a/erpnext/docs/user/manual/en/stock/opening-stock.md
+++ b/erpnext/docs/user/manual/en/stock/opening-stock.md
@@ -10,6 +10,6 @@
 
 If you are not making opening Stock Entry, you can select "Stock Adjustment" account in Difference/Expense Account field which is an expense account.
 
-To understand Opening Stock for serialized Items visit [Stock Reconciliation]({{docs_base_url}}/user/manual/en/setting-up/stock-reconciliation-for-non-serialized-item.html)
+To understand Opening Stock for serialized Items visit [Stock Reconciliation](/docs/user/manual/en/setting-up/stock-reconciliation-for-non-serialized-item.html)
 
 {next}
diff --git a/erpnext/docs/user/manual/en/stock/projected-quantity.md b/erpnext/docs/user/manual/en/stock/projected-quantity.md
index 0e7b742..e02b2c3 100644
--- a/erpnext/docs/user/manual/en/stock/projected-quantity.md
+++ b/erpnext/docs/user/manual/en/stock/projected-quantity.md
@@ -1,3 +1,5 @@
+# Projected Quantity
+
 Projected Quantity is the level of stock that is predicted for a particular
 Item, based on the current stock levels and other requirements. It is the
 quantity of gross inventory that includes supply and demand in the past which
@@ -11,7 +13,7 @@
 Having a tight control of the projected inventory is crucial to determine
 shortages and to calculate the right order quantity.
 
-<img class="screenshot" alt="Projected Quantity" src="{{docs_base_url}}/assets/img/stock/projected_quantity.png">
+<img class="screenshot" alt="Projected Quantity" src="/docs/assets/img/stock/projected_quantity.png">
 
 
 > Projected Qty = Actual Qty + Planned Qty + Requested Qty + Ordered Qty -
diff --git a/erpnext/docs/user/manual/en/stock/purchase-receipt.md b/erpnext/docs/user/manual/en/stock/purchase-receipt.md
index 0f43b58..523b0fa 100644
--- a/erpnext/docs/user/manual/en/stock/purchase-receipt.md
+++ b/erpnext/docs/user/manual/en/stock/purchase-receipt.md
@@ -1,3 +1,5 @@
+# Purchase Receipt
+
 Purchase Receipts are made when you accept material from your Supplier usually
 against a Purchase Order.
 
@@ -10,7 +12,7 @@
 
 or from a “Submitted” Purchase Order, by clicking on “Make Purchase Receipt”.
 
-<img class="screenshot" alt="Purchase Receipt" src="{{docs_base_url}}/assets/img/stock/purchase-receipt.png">
+<img class="screenshot" alt="Purchase Receipt" src="/docs/assets/img/stock/purchase-receipt.png">
 
 ### Rejections
 
diff --git a/erpnext/docs/user/manual/en/stock/purchase-return.md b/erpnext/docs/user/manual/en/stock/purchase-return.md
index 328ed08..2b63034 100644
--- a/erpnext/docs/user/manual/en/stock/purchase-return.md
+++ b/erpnext/docs/user/manual/en/stock/purchase-return.md
@@ -1,3 +1,5 @@
+# Purchase Return
+
 ERPNext has an option for products that are need to be returned to the
 supplier. This may be on account of a number of reasons like defects in goods,
 quality not matching, the buyer not needing the stock, etc.
@@ -6,16 +8,16 @@
 
 First open the original Purchase Receipt, against which supplier delivered the items.
 
-<img class="screenshot" alt="Original Purchase Receipt" src="{{docs_base_url}}/assets/img/stock/purchase-return-original-purchase-receipt.png">
+<img class="screenshot" alt="Original Purchase Receipt" src="/docs/assets/img/stock/purchase-return-original-purchase-receipt.png">
 
 Then click on "Make Purchase Return", it will open a new Purchase Receipt with "Is Return" checked, items and taxes with negative amount.
 
-<img class="screenshot" alt="Return Against Purchase Receipt" src="{{docs_base_url}}/assets/img/stock/purchase-return-against-purchase-receipt.png">
+<img class="screenshot" alt="Return Against Purchase Receipt" src="/docs/assets/img/stock/purchase-return-against-purchase-receipt.png">
 
 On submission of Return Purchase Return, system will decrease item qty from the mentioned warehouse. To maintain correct stock valuation, stock balance will also go up according to the original purchase rate of the returned items.
 
-<img class="screenshot" alt="Return Stock Ledger" src="{{docs_base_url}}/assets/img/stock/purchase-return-stock-ledger.png">
+<img class="screenshot" alt="Return Stock Ledger" src="/docs/assets/img/stock/purchase-return-stock-ledger.png">
 
 If Perpetual Inventory enabled, system will also post accounting entry against warehouse account to sync warehouse account balance with stock balance as per Stock Ledger.
 
-<img class="screenshot" alt="Return Stock Ledger" src="{{docs_base_url}}/assets/img/stock/purchase-return-general-ledger.png">
\ No newline at end of file
+<img class="screenshot" alt="Return Stock Ledger" src="/docs/assets/img/stock/purchase-return-general-ledger.png">
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/stock/sales-return.md b/erpnext/docs/user/manual/en/stock/sales-return.md
index 1ce922d..1ba17c2 100644
--- a/erpnext/docs/user/manual/en/stock/sales-return.md
+++ b/erpnext/docs/user/manual/en/stock/sales-return.md
@@ -1,3 +1,5 @@
+# Sales Return
+
 Goods sold being returned is quite a common practice in business. They could
 be returned by the customer on quality issues, non-delivery on agreed date, or
 any other reason. 
@@ -6,22 +8,22 @@
 
 First open the original Delivery Note / Sales Invoice, against which customer returned the items.
 
-<img class="screenshot" alt="Original Delivery Note" src="{{docs_base_url}}/assets/img/stock/sales-return-original-delivery-note.png">
+<img class="screenshot" alt="Original Delivery Note" src="/docs/assets/img/stock/sales-return-original-delivery-note.png">
 
 Then click on "Make Sales Return", it will open a new Delivery Note with "Is Return" checked, items and taxes with negative amount.
 
-<img class="screenshot" alt="Return Against Delivery Note" src="{{docs_base_url}}/assets/img/stock/sales-return-against-delivery-note.png">
+<img class="screenshot" alt="Return Against Delivery Note" src="/docs/assets/img/stock/sales-return-against-delivery-note.png">
 
 You can also create the return entry against original Sales Invoice, to return stock along with credit note, check "Update Stock" option in Return Sales Invoice.
 
-<img class="screenshot" alt="Return Against Sales Invoice" src="{{docs_base_url}}/assets/img/stock/sales-return-against-sales-invoice.png">
+<img class="screenshot" alt="Return Against Sales Invoice" src="/docs/assets/img/stock/sales-return-against-sales-invoice.png">
 
 On submission of Return Delivery Note / Sales Invoice, system will increase stock balance in the mentioned warehouse. To maintain correct stock valuation, stock balance will go up according to the original purchase rate of the returned items.
 
-<img class="screenshot" alt="Return Stock Ledger" src="{{docs_base_url}}/assets/img/stock/sales-return-stock-ledger.png">
+<img class="screenshot" alt="Return Stock Ledger" src="/docs/assets/img/stock/sales-return-stock-ledger.png">
 
 In case of Return Sales Invoice, Customer account will be credited and associated income and tax account will be debited.
 
 If Perpetual Inventory enabled, system will also post accounting entry against warehouse account to sync warehouse account balance with stock balance as per Stock Ledger.
 
-<img class="screenshot" alt="Return Stock Ledger" src="{{docs_base_url}}/assets/img/stock/sales-return-general-ledger.png">
\ No newline at end of file
+<img class="screenshot" alt="Return Stock Ledger" src="/docs/assets/img/stock/sales-return-general-ledger.png">
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/stock/serial-no.md b/erpnext/docs/user/manual/en/stock/serial-no.md
index fbbfb1a..cb766ba 100644
--- a/erpnext/docs/user/manual/en/stock/serial-no.md
+++ b/erpnext/docs/user/manual/en/stock/serial-no.md
@@ -1,3 +1,5 @@
+# Serial No
+
 As we discussed in the **Item** section, if an **Item** is _serialized_, a
 **Serial Number** (Serial No) record is maintained for each quantity of that
 **Item**. This information is helpful in tracking the location of the Serial
@@ -20,7 +22,7 @@
 Invoice). When a new Serial No is created directly, its warehouse cannot be
 set.
 
-<img class="screenshot" alt="Serial Number" src="{{docs_base_url}}/assets/img/stock/serial-no.png">
+<img class="screenshot" alt="Serial Number" src="/docs/assets/img/stock/serial-no.png">
 
 * The Status is set based on Stock Entry.
 
diff --git a/erpnext/docs/user/manual/en/stock/setup/index.md b/erpnext/docs/user/manual/en/stock/setup/index.md
index 6f3f1cb..7254785 100644
--- a/erpnext/docs/user/manual/en/stock/setup/index.md
+++ b/erpnext/docs/user/manual/en/stock/setup/index.md
@@ -1,3 +1,5 @@
+# Setup
+
 ### Topics
 
 {index}
diff --git a/erpnext/docs/user/manual/en/stock/setup/item-attribute.md b/erpnext/docs/user/manual/en/stock/setup/item-attribute.md
index 0b2ab74..a6e0eec 100644
--- a/erpnext/docs/user/manual/en/stock/setup/item-attribute.md
+++ b/erpnext/docs/user/manual/en/stock/setup/item-attribute.md
@@ -1,16 +1,18 @@
+# Item Attribute
+
 You can define Attributes and attribute values for your Item Variants here.
 
-<img class="screenshot" alt="Attribute Master" src="{{docs_base_url}}/assets/img/stock/item-attribute.png">
+<img class="screenshot" alt="Attribute Master" src="/docs/assets/img/stock/item-attribute.png">
 
 #### Non Numeric Attributes
 
 * For Non Numeric Attributes, specify attributes values along with its abbreviation in the Attribute Value Table.
 
-<img class="screenshot" alt="Attribute Master" src="{{docs_base_url}}/assets/img/stock/item-attribute-non-numeric.png">
+<img class="screenshot" alt="Attribute Master" src="/docs/assets/img/stock/item-attribute-non-numeric.png">
 
 #### Numeric Attributes
 
 * If your attribute is Numeric, select Numeric Values
 * Specify the Range and the Increment Value
 
-<img class="screenshot" alt="Attribute Master" src="{{docs_base_url}}/assets/img/stock/item-attribute-numeric.png">
+<img class="screenshot" alt="Attribute Master" src="/docs/assets/img/stock/item-attribute-numeric.png">
diff --git a/erpnext/docs/user/manual/en/stock/setup/item-group.md b/erpnext/docs/user/manual/en/stock/setup/item-group.md
index cf6a75a..a280090 100644
--- a/erpnext/docs/user/manual/en/stock/setup/item-group.md
+++ b/erpnext/docs/user/manual/en/stock/setup/item-group.md
@@ -1,3 +1,5 @@
+# Item Group
+
 Item Group is the classification category. Depending on the type of product,
 categorise it under its respective field. If the product is
 service oriented, name it under the group head - service. If the
@@ -5,7 +7,7 @@
 category. In case, your product is used only in trading, you can categorise it
 under Trading.
 
-<img class="screenshot" alt="Item Group Tree" src="{{docs_base_url}}/assets/img/stock/item-group-tree.png">
+<img class="screenshot" alt="Item Group Tree" src="/docs/assets/img/stock/item-group-tree.png">
 
 ### Create a Item Group
 
@@ -13,7 +15,7 @@
 
 * Select 'Add Child'
 
-<img class="screenshot" alt="Add Item Group" src="{{docs_base_url}}/assets/img/stock/item-group-new.gif">
+<img class="screenshot" alt="Add Item Group" src="/docs/assets/img/stock/item-group-new.gif">
 
 ### Delete an Item Group
 
@@ -21,6 +23,6 @@
 
 * Select 'delete'
 
-<img class="screenshot" alt="Add Item Group" src="{{docs_base_url}}/assets/img/stock/item-group-del.gif">
+<img class="screenshot" alt="Add Item Group" src="/docs/assets/img/stock/item-group-del.gif">
 
 {next}
diff --git a/erpnext/docs/user/manual/en/stock/setup/stock-settings.md b/erpnext/docs/user/manual/en/stock/setup/stock-settings.md
index f8cb9ea..32562c6 100644
--- a/erpnext/docs/user/manual/en/stock/setup/stock-settings.md
+++ b/erpnext/docs/user/manual/en/stock/setup/stock-settings.md
@@ -1,5 +1,7 @@
+# Stock Settings
+
 You can set default settings for your stock related transactions here.
 
-<img class="screenshot" alt="Stock Settings" src="{{docs_base_url}}/assets/img/stock/stock-settings.png">
+<img class="screenshot" alt="Stock Settings" src="/docs/assets/img/stock/stock-settings.png">
 
 {next}
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/stock/stock-entry.md b/erpnext/docs/user/manual/en/stock/stock-entry.md
index fb784c4..e2ac6a1 100644
--- a/erpnext/docs/user/manual/en/stock/stock-entry.md
+++ b/erpnext/docs/user/manual/en/stock/stock-entry.md
@@ -1,3 +1,5 @@
+# Stock Entry
+
 A Stock Entry is a simple document that lets you record Item movement from a
 Warehouse, to a Warehouse and between Warehouses.
 
@@ -5,7 +7,7 @@
 
 > Stock > Stock Entry > New
 
-<img class="screenshot" alt="Stock Entry" src="{{docs_base_url}}/assets/img/stock/stock-entry.png">
+<img class="screenshot" alt="Stock Entry" src="/docs/assets/img/stock/stock-entry.png">
 
 Stock Entries can be made for the following purposes:
 
@@ -27,15 +29,15 @@
 
 To add additional costs, enter the description and amount of the cost in the Additional Costs table.
 
-<img class="screenshot" alt="Stock Entry Additional Costs" src="{{docs_base_url}}/assets/img/stock/additional-costs-table.png">
+<img class="screenshot" alt="Stock Entry Additional Costs" src="/docs/assets/img/stock/additional-costs-table.png">
 
 The added additional costs will be distributed among the receiving items (where the target warehouse mentioned) proportionately based on Basic Amount of the items. And the distributed additional cost will be added to the basic rate of the item, to calculate valuation rate.
 
-<img class="screenshot" alt="Stock Entry Item Valuation Rate" src="{{docs_base_url}}/assets/img/stock/stock-entry-item-valuation-rate.png">
+<img class="screenshot" alt="Stock Entry Item Valuation Rate" src="/docs/assets/img/stock/stock-entry-item-valuation-rate.png">
 
 If perpetual inventory system is enabled, additional costs will be booked in "Expense Included In Valuation" account.
 
-<img class="screenshot" alt="Additional Costs General Ledger" src="{{docs_base_url}}/assets/img/stock/additional-costs-general-ledger.png">
+<img class="screenshot" alt="Additional Costs General Ledger" src="/docs/assets/img/stock/additional-costs-general-ledger.png">
 
 
 > **Note:** To update Stock from a spreadsheet, see [Stock Reconciliation]({{doc_base_url}}/user/manual/en/setting-up/stock-reconciliation-for-non-serialized-item.html).
diff --git a/erpnext/docs/user/manual/en/stock/stock-how-to.md b/erpnext/docs/user/manual/en/stock/stock-how-to.md
index e0f5b2f..e395f43 100644
--- a/erpnext/docs/user/manual/en/stock/stock-how-to.md
+++ b/erpnext/docs/user/manual/en/stock/stock-how-to.md
@@ -1,2 +1,4 @@
+# Stock How To
+
 This page contains most frequently asked questions on Stocks.
 
diff --git a/erpnext/docs/user/manual/en/stock/tools/index.md b/erpnext/docs/user/manual/en/stock/tools/index.md
index 6f3f1cb..1763bf3 100644
--- a/erpnext/docs/user/manual/en/stock/tools/index.md
+++ b/erpnext/docs/user/manual/en/stock/tools/index.md
@@ -1,3 +1,5 @@
+# Tools
+
 ### Topics
 
 {index}
diff --git a/erpnext/docs/user/manual/en/stock/tools/landed-cost-voucher.md b/erpnext/docs/user/manual/en/stock/tools/landed-cost-voucher.md
index 1209aff..a11759d 100644
--- a/erpnext/docs/user/manual/en/stock/tools/landed-cost-voucher.md
+++ b/erpnext/docs/user/manual/en/stock/tools/landed-cost-voucher.md
@@ -1,3 +1,5 @@
+# Landed Cost Voucher
+
 Landed Cost is the total cost of a product to reach the product at the buyer’s door. Landed costs include the original cost of the item, complete shipping costs, customs duties, taxes, insurance and currency conversion fees etc. All of these components might not be applicable in every shipment, but relevant components must be considered as a part of the landed cost.
 
 > To understand landed cost better, let’s take an example based on our daily lives. You need to purchase a new washing machine for your home. Before making actual purchase, you probably do some investigation to know the best price. In this process, you often found a better deal from a store which is long away from your home. But you should also consider shipping cost while buying from that store. Total cost including transportation might be more than the price you get in your nearby store. In that case you will choose to buy from  your nearest store, as landed cost of the item is cheaper in the nearest store.
@@ -20,7 +22,7 @@
 
 In the document, you can select multiple Purchase Receipts and fetch all items from those Purchase Receipts. Then you should add applicable charges in “Taxes and Charges” table. You can easily delete an item if the added charges is not applicable to that item. The added charges are proportionately distributed among all the items based their amount.
 
-<img class="screenshot" alt="Landed Cost Vouher" src="{{docs_base_url}}/assets/img/stock/landed-cost.png">
+<img class="screenshot" alt="Landed Cost Vouher" src="/docs/assets/img/stock/landed-cost.png">
 
 ### What happend on submission?
 
diff --git a/erpnext/docs/user/manual/en/stock/tools/packing-slip.md b/erpnext/docs/user/manual/en/stock/tools/packing-slip.md
index 0820959..60cfb5d 100644
--- a/erpnext/docs/user/manual/en/stock/tools/packing-slip.md
+++ b/erpnext/docs/user/manual/en/stock/tools/packing-slip.md
@@ -1,7 +1,9 @@
+# Packing Slip
+
 A packing slip is a document listing the items in a shipment. Usually attached to the goods delivered.
 While Shipping a product 'Draft' for Delivery Notes are created.
 You can make a Packing Slip from these Delivery Notes (Draft)
 
-<img class="screenshot" alt="Packing Slip" src="{{docs_base_url}}/assets/img/stock/packing-slip.png">
+<img class="screenshot" alt="Packing Slip" src="/docs/assets/img/stock/packing-slip.png">
 
 {next}
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/stock/tools/quality-inspection.md b/erpnext/docs/user/manual/en/stock/tools/quality-inspection.md
index 34bea40..254da8a 100644
--- a/erpnext/docs/user/manual/en/stock/tools/quality-inspection.md
+++ b/erpnext/docs/user/manual/en/stock/tools/quality-inspection.md
@@ -1,8 +1,10 @@
+# Quality Inspection
+
 In ERPNext, you can mark your incoming or outgoing products for Quality
 Inspection. To enable ERPNext to perform this function, go to :
 
 > Stock > Quality Inspection > New
 
-<img class="screenshot" alt="Quality Inspection" src="{{docs_base_url}}/assets/img/stock/quality-inspection.png">
+<img class="screenshot" alt="Quality Inspection" src="/docs/assets/img/stock/quality-inspection.png">
 
 {next}
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/stock/warehouse.md b/erpnext/docs/user/manual/en/stock/warehouse.md
index 74ee8cc..d90e3f9 100644
--- a/erpnext/docs/user/manual/en/stock/warehouse.md
+++ b/erpnext/docs/user/manual/en/stock/warehouse.md
@@ -1,3 +1,5 @@
+# Warehouse
+
 A warehouse is a commercial building for storage of goods. Warehouses are used
 by manufacturers, importers, exporters, wholesalers, transport businesses,
 customs, etc. They are usually large plain buildings in industrial areas of
@@ -12,7 +14,7 @@
 To go to Warehouse, click on Stock and go to Warehouse under Setup.  You
 could also switch to 'Tree' View or simply type warehouse tree in the awsone bar.
 
-<img class="screenshot" alt="Warehouse" src="{{docs_base_url}}/assets/img/stock/warehouse.png">
+<img class="screenshot" alt="Warehouse" src="/docs/assets/img/stock/warehouse.png">
 
 In ERPNext, every Warehouse must belong to a specific company, to maintain
 company wise stock balance. In order to do so each Warehouse is linked with an 
diff --git a/erpnext/docs/user/manual/en/support/index.md b/erpnext/docs/user/manual/en/support/index.md
index 7777049..1fe172c 100644
--- a/erpnext/docs/user/manual/en/support/index.md
+++ b/erpnext/docs/user/manual/en/support/index.md
@@ -1,3 +1,5 @@
+# Support
+
 Great customer support and maintenance is at the heart of any successful small
 business. ERPNext gives you the tools to track all incoming requests and issues
 from your customers so that you can respond quickly. Your database of incoming
diff --git a/erpnext/docs/user/manual/en/support/issue.md b/erpnext/docs/user/manual/en/support/issue.md
index 29fb858..56d0058 100644
--- a/erpnext/docs/user/manual/en/support/issue.md
+++ b/erpnext/docs/user/manual/en/support/issue.md
@@ -1,3 +1,5 @@
+# Issue
+
 Issue is an incoming query from your Customer, usually via email or
 from the “Contact” section of your website. (To fully integrate the Support
 Ticket to email, see the Email Settings section).
@@ -5,13 +7,13 @@
 > Tip: A dedicated support Email Address is a good way to integrate incoming
 queries via email. For example, you can send support queries to ERPNext at
 support@erpnext.com and it will automatically create a Issue in the
-Frappe system.
+Frappé system.
 
 
 
 > Support > Issue > New Issue
 
-<img class="screenshot" alt="Issue" src="{{docs_base_url}}/assets/img/support/issue.png">
+<img class="screenshot" alt="Issue" src="/docs/assets/img/support/issue.png">
 
 #### Discussion Thread
 
diff --git a/erpnext/docs/user/manual/en/support/maintenance-schedule.md b/erpnext/docs/user/manual/en/support/maintenance-schedule.md
index e211562..a9be3b9 100644
--- a/erpnext/docs/user/manual/en/support/maintenance-schedule.md
+++ b/erpnext/docs/user/manual/en/support/maintenance-schedule.md
@@ -1,3 +1,5 @@
+# Maintenance Schedule
+
 All machines require regular maintenance, specially those that contain a lot
 of moving parts, so if you are in the business of maintaining those or have
 some of them in your own premises, this is a useful tool to plan a calendar of
@@ -10,7 +12,7 @@
 
 > Support > Maintenance Schedule > New Maintenance Schedule
 
-<img class="screenshot" alt="Maintenance Schedule" src="{{docs_base_url}}/assets/img/support/maintenance-schedule.png">
+<img class="screenshot" alt="Maintenance Schedule" src="/docs/assets/img/support/maintenance-schedule.png">
 
 In the Maintenance Schedule, there are two sections:
 
diff --git a/erpnext/docs/user/manual/en/support/maintenance-visit.md b/erpnext/docs/user/manual/en/support/maintenance-visit.md
index e93260d..5bda36a 100644
--- a/erpnext/docs/user/manual/en/support/maintenance-visit.md
+++ b/erpnext/docs/user/manual/en/support/maintenance-visit.md
@@ -1,10 +1,12 @@
+# Maintenance Visit
+
 A Maintenance Visit is a record of a visit made by an engineer to a
 Customer’s premise usually against a Customer Issue. You can create a new
 Maintenance Visit from:
 
 > Support > Maintenance Visit > New Maintenance Visit
 
-<img class="screenshot" alt="Maintenance Visit" src="{{docs_base_url}}/assets/img/support/maintenance-visit.png">
+<img class="screenshot" alt="Maintenance Visit" src="/docs/assets/img/support/maintenance-visit.png">
 
 The Maintenance Visit contains information about the:
 
diff --git a/erpnext/docs/user/manual/en/support/support_reports.md b/erpnext/docs/user/manual/en/support/support_reports.md
index 2be72e1..7ef6cea 100644
--- a/erpnext/docs/user/manual/en/support/support_reports.md
+++ b/erpnext/docs/user/manual/en/support/support_reports.md
@@ -1,3 +1,5 @@
+# Support Reports
+
 
 
 ### Support Hours
@@ -5,4 +7,4 @@
 
 > Support > Reports > Support Hours
 
-<img class="screenshot" alt="Maintenance Visit" src="{{docs_base_url}}/assets/img/support/support_hours.png">
+<img class="screenshot" alt="Maintenance Visit" src="/docs/assets/img/support/support_hours.png">
diff --git a/erpnext/docs/user/manual/en/support/warranty-claim.md b/erpnext/docs/user/manual/en/support/warranty-claim.md
index 0a58e18..8080e65 100644
--- a/erpnext/docs/user/manual/en/support/warranty-claim.md
+++ b/erpnext/docs/user/manual/en/support/warranty-claim.md
@@ -1,3 +1,5 @@
+# Warranty Claim
+
 If you are selling **Items** under warranty or if you have sold and extended
 service contract like the Annual Maintenance Contract (AMC), your **Customer**
 may call you about an issue or a break-down and give you the Serial No of this
@@ -15,7 +17,7 @@
 
 > Support > Warranty Claim > New Warranty Claim
 
-![Warranty Claim]({{docs_base_url}}/assets/img/support/warranty-claim.png)
+![Warranty Claim](/docs/assets/img/support/warranty-claim.png)
 
 If a Customer visit is required to address the issue, you can create a new
 Maintenance Visit record from this.
diff --git a/erpnext/docs/user/manual/en/using-erpnext/articles/Global-search.md b/erpnext/docs/user/manual/en/using-erpnext/articles/Global-search.md
index 776c6e8..482f12f 100644
--- a/erpnext/docs/user/manual/en/using-erpnext/articles/Global-search.md
+++ b/erpnext/docs/user/manual/en/using-erpnext/articles/Global-search.md
@@ -1,3 +1,5 @@
+# Global Search
+
 Global-search.md
 
 
@@ -8,9 +10,9 @@
 
 ### Using Awesome bar for Global Search.
 
-<img alt="Global Search" class="screenshot" src="{{docs_base_url}}/assets/img/articles/Global Search .gif">
+<img alt="Global Search" class="screenshot" src="/docs/assets/img/articles/Global Search .gif">
 
 ### Enable Global Search for fields in a Doctype.
 
-<img alt="Global Search" class="screenshot" src="{{docs_base_url}}/assets/img/articles/Enable Global Search .gif">
+<img alt="Global Search" class="screenshot" src="/docs/assets/img/articles/Enable Global Search .gif">
 
diff --git a/erpnext/docs/user/manual/en/using-erpnext/articles/adding-attachments-to-outgoing-messages.md b/erpnext/docs/user/manual/en/using-erpnext/articles/adding-attachments-to-outgoing-messages.md
index 75ade17..4ab4df4 100644
--- a/erpnext/docs/user/manual/en/using-erpnext/articles/adding-attachments-to-outgoing-messages.md
+++ b/erpnext/docs/user/manual/en/using-erpnext/articles/adding-attachments-to-outgoing-messages.md
@@ -1,9 +1,11 @@
+# Adding Attachments To Outgoing Messages
+
 #Adding Attachments to Outgoing Messages
 
-ERPNext has in-built file manager. Click [here]({{docs_base_url}}/user/videos/learn/file-manager.html) to learn more on how attachments are managed in ERPNext.
+ERPNext has in-built file manager. Click [here](/docs/user/videos/learn/file-manager.html) to learn more on how attachments are managed in ERPNext.
 
 If you have file attached to the document (say Purchase Order), and same file needs to be emailed as attachment, following is how you can achieve it.
 
-<img alt="Emailing Attachments" class="screenshot" src="{{docs_base_url}}/assets/img/articles/email-file-attachment.gif">
+<img alt="Emailing Attachments" class="screenshot" src="/docs/assets/img/articles/email-file-attachment.gif">
 
 <!-- markdown -->
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/using-erpnext/articles/adding-file-as-a-attachment.md b/erpnext/docs/user/manual/en/using-erpnext/articles/adding-file-as-a-attachment.md
index e1c4ebd..fad7319 100644
--- a/erpnext/docs/user/manual/en/using-erpnext/articles/adding-file-as-a-attachment.md
+++ b/erpnext/docs/user/manual/en/using-erpnext/articles/adding-file-as-a-attachment.md
@@ -1,3 +1,5 @@
+# Adding File As A Attachment
+
 #Adding File as a Attachment
 
 ERPNext allows to attach files with documents. User with a read permission on particular document will also be able to access files attached with it.
@@ -8,11 +10,11 @@
 
 ####From Browser
 
-<img alt="Sales Order File Attachment" class="screenshot" src="{{docs_base_url}}/assets/img/articles/attach-file-1.gif">
+<img alt="Sales Order File Attachment" class="screenshot" src="/docs/assets/img/articles/attach-file-1.gif">
 
 ####By drag and drop
 
-<img alt="Sales Order File Attachment" class="screenshot" src="{{docs_base_url}}/assets/img/articles/attach-file-2.gif">
+<img alt="Sales Order File Attachment" class="screenshot" src="/docs/assets/img/articles/attach-file-2.gif">
 
 Click on Attach to browse and select the file.
 
@@ -20,11 +22,11 @@
 
 If you use separate server for files, or use online service like Dropbox, you can attach file by providing link of a particular file.
 
-<img alt="Sales Order Select File" class="screenshot" src="{{docs_base_url}}/assets/img/articles/attach-file-3.gif">
+<img alt="Sales Order Select File" class="screenshot" src="/docs/assets/img/articles/attach-file-3.gif">
 
 `For hosted users, limit of 5 MB is applied on file size.`
 
-To ensure there are not many files attached to a document, which can affect your accounts performance, you can set limit as how many files can be attached to a particular document. Click [here]({{docs_base_url}}/user/manual/en/customize-erpnext/articles/increase-max-attachments.html) to learn more about it.
+To ensure there are not many files attached to a document, which can affect your accounts performance, you can set limit as how many files can be attached to a particular document. Click [here](/docs/user/manual/en/customize-erpnext/articles/increase-max-attachments.html) to learn more about it.
 
 ####File Manager
 
diff --git a/erpnext/docs/user/manual/en/using-erpnext/articles/bulk-rename.md b/erpnext/docs/user/manual/en/using-erpnext/articles/bulk-rename.md
index a753358..17e81c9 100644
--- a/erpnext/docs/user/manual/en/using-erpnext/articles/bulk-rename.md
+++ b/erpnext/docs/user/manual/en/using-erpnext/articles/bulk-rename.md
@@ -1,3 +1,5 @@
+# Bulk Rename
+
 #Bulk Rename
 
 Using renaming tool, you can to rectify/change multiple document ids at once. This tool is only accessible to the User who has System Manager role assigned.
@@ -10,7 +12,7 @@
 
 In a spreadsheet file, enter old Item IDs in the first column, and new Item Ids in the second column. Save spreadsheet file in a CSV format.
 
-<img alt="Data File" class="screenshot" src="{{docs_base_url}}/assets/img/articles/rename-docs-1.png">
+<img alt="Data File" class="screenshot" src="/docs/assets/img/articles/rename-docs-1.png">
 
 #### Step 2: Upload Data File
 
@@ -20,7 +22,7 @@
 
 Select DocType which you want to rename. Here DocType will be Item. Then Browse and Upload data file.
 
-![Upload Data]({{docs_base_url}}/assets/img/articles/Selection_0173436a8.png) 
+![Upload Data](/docs/assets/img/articles/Selection_0173436a8.png) 
 
 {next}
 
diff --git a/erpnext/docs/user/manual/en/using-erpnext/articles/check-link-between-documents.md b/erpnext/docs/user/manual/en/using-erpnext/articles/check-link-between-documents.md
index 76cdeb7..03ab427 100644
--- a/erpnext/docs/user/manual/en/using-erpnext/articles/check-link-between-documents.md
+++ b/erpnext/docs/user/manual/en/using-erpnext/articles/check-link-between-documents.md
@@ -1,8 +1,10 @@
+# Check Link Between Documents
+
 #Checking Link Between Documents
 
 Links option shows one document is linked to which other documents. Check Menu for the Links options.
 
-<img alt="Cancel Doc" class="screenshot" src="{{docs_base_url}}/assets/img/articles/links-1.gif">
+<img alt="Cancel Doc" class="screenshot" src="/docs/assets/img/articles/links-1.gif">
 
 ####Scenario
 
@@ -18,6 +20,6 @@
 
 Links only shows forward linkages. For the backward links, you should check current document itself. In the Purchase Receipt Item table table, you can check which Purchase Order it is linked to.
 
-<img alt="Cancel Doc" class="screenshot" src="{{docs_base_url}}/assets/img/articles/links-2.gif">
+<img alt="Cancel Doc" class="screenshot" src="/docs/assets/img/articles/links-2.gif">
 
 <!-- markdown -->
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/using-erpnext/articles/delete-submitted-document.md b/erpnext/docs/user/manual/en/using-erpnext/articles/delete-submitted-document.md
index 8d7700a..f18a355 100644
--- a/erpnext/docs/user/manual/en/using-erpnext/articles/delete-submitted-document.md
+++ b/erpnext/docs/user/manual/en/using-erpnext/articles/delete-submitted-document.md
@@ -1,3 +1,5 @@
+# Delete Submitted Document
+
 #Delete Submitted Document
 
 To be able to delete Submitted document, you should first Cancel. Once canceled, you can delete that document from Menu or from the List View of that Document Type.
@@ -12,18 +14,18 @@
 
 You will find option to Cancel in the submitted document. If document is at draft stage, it can delete directly. Also if document is not submittable, but only save, it can be deleted directly.
 
-<img alt="Cancel Doc" class="screenshot" src="{{docs_base_url}}/assets/img/articles/delete-submitted-doc-1.png">
+<img alt="Cancel Doc" class="screenshot" src="/docs/assets/img/articles/delete-submitted-doc-1.png">
 
 ####Step 2: Delete Document
 
 After cancellation, go to Menu and click on Delete.
 
-<img alt="Delete Doc" class="screenshot" src="{{docs_base_url}}/assets/img/articles/delete-submitted-doc-2.png">
+<img alt="Delete Doc" class="screenshot" src="/docs/assets/img/articles/delete-submitted-doc-2.png">
 
 ####Step 3: Deleting from List
 
 For bulk deletion, you can select multiple Cancelled records and delete at once from the List View.
 
-<img alt="Delete Doc from List" class="screenshot" src="{{docs_base_url}}/assets/img/articles/delete-submitted-doc-3.gif">
+<img alt="Delete Doc from List" class="screenshot" src="/docs/assets/img/articles/delete-submitted-doc-3.gif">
 
 <!-- markdown -->
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/using-erpnext/articles/duplicate-record.md b/erpnext/docs/user/manual/en/using-erpnext/articles/duplicate-record.md
index 69b4ecf..f57e76f 100644
--- a/erpnext/docs/user/manual/en/using-erpnext/articles/duplicate-record.md
+++ b/erpnext/docs/user/manual/en/using-erpnext/articles/duplicate-record.md
@@ -1,3 +1,5 @@
+# Duplicate Record
+
 #Duplicate a Record
 
 Duplicate feature helps you to copy values of existing document into new document.
@@ -10,6 +12,6 @@
 
 `Menu > Copy`
 
-<img alt="Duplicate" class="screenshot" src="{{docs_base_url}}/assets/img/articles/duplicate.gif">
+<img alt="Duplicate" class="screenshot" src="/docs/assets/img/articles/duplicate.gif">
 
 <!-- markdown -->
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/using-erpnext/articles/index.md b/erpnext/docs/user/manual/en/using-erpnext/articles/index.md
index 0dff60b..fb11735 100644
--- a/erpnext/docs/user/manual/en/using-erpnext/articles/index.md
+++ b/erpnext/docs/user/manual/en/using-erpnext/articles/index.md
@@ -1 +1,3 @@
+# Articles
+
 {index}
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/using-erpnext/articles/merging-documents.md b/erpnext/docs/user/manual/en/using-erpnext/articles/merging-documents.md
index f03bbd8..683a474 100644
--- a/erpnext/docs/user/manual/en/using-erpnext/articles/merging-documents.md
+++ b/erpnext/docs/user/manual/en/using-erpnext/articles/merging-documents.md
@@ -1,3 +1,5 @@
+# Merging Documents
+
 #Merging Documents
 
 For a document, if you have two records which are identical, and meant for common purpose, you can merge them into one record.
@@ -12,7 +14,7 @@
 
 For an Account to be merged, click on the "Rename" option.
 
-<img alt="Sales Order File Attachment" class="screenshot" src="{{docs_base_url}}/assets/img/articles/merge-docs-1.png">
+<img alt="Sales Order File Attachment" class="screenshot" src="/docs/assets/img/articles/merge-docs-1.png">
 
 #### Step 3: Merge Account
 
@@ -20,7 +22,7 @@
 
 Following is how the merged account will appear in the Chart of Accounts master.
 
-<img alt="Sales Order File Attachment" class="screenshot" src="{{docs_base_url}}/assets/img/articles/merge-docs-2.gif">
+<img alt="Sales Order File Attachment" class="screenshot" src="/docs/assets/img/articles/merge-docs-2.gif">
 
 ###Effect of Merging
 
diff --git a/erpnext/docs/user/manual/en/using-erpnext/articles/pos-view.md b/erpnext/docs/user/manual/en/using-erpnext/articles/pos-view.md
index 839e820..75f057e 100644
--- a/erpnext/docs/user/manual/en/using-erpnext/articles/pos-view.md
+++ b/erpnext/docs/user/manual/en/using-erpnext/articles/pos-view.md
@@ -1,10 +1,12 @@
+# Pos View
+
 #POS View
 
 POS (point of sale) view renders form in a different layout, optimized for the quick selection of items. This view has primarily been designed for the retail business.
 
 Using POS View, you can only create Sales Invoice, without switching to standard form view. For other transactions, like Sales Order, Delivery Note, Purchase Order, Purchase Receipt etc., POS View is only used for Item selection. For entering other values in the transaction, you should switch to form view.
 
-<img alt="POS View" class="screenshot" src="{{docs_base_url}}/assets/img/articles/pos-view.gif">
+<img alt="POS View" class="screenshot" src="/docs/assets/img/articles/pos-view.gif">
 
 For creating POS Invoice, check following help video.
 
diff --git a/erpnext/docs/user/manual/en/using-erpnext/articles/renaming-documents.md b/erpnext/docs/user/manual/en/using-erpnext/articles/renaming-documents.md
index a6b6696..f6072d3 100644
--- a/erpnext/docs/user/manual/en/using-erpnext/articles/renaming-documents.md
+++ b/erpnext/docs/user/manual/en/using-erpnext/articles/renaming-documents.md
@@ -1,3 +1,5 @@
+# Renaming Documents
+
 #Renaming a Document
 
 Using Renaming feature, you can change ID of a master documents like Item, Warehouse, Accounts etc. Following are the steps to rename Item Code. Following same steps, you can rename other masters as well.
@@ -8,7 +10,7 @@
 
 #### 2. Rename
 
-<img alt="Renamed Item" class="screenshot" src="{{docs_base_url}}/assets/img/articles/rename-a-doc.gif">
+<img alt="Renamed Item" class="screenshot" src="/docs/assets/img/articles/rename-a-doc.gif">
 
 ###Effect of Renaming
 
@@ -16,8 +18,8 @@
 
 ###See Also
 
-1. [Bulk Renaming]({{docs_base_url}}/user/manual/en/using-erpnext/articles/bulk-rename.html)
-2. [Document Merging]({{docs_base_url}}/user/manual/en/using-erpnext/articles/merging-documents.html)
+1. [Bulk Renaming](/docs/user/manual/en/using-erpnext/articles/bulk-rename.html)
+2. [Document Merging](/docs/user/manual/en/using-erpnext/articles/merging-documents.html)
 
 **List of Renamable Documents**
 
diff --git a/erpnext/docs/user/manual/en/using-erpnext/articles/search-filter.md b/erpnext/docs/user/manual/en/using-erpnext/articles/search-filter.md
index 8a0a67b..307c996 100644
--- a/erpnext/docs/user/manual/en/using-erpnext/articles/search-filter.md
+++ b/erpnext/docs/user/manual/en/using-erpnext/articles/search-filter.md
@@ -1,3 +1,5 @@
+# Search Filter
+
 #Search Filter
 
 Search Filter option allow user to filter records based on value in the specific field of that document. Search Filters are available on the List View of Document Type and in the Report Builder.
@@ -8,20 +10,20 @@
 
 Select field of the document based on which you wish to filter records.
 
-<img alt="Search Filter Field" class="screenshot" src="{{docs_base_url}}/assets/img/articles/search-filter-field.gif">
+<img alt="Search Filter Field" class="screenshot" src="/docs/assets/img/articles/search-filter-field.gif">
 
 
 #### Based On
 
 With Field, you will provide a value. In the based on field, you can define a criterion that when filter should be applied in record. It will be when value define for the field if filter is:
 
-<img alt="Search Filter Based On" class="screenshot" src="{{docs_base_url}}/assets/img/articles/search-filter-based-on.gif">
+<img alt="Search Filter Based On" class="screenshot" src="/docs/assets/img/articles/search-filter-based-on.gif">
 
 #### Value
 
 A value should be entered in this field based on while records will be filtered. After filter is applied, records will be filtered based on it. And filter will shrunk under one field/button.
 
-<img alt="Search Filter Based On" class="screenshot" src="{{docs_base_url}}/assets/img/articles/search-filter-result.png">
+<img alt="Search Filter Based On" class="screenshot" src="/docs/assets/img/articles/search-filter-result.png">
 
 
 You can apply multiple filters at a time. To remove specific filter, just click on cancelled (X) sign ahead of it.
@@ -30,6 +32,6 @@
 
 From the list views, you can also apply filters by clicking on the Status field.
 
-<img alt="Renamed Item" class="screenshot" src="{{docs_base_url}}/assets/img/articles/search-filter-auto.gif">
+<img alt="Renamed Item" class="screenshot" src="/docs/assets/img/articles/search-filter-auto.gif">
 
 <!-- markdown -->
diff --git a/erpnext/docs/user/manual/en/using-erpnext/articles/tree-master-renaming.md b/erpnext/docs/user/manual/en/using-erpnext/articles/tree-master-renaming.md
index 44d4e97..935e32b 100644
--- a/erpnext/docs/user/manual/en/using-erpnext/articles/tree-master-renaming.md
+++ b/erpnext/docs/user/manual/en/using-erpnext/articles/tree-master-renaming.md
@@ -1,6 +1,8 @@
+# Tree Master Renaming
+
 #Tree Master Renaming
 
-There are various master which are maintained in tree structure. Click [here]({{docs_base_url}}/user/manual/en/setting-up/articles/managing-tree-structure-masters.html) to learn more about tree structured masters in ERPNext.
+There are various master which are maintained in tree structure. Click [here](/docs/user/manual/en/setting-up/articles/managing-tree-structure-masters.html) to learn more about tree structured masters in ERPNext.
 
 Following are the steps to be followed for renaming ID of a master which is maintained in tree structure. Let's rename an Account for the instance.
 
@@ -12,12 +14,12 @@
 
 When click on the Account, you will find Rename option.
 
-<img alt="Account" class="screenshot" src="{{docs_base_url}}/assets/img/articles/rename-account.png">
+<img alt="Account" class="screenshot" src="/docs/assets/img/articles/rename-account.png">
 
 #### Step 2: Rename Account
 
 On clicking Rename, you will get field to enter New Name. After entering new name for the Account, click on the "Rename" button.
 
-<img alt="Renamed Account" class="screenshot" src="{{docs_base_url}}/assets/img/articles/rename-account-2.gif">
+<img alt="Renamed Account" class="screenshot" src="/docs/assets/img/articles/rename-account-2.gif">
 
 <!-- markdown -->
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/using-erpnext/assignment.md b/erpnext/docs/user/manual/en/using-erpnext/assignment.md
index e78a112..ffd0abd 100644
--- a/erpnext/docs/user/manual/en/using-erpnext/assignment.md
+++ b/erpnext/docs/user/manual/en/using-erpnext/assignment.md
@@ -1,3 +1,5 @@
+# Assignment
+
 Assign To feature in ERPNext allows you to allocate particular document to specific user, whom needs to further work on that document.
 
 For example, if Sales Order needs to be approved/submitted by Sales Manager, first draft user can allocate that Sales Order to Sales Manager. On allocating document to Sales Manager, it will be added to that user's ToDo list. Same way, allocation can also be done to Material User and Account user who needs to create Delivery Note and Sales Invoice respectively against this Sales Note.
@@ -10,13 +12,13 @@
 
 Assign to option is located at the footer of document. Clicking on Assignment Icon on the tool bar will fast-forward you to footer of same document.
 
-<img class="screenshot" alt="Assign" src="{{docs_base_url}}/assets/img/collaboration-tools/assign-1.png">
+<img class="screenshot" alt="Assign" src="/docs/assets/img/collaboration-tools/assign-1.png">
 
 #### Step 2: Assign to User
 
 In the Assign To section, you will find option to select User to whom this document will be assigned to. You can assign one document to multiple people at a time.
 
-<img class="screenshot" alt="Assign" src="{{docs_base_url}}/assets/img/collaboration-tools/assign-2.png">
+<img class="screenshot" alt="Assign" src="/docs/assets/img/collaboration-tools/assign-2.png">
 
 With assignment, you can also leave a comment for the review of assignee.
 
@@ -24,13 +26,13 @@
 
 This transaction will appear in the To-do list of the user in “Todo” section.
 
-<img class="screenshot" alt="Assign" src="{{docs_base_url}}/assets/img/collaboration-tools/assign-3.png">
+<img class="screenshot" alt="Assign" src="/docs/assets/img/collaboration-tools/assign-3.png">
 
 ####Removing Assignment
 
 User will be able to remove assignment by clicking on "Assignment Completed" button in the document.
 
-<img class="screenshot" alt="Assign" src="{{docs_base_url}}/assets/img/collaboration-tools/assign-4.png">
+<img class="screenshot" alt="Assign" src="/docs/assets/img/collaboration-tools/assign-4.png">
 
 Once assignment is set as completed, the Status of its ToDo record will be set as Closed.
 
diff --git a/erpnext/docs/user/manual/en/using-erpnext/calendar.md b/erpnext/docs/user/manual/en/using-erpnext/calendar.md
index c8b64af..bf0412b 100644
--- a/erpnext/docs/user/manual/en/using-erpnext/calendar.md
+++ b/erpnext/docs/user/manual/en/using-erpnext/calendar.md
@@ -1,8 +1,10 @@
+# Calendar
+
 The Calendar is a tool where you can create and share Events and also see auto-generated events from the system.
 
 You can switch calendar view based on Month, Week and Day.
 
-<img class="screenshot" alt="Calendar" src="{{docs_base_url}}/assets/img/collaboration-tools/calendar-1.png">
+<img class="screenshot" alt="Calendar" src="/docs/assets/img/collaboration-tools/calendar-1.png">
 
 ### Creating Events in Calendar
 
@@ -12,7 +14,7 @@
 
 This view will 24 hours of a day broken in various slots. You should click on slot for Event Start Time, and drag it down till you reach event end time.
 
-<img class="screenshot" alt="Calendar" src="{{docs_base_url}}/assets/img/collaboration-tools/calendar-2.gif">
+<img class="screenshot" alt="Calendar" src="/docs/assets/img/collaboration-tools/calendar-2.gif">
 
 Based on the selection of time slot, Start Time and End Time will be updated in the Event master. Then you can set subject for an event, and save it.
 
@@ -20,7 +22,7 @@
 
 In the Lead form, you will find a field called Next Contact By and Next Contact Date. Event will be auto created for date and person specified in this field.
 
-<img class="screenshot" alt="Lead Event" src="{{docs_base_url}}/assets/img/collaboration-tools/calendar-3.png">
+<img class="screenshot" alt="Lead Event" src="/docs/assets/img/collaboration-tools/calendar-3.png">
 
 #### Birthday Event
 
@@ -31,7 +33,7 @@
 You can set events as recurring in specific interval by Checking the "Repeat This
 Event".
 
-<img class="screenshot" alt="Calendar Recurring Event" src="{{docs_base_url}}/assets/img/collaboration-tools/calendar-4.png">
+<img class="screenshot" alt="Calendar Recurring Event" src="/docs/assets/img/collaboration-tools/calendar-4.png">
 
 ### Event Reminders
 
@@ -41,7 +43,7 @@
 
 In the Event master, checking "Send an email reminder in the morning" will trigger notification email to all the participants for this event.
 
-<img class="screenshot" alt="Calendar Recurring Event" src="{{docs_base_url}}/assets/img/collaboration-tools/calendar-6.png">
+<img class="screenshot" alt="Calendar Recurring Event" src="/docs/assets/img/collaboration-tools/calendar-6.png">
 
 #### Create Email Digest
 
@@ -51,6 +53,6 @@
 
 `Setup > Email > Email Digest`
 
-<img class="screenshot" alt="Calendar Recurring Event" src="{{docs_base_url}}/assets/img/collaboration-tools/calender-email-digest.png">
+<img class="screenshot" alt="Calendar Recurring Event" src="/docs/assets/img/collaboration-tools/calender-email-digest.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/en/using-erpnext/chat.md b/erpnext/docs/user/manual/en/using-erpnext/chat.md
index ed155d8..867c4b4 100644
--- a/erpnext/docs/user/manual/en/using-erpnext/chat.md
+++ b/erpnext/docs/user/manual/en/using-erpnext/chat.md
@@ -1,3 +1,5 @@
+# Chat
+
 You can send and receive messages from the system by using the Messages tool. 
 
 `Explore > Tools > Chat`
@@ -5,10 +7,10 @@
 If you send a message to a user, and the user is logged in, it will appear as a popup message and the unread messages counter in the top toolbar will be
 updated.
 
-<img class="screenshot" alt="Assign" src="{{docs_base_url}}/assets/img/collaboration-tools/chat-1.png">
+<img class="screenshot" alt="Assign" src="/docs/assets/img/collaboration-tools/chat-1.png">
 
 You can choose to send message to all the users, or to specific user.
 
-<img class="screenshot" alt="Assign" src="{{docs_base_url}}/assets/img/collaboration-tools/chat-2.png">
+<img class="screenshot" alt="Assign" src="/docs/assets/img/collaboration-tools/chat-2.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/en/using-erpnext/collaborating-around-forms.md b/erpnext/docs/user/manual/en/using-erpnext/collaborating-around-forms.md
index 7ffec76..b0cf945 100644
--- a/erpnext/docs/user/manual/en/using-erpnext/collaborating-around-forms.md
+++ b/erpnext/docs/user/manual/en/using-erpnext/collaborating-around-forms.md
@@ -1,24 +1,26 @@
+# Collaborating Around Forms
+
 Following are the tools in each document using which you can collaborate with other Users in your ERPNext account.
 
 ### Assigned to
 
-If some document requires an action from User, you can Assign that document to that User. On assignment, User to whom document is assigned is intimated via email. To learn about Assign To feature, [click here.]({{docs_base_url}}/user/manual/en/using-erpnext/assignment.html)
+If some document requires an action from User, you can Assign that document to that User. On assignment, User to whom document is assigned is intimated via email. To learn about Assign To feature, [click here.](/docs/user/manual/en/using-erpnext/assignment.html)
 
 ### Comments
 
 Comments are a great way to add information about a transaction that is not a
 part of the transactions. Like some background information etc.
 
-<img class="screenshot" alt="Assign" src="{{docs_base_url}}/assets/img/collaboration-tools/comments-1.png">
+<img class="screenshot" alt="Assign" src="/docs/assets/img/collaboration-tools/comments-1.png">
 
 ###Share
 
 You can share document with the specific User. If Document is shared with the specific User, he/she will be able to access it, even if that User doesn't have permission to access that document or Document Type.
 
-<img class="screenshot" alt="Assign" src="{{docs_base_url}}/assets/img/collaboration-tools/share-1.gif">
+<img class="screenshot" alt="Assign" src="/docs/assets/img/collaboration-tools/share-1.gif">
 
 ### Tags
 
-[Read more about Tags]({{docs_base_url}}/user/manual/en/using-erpnext/tags.html)
+[Read more about Tags](/docs/user/manual/en/using-erpnext/tags.html)
 
 {next}
diff --git a/erpnext/docs/user/manual/en/using-erpnext/document-versioning.md b/erpnext/docs/user/manual/en/using-erpnext/document-versioning.md
index bbcdc55..126f761 100644
--- a/erpnext/docs/user/manual/en/using-erpnext/document-versioning.md
+++ b/erpnext/docs/user/manual/en/using-erpnext/document-versioning.md
@@ -1,3 +1,5 @@
+# Document Versioning
+
 #Document Versioning
 
 The document versioning feature allows you to track all the changes made in the form over the period. It will be very helpful in audit trial to check which user edited what value, and when exactly.
@@ -6,16 +8,16 @@
 
 Document Versioning can be enabled for one Document Type as a time. Let's assume that we need to enable it from Purchase Order. Then, we will check Customize Form tool for Purchase Order and check field `Track Changes`. With this, document versioning will be enabled for all the Purchase Orders create and edited hence forth.
 
-<img class="screenshot" alt="Enable Versioning" src="{{docs_base_url}}/assets/img/collaboration-tools/enable-versioning.png">
+<img class="screenshot" alt="Enable Versioning" src="/docs/assets/img/collaboration-tools/enable-versioning.png">
 
 ####Version Log
 
 Following is link of version in a Purchase Order form. Each time a document is edited, a version's link will be added in that document. To check more details on specific version, click on it's link.
 
-<img class="screenshot" alt="Version Links" src="{{docs_base_url}}/assets/img/collaboration-tools/version-links.png">
+<img class="screenshot" alt="Version Links" src="/docs/assets/img/collaboration-tools/version-links.png">
 
 ####Version Details
 
 In the Version document, you will find log of all the fields and values changes in it.
 
-<img class="screenshot" alt="Version Details" src="{{docs_base_url}}/assets/img/collaboration-tools/version-details.png">
\ No newline at end of file
+<img class="screenshot" alt="Version Details" src="/docs/assets/img/collaboration-tools/version-details.png">
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/using-erpnext/index.md b/erpnext/docs/user/manual/en/using-erpnext/index.md
index 93f080e..f2fe0ad 100644
--- a/erpnext/docs/user/manual/en/using-erpnext/index.md
+++ b/erpnext/docs/user/manual/en/using-erpnext/index.md
@@ -1,3 +1,5 @@
+# Using Erpnext
+
 We live in an era when people are very comfortable communicating, discussing,
 asking, assigning work and getting feedback electronically. The Internet acts
 as a great medium to collaborate on work too. Taking this concept into ERP
diff --git a/erpnext/docs/user/manual/en/using-erpnext/notes.md b/erpnext/docs/user/manual/en/using-erpnext/notes.md
index 64e7acb..91c1689 100644
--- a/erpnext/docs/user/manual/en/using-erpnext/notes.md
+++ b/erpnext/docs/user/manual/en/using-erpnext/notes.md
@@ -1,3 +1,5 @@
+# Notes
+
 You can store your long notes under this section. It can contain your partner lists, frequently used passwords, terms and conditions, or any other document which needs to be shared. Following are the steps to create new Note.
 
 `Explore > Note > New`
@@ -6,12 +8,12 @@
 
 Enter Title and Context.
 
-<img class="screenshot" alt="Note New" src="{{docs_base_url}}/assets/img/collaboration-tools/note-1.png">
+<img class="screenshot" alt="Note New" src="/docs/assets/img/collaboration-tools/note-1.png">
 
 ####Set Permissions to select Users
 
 To make Note accessible for all, check "Public" under links section. Else you can share it with the specific User by using Share feature.
 
-<img class="screenshot" alt="Note New" src="{{docs_base_url}}/assets/img/collaboration-tools/share-1.gif">
+<img class="screenshot" alt="Note New" src="/docs/assets/img/collaboration-tools/share-1.gif">
 
 {next}
diff --git a/erpnext/docs/user/manual/en/using-erpnext/restore-deleted-docs.md b/erpnext/docs/user/manual/en/using-erpnext/restore-deleted-docs.md
index 2c60d35..d43fc67 100644
--- a/erpnext/docs/user/manual/en/using-erpnext/restore-deleted-docs.md
+++ b/erpnext/docs/user/manual/en/using-erpnext/restore-deleted-docs.md
@@ -1,8 +1,10 @@
+# Restore Deleted Docs
+
 #Restore Deleted Documents
 
 In ERPNext, you can delete a records if not needed. They can be masters like Items, Customer or transactions like Sales Order, Payment Entries etc.
 
-<img class="screenshot" alt="Delete a Docuemnt" src="{{docs_base_url}}/assets/img/collaboration-tools/delete-a-doc.png">
+<img class="screenshot" alt="Delete a Docuemnt" src="/docs/assets/img/collaboration-tools/delete-a-doc.png">
 
 If you have deleted an entry by mistake and wish to restore it back into your ERPNext account.
 
@@ -14,18 +16,18 @@
 
 For the list of deleted document, just type Deleted Document in the Search Bar and go to list.
 
-<img class="screenshot" alt="Deleted Docs List" src="{{docs_base_url}}/assets/img/collaboration-tools/deleted-docs-list.gif">
+<img class="screenshot" alt="Deleted Docs List" src="/docs/assets/img/collaboration-tools/deleted-docs-list.gif">
 
 ####Step 2: Open Doc and Restore
 
 Open the document to be restored from the list. Click on Restore button.
 
-<img class="screenshot" alt="Restored Doc" src="{{docs_base_url}}/assets/img/collaboration-tools/restore-a-doc.png">
+<img class="screenshot" alt="Restored Doc" src="/docs/assets/img/collaboration-tools/restore-a-doc.png">
 
 ####Step 3: Restored
 
 Once a document is restored, you will be able to use it for creating entries in your ERPNext account. 
 
-<img class="screenshot" alt="Restored Doc" src="{{docs_base_url}}/assets/img/collaboration-tools/restored-doc.png">
+<img class="screenshot" alt="Restored Doc" src="/docs/assets/img/collaboration-tools/restored-doc.png">
 
 > If canceled document is deleted, then it will not be restored.
diff --git a/erpnext/docs/user/manual/en/using-erpnext/tags.md b/erpnext/docs/user/manual/en/using-erpnext/tags.md
index 0446a32..99a6aac 100644
--- a/erpnext/docs/user/manual/en/using-erpnext/tags.md
+++ b/erpnext/docs/user/manual/en/using-erpnext/tags.md
@@ -1,9 +1,11 @@
+# Tags
+
 Like Assignments and Comments, you can also add your own tags to each type of transactions. These tags can help you search a document and also classify it. 
 
-<img class="screenshot" alt="Assign" src="{{docs_base_url}}/assets/img/collaboration-tools/tags-1.png">
+<img class="screenshot" alt="Assign" src="/docs/assets/img/collaboration-tools/tags-1.png">
 
 ERPNext will also show you all the important tags in the document list.
 
-<img class="screenshot" alt="Assign" src="{{docs_base_url}}/assets/img/collaboration-tools/tags-2.png">
+<img class="screenshot" alt="Assign" src="/docs/assets/img/collaboration-tools/tags-2.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/en/using-erpnext/to-do.md b/erpnext/docs/user/manual/en/using-erpnext/to-do.md
index 295e79a..c6cd280 100644
--- a/erpnext/docs/user/manual/en/using-erpnext/to-do.md
+++ b/erpnext/docs/user/manual/en/using-erpnext/to-do.md
@@ -1,9 +1,11 @@
-To Do is a simple tool where all the activities [assigned]({{docs_base_url}}/user/manual/en/using-erpnext/assignments.html) to you and assigned by you are listed. You can also add your own to-do items in the list.
+# To Do
 
-<img class="screenshot" alt="Assign" src="{{docs_base_url}}/assets/img/collaboration-tools/assign-3.png">
+To Do is a simple tool where all the activities [assigned](/docs/user/manual/en/using-erpnext/assignments.html) to you and assigned by you are listed. You can also add your own to-do items in the list.
+
+<img class="screenshot" alt="Assign" src="/docs/assets/img/collaboration-tools/assign-3.png">
 
 When task is completed, you should simply remove assignment from the assigned document. With this, task will be removed from your Todo list as well. For Todo which are not assigned via document, you can set their status as Closed from the Todo master itself.
 
-<img class="screenshot" alt="Assign" src="{{docs_base_url}}/assets/img/collaboration-tools/assign-4.png">
+<img class="screenshot" alt="Assign" src="/docs/assets/img/collaboration-tools/assign-4.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/en/website/add-products-to-website.md b/erpnext/docs/user/manual/en/website/add-products-to-website.md
index d8ddcf0..e148919 100644
--- a/erpnext/docs/user/manual/en/website/add-products-to-website.md
+++ b/erpnext/docs/user/manual/en/website/add-products-to-website.md
@@ -1,3 +1,5 @@
+# Add Products To Website
+
 ### Add Products to the Website
 
 ERPNext will populate your website with products out of your Item Master. The html code will be
@@ -11,14 +13,14 @@
 
 For this example, click on the **New** button to create a new item.  Fill in the form and then click **Save**.
 
-![New Website Item 01]({{docs_base_url}}/assets/img/articles/new-item-for-website-01.png)
+![New Website Item 01](/docs/assets/img/articles/new-item-for-website-01.png)
 
 #### Step 2: Save Image
 
 1. Click the new item from the list to edit it.
 1. In the upper left, click the image block to give the product a picture. Be sure to uncheck the **Private** box so the image will be publicly viewable.
 
-![New Website Item 02]({{docs_base_url}}/assets/img/articles/new-item-for-website-02.png)  
+![New Website Item 02](/docs/assets/img/articles/new-item-for-website-02.png)  
 
 #### Step 3: Check the 'Show in Website' box
 
@@ -26,17 +28,17 @@
 
 * Give the page a route on the website.
 
-![New Website Item 03]({{docs_base_url}}/assets/img/articles/new-item-for-website-03.png)    
+![New Website Item 03](/docs/assets/img/articles/new-item-for-website-03.png)    
 
 #### Step 4: Enter Website Details
 
 Once the `Show in Website` checkbox is checked, a new section called **Website Specifications** appears. Expand this section to add more details about the rocking chair to the website.
 
-![New Website Item 04]({{docs_base_url}}/assets/img/articles/new-item-for-website-04.png)
+![New Website Item 04](/docs/assets/img/articles/new-item-for-website-04.png)
 
 Click **Save** in the upper right and then click `See on Website` on the left under the product image to see the item on your website.
 
-![New Website Item 05]({{docs_base_url}}/assets/img/articles/new-item-for-website-05.png)
+![New Website Item 05](/docs/assets/img/articles/new-item-for-website-05.png)
 
 ### Item Groups
 
@@ -47,17 +49,17 @@
 * Fill in a description for your products page.
 * Click **Save**.
 
-![New Website Item 06]({{docs_base_url}}/assets/img/articles/new-item-for-website-06.png)
+![New Website Item 06](/docs/assets/img/articles/new-item-for-website-06.png)
 
 * Go back to the rocking chair item, expand the **website** section.
 * Click **Add new row** button under the `Item Group` table.
 * Select `Products` from the list.
 * Click **Save**. 
 
-![New Website Item 07]({{docs_base_url}}/assets/img/articles/new-item-for-website-07.png)
+![New Website Item 07](/docs/assets/img/articles/new-item-for-website-07.png)
 
 To see on the website, go back to the `Item Group` and then click **See on website**.
 
-![New Website Item 08]({{docs_base_url}}/assets/img/articles/new-item-for-website-08.png)
+![New Website Item 08](/docs/assets/img/articles/new-item-for-website-08.png)
 
 {next}
diff --git a/erpnext/docs/user/manual/en/website/articles/index.md b/erpnext/docs/user/manual/en/website/articles/index.md
index 0dff60b..fb11735 100644
--- a/erpnext/docs/user/manual/en/website/articles/index.md
+++ b/erpnext/docs/user/manual/en/website/articles/index.md
@@ -1 +1,3 @@
+# Articles
+
 {index}
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/website/articles/managing-user-sign-up-via-website.md b/erpnext/docs/user/manual/en/website/articles/managing-user-sign-up-via-website.md
index b2250e0..e48b87a 100644
--- a/erpnext/docs/user/manual/en/website/articles/managing-user-sign-up-via-website.md
+++ b/erpnext/docs/user/manual/en/website/articles/managing-user-sign-up-via-website.md
@@ -1,8 +1,10 @@
+# Managing User Sign Up Via Website
+
 #Customer / Supplier Signup
 
 Your Customer and Suppliers can signup to your ERPNext account by following Signup option on the Login Page.
 
-<img class="screenshot" alt="Website User Signup" src="{{docs_base_url}}/assets/img/website/website-login.png">
+<img class="screenshot" alt="Website User Signup" src="/docs/assets/img/website/website-login.png">
 
 As seen above the login / sign-up button appears on the homepage of the website generated using ERPNext.
 
diff --git a/erpnext/docs/user/manual/en/website/articles/website-home-page.md b/erpnext/docs/user/manual/en/website/articles/website-home-page.md
index d44a31a..92bcc77 100644
--- a/erpnext/docs/user/manual/en/website/articles/website-home-page.md
+++ b/erpnext/docs/user/manual/en/website/articles/website-home-page.md
@@ -18,7 +18,7 @@
 
 Enter the same value you entered for the `route` field in the previous section to the `Home Page` field. ERPNext will set this route to be the same as /index for your page.      
 
-![Website Setting Home]({{docs_base_url}}/assets/img/articles/Selection_021.png)
+![Website Setting Home](/docs/assets/img/articles/Selection_021.png)
 
 #### **Step 4: Save Website Settings Form.**
 
diff --git a/erpnext/docs/user/manual/en/website/articles/website-security.md b/erpnext/docs/user/manual/en/website/articles/website-security.md
index ef7986a..5c0e2de 100644
--- a/erpnext/docs/user/manual/en/website/articles/website-security.md
+++ b/erpnext/docs/user/manual/en/website/articles/website-security.md
@@ -1,11 +1,13 @@
+# Website Security
+
 #Website Security
 
 One can easily generate a website using ERPNext. We can list our Products on the website and also create blogs. Products are directly fetched from the Item Master records of your ERPNext account. Some people would like to limit the access of the website generated by ERPNext to certain people. This is because some of the items may not be available to the public.
 
 Well at the moment this feature is not available. You cannot limit the access of the website generated by ERPNext to certain people. If you publish the website it will be publicly visible. However while you cannot control who can view the website, you can always choose which items to display on the website. To show or not show an Item on your website go to `Selling > Items and Pricing > Item` and in the Item form check the `show in website` checkbox. 
 
-<img src="{{docs_base_url}}/assets/img/articles/item-show-on-website-checkbox.png"> 
+<img src="/docs/assets/img/articles/item-show-on-website-checkbox.png"> 
 
 Once the check box has been checked, then more details will appear that you can fill in for the details of the product as to be shown on the website.
 
-<img src="{{docs_base_url}}/assets/img/articles/item-show-on-website-checkbox-checked.png"> 
\ No newline at end of file
+<img src="/docs/assets/img/articles/item-show-on-website-checkbox-checked.png"> 
\ No newline at end of file
diff --git a/erpnext/docs/user/manual/en/website/blog-post.md b/erpnext/docs/user/manual/en/website/blog-post.md
index dbf7b17..e6f7960 100644
--- a/erpnext/docs/user/manual/en/website/blog-post.md
+++ b/erpnext/docs/user/manual/en/website/blog-post.md
@@ -1,3 +1,5 @@
+# Blog Post
+
 Blogs are a great way to share your thoughts about your business and keep your
 customers and readers updated of what you are up to.
 
@@ -8,13 +10,13 @@
 
 > Website > Blog > New Blog
 
-<img class="screenshot" alt="Blog Post" src="{{docs_base_url}}/assets/img/website/blog-post.png">
+<img class="screenshot" alt="Blog Post" src="/docs/assets/img/website/blog-post.png">
 
 You can format a blog using the Markdown format.You can also access your blog
 by going to the page “blog.html”.
 
 #### A sample blog-page.
 
-<img class="screenshot" alt="Blog Sample" src="{{docs_base_url}}/assets/img/website/blog-sample.png">
+<img class="screenshot" alt="Blog Sample" src="/docs/assets/img/website/blog-sample.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/en/website/blogger.md b/erpnext/docs/user/manual/en/website/blogger.md
index 5a5bd81..a47bdee 100644
--- a/erpnext/docs/user/manual/en/website/blogger.md
+++ b/erpnext/docs/user/manual/en/website/blogger.md
@@ -1,6 +1,8 @@
+# Blogger
+
 Blogger is a user who can post blogs. 
 You can mention a short bio about the blogger and also set a avatar here.
 
-<img class="screenshot" alt="Blogger" src="{{docs_base_url}}/assets/img/website/blogger.png">
+<img class="screenshot" alt="Blogger" src="/docs/assets/img/website/blogger.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/en/website/index.md b/erpnext/docs/user/manual/en/website/index.md
index a499316..2ac4955 100644
--- a/erpnext/docs/user/manual/en/website/index.md
+++ b/erpnext/docs/user/manual/en/website/index.md
@@ -1,3 +1,5 @@
+# Website
+
 Websites are a core component of any business and having a good website
 usually means:
 
diff --git a/erpnext/docs/user/manual/en/website/setup/index.md b/erpnext/docs/user/manual/en/website/setup/index.md
index 212ccfb..f60d148 100644
--- a/erpnext/docs/user/manual/en/website/setup/index.md
+++ b/erpnext/docs/user/manual/en/website/setup/index.md
@@ -1,3 +1,5 @@
+# Setup
+
 Settings for your website can be mentioned under setup.
 
 ### Topics
diff --git a/erpnext/docs/user/manual/en/website/setup/social-login-keys.md b/erpnext/docs/user/manual/en/website/setup/social-login-keys.md
index bb1329f..be67a8b 100644
--- a/erpnext/docs/user/manual/en/website/setup/social-login-keys.md
+++ b/erpnext/docs/user/manual/en/website/setup/social-login-keys.md
@@ -1,3 +1,5 @@
+# Social Login Keys
+
 Social Login enables users to login to ERPNext via their Google, Facebook or GitHub account.
 
 ### Enabling Social Logins.
diff --git a/erpnext/docs/user/manual/en/website/setup/website-settings.md b/erpnext/docs/user/manual/en/website/setup/website-settings.md
index 2415589..6d5ad23 100644
--- a/erpnext/docs/user/manual/en/website/setup/website-settings.md
+++ b/erpnext/docs/user/manual/en/website/setup/website-settings.md
@@ -1,10 +1,12 @@
+# Website Settings
+
 Most of the website related settings can be defined here.
 
-<img class="screenshot" alt="Website Settings" src="{{docs_base_url}}/assets/img/website/website-settings.png">
+<img class="screenshot" alt="Website Settings" src="/docs/assets/img/website/website-settings.png">
 
 ####Landing Page
 
-* Home Page: You can specify which [Web Page]({{docs_base_url}}/user/manual/en/website/web-page.html) must be the homepage of the website
+* Home Page: You can specify which [Web Page](/docs/user/manual/en/website/web-page.html) must be the homepage of the website
 
 * Home Page is Products: if Checked, the Home page will be the default Item Group for the website.
 
@@ -14,7 +16,7 @@
 
 Select the theme for the website. You can create new Theme for you website also.
 
-<img class="screenshot" alt="Website Theme" src="{{docs_base_url}}/assets/img/website/website-theme.png">
+<img class="screenshot" alt="Website Theme" src="/docs/assets/img/website/website-theme.png">
 
 * Select 'create new website theme' if you wish to customize the default website theme.
 
@@ -23,13 +25,13 @@
 You can add a banner/ logo to your website here. Attach the image and click on set banner from Image.
 An HTML code will be generated by the system under Banner HTML.
 
-<img class="screenshot" alt="Banner" src="{{docs_base_url}}/assets/img/website/banner.png">
+<img class="screenshot" alt="Banner" src="/docs/assets/img/website/banner.png">
 
 ####Top Bar
 
 You can set the menus items in the Top Bar here.
 
-<img class="screenshot" alt="Top Bar" src="{{docs_base_url}}/assets/img/website/top-bar.png">
+<img class="screenshot" alt="Top Bar" src="/docs/assets/img/website/top-bar.png">
 
  * Similarlly you can also set sidebar and footer links.
  
@@ -37,7 +39,7 @@
 
 You can integrate the website using Google Analytics and enable social media sharing for post shared on the website.
 
-<img class="screenshot" alt="Integrations" src="{{docs_base_url}}/assets/img/website/integrations.png">
+<img class="screenshot" alt="Integrations" src="/docs/assets/img/website/integrations.png">
 
 * You can disable public signup to your ERPNext account by checking 'disable signup'
 
diff --git a/erpnext/docs/user/manual/en/website/shopping-cart.md b/erpnext/docs/user/manual/en/website/shopping-cart.md
index 6103e3c..8fe5244 100644
--- a/erpnext/docs/user/manual/en/website/shopping-cart.md
+++ b/erpnext/docs/user/manual/en/website/shopping-cart.md
@@ -1,3 +1,5 @@
+# Shopping Cart
+
 On the Webpage, a shopping cart is an icon that allows you to store all the
 things that you have earmarked for purchasing. It is a graphical
 representation of a shopping basket or a shopping cart that allows you to save
@@ -14,7 +16,7 @@
 
 #### Enter Company Details and Checkout Details.
 
-<img class="screenshot" alt="Shopping Cart Settings" src="{{docs_base_url}}/assets/img/website/item-website-specs.png">
+<img class="screenshot" alt="Shopping Cart Settings" src="/docs/assets/img/website/item-website-specs.png">
 
 To make item available on website go to Item master.
 
@@ -22,11 +24,11 @@
 
 #### Enable Item for website.
 
-<img class="screenshot" alt="Item" src="{{docs_base_url}}/assets/img/website/item-in-webiste.png">
+<img class="screenshot" alt="Item" src="/docs/assets/img/website/item-in-webiste.png">
 
 #### Enter Website Specifications for Item.
 
-<img class="screenshot" alt="Website Specifications" src="{{docs_base_url}}/assets/img/website/item-website-specs.png">
+<img class="screenshot" alt="Website Specifications" src="/docs/assets/img/website/item-website-specs.png">
 
 
 ### Shop using Shopping Cart
@@ -35,20 +37,20 @@
 
 Click on "Add to Cart" to add item to shopping cart.
 
-<img class="screenshot" alt="Website Specifications" src="{{docs_base_url}}/assets/img/website/item-website-view.png">
+<img class="screenshot" alt="Website Specifications" src="/docs/assets/img/website/item-website-view.png">
 
 #### Goto Checkout
 
 Click on "Go to Cart" to checkout or on "Cart" which is on upper right side
 of the screen.
 
-<img class="screenshot" alt="Website Specifications" src="{{docs_base_url}}/assets/img/website/checkout.png">
+<img class="screenshot" alt="Website Specifications" src="/docs/assets/img/website/checkout.png">
 
 #### Checkout
 
 Change quantity, select Shipping and Billing Address and click
 on "Place Order" to place the order.
 
-<img class="screenshot" alt="Website Specifications" src="{{docs_base_url}}/assets/img/website/place-order.png">
+<img class="screenshot" alt="Website Specifications" src="/docs/assets/img/website/place-order.png">
 
 {next}
diff --git a/erpnext/docs/user/manual/en/website/web-form.md b/erpnext/docs/user/manual/en/website/web-form.md
index 1668ac0..b75ef0b 100644
--- a/erpnext/docs/user/manual/en/website/web-form.md
+++ b/erpnext/docs/user/manual/en/website/web-form.md
@@ -17,7 +17,7 @@
 1. Select if you require the user to login, edit records, manage multiple records etc.
 1. Add the fields you want in the record.
 
-<img class="screenshot" alt="Web Form" src="{{docs_base_url}}/assets/img/website/web-form.png">
+<img class="screenshot" alt="Web Form" src="/docs/assets/img/website/web-form.png">
 
 ---
 
@@ -25,7 +25,7 @@
 
 Once you create the web form, you can view it on the url and test it out!
 
-<img class="screenshot" alt="Web form" src="{{docs_base_url}}/assets/img/website/web-form-view.png">
+<img class="screenshot" alt="Web form" src="/docs/assets/img/website/web-form-view.png">
 
 ---
 
diff --git a/erpnext/docs/user/manual/en/website/web-page.md b/erpnext/docs/user/manual/en/website/web-page.md
index 947891e..f931f02 100644
--- a/erpnext/docs/user/manual/en/website/web-page.md
+++ b/erpnext/docs/user/manual/en/website/web-page.md
@@ -1,10 +1,12 @@
+# Web Page
+
 <p class="lead">Static Content like your Home Page, About Us, Contact Us, Terms pages can be created using the Web Page. </p>
 
 To create a new Web Page, go to:
 
 > Website > Web Page > New
 
-<img class="screenshot" alt="Web Page" src="{{docs_base_url}}/assets/img/website/web-page.png">
+<img class="screenshot" alt="Web Page" src="/docs/assets/img/website/web-page.png">
 
 #### Title
 
diff --git a/erpnext/docs/user/manual/es/accounts/accounting-entries.md b/erpnext/docs/user/manual/es/accounts/accounting-entries.md
index ffda0b5..9ad5abd 100644
--- a/erpnext/docs/user/manual/es/accounts/accounting-entries.md
+++ b/erpnext/docs/user/manual/es/accounts/accounting-entries.md
@@ -1,3 +1,5 @@
+# Accounting Entries
+
 <!---
 WORK IN PROGRESS
 -->
@@ -8,7 +10,7 @@
 
   * Mama (El propietario de Tea-stall) invierte $25000 para iniciar el negocio.
 
-![A&L]({{docs_base_url}}/assets/old_images/erpnext/assets-1.png)
+![A&L](/docs/assets/old_images/erpnext/assets-1.png)
 
 __Análisis:__ Mama invierte 25000 en la compañía, con la esperanza de obtener alguna
 ganancia. En otras palabras, la compañía es responsable del pago de $25000 a mama en 
@@ -21,7 +23,7 @@
   que pertenece a un amigo y le concede cierto crédito. Los equipos cuestan 2800 y las
   materias primas valen 2200. La compañía paga 2000 de un total de 5000.
   
-![A&L]({{docs_base_url}}/assets/old_images/erpnext/assets-2.png)
+![A&L](/docs/assets/old_images/erpnext/assets-2.png)
 
 __Análisis:__ Los equipos son "Activos Fijos" (porque tienen una larga vida útil) de la
 compañía y las materias primas son "Activos corrientes" (porque son usados en la 
@@ -37,7 +39,7 @@
   día, Tea Stall vende 325 tazas de té, lo cual da una venta neta de RS. 1575. El propietario
   registra feliz su primer día de ventas.
 
-![A&L]({{docs_base_url}}/assets/old_images/erpnext/assets-3.png)
+![A&L](/docs/assets/old_images/erpnext/assets-3.png)
 
 __Análisis:__ Los ingresos han sido anotados en la cuenta "Ventas de Té", la cual se 
 debita para incrementar el valor y la misma cantidad se acredita de la cuenta
@@ -48,7 +50,7 @@
 Al finalizar el mes, la compañía paga el arriendo del local (5000) y el salario de
 un empleado (8000), el cual trabajó desde el primer día.
 
-![A&L]({{docs_base_url}}/assets/old_images/erpnext/assets-4.png)
+![A&L](/docs/assets/old_images/erpnext/assets-4.png)
 
 ### Registro de ganancias
 
@@ -60,7 +62,7 @@
 débito no es igual al crédito, la ganacia aún no ha sido anotada. Se debe realziar
 la siguiente entrada:
 
-![A&L]({{docs_base_url}}/assets/old_images/erpnext/assets-5.png)
+![A&L](/docs/assets/old_images/erpnext/assets-5.png)
 
 Explicación: Las ventas y gastos netos son 40000 y 20000 respectivamente.
 Entonces, la compañía tuvo una ganancia de 20000. Para registrar esa entrada,
diff --git a/erpnext/docs/user/manual/es/accounts/accounting-reports.md b/erpnext/docs/user/manual/es/accounts/accounting-reports.md
index 925ea1f..a887f9a 100644
--- a/erpnext/docs/user/manual/es/accounts/accounting-reports.md
+++ b/erpnext/docs/user/manual/es/accounts/accounting-reports.md
@@ -1,3 +1,5 @@
+# Accounting Reports
+
 <!---
 WORK IN PROGRESS
 -->
@@ -12,7 +14,7 @@
 periodo determinado. 
 
 <img alt="Libro Mayor" class="screenshot"
-    src="{{docs_base_url}}/assets/img/accounts/general-ledger.png">
+    src="/docs/assets/img/accounts/general-ledger.png">
 
 ### Balance Contable
 
@@ -24,7 +26,7 @@
   * Creditos
   * Cierre
 
-<img alt="Balance Contable" class="screenshot" src="{{docs_base_url}}/assets/img/accounts/trial-balance.png">
+<img alt="Balance Contable" class="screenshot" src="/docs/assets/img/accounts/trial-balance.png">
 
 La suma de todos los balances de cierre en el Balance Contable debe ser igual a cero.
 
@@ -33,7 +35,7 @@
 Este reporte permite hacer seguimiento a las facturas enviadas a los clientes y proveedores. En este 
 reporte, se resaltan diferentes periodos de tiempo. p.e. entre 0-30 días, 30-60 días y así por el estilo.
 
-<img alt="Accounts Receivable" class="screenshot" src="{{docs_base_url}}/assets/img/accounts/accounts-receivable.png">
+<img alt="Accounts Receivable" class="screenshot" src="/docs/assets/img/accounts/accounts-receivable.png">
 
 ### Registro de Ventas y Compras
 
@@ -41,7 +43,7 @@
 se puede obtener la cantidad de impuestos individuales que debe ser pagados, de acuerdo a la
 tabla de Impuestos y Contribuciones,
 
-<img alt="Sales Register" class="screenshot" src="{{docs_base_url}}/assets/img/accounts/sales-register.png">
+<img alt="Sales Register" class="screenshot" src="/docs/assets/img/accounts/sales-register.png">
 
 **Trabajo en progreso.**
 
diff --git a/erpnext/docs/user/manual/es/accounts/advance-payment-entry.md b/erpnext/docs/user/manual/es/accounts/advance-payment-entry.md
index 81491bc..e373c7b 100644
--- a/erpnext/docs/user/manual/es/accounts/advance-payment-entry.md
+++ b/erpnext/docs/user/manual/es/accounts/advance-payment-entry.md
@@ -1,35 +1,34 @@
-<!---
-WORK IN PROGRESS
--->
+# Advance Payment Entry
+
 Los pagos realizados por el cliente antes de recibir el envío del producto se
 denominan Anticipos. Para ordenes de alto costo, los negocios esperan recibir
 dcho tipos de pago.
 
-  
+
 __Por Ejemplo:__ Consider a customer- Jane D'souza placing an order for a double
 bed costing $10000 She is asked to give some advance before the furniture
 house begins work on her order. She gives them $5000 in cash.
 
-  
+
 Go to Accounts and open a new Journal Entry to make the advance entry.
 
-> Accounts > Documents > Journal Entry > New Journal Entry  
+> Accounts > Documents > Journal Entry > New Journal Entry
 
 Mention the voucher type as cash voucher. This differs for different
 customers. If somebody pays by cheque the voucher type will be Bank Voucher.
 Then select the customer account and make the respective debit and credit
-entries.  
+entries.
 
 Since the customer has given $5000 as cash advance,it will be recorded as a
 credit entry against the customer. To balance it with the debit entry [Double
 accounting Entry] enter $5000 as debit against the company's cash account. In
 the row "Is Advance" click 'Yes'.
 
-#### Figure 1 : Journal Entry -Advance Entry  
+#### Figure 1 : Journal Entry -Advance Entry
 
-<img class="screenshot" alt="Advace Payment" src="{{docs_base_url}}/assets/img/accounts/advance-payment-1.png">
+<img class="screenshot" alt="Advace Payment" src="/docs/assets/img/accounts/advance-payment-1.png">
 
-### Double Entry Accounting  
+### Double Entry Accounting
 
 Double entry bookkeeping is a system of accounting in which every transaction
 has a corresponding positive and negative entry : debits and credits. Every
@@ -41,10 +40,10 @@
 one account will be debited because it receives value and the other account
 will be credited because it has given value.
 
-  
+
 #### Figure 2: Transaction and Difference Entry
 
-<img class="screenshot" alt="Advace Payment" src="{{docs_base_url}}/assets/img/accounts/advance-payment-2.png">
+<img class="screenshot" alt="Advace Payment" src="/docs/assets/img/accounts/advance-payment-2.png">
 
 Save and submit the JV. If this document is not saved it will not be pulled in
 other accounting documents.
@@ -56,9 +55,9 @@
 payment entry, click on ‘Get Advances Received’.  Allocate the amount of
 advance in the advances table. The accounting will be adjusted accordingly.
 
-#### Figure 3: Receive Advance 
+#### Figure 3: Receive Advance
 
-<img class="screenshot" alt="Advace Payment" src="{{docs_base_url}}/assets/img/accounts/advance-payment-3.png">
+<img class="screenshot" alt="Advace Payment" src="/docs/assets/img/accounts/advance-payment-3.png">
 
 Save and submit the Sales Invoice.
 
diff --git a/erpnext/docs/user/manual/es/accounts/index.md b/erpnext/docs/user/manual/es/accounts/index.md
index 9599bf9..2617b58 100644
--- a/erpnext/docs/user/manual/es/accounts/index.md
+++ b/erpnext/docs/user/manual/es/accounts/index.md
@@ -1,3 +1,5 @@
+# Accounts
+
 <!---
 WORK IN PROGRESS
 -->
diff --git a/erpnext/docs/user/manual/es/index.md b/erpnext/docs/user/manual/es/index.md
index 330be14..c701b42 100644
--- a/erpnext/docs/user/manual/es/index.md
+++ b/erpnext/docs/user/manual/es/index.md
@@ -1,6 +1,3 @@
-<!---
-WORK IN PROGRESS
--->
 # Manual de Usuario (Español)
 
 ### Contenido:
@@ -9,4 +6,4 @@
 
 **Trabajo en progreso.**
 
-[La traducción al Español del manual de ERPNext está en progreso. Click aquí para ver el manual en ingles]({{ docs_base_url }}/user/manual/en)
+[La traducción al Español del manual de ERPNext está en progreso. Click aquí para ver el manual en ingles](/docs/user/manual/en)
diff --git a/erpnext/docs/user/manual/es/introduction/do-i-need-an-erp.md b/erpnext/docs/user/manual/es/introduction/do-i-need-an-erp.md
index a101c83..6d916e7 100644
--- a/erpnext/docs/user/manual/es/introduction/do-i-need-an-erp.md
+++ b/erpnext/docs/user/manual/es/introduction/do-i-need-an-erp.md
@@ -1,3 +1,5 @@
+# Do I Need An Erp
+
 ERPNext es una herramienta moderna que no solo abarca el módulo de contabilidad,
 sino que también, cubre todas las otras funciones de su negocio en una plataforma integrada.
 Tiene muchos beneficios sobre los sistemas tradicionales de contabilidad y otros ERP en el mercado.
diff --git a/erpnext/docs/user/manual/es/introduction/getting-started-with-erpnext.md b/erpnext/docs/user/manual/es/introduction/getting-started-with-erpnext.md
index d1518e5..cc0b1c0 100644
--- a/erpnext/docs/user/manual/es/introduction/getting-started-with-erpnext.md
+++ b/erpnext/docs/user/manual/es/introduction/getting-started-with-erpnext.md
@@ -1,3 +1,5 @@
+# Getting Started With Erpnext
+
 Hay muchas manera de comenzar a utilizar ERPNext.
 
 ### 1\. Ver el Demo
@@ -10,7 +12,7 @@
 ### 2\. Comienza con una cuenta gratis en ERPNext.com
 
 
-ERPNext.com es manejado por la organización (Frappe) que publicó ERPNext.
+ERPNext.com es manejado por la organización (Frappé) que publicó ERPNext.
 Puedes iniciar con su propia cuenta en [registrandote en la página](https://erpnext.com).
 
 También, puedes hostear tu aplicación en erpnext.com comprando un plan de alojamiento.
@@ -26,6 +28,6 @@
 
 ### 4\. Instalar ERPNext en su ordenador Unix/Linux/Mac
 
-En caso de estar relacionado con la instalación de aplicaciones en plataformas *nix, leer las instrucciones de como instalarlo usando [Frappe Bench](https://github.com/frappe/bench).
+En caso de estar relacionado con la instalación de aplicaciones en plataformas *nix, leer las instrucciones de como instalarlo usando [Frappé Bench](https://github.com/frappe/bench).
 
 {next}
diff --git a/erpnext/docs/user/manual/es/introduction/implementation-strategy.md b/erpnext/docs/user/manual/es/introduction/implementation-strategy.md
index e5482f2..6429ddd 100644
--- a/erpnext/docs/user/manual/es/introduction/implementation-strategy.md
+++ b/erpnext/docs/user/manual/es/introduction/implementation-strategy.md
@@ -1,3 +1,5 @@
+# Implementation Strategy
+
 Antes de que empieces a manejar todas tus operaciones en ERPNext, primero
 deberías estar familiarizado con el sistema y los términos que utiliza.
 	Por esa razón recomendamos que la implementación pase en dos fases.
diff --git a/erpnext/docs/user/manual/es/introduction/index.md b/erpnext/docs/user/manual/es/introduction/index.md
index bbbf930..17e3704 100644
--- a/erpnext/docs/user/manual/es/introduction/index.md
+++ b/erpnext/docs/user/manual/es/introduction/index.md
@@ -1,3 +1,5 @@
+# Introduction
+
 ## ¿Qué es un ERP y Por qué debería interesarme?
 
 (Si ya sabes que necesitas un sistema todo-en-uno para su compañia, puedes pasar a la siguiente página)
diff --git a/erpnext/docs/user/manual/es/introduction/key-workflows.md b/erpnext/docs/user/manual/es/introduction/key-workflows.md
index 6a29abf..6877fb3 100644
--- a/erpnext/docs/user/manual/es/introduction/key-workflows.md
+++ b/erpnext/docs/user/manual/es/introduction/key-workflows.md
@@ -3,10 +3,10 @@
 Este diagrama cubre como ERPNext hace el seguimiento de la información de su compañia a través de funciones claves.
 Este diagrama no cubre toda la funcionalidad o características de ERPNext.
 
-![]({{docs_base_url}}/assets/old_images/erpnext/overview.png)
+![](/docs/assets/old_images/erpnext/overview.png)
 
 
-<img class="screenshot" alt="Workflow" src="{{docs_base_url}}/assets/img/setup/overview.png">
+<img class="screenshot" alt="Workflow" src="/docs/assets/img/setup/overview.png">
 
 _Nota: No todos los pasos son obligatorios. ERPNext te permite pasar algunos pasos si deseas simplificar el proceso._
 
diff --git a/erpnext/docs/user/manual/es/introduction/open-source.md b/erpnext/docs/user/manual/es/introduction/open-source.md
index e12fd51..efa2f13 100644
--- a/erpnext/docs/user/manual/es/introduction/open-source.md
+++ b/erpnext/docs/user/manual/es/introduction/open-source.md
@@ -1,3 +1,5 @@
+# Open Source
+
 El código fuente de ERPNext es de código abierto. Está abierto para que todos
 podamos entenderlo, extenderlo o mejorarlo. Y es gratis!
 
diff --git a/erpnext/docs/user/manual/es/introduction/the-champion.md b/erpnext/docs/user/manual/es/introduction/the-champion.md
index e124b53..0d2106e 100644
--- a/erpnext/docs/user/manual/es/introduction/the-champion.md
+++ b/erpnext/docs/user/manual/es/introduction/the-champion.md
@@ -1,8 +1,10 @@
+# The Champion
+
 <!-- no-heading -->
 
 <h1 class="white">El campeón</h1>
 
-<img alt="Champion" class="screenshot" src="{{docs_base_url}}/assets/img/setup/implementation-image.png">
+<img alt="Champion" class="screenshot" src="/docs/assets/img/setup/implementation-image.png">
 
 Hemos visto docenas de implementaciones de sistemas ERP en los últimos años
 y nos hemos dado cuenta que una implementación exitosa es más sobre cosas intangibles y actitudes.
diff --git a/erpnext/docs/user/manual/index.md b/erpnext/docs/user/manual/index.md
index d6cf4f1..cc37ba4 100644
--- a/erpnext/docs/user/manual/index.md
+++ b/erpnext/docs/user/manual/index.md
@@ -1,10 +1,7 @@
-<!---
-WORK IN PROGRESS
--->
 # ERPNext User Manual
 
 Select your language
 
-1. [English]({{docs_base_url}}/user/manual/en)
-1. [Deutsch]({{docs_base_url}}/user/manual/de)
-1. [Español]({{docs_base_url}}/user/manual/es)
\ No newline at end of file
+1. [English](/docs/user/manual/en)
+1. [Deutsch](/docs/user/manual/de)
+1. [Español](/docs/user/manual/es)
\ No newline at end of file
diff --git a/erpnext/docs/user/videos/index.md b/erpnext/docs/user/videos/index.md
index 9a82db5..8d3b701 100644
--- a/erpnext/docs/user/videos/index.md
+++ b/erpnext/docs/user/videos/index.md
@@ -1,13 +1,13 @@
 # ERPNext Videos
 
 <h3>
-	<a class="no-decoration" href="{{docs_base_url}}/user/videos/learn">Learn ERPNext</a>
+	<a class="no-decoration" href="/docs/user/videos/learn">Learn ERPNext</a>
 </h3>
 
 <div class="row">
     <div class="col-sm-4">
-        <a href="{{docs_base_url}}/user/videos/learn">
-            <img src="{{docs_base_url}}/assets/img/videos/learn.jpg" class="img-responsive" style="margin-top: 0px;">
+        <a href="/docs/user/videos/learn">
+            <img src="/docs/assets/img/videos/learn.jpg" class="img-responsive" style="margin-top: 0px;">
         </a>
     </div>
     <div class="col-sm-8">
@@ -24,7 +24,7 @@
 <div class="row">
     <div class="col-sm-4">
         <a href="https://conf.erpnext.com/2014/videos">
-            <img src="{{docs_base_url}}/assets/img/videos/conf-2014.jpg" class="img-responsive" style="margin-top: 0px;">
+            <img src="/docs/assets/img/videos/conf-2014.jpg" class="img-responsive" style="margin-top: 0px;">
         </a>
     </div>
     <div class="col-sm-8">
diff --git a/erpnext/docs/user/videos/learn/index.md b/erpnext/docs/user/videos/learn/index.md
index faaf49c..dad5cc0 100644
--- a/erpnext/docs/user/videos/learn/index.md
+++ b/erpnext/docs/user/videos/learn/index.md
@@ -11,23 +11,23 @@
     <br>
     <h3>ERPNext Demonstrations</h3>
     <ul class="list-unstyled video-list">
-        <li><a href="{{docs_base_url}}/user/videos/learn/services.html">
+        <li><a href="/docs/user/videos/learn/services.html">
               ERPNext for Services Business</a>
             <span class="text-muted pull-right">52:50</span>
         </li>
-        <li><a href="{{docs_base_url}}/user/videos/learn/distributors.html">
+        <li><a href="/docs/user/videos/learn/distributors.html">
               ERPNext for Distributors</a>
             <span class="text-muted pull-right">51:47</span>
         </li>
-        <li><a href="{{docs_base_url}}/user/videos/learn/manufacturing-make-to-order.html">
+        <li><a href="/docs/user/videos/learn/manufacturing-make-to-order.html">
               ERPNext for Manufacturers</a>
             <span class="text-muted pull-right">14:26</span>
         </li>
-        <li><a href="{{docs_base_url}}/user/videos/learn/retailers.html">
+        <li><a href="/docs/user/videos/learn/retailers.html">
               ERPNext for Retailers</a>
             <span class="text-muted pull-right">39:21</span>
         </li>
-        <li><a href="{{docs_base_url}}/user/videos/learn/schools.html">
+        <li><a href="/docs/user/videos/learn/schools.html">
               ERPNext for Schools</a>
             <span class="text-muted pull-right">39:21</span>
         </li>
@@ -35,7 +35,7 @@
     <br>
     <h3>Using ERPNext</h3>
     <ul class="list-unstyled video-list">
-        <li><a href="{{docs_base_url}}/user/videos/learn/navigation.html">
+        <li><a href="/docs/user/videos/learn/navigation.html">
               User Interface and Navigation</a>
             <span class="text-muted pull-right">2:17</span>
         </li>
@@ -43,47 +43,47 @@
     <br>
     <h3>Setting Up</h3>
     <ul class="list-unstyled video-list">
-        <li><a href="{{docs_base_url}}/user/videos/learn/setup-wizard.html">
+        <li><a href="/docs/user/videos/learn/setup-wizard.html">
             The Setup Wizard</a>
             <span class="text-muted pull-right">2:28</span>
         </li>
-        <li><a href="{{docs_base_url}}/user/videos/learn/user-and-permission.html">
+        <li><a href="/docs/user/videos/learn/user-and-permission.html">
             User and Permissions</a>
             <span class="text-muted pull-right">6:16</span>
         </li>
-        <li><a href="{{docs_base_url}}/user/videos/learn/data-import-tool.html">
+        <li><a href="/docs/user/videos/learn/data-import-tool.html">
             Data Import Tool</a>
             <span class="text-muted pull-right">6:31</span>
     	</li>
-        <li><a href="{{docs_base_url}}/user/videos/learn/printing-and-branding.html">
+        <li><a href="/docs/user/videos/learn/printing-and-branding.html">
             Printing and Branding</a>
             <span class="text-muted pull-right">4:00</span>
         </li>
-        <li><a href="{{docs_base_url}}/user/videos/learn/customer-and-supplier.html">
+        <li><a href="/docs/user/videos/learn/customer-and-supplier.html">
             Customer and Supplier</a>
             <span class="text-muted pull-right">4:35</span>
         </li>
-        <li><a href="{{docs_base_url}}/user/videos/learn/item.html">
+        <li><a href="/docs/user/videos/learn/item.html">
             Item and Pricing</a>
             <span class="text-muted pull-right">3:55</span>
         </li>
-        <li><a href="{{docs_base_url}}/user/videos/learn/opening-stock.html">
+        <li><a href="/docs/user/videos/learn/opening-stock.html">
             Opening Stock</a>
             <span class="text-muted pull-right">4:27</span>
         </li>
-        <li><a href="{{docs_base_url}}/user/videos/learn/chart-of-accounts.html">
+        <li><a href="/docs/user/videos/learn/chart-of-accounts.html">
             Chart of Accounts</a>
             <span class="text-muted pull-right">3:10</span>
         </li>
-        <li><a href="{{docs_base_url}}/user/videos/learn/opening-account-balances.html">
+        <li><a href="/docs/user/videos/learn/opening-account-balances.html">
             Opening Account Balances</a>
             <span class="text-muted pull-right">4:40</span>
         </li>
-        <li><a href="{{docs_base_url}}/user/videos/learn/email-account.html">
+        <li><a href="/docs/user/videos/learn/email-account.html">
             Email Account</a>
             <span class="text-muted pull-right">2:27</span>
         </li>
-        <li><a href="{{docs_base_url}}/user/videos/learn/file-manager.html">
+        <li><a href="/docs/user/videos/learn/file-manager.html">
             File Manager</a>
             <span class="text-muted pull-right">2:24</span>
         </li>
@@ -91,31 +91,31 @@
     <br>
     <h3>CRM and Sales</h3>
     <ul class="list-unstyled video-list">
-        <li><a href="{{docs_base_url}}/user/videos/learn/lead-to-quotation.html">
+        <li><a href="/docs/user/videos/learn/lead-to-quotation.html">
             Customer Relationship Management</a>
             <span class="text-muted pull-right">3:29</span>
         </li>
-        <li><a href="{{docs_base_url}}/user/videos/learn/customer-and-supplier.html">
+        <li><a href="/docs/user/videos/learn/customer-and-supplier.html">
             Customer</a>
             <span class="text-muted pull-right">4:35</span>
         </li>
-        <li><a href="{{docs_base_url}}/user/videos/learn/sales-cycle.html">
+        <li><a href="/docs/user/videos/learn/sales-cycle.html">
             Sales Order to Payment</a>
               <span class="text-muted pull-right">4:28</span>
         </li>
-        <li><a href="{{docs_base_url}}/user/videos/learn/product-bundle.html">
+        <li><a href="/docs/user/videos/learn/product-bundle.html">
             Product Bundle</a>
             <span class="text-muted pull-right">2:31</span>
         </li>
-        <li><a href="{{docs_base_url}}/user/videos/learn/newsletter.html">
+        <li><a href="/docs/user/videos/learn/newsletter.html">
             Newsletter</a>
             <span class="text-muted pull-right">2:04</span>
         </li>
-        <li><a href="{{docs_base_url}}/user/videos/learn/taxes.html">
+        <li><a href="/docs/user/videos/learn/taxes.html">
             Taxes</a>
             <span class="text-muted pull-right">3:00</span>
         </li>
-        <li><a href="{{docs_base_url}}/user/videos/learn/drop-ship.html">
+        <li><a href="/docs/user/videos/learn/drop-ship.html">
 			Drop Ship</a>
             <span class="text-muted pull-right">2:26</span>
         </li>
@@ -123,23 +123,23 @@
     <br>
     <h3>Buying</h3>
     <ul class="list-unstyled video-list">
-        <li><a href="{{docs_base_url}}/user/videos/learn/customer-and-supplier.html">
+        <li><a href="/docs/user/videos/learn/customer-and-supplier.html">
             Supplier</a>
             <span class="text-muted pull-right">4:35</span>
         </li>
-        <li><a href="{{docs_base_url}}/user/videos/learn/material-request-to-purchase-order.html">
+        <li><a href="/docs/user/videos/learn/material-request-to-purchase-order.html">
             Material Request to Purchase Order</a>
             <span class="text-muted pull-right">2:25</span>
         </li>
-        <li><a href="{{docs_base_url}}/user/videos/learn/request-for-quotation.html">
+        <li><a href="/docs/user/videos/learn/request-for-quotation.html">
             Request for Quotation</a>
             <span class="text-muted pull-right">3:17</span>
         </li>
-        <li><a href="{{docs_base_url}}/user/videos/learn/purchase-cycle.html">
+        <li><a href="/docs/user/videos/learn/purchase-cycle.html">
             Purchase Order to Payment</a>
               <span class="text-muted pull-right">3:16</span>
         </li>
-        <li><a href="{{docs_base_url}}/user/videos/learn/taxes.html">
+        <li><a href="/docs/user/videos/learn/taxes.html">
             Taxes</a>
             <span class="text-muted pull-right">5:13</span>
         </li>
@@ -147,39 +147,39 @@
     <br>
     <h3>Stock</h3>
     <ul class="list-unstyled video-list">
-        <li><a href="{{docs_base_url}}/user/videos/learn/item.html">
+        <li><a href="/docs/user/videos/learn/item.html">
             Item and Pricing</a>
             <span class="text-muted pull-right">3:17</span>
         </li>
-        <li><a href="{{docs_base_url}}/user/videos/learn/item-variant.html">
+        <li><a href="/docs/user/videos/learn/item-variant.html">
             Item Variant</a>
             <span class="text-muted pull-right">2:38</span>
         </li>
-        <li><a href="{{docs_base_url}}/user/videos/learn/opening-stock.html">
+        <li><a href="/docs/user/videos/learn/opening-stock.html">
             Stock Opening Balance</a>
             <span class="text-muted pull-right">4:27</span>
         </li>
-        <li><a href="{{docs_base_url}}/user/videos/learn/stock-entries.html">
+        <li><a href="/docs/user/videos/learn/stock-entries.html">
             Stock Entries</a>
               <span class="text-muted pull-right">3:46</span>
         </li>
-        <li><a href="{{docs_base_url}}/user/videos/learn/serialized-inventory.html">
+        <li><a href="/docs/user/videos/learn/serialized-inventory.html">
             Serialized Inventory</a>
             <span class="text-muted pull-right">4:12</span>
         </li>
-        <li><a href="{{docs_base_url}}/user/videos/learn/batch-inventory.html">
+        <li><a href="/docs/user/videos/learn/batch-inventory.html">
             Batched Inventory</a>
             <span class="text-muted pull-right">3:46</span>
         </li>
-        <li><a href="{{docs_base_url}}/user/videos/learn/subcontracting.html">
+        <li><a href="/docs/user/videos/learn/subcontracting.html">
             Managing Subcontracting</a>
             <span class="text-muted pull-right">4:37</span>
         </li>
-        <li><a href="{{docs_base_url}}/user/videos/learn/quality-inspection.html">
+        <li><a href="/docs/user/videos/learn/quality-inspection.html">
             Quality Inspection</a>
             <span class="text-muted pull-right">2:36</span>
         </li>
-        <li><a href="{{docs_base_url}}/user/videos/learn/fixed-assets.html">
+        <li><a href="/docs/user/videos/learn/fixed-assets.html">
               Fixed Assets Management</a>
             <span class="text-muted pull-right">6:35</span>
         </li>
@@ -187,23 +187,23 @@
     <br>
     <h3>Accounts</h3>
     <ul class="list-unstyled video-list">
-        <li><a href="{{docs_base_url}}/user/videos/learn/chart-of-accounts.html">
+        <li><a href="/docs/user/videos/learn/chart-of-accounts.html">
             Chart of Accounts</a>
             <span class="text-muted pull-right">3:10</span>
         </li>
-        <li><a href="{{docs_base_url}}/user/videos/learn/opening-account-balances.html">
+        <li><a href="/docs/user/videos/learn/opening-account-balances.html">
             Accounts Opening Balances</a>
             <span class="text-muted pull-right">4:40</span>
         </li>
-        <li><a href="{{docs_base_url}}/user/videos/learn/taxes.html">
+        <li><a href="/docs/user/videos/learn/taxes.html">
             Taxes</a>
               <span class="text-muted pull-right">5:13</span>
         </li>
-        <li><a href="{{docs_base_url}}/user/videos/learn/advance-payments.html">
+        <li><a href="/docs/user/videos/learn/advance-payments.html">
             Advance Payments</a>
               <span class="text-muted pull-right">2:52</span>
         </li>
-        <li><a href="{{docs_base_url}}/user/videos/learn/budgeting.html">
+        <li><a href="/docs/user/videos/learn/budgeting.html">
               Budgeting</a>
             <span class="text-muted pull-right">3:26</span>
         </li>
@@ -211,25 +211,25 @@
     <br>
     <h3>Manufacturing</h3>
     <ul class="list-unstyled video-list">
-        <li><a href="{{docs_base_url}}/user/videos/learn/bill-of-materials.html">
+        <li><a href="/docs/user/videos/learn/bill-of-materials.html">
             Bill of Materials</a>
             <span class="text-muted pull-right">3:27</span>
         </li>
-        <li><a href="{{docs_base_url}}/user/videos/learn/production-planning.html">
+        <li><a href="/docs/user/videos/learn/production-planning.html">
             Production Planning Tool</a>
               <span class="text-muted pull-right">1:41</span>
         </li>
-        <li><a href="{{docs_base_url}}/user/videos/learn/production-order.html">
+        <li><a href="/docs/user/videos/learn/production-order.html">
             Production Order</a>
             <span class="text-muted pull-right">2:24</span>
         </li>
         <li>
-            <a href="{{docs_base_url}}/user/videos/learn/manufacturing-make-to-order.html">
+            <a href="/docs/user/videos/learn/manufacturing-make-to-order.html">
               ERPNext for Manufacturers (Make to Order)</a>
             <span class="text-muted pull-right">14:26</span>
         </li>
         <li>
-            <a href="{{docs_base_url}}/user/videos/learn/manufacturing-enigneer-to-order.html">
+            <a href="/docs/user/videos/learn/manufacturing-enigneer-to-order.html">
               ERPNext for Manufacturers (Engineer to Order)</a>
             <span class="text-muted pull-right">44:40</span>
         </li>
@@ -237,19 +237,19 @@
     <br>
     <h3>Human Resource</h3>
     <ul class="list-unstyled video-list">
-        <li><a href="{{docs_base_url}}/user/videos/learn/employee.html">
+        <li><a href="/docs/user/videos/learn/employee.html">
             Employees</a>
             <span class="text-muted pull-right">1:59</span>
         </li>
-        <li><a href="{{docs_base_url}}/user/videos/learn/processing-payroll.html">
+        <li><a href="/docs/user/videos/learn/processing-payroll.html">
             Processing Payroll</a>
               <span class="text-muted pull-right">4:00</span>
         </li>
-        <li><a href="{{docs_base_url}}/user/videos/learn/leave-management.html">
+        <li><a href="/docs/user/videos/learn/leave-management.html">
             Leave Management</a>
             <span class="text-muted pull-right">2:50</span>
         </li>
-        <li><a href="{{docs_base_url}}/user/videos/learn/expense-claim.html">
+        <li><a href="/docs/user/videos/learn/expense-claim.html">
             Expense Claims</a>
             <span class="text-muted pull-right">2:52</span>
         </li>
@@ -257,11 +257,11 @@
     <br>
     <h3>Retail</h3>
     <ul class="list-unstyled video-list">
-        <li><a href="{{docs_base_url}}/user/videos/learn/point-of-sale.html">
+        <li><a href="/docs/user/videos/learn/point-of-sale.html">
             Point of Sale</a>
             <span class="text-muted pull-right">2:34</span>
         </li>
-        <li><a href="{{docs_base_url}}/user/videos/learn/retailers.html">
+        <li><a href="/docs/user/videos/learn/retailers.html">
               ERPNext for Retailers (Demo)</a>
             <span class="text-muted pull-right">39:21</span>
         </li>
@@ -269,7 +269,7 @@
     <br>
     <h3>Project</h3>
     <ul class="list-unstyled video-list">
-        <li><a href="{{docs_base_url}}/user/videos/learn/project-and-task.html">
+        <li><a href="/docs/user/videos/learn/project-and-task.html">
             Project and Task</a>
             <span class="text-muted pull-right">3:52</span>
         </li>
@@ -277,10 +277,10 @@
     <br>
     <h3>Website</h3>
     <ul class="list-unstyled video-list">
-        <li><a href="{{docs_base_url}}/user/videos/learn/publish-items-on-website.html">
+        <li><a href="/docs/user/videos/learn/publish-items-on-website.html">
             Publish Items on Website</a>
             <span class="text-muted pull-right">5:14</span>
-        </li><li><a href="{{docs_base_url}}/user/videos/learn/shopping-cart.html">
+        </li><li><a href="/docs/user/videos/learn/shopping-cart.html">
             Shopping Cart</a>
             <span class="text-muted pull-right">6:32</span>
         </li>
@@ -288,19 +288,19 @@
 	<br>
     <h3>Customization</h3>
     <ul class="list-unstyled video-list">
-        <li><a href="{{docs_base_url}}/user/videos/learn/field-customization.html">
+        <li><a href="/docs/user/videos/learn/field-customization.html">
             Field Customization</a>
             <span class="text-muted pull-right">3:10</span>
         </li>
-        <li><a href="{{docs_base_url}}/user/videos/learn/bulk-update.html">
+        <li><a href="/docs/user/videos/learn/bulk-update.html">
             Bulk Update Data</a>
             <span class="text-muted pull-right">1:38</span>
         </li>
-        <li><a href="{{docs_base_url}}/user/videos/learn/workflow.html">
+        <li><a href="/docs/user/videos/learn/workflow.html">
             Workflow</a>
             <span class="text-muted pull-right">3:38</span>
         </li>
-        <li><a href="{{docs_base_url}}/user/videos/learn/report-builder.html">
+        <li><a href="/docs/user/videos/learn/report-builder.html">
             Report Builder</a>
             <span class="text-muted pull-right">4:27</span>
         </li>
diff --git a/erpnext/hooks.py b/erpnext/hooks.py
index 37fd869..fc8d39b 100644
--- a/erpnext/hooks.py
+++ b/erpnext/hooks.py
@@ -62,49 +62,49 @@
 	{"from_route": "/orders/<path:name>", "to_route": "order",
 		"defaults": {
 			"doctype": "Sales Order",
-			"parents": [{"title": _("Orders"), "name": "orders"}]
+			"parents": [{"label": _("Orders"), "route": "orders"}]
 		}
 	},
 	{"from_route": "/invoices", "to_route": "Sales Invoice"},
 	{"from_route": "/invoices/<path:name>", "to_route": "order",
 		"defaults": {
 			"doctype": "Sales Invoice",
-			"parents": [{"title": _("Invoices"), "name": "invoices"}]
+			"parents": [{"label": _("Invoices"), "route": "invoices"}]
 		}
 	},
 	{"from_route": "/supplier-quotations", "to_route": "Supplier Quotation"},
 	{"from_route": "/supplier-quotations/<path:name>", "to_route": "order",
 		"defaults": {
 			"doctype": "Supplier Quotation",
-			"parents": [{"title": _("Supplier Quotation"), "name": "quotations"}]
+			"parents": [{"label": _("Supplier Quotation"), "route": "quotations"}]
 		}
 	},
 	{"from_route": "/quotations", "to_route": "Quotation"},
 	{"from_route": "/quotations/<path:name>", "to_route": "order",
 		"defaults": {
 			"doctype": "Quotation",
-			"parents": [{"title": _("Quotations"), "name": "quotation"}]
+			"parents": [{"label": _("Quotations"), "route": "quotation"}]
 		}
 	},
 	{"from_route": "/shipments", "to_route": "Delivery Note"},
 	{"from_route": "/shipments/<path:name>", "to_route": "order",
 		"defaults": {
 			"doctype": "Delivery Note",
-			"parents": [{"title": _("Shipments"), "name": "shipments"}]
+			"parents": [{"label": _("Shipments"), "route": "shipments"}]
 		}
 	},
 	{"from_route": "/rfq", "to_route": "Request for Quotation"},
 	{"from_route": "/rfq/<path:name>", "to_route": "rfq",
 		"defaults": {
 			"doctype": "Request for Quotation",
-			"parents": [{"title": _("Request for Quotation"), "name": "rfq"}]
+			"parents": [{"label": _("Request for Quotation"), "route": "rfq"}]
 		}
 	},
 	{"from_route": "/addresses", "to_route": "Address"},
 	{"from_route": "/addresses/<path:name>", "to_route": "addresses",
 		"defaults": {
 			"doctype": "Address",
-			"parents": [{"title": _("Addresses"), "name": "addresses"}]
+			"parents": [{"label": _("Addresses"), "route": "addresses"}]
 		}
 	},
 	{"from_route": "/jobs", "to_route": "Job Opening"},
@@ -201,11 +201,14 @@
 
 email_brand_image = "assets/erpnext/images/erpnext-logo.jpg"
 
-default_mail_footer = """<div style="text-align: center;">
-	<a href="https://erpnext.com?source=via_email_footer" target="_blank" style="color: #8d99a6;">
-		Sent via ERPNext
-	</a>
-</div>"""
+default_mail_footer = """
+	<span>
+		Sent via
+		<a class="text-muted" href="https://erpnext.com?source=via_email_footer" target="_blank">
+			ERPNext
+		</a>
+	</span>
+"""
 
 get_translated_dict = {
 	("doctype", "Global Defaults"): "frappe.geo.country_info.get_translated_dict"
diff --git a/erpnext/hr/doctype/attendance/test_attendance.js b/erpnext/hr/doctype/attendance/test_attendance.js
new file mode 100644
index 0000000..82347ad
--- /dev/null
+++ b/erpnext/hr/doctype/attendance/test_attendance.js
@@ -0,0 +1,35 @@
+QUnit.module('hr');
+
+QUnit.test("Test: Attendance [HR]", function (assert) {
+	assert.expect(4);
+	let done = assert.async();
+
+	frappe.run_serially([
+		// test attendance creation for one employee
+		() => frappe.set_route("List", "Attendance", "List"),
+		() => frappe.timeout(0.5),
+		() => frappe.new_doc("Attendance"),
+		() => frappe.timeout(1),
+		() => assert.equal("Attendance", cur_frm.doctype,
+			"Form for new Attendance opened successfully."),
+		// set values in form
+		() => cur_frm.set_value("company", "Test Company"),
+		() => frappe.db.get_value('Employee', {'employee_name':'Test Employee 1'}, 'name'),
+		(employee) => cur_frm.set_value("employee", employee.message.name),
+		() => cur_frm.save(),
+		() => frappe.timeout(1),
+		// check docstatus of attendance before submit [Draft]
+		() => assert.equal("0", cur_frm.doc.docstatus,
+			"attendance is currently drafted"),
+		// check docstatus of attendance after submit [Present]
+		() => cur_frm.savesubmit(),
+		() => frappe.timeout(0.5),
+		() => frappe.click_button('Yes'),
+		() => assert.equal("1", cur_frm.doc.docstatus,
+			"attendance is saved after submit"),
+		// check if auto filled date is present day
+		() => assert.equal(frappe.datetime.nowdate(), cur_frm.doc.attendance_date,
+			"attendance for Present day is marked"),
+		() => done()
+	]);
+});
\ No newline at end of file
diff --git a/erpnext/hr/doctype/employee/test_employee.js b/erpnext/hr/doctype/employee/test_employee.js
index 64fde8e..64a6b7a 100644
--- a/erpnext/hr/doctype/employee/test_employee.js
+++ b/erpnext/hr/doctype/employee/test_employee.js
@@ -10,8 +10,9 @@
 		() => frappe.set_route("List", "Employee", "List"),
 		() => frappe.new_doc("Employee"),
 		() => frappe.timeout(1),
-		() => cur_frm.set_value("employee_name", "Test Employee"),
+		() => cur_frm.set_value("employee_name", "Test Employee 1"),
 		() => cur_frm.set_value("salutation", "Ms"),
+		() => cur_frm.set_value("company", "Test Company"),
 		() => cur_frm.set_value("date_of_joining", frappe.datetime.add_months(today_date, -2)),	// joined 2 month from now
 		() => cur_frm.set_value("date_of_birth", frappe.datetime.add_months(today_date, -240)),	// age is 20 years
 		() => cur_frm.set_value("employment_type", "Test Employment type"),
@@ -25,7 +26,7 @@
 		() => cur_frm.save(),
 		() => frappe.timeout(1),
 		// check name of employee
-		() => assert.equal("Test Employee", cur_frm.doc.employee_name,
+		() => assert.equal("Test Employee 1", cur_frm.doc.employee_name,
 			'name of employee correctly saved'),
 		// check auto filled gender according to salutation
 		() => assert.equal("Female", cur_frm.doc.gender,
diff --git a/erpnext/hr/doctype/employee_attendance_tool/test_employee_attendance_tool.js b/erpnext/hr/doctype/employee_attendance_tool/test_employee_attendance_tool.js
new file mode 100644
index 0000000..a71ba0f
--- /dev/null
+++ b/erpnext/hr/doctype/employee_attendance_tool/test_employee_attendance_tool.js
@@ -0,0 +1,49 @@
+QUnit.module('hr');
+
+QUnit.test("Test: Employee attendance tool [HR]", function (assert) {
+	assert.expect(3);
+	let done = assert.async();
+	let today_date = frappe.datetime.nowdate();
+	let date_of_attendance = frappe.datetime.add_days(today_date, -1);	// previous day
+
+	frappe.run_serially([
+		// create employee
+		() => {
+			return frappe.tests.make('Employee', [
+				{salutation: "Mr"},
+				{employee_name: "Test Employee 2"},
+				{company: "Test Company"},
+				{date_of_joining: frappe.datetime.add_months(today_date, -2)},	// joined 2 month from now
+				{date_of_birth: frappe.datetime.add_months(today_date, -240)},	// age is 20 years
+				{employment_type: "Test Employment type"},
+				{holiday_list: "Test Holiday list"},
+				{branch: "Test Branch"},
+				{department: "Test Department"},
+				{designation: "Test Designation"}
+			]);
+		},
+		() => frappe.set_route("Form", "Employee Attendance Tool"),
+		() => frappe.timeout(0.5),
+		() => assert.equal("Employee Attendance Tool", cur_frm.doctype,
+			"Form for Employee Attendance Tool opened successfully."),
+		// set values in form
+		() => cur_frm.set_value("date", date_of_attendance),
+		() => cur_frm.set_value("branch", "Test Branch"),
+		() => cur_frm.set_value("department", "Test Department"),
+		() => cur_frm.set_value("company", "Test Company"),
+		() => frappe.timeout(1),
+		() => frappe.click_button('Check all'),
+		() => frappe.click_button('Mark Present'),
+		// check if attendance is marked
+		() => frappe.set_route("List", "Attendance", "List"),
+		() => frappe.timeout(1),
+		() => {
+			assert.deepEqual(["Test Employee 2", "Test Employee 1"], [cur_list.data[0].employee_name, cur_list.data[1].employee_name],
+				"marked attendance correctly saved for both employee");
+			let marked_attendance = cur_list.data.filter(d => d.attendance_date == date_of_attendance);
+			assert.equal(marked_attendance.length, 2,
+				'both the attendance are marked for correct date');
+		},
+		() => done()
+	]);
+});
\ No newline at end of file
diff --git a/erpnext/hr/doctype/employee_loan/employee_loan.js b/erpnext/hr/doctype/employee_loan/employee_loan.js
index 9720bcb..33d3a85 100644
--- a/erpnext/hr/doctype/employee_loan/employee_loan.js
+++ b/erpnext/hr/doctype/employee_loan/employee_loan.js
@@ -23,6 +23,14 @@
 			};
 		});
 
+		frm.set_query("employee", function() {
+			return {
+				"filters": {
+					"company": frm.doc.company,
+				}
+			};
+		});
+
 		$.each(["payment_account", "employee_loan_account"], function (i, field) {
 			frm.set_query(field, function () {
 				return {
diff --git a/erpnext/hr/doctype/expense_claim/expense_claim.js b/erpnext/hr/doctype/expense_claim/expense_claim.js
index b1c43d7..0bd8911 100644
--- a/erpnext/hr/doctype/expense_claim/expense_claim.js
+++ b/erpnext/hr/doctype/expense_claim/expense_claim.js
@@ -4,26 +4,12 @@
 frappe.provide("erpnext.hr");
 
 erpnext.hr.ExpenseClaimController = frappe.ui.form.Controller.extend({
-	make_bank_entry: function() {
-		var me = this;
-		return frappe.call({
-			method: "erpnext.hr.doctype.expense_claim.expense_claim.make_bank_entry",
-			args: {
-				"docname": cur_frm.doc.name,
-			},
-			callback: function(r) {
-				var doc = frappe.model.sync(r.message);
-				frappe.set_route('Form', 'Journal Entry', r.message.name);
-			}
-		});
-	},
-	
 	expense_type: function(doc, cdt, cdn) {
 		var d = locals[cdt][cdn];
 		if(!doc.company) {
 			d.expense_type = "";
 			frappe.msgprint(__("Please set the Company"));
-			this.frm.refresh_fields()
+			this.frm.refresh_fields();
 			return;
 		}
 
@@ -44,16 +30,16 @@
 			}
 		});
 	}
-})
+});
 
 $.extend(cur_frm.cscript, new erpnext.hr.ExpenseClaimController({frm: cur_frm}));
 
 cur_frm.add_fetch('employee', 'company', 'company');
 cur_frm.add_fetch('employee','employee_name','employee_name');
 
-cur_frm.cscript.onload = function(doc,cdt,cdn) {
+cur_frm.cscript.onload = function(doc) {
 	if(!doc.approval_status)
-		cur_frm.set_value("approval_status", "Draft")
+		cur_frm.set_value("approval_status", "Draft");
 
 	if (doc.__islocal) {
 		cur_frm.set_value("posting_date", frappe.datetime.get_today());
@@ -62,10 +48,10 @@
 		cur_frm.cscript.clear_sanctioned(doc);
 	}
 
-	cur_frm.fields_dict.employee.get_query = function(doc,cdt,cdn) {
-		return{
+	cur_frm.fields_dict.employee.get_query = function() {
+		return {
 			query: "erpnext.controllers.queries.employee_query"
-		}
+		};
 	};
 
 	cur_frm.set_query("exp_approver", function() {
@@ -73,7 +59,7 @@
 			query: "erpnext.hr.doctype.expense_claim.expense_claim.get_expense_approver"
 		};
 	});
-}
+};
 
 cur_frm.cscript.clear_sanctioned = function(doc) {
 	var val = doc.expenses || [];
@@ -83,9 +69,9 @@
 
 	doc.total_sanctioned_amount = '';
 	refresh_many(['sanctioned_amount', 'total_sanctioned_amount']);
-}
+};
 
-cur_frm.cscript.refresh = function(doc,cdt,cdn) {
+cur_frm.cscript.refresh = function(doc) {
 	cur_frm.cscript.set_help(doc);
 
 	if(!doc.__islocal) {
@@ -96,11 +82,6 @@
 			cur_frm.savesubmit();
 
 		if (doc.docstatus===1 && doc.approval_status=="Approved") {
-			if (cint(doc.total_amount_reimbursed) < cint(doc.total_sanctioned_amount) && frappe.model.can_create("Journal Entry")) {
-				cur_frm.add_custom_button(__("Bank Entry"), cur_frm.cscript.make_bank_entry, __("Make"));
-				cur_frm.page.set_inner_btn_group_as_primary(__("Make"));
-			}
-
 			/* eslint-disable */
 			// no idea how `me` works here 
 			if (cint(doc.total_amount_reimbursed) > 0 && frappe.model.can_read("Journal Entry")) {
@@ -116,12 +97,12 @@
 			/* eslint-enable */
 		}
 	}
-}
+};
 
 cur_frm.cscript.set_help = function(doc) {
 	cur_frm.set_intro("");
 	if(doc.__islocal && !in_list(frappe.user_roles, "HR User")) {
-		cur_frm.set_intro(__("Fill the form and save it"))
+		cur_frm.set_intro(__("Fill the form and save it"));
 	} else {
 		if(doc.docstatus==0 && doc.approval_status=="Draft") {
 			if(frappe.session.user==doc.exp_approver) {
@@ -131,13 +112,13 @@
 			}
 		}
 	}
-}
+};
 
 cur_frm.cscript.validate = function(doc) {
 	cur_frm.cscript.calculate_total(doc);
-}
+};
 
-cur_frm.cscript.calculate_total = function(doc,cdt,cdn){
+cur_frm.cscript.calculate_total = function(doc){
 	doc.total_claimed_amount = 0;
 	doc.total_sanctioned_amount = 0;
 	$.each((doc.expenses || []), function(i, d) {
@@ -147,18 +128,17 @@
 
 	refresh_field("total_claimed_amount");
 	refresh_field('total_sanctioned_amount');
-
-}
+};
 
 cur_frm.cscript.calculate_total_amount = function(doc,cdt,cdn){
 	cur_frm.cscript.calculate_total(doc,cdt,cdn);
-}
+};
 
-cur_frm.cscript.on_submit = function(doc, cdt, cdn) {
+cur_frm.cscript.on_submit = function() {
 	if(cint(frappe.boot.notification_settings && frappe.boot.notification_settings.expense_claim)) {
 		cur_frm.email_doc(frappe.boot.notification_settings.expense_claim_message);
 	}
-}
+};
 
 erpnext.expense_claim = {
 	set_title :function(frm) {
@@ -169,11 +149,20 @@
 			frm.set_value("title", frm.doc.employee_name + " for "+ frm.doc.task);
 		}
 	}
-}
+};
 
 frappe.ui.form.on("Expense Claim", {
+	setup: function(frm) {
+		frm.trigger("set_query_for_cost_center");
+		frm.trigger("set_query_for_payable_account");
+		frm.add_fetch("company", "cost_center", "cost_center");
+		frm.add_fetch("company", "default_payable_account", "payable_account");
+	},
+
 	refresh: function(frm) {
-		if(frm.doc.docstatus == 1) {
+		frm.trigger("toggle_fields");
+
+		if(frm.doc.docstatus == 1 && frm.doc.approval_status == 'Approved') {
 			frm.add_custom_button(__('Accounting Ledger'), function() {
 				frappe.route_options = {
 					voucher_no: frm.doc.name,
@@ -183,47 +172,41 @@
 				frappe.set_route("query-report", "General Ledger");
 			}, __("View"));
 		}
-	}
-})
 
-frappe.ui.form.on("Expense Claim Detail", {
-	claim_amount: function(frm, cdt, cdn) {
-		var child = locals[cdt][cdn];
-		var doc = frm.doc;
-
-		if(!child.sanctioned_amount){
-			frappe.model.set_value(cdt, cdn, 'sanctioned_amount', child.claim_amount)
+		if (frm.doc.docstatus===1 && frm.doc.approval_status=="Approved"
+				&& (cint(frm.doc.total_amount_reimbursed) < cint(frm.doc.total_sanctioned_amount))
+				&& frappe.model.can_create("Payment Entry")) {
+			frm.add_custom_button(__('Payment'),
+				function() { frm.events.make_payment_entry(frm); }, __("Make"));
 		}
-
-		cur_frm.cscript.calculate_total(doc,cdt,cdn);
 	},
 
-	sanctioned_amount: function(frm, cdt, cdn) {
-		var doc = frm.doc;
-		cur_frm.cscript.calculate_total(doc,cdt,cdn);
-	}
-})
-
-frappe.ui.form.on("Expense Claim",{
-	setup: function(frm) {
-		frm.trigger("set_query_for_cost_center")
-		frm.trigger("set_query_for_payable_account")
-		frm.add_fetch("company", "cost_center", "cost_center");
-		frm.add_fetch("company", "default_payable_account", "payable_account");
+	make_payment_entry: function(frm) {
+		var method = "erpnext.accounts.doctype.payment_entry.payment_entry.get_payment_entry";
+		if(frm.doc.__onload && frm.doc.__onload.make_payment_via_journal_entry) {
+			method = "erpnext.hr.doctype.expense_claim.expense_claim.make_bank_entry"
+		}
+		return frappe.call({
+			method: method,
+			args: {
+				"dt": frm.doc.doctype,
+				"dn": frm.doc.name
+			},
+			callback: function(r) {
+				var doclist = frappe.model.sync(r.message);
+				frappe.set_route("Form", doclist[0].doctype, doclist[0].name);
+			}
+		});
 	},
-
-	refresh: function(frm) {
-		frm.trigger("toggle_fields")
-	},
-
+	
 	set_query_for_cost_center: function(frm) {
 		frm.fields_dict["cost_center"].get_query = function() {
 			return {
 				filters: {
 					"company": frm.doc.company
 				}
-			}
-		}
+			};
+		};
 	},
 
 	set_query_for_payable_account: function(frm) {
@@ -233,25 +216,43 @@
 					"report_type": "Balance Sheet",
 					"account_type": "Payable"
 				}
-			}
-		}
+			};
+		};
 	},
 
 	is_paid: function(frm) {
-		frm.trigger("toggle_fields")
+		frm.trigger("toggle_fields");
 	},
 
 	toggle_fields: function(frm) {
-		frm.toggle_reqd("mode_of_payment", frm.doc.is_paid)
+		frm.toggle_reqd("mode_of_payment", frm.doc.is_paid);
+	},
+
+	employee_name: function(frm) {
+		erpnext.expense_claim.set_title(frm);
+	},
+
+	task: function(frm) {
+		erpnext.expense_claim.set_title(frm);
 	}
 });
 
-frappe.ui.form.on("Expense Claim", "employee_name", function(frm) {
-	erpnext.expense_claim.set_title(frm);
-});
+frappe.ui.form.on("Expense Claim Detail", {
+	claim_amount: function(frm, cdt, cdn) {
+		var child = locals[cdt][cdn];
+		var doc = frm.doc;
 
-frappe.ui.form.on("Expense Claim", "task", function(frm) {
-	erpnext.expense_claim.set_title(frm);
+		if(!child.sanctioned_amount){
+			frappe.model.set_value(cdt, cdn, 'sanctioned_amount', child.claim_amount);
+		}
+
+		cur_frm.cscript.calculate_total(doc,cdt,cdn);
+	},
+
+	sanctioned_amount: function(frm, cdt, cdn) {
+		var doc = frm.doc;
+		cur_frm.cscript.calculate_total(doc,cdt,cdn);
+	}
 });
 
 cur_frm.fields_dict['task'].get_query = function(doc) {
@@ -259,5 +260,5 @@
 		filters:{
 			'project': doc.project
 		}
-	}
-}
+	};
+};
diff --git a/erpnext/hr/doctype/expense_claim/expense_claim.py b/erpnext/hr/doctype/expense_claim/expense_claim.py
index 2781f28..507d6a9 100644
--- a/erpnext/hr/doctype/expense_claim/expense_claim.py
+++ b/erpnext/hr/doctype/expense_claim/expense_claim.py
@@ -16,6 +16,10 @@
 class InvalidExpenseApproverError(frappe.ValidationError): pass
 
 class ExpenseClaim(AccountsController):
+	def onload(self):
+		self.get("__onload").make_payment_via_journal_entry = frappe.db.get_single_value('Accounts Settings', 
+			'make_payment_via_journal_entry')
+
 	def get_feed(self):
 		return _("{0}: From {0} for {1}").format(self.approval_status,
 			self.employee_name, self.total_claimed_amount)
@@ -207,10 +211,10 @@
 	""", ("%" + txt + "%"))
 
 @frappe.whitelist()
-def make_bank_entry(docname):
+def make_bank_entry(dt, dn):
 	from erpnext.accounts.doctype.journal_entry.journal_entry import get_default_bank_cash_account
 
-	expense_claim = frappe.get_doc("Expense Claim", docname)
+	expense_claim = frappe.get_doc(dt, dn)
 	default_bank_cash_account = get_default_bank_cash_account(expense_claim.company, "Bank")
 	if not default_bank_cash_account:
 		default_bank_cash_account = get_default_bank_cash_account(expense_claim.company, "Cash")
@@ -218,7 +222,7 @@
 	je = frappe.new_doc("Journal Entry")
 	je.voucher_type = 'Bank Entry'
 	je.company = expense_claim.company
-	je.remark = 'Payment against Expense Claim: ' + docname;
+	je.remark = 'Payment against Expense Claim: ' + dn;
 
 	je.append("accounts", {
 		"account": expense_claim.payable_account,
diff --git a/erpnext/hr/doctype/expense_claim/test_expense_claim.py b/erpnext/hr/doctype/expense_claim/test_expense_claim.py
index e8c24bb..b813537 100644
--- a/erpnext/hr/doctype/expense_claim/test_expense_claim.py
+++ b/erpnext/hr/doctype/expense_claim/test_expense_claim.py
@@ -14,6 +14,7 @@
 		frappe.db.sql("""delete from `tabTask` where project = "_Test Project 1" """)
 		frappe.db.sql("""delete from `tabProject` where name = "_Test Project 1" """)
 
+
 		frappe.get_doc({
 			"project_name": "_Test Project 1",
 			"doctype": "Project",
@@ -24,54 +25,27 @@
 		task_name = frappe.db.get_value("Task", {"project": "_Test Project 1"})
 		payable_account = get_payable_account("Wind Power LLC")
 
-		expense_claim = frappe.get_doc({
-			 "doctype": "Expense Claim",
-			 "employee": "_T-Employee-0001",
-			 "payable_account": payable_account,
-			 "approval_status": "Approved",
-			 "project": "_Test Project 1",
-			 "task": task_name,
-			 "expenses":
-			 	[{ "expense_type": "Travel", "default_account": "Travel Expenses - WP", "claim_amount": 300, "sanctioned_amount": 200 }]
-		})
-		expense_claim.submit()
+		make_expense_claim(payable_account, 300, 200, "Wind Power LLC","Travel Expenses - WP", "_Test Project 1", task_name)
 
 		self.assertEqual(frappe.db.get_value("Task", task_name, "total_expense_claim"), 200)
 		self.assertEqual(frappe.db.get_value("Project", "_Test Project 1", "total_expense_claim"), 200)
 
-		expense_claim2 = frappe.get_doc({
-			 "doctype": "Expense Claim",
-			 "employee": "_T-Employee-0001",
-			 "approval_status": "Approved",
-			 "project": "_Test Project 1",
-			 "task": task_name,
-			 "expenses":
-			 	[{ "expense_type": "Travel", "default_account": "Travel Expenses - WP", "claim_amount": 600, "sanctioned_amount": 500 }]
-		})
-		expense_claim2.submit()
+		expense_claim2 = make_expense_claim(payable_account, 600, 500, "Wind Power LLC", "Travel Expenses - WP","_Test Project 1", task_name)
 
 		self.assertEqual(frappe.db.get_value("Task", task_name, "total_expense_claim"), 700)
 		self.assertEqual(frappe.db.get_value("Project", "_Test Project 1", "total_expense_claim"), 700)
 
 		expense_claim2.cancel()
-		frappe.delete_doc("Expenses Claim", expense_claim2.name)
+		frappe.delete_doc("Expense Claim", expense_claim2.name)
 
 		self.assertEqual(frappe.db.get_value("Task", task_name, "total_expense_claim"), 200)
 		self.assertEqual(frappe.db.get_value("Project", "_Test Project 1", "total_expense_claim"), 200)
-		
+
 	def test_expense_claim_status(self):
 		payable_account = get_payable_account("Wind Power LLC")
-		expense_claim = frappe.get_doc({
-			 "doctype": "Expense Claim",
-			 "employee": "_T-Employee-0001",
-			 "payable_account": payable_account,
-			 "approval_status": "Approved",
-			 "expenses":
-			 	[{ "expense_type": "Travel", "default_account": "Travel Expenses - WP", "claim_amount": 300, "sanctioned_amount": 200 }]
-		})
-		expense_claim.submit()
+		expense_claim = make_expense_claim(payable_account, 300, 200, "Wind Power LLC", "Travel Expenses - WP")
 
-		je_dict = make_bank_entry(expense_claim.name)
+		je_dict = make_bank_entry("Expense Claim", expense_claim.name)
 		je = frappe.get_doc(je_dict)
 		je.posting_date = nowdate()
 		je.cheque_no = random_string(5)
@@ -80,23 +54,16 @@
 
 		expense_claim = frappe.get_doc("Expense Claim", expense_claim.name)
 		self.assertEqual(expense_claim.status, "Paid")
-		
+
 		je.cancel()
 		expense_claim = frappe.get_doc("Expense Claim", expense_claim.name)
 		self.assertEqual(expense_claim.status, "Unpaid")
 
 	def test_expense_claim_gl_entry(self):
 		payable_account = get_payable_account("Wind Power LLC")
-		expense_claim = frappe.get_doc({
-			 "doctype": "Expense Claim",
-			 "employee": "_T-Employee-0001",
-			 "payable_account": payable_account,
-			 "approval_status": "Approved",
-			 "expenses":
-			 	[{ "expense_type": "Travel", "default_account": "Travel Expenses - WP", "claim_amount": 300, "sanctioned_amount": 200 }]
-		})
+		expense_claim = make_expense_claim(payable_account, 300, 200, "Wind Power LLC", "Travel Expenses - WP")
 		expense_claim.submit()
-		
+
 		gl_entries = frappe.db.sql("""select account, debit, credit
 			from `tabGL Entry` where voucher_type='Expense Claim' and voucher_no=%s
 			order by account asc""", expense_claim.name, as_dict=1)
@@ -133,3 +100,23 @@
 
 def get_payable_account(company):
 	return frappe.db.get_value('Company', company, 'default_payable_account')
+
+def make_expense_claim(payable_account,claim_amount, sanctioned_amount, company, account, project=None, task_name=None):
+	expense_claim = frappe.get_doc({
+		 "doctype": "Expense Claim",
+		 "employee": "_T-Employee-0001",
+		 "payable_account": payable_account,
+		 "approval_status": "Approved",
+		 "company": company,
+		 "expenses":
+			[{ "expense_type": "Travel", "default_account": account, "claim_amount": claim_amount, "sanctioned_amount": sanctioned_amount }]
+		})
+	if project:
+		expense_claim.project = project
+	if task_name:
+		expense_claim.task = task_name
+
+	expense_claim.submit()
+	return expense_claim
+
+
diff --git a/erpnext/hr/doctype/leave_allocation/test_leave_allocation.js b/erpnext/hr/doctype/leave_allocation/test_leave_allocation.js
new file mode 100644
index 0000000..5d189d2
--- /dev/null
+++ b/erpnext/hr/doctype/leave_allocation/test_leave_allocation.js
@@ -0,0 +1,37 @@
+QUnit.module('hr');
+
+QUnit.test("Test: Leave allocation [HR]", function (assert) {
+	assert.expect(3);
+	let done = assert.async();
+	let today_date = frappe.datetime.nowdate();
+
+	frappe.run_serially([
+		// test creating leave alloction
+		() => frappe.set_route("List", "Leave Allocation", "List"),
+		() => frappe.new_doc("Leave Allocation"),
+		() => frappe.timeout(1),
+		() => frappe.db.get_value('Employee', {'employee_name':'Test Employee 1'}, 'name'),
+		(employee) => cur_frm.set_value("employee", employee.message.name),
+		() => cur_frm.set_value("leave_type", "Test Leave type"),
+		() => cur_frm.set_value("to_date", frappe.datetime.add_months(today_date, 2)),	// for two months
+		() => cur_frm.set_value("description", "This is just for testing"),
+		() => cur_frm.set_value("new_leaves_allocated", 2),
+		() => frappe.click_check('Add unused leaves from previous allocations'),
+		// save form
+		() => cur_frm.save(),
+		() => frappe.timeout(1),
+		() => cur_frm.savesubmit(),
+		() => frappe.timeout(1),
+		() => assert.equal("Confirm", cur_dialog.title,
+			'confirmation for leave alloction shown'),
+		() => frappe.click_button('Yes'),
+		() => frappe.timeout(1),
+		// check auto filled from date
+		() => assert.equal(today_date, cur_frm.doc.from_date,
+			"from date correctly set"),
+		// check for total leaves
+		() => assert.equal(cur_frm.doc.carry_forwarded_leaves + 2, cur_frm.doc.total_leaves_allocated,
+			"total leave calculation is correctly set"),
+		() => done()
+	]);
+});
\ No newline at end of file
diff --git a/erpnext/hr/doctype/leave_application/test_leave_application.js b/erpnext/hr/doctype/leave_application/test_leave_application.js
new file mode 100644
index 0000000..51e8ed6
--- /dev/null
+++ b/erpnext/hr/doctype/leave_application/test_leave_application.js
@@ -0,0 +1,50 @@
+QUnit.module('hr');
+
+QUnit.test("Test: Leave application [HR]", function (assert) {
+	assert.expect(5);
+	let done = assert.async();
+	let today_date = frappe.datetime.nowdate();
+	let leave_date = frappe.datetime.add_days(today_date, 1);	// leave for tomorrow
+
+	frappe.run_serially([
+		// test creating leave application
+		() => frappe.db.get_value('Employee', {'employee_name':'Test Employee 1'}, 'name'),
+		(employee) => {
+			return frappe.tests.make('Leave Application', [
+				{leave_type: "Test Leave type"},
+				{from_date: leave_date},	// for today
+				{to_date: leave_date},
+				{half_day: 1},
+				{employee: employee.message.name},
+				{leave_approver: "Administrator"},
+				{follow_via_email: 0}
+			]);
+		},
+		() => frappe.timeout(1),
+		// check calculated total leave days
+		() => assert.equal("0.5", cur_frm.doc.total_leave_days,
+			"leave application for half day"),
+		() => assert.ok(!cur_frm.doc.docstatus,
+			"leave application not submitted with status as open"),
+		() => cur_frm.set_value("status", "Approved"),	// approve the application [as administrator]
+		() => frappe.timeout(0.5),
+		// save form
+		() => cur_frm.save(),
+		() => frappe.timeout(1),
+		() => cur_frm.savesubmit(),
+		() => frappe.timeout(1),
+		() => frappe.click_button('Yes'),
+		() => frappe.timeout(1),
+		() => assert.ok(cur_frm.doc.docstatus,
+			"leave application submitted after approval"),
+		// check auto filled posting date [today]
+		() => assert.equal(today_date, cur_frm.doc.posting_date,
+			"posting date correctly set"),
+		() => frappe.set_route("List", "Leave Application", "List"),
+		() => frappe.timeout(1),
+		// check approved application in list
+		() => assert.deepEqual(["Test Employee 1", "Approved"], [cur_list.data[0].employee_name, cur_list.data[0].status],
+			"leave for correct employee is approved"),
+		() => done()
+	]);
+});
\ No newline at end of file
diff --git a/erpnext/hr/doctype/leave_control_panel/test_leave_control_panel.js b/erpnext/hr/doctype/leave_control_panel/test_leave_control_panel.js
new file mode 100644
index 0000000..e71ff6e
--- /dev/null
+++ b/erpnext/hr/doctype/leave_control_panel/test_leave_control_panel.js
@@ -0,0 +1,36 @@
+QUnit.module('hr');
+
+QUnit.test("Test: Leave control panel [HR]", function (assert) {
+	assert.expect(2);
+	let done = assert.async();
+	let today_date = frappe.datetime.nowdate();
+
+	frappe.run_serially([
+		// test leave allocation using leave control panel
+		() => frappe.set_route("Form", "Leave Control Panel"),
+		() => frappe.timeout(1),
+		() => cur_frm.set_value("leave_type", "Test Leave type"),
+		() => cur_frm.set_value("company", "Test Company"),
+		() => cur_frm.set_value("employment_type", "Test Employment Type"),
+		() => cur_frm.set_value("branch", "Test Branch"),
+		() => cur_frm.set_value("department", "Test Department"),
+		() => cur_frm.set_value("designation", "Test Designation"),
+		() => cur_frm.set_value("from_date", frappe.datetime.add_months(today_date, -2)),
+		() => cur_frm.set_value("to_date", frappe.datetime.add_days(today_date, -1)),	// for two months [not today]
+		() => cur_frm.set_value("no_of_days", 3),
+		// allocate leaves
+		() => frappe.click_button('Allocate'),
+		() => frappe.timeout(1),
+		() => assert.equal("Message", cur_dialog.title,
+			"leave alloction message shown"),
+		() => frappe.click_button('Close'),
+		() => frappe.set_route("List", "Leave Allocation", "List"),
+		() => frappe.timeout(1),
+		() => {
+			let leave_allocated = cur_list.data.filter(d => d.leave_type == "Test Leave type");
+			assert.equal(2, leave_allocated.length,
+				'leave allocation successfully done for both the employee');
+		},
+		() => done()
+	]);
+});
\ No newline at end of file
diff --git a/erpnext/hr/doctype/leave_type/test_leave_type.js b/erpnext/hr/doctype/leave_type/test_leave_type.js
new file mode 100644
index 0000000..4cde49b
--- /dev/null
+++ b/erpnext/hr/doctype/leave_type/test_leave_type.js
@@ -0,0 +1,22 @@
+QUnit.module('hr');
+
+QUnit.test("Test: Leave type [HR]", function (assert) {
+	assert.expect(1);
+	let done = assert.async();
+
+	frappe.run_serially([
+		// test leave type creation
+		() => frappe.set_route("List", "Leave Type", "List"),
+		() => frappe.new_doc("Leave Type"),
+		() => frappe.timeout(1),
+		() => cur_frm.set_value("leave_type_name", "Test Leave type"),
+		() => cur_frm.set_value("max_days_allowed", "5"),
+		() => frappe.click_check('Is Carry Forward'),
+		// save form
+		() => cur_frm.save(),
+		() => frappe.timeout(1),
+		() => assert.equal("Test Leave type", cur_frm.doc.leave_type_name,
+			'leave type correctly saved'),
+		() => done()
+	]);
+});
\ No newline at end of file
diff --git a/erpnext/hr/doctype/upload_attendance/upload_attendance.py b/erpnext/hr/doctype/upload_attendance/upload_attendance.py
index fc1a8ae..78d5aee 100644
--- a/erpnext/hr/doctype/upload_attendance/upload_attendance.py
+++ b/erpnext/hr/doctype/upload_attendance/upload_attendance.py
@@ -121,7 +121,7 @@
 		try:
 			check_record(d)
 			ret.append(import_doc(d, "Attendance", 1, row_idx, submit=True))
-		except Exception, e:
+		except Exception as e:
 			error = True
 			ret.append('Error for row (#%d) %s : %s' % (row_idx,
 				len(row)>1 and row[1] or "", cstr(e)))
diff --git a/erpnext/manufacturing/doctype/bom/test_bom.js b/erpnext/manufacturing/doctype/bom/test_bom.js
index 8187ef3..80a4ede 100644
--- a/erpnext/manufacturing/doctype/bom/test_bom.js
+++ b/erpnext/manufacturing/doctype/bom/test_bom.js
@@ -12,6 +12,7 @@
 				{item: "Laptop"},
 				{quantity: 1},
 				{with_operations: 1},
+				{company: "Razer Blade"},
 				{operations: [
 					[
 						{operation: "Assemble CPU"},
diff --git a/erpnext/manufacturing/doctype/production_order/test_production_order.js b/erpnext/manufacturing/doctype/production_order/test_production_order.js
new file mode 100644
index 0000000..0a7745e
--- /dev/null
+++ b/erpnext/manufacturing/doctype/production_order/test_production_order.js
@@ -0,0 +1,138 @@
+QUnit.test("test: production order", function (assert) {
+	assert.expect(25);
+	let done = assert.async();
+	let laptop_quantity = 5;
+	let items = ["Screen", "CPU", "Keyboard"];
+	let operation_items = ["CPU", "Keyboard", "Screen"];
+	let click_make = () => {
+		let element = $(`.btn-primary:contains("Make"):visible`);
+		if(!element.length) {
+			throw `did not find any button containing 'Make'`;
+		}
+		element.click();
+		return frappe.timeout(1);
+	};
+
+	frappe.run_serially([
+		// test production order
+		() => frappe.set_route("List", "Production Order"),
+		() => frappe.timeout(0.5),
+
+		// Create a laptop production order
+		() => frappe.new_doc("Production Order"),
+		() => frappe.timeout(1),
+		() => cur_frm.set_value("production_item", "Laptop"),
+		() => frappe.timeout(2),
+		() => cur_frm.set_value("company", "Razer Blade"),
+		() => frappe.timeout(2),
+		() => cur_frm.set_value("qty", laptop_quantity),
+		() => frappe.timeout(2),
+		() => cur_frm.set_value("scrap_warehouse", "Laptop Scrap Warehouse - RB"),
+		() => frappe.timeout(1),
+		() => cur_frm.set_value("wip_warehouse", "Work In Progress - RB"),
+		() => frappe.timeout(1),
+		() => cur_frm.set_value("fg_warehouse", "Finished Goods - RB"),
+		() => cur_frm.save(),
+		() => frappe.timeout(2),
+
+		() => {
+			assert.equal(cur_frm.doc.planned_operating_cost, cur_frm.doc.total_operating_cost,
+				"Total and Planned Cost is equal");
+			assert.equal(cur_frm.doc.planned_operating_cost, cur_frm.doc.total_operating_cost,
+				"Total and Planned Cost is equal");
+
+			items.forEach(function(item, index) {
+				assert.equal(item, cur_frm.doc.required_items[index].item_code, `Required item ${item} added`);
+				assert.equal("Stores - RB", cur_frm.doc.required_items[index].source_warehouse, `Item ${item} warhouse verified`);
+				assert.equal("5", cur_frm.doc.required_items[index].required_qty, `Item ${item} quantity verified`);
+			});
+
+			operation_items.forEach(function(operation_item, index) {
+				assert.equal(`Assemble ${operation_item}`, cur_frm.doc.operations[index].operation,
+					`Operation ${operation_item} added`);
+				assert.equal(`${operation_item} assembly workstation`, cur_frm.doc.operations[index].workstation,
+					`Workstation ${operation_item} linked`);
+			});
+		},
+
+		// Submit the production order
+		() => cur_frm.savesubmit(),
+		() => frappe.timeout(1),
+		() => frappe.click_button('Yes'),
+		() => frappe.timeout(1),
+
+		// Confirm the production order timesheet, save and submit it
+		() => frappe.click_link("TS-00"),
+		() => frappe.timeout(1),
+		() => frappe.click_button("Save"),
+		() => frappe.timeout(1),
+		() => frappe.click_button("Submit"),
+		() => frappe.timeout(1),
+		() => frappe.click_button("Yes"),
+		() => frappe.timeout(2),
+
+		// Start the production order process
+		() => frappe.set_route("List", "Production Order"),
+		() => frappe.timeout(2),
+		() => frappe.set_route("List", "Production Order"),
+		() => frappe.timeout(2),
+		() => frappe.click_link("Laptop"),
+		() => frappe.timeout(1),
+		() => frappe.click_button("Start"),
+		() => frappe.timeout(0.5),
+		() => click_make(),
+		() => frappe.click_button("Save"),
+		() => frappe.timeout(0.5),
+
+		() => {
+			assert.equal(cur_frm.doc.total_outgoing_value, cur_frm.doc.total_incoming_value,
+				"Total incoming and outgoing cost is equal");
+			assert.equal(cur_frm.doc.total_outgoing_value, "99000",
+				"Outgoing cost is correct"); // Price of each item x5
+		},
+		// Submit for production
+		() => frappe.click_button("Submit"),
+		() => frappe.timeout(0.5),
+		() => frappe.click_button("Yes"),
+		() => frappe.timeout(0.5),
+
+		// Finish the production order by sending for manufacturing
+		() => frappe.set_route("List", "Production Order"),
+		() => frappe.timeout(1),
+		() => frappe.click_link("Laptop"),
+		() => frappe.timeout(1),
+
+		() => {
+			assert.ok(frappe.tests.is_visible("5 items in progress", 'p'), "Production order initiated");
+			assert.ok(frappe.tests.is_visible("Finish"), "Finish button visible");
+		},
+
+		() => frappe.click_button("Finish"),
+		() => frappe.timeout(0.5),
+		() => click_make(),
+		() => {
+			assert.equal(cur_frm.doc.total_incoming_value, "105700",
+				"Incoming cost is correct"); // Price of each item x5, values are in USD
+			assert.equal(cur_frm.doc.total_outgoing_value, "99000",
+				"Outgoing cost is correct"); // Price of each item x5, values are in USD
+			assert.equal(cur_frm.doc.total_incoming_value - cur_frm.doc.total_outgoing_value, cur_frm.doc.value_difference,
+				"Value difference is correct"); // Price of each item x5, values are in USD
+		},
+		() => frappe.click_button("Save"),
+		() => frappe.timeout(1),
+		() => frappe.click_button("Submit"),
+		() => frappe.timeout(1),
+		() => frappe.click_button("Yes"),
+		() => frappe.timeout(1),
+
+		// Manufacturing finished
+		() => frappe.set_route("List", "Production Order"),
+		() => frappe.timeout(1),
+		() => frappe.click_link("Laptop"),
+		() => frappe.timeout(1),
+
+		() => assert.ok(frappe.tests.is_visible("5 items produced", 'p'), "Production order completed"),
+
+		() => done()
+	]);
+});
\ No newline at end of file
diff --git a/erpnext/manufacturing/doctype/production_planning_tool/test_production_planning_tool.py b/erpnext/manufacturing/doctype/production_planning_tool/test_production_planning_tool.py
index 4f80b6a..af4220c 100644
--- a/erpnext/manufacturing/doctype/production_planning_tool/test_production_planning_tool.py
+++ b/erpnext/manufacturing/doctype/production_planning_tool/test_production_planning_tool.py
@@ -15,7 +15,7 @@
 test_dependencies = ["Item","BOM"]
 
 class TestEvent(unittest.TestCase):
-	
+
 	def test_materials_requests_all_raw_multi_level(self):
 		items = ["_Test PPT Item Raw A","_Test PPT Item Raw B","_Test PPT Item Raw C","_Test PPT Item Raw D",
 			"_Test PPT Item Sub A","_Test PPT Item Sub B","_Test PPT Item Sub C","_Test PPT Item SC A",
@@ -23,10 +23,10 @@
 		quantities = [14,9,36,1,0,0,0,0,0,0]
 		types = ["Purchase","Purchase","Purchase","Purchase","Manufacture","Manufacture","Manufacture","Purchase",
 			"Purchase","Manufacture"]
-		
+
 		self.runtest_materials_requests(items, quantities, types, use_multi_level_bom=1, only_raw_materials=1, \
 			include_subcontracted=1)
-	
+
 	def test_materials_requests_multi_no_subcontracted(self):
 		items = ["_Test PPT Item Raw A","_Test PPT Item Raw B","_Test PPT Item Raw C","_Test PPT Item Raw D",
 			"_Test PPT Item Sub A","_Test PPT Item Sub B","_Test PPT Item Sub C","_Test PPT Item SC A",
@@ -34,12 +34,12 @@
 		quantities = [14,5,20,0,0,0,0,0,0,0]
 		types = ["Purchase","Purchase","Purchase","Purchase","Manufacture","Manufacture","Manufacture","Purchase",
 			"Purchase","Manufacture"]
-		
+
 		# This one should fail for now
 		self.runtest_materials_requests(items, quantities, types, use_multi_level_bom=1, only_raw_materials=1, \
 			include_subcontracted=0)
 
-		
+
 
 	def test_materials_requests_manufacture_and_sub_multi_level(self):
 		items = ["_Test PPT Item Raw A","_Test PPT Item Raw B","_Test PPT Item Raw C","_Test PPT Item Raw D",
@@ -48,10 +48,10 @@
 		quantities = [14,9,36,1,2,5,2,1,4,0]
 		types = ["Purchase","Purchase","Purchase","Purchase","Manufacture","Manufacture","Manufacture","Purchase",
 			"Purchase","Manufacture"]
-		
+
 		self.runtest_materials_requests(items, quantities, types, use_multi_level_bom=1, only_raw_materials=0, \
 			include_subcontracted=1)
-	
+
 	def test_materials_requests_manufacture_multi_level(self):
 		items = ["_Test PPT Item Raw A","_Test PPT Item Raw B","_Test PPT Item Raw C","_Test PPT Item Raw D",
 			"_Test PPT Item Sub A","_Test PPT Item Sub B","_Test PPT Item Sub C","_Test PPT Item SC A",
@@ -59,12 +59,12 @@
 		quantities = [14,5,20,0,2,5,2,1,4,0]
 		types = ["Purchase","Purchase","Purchase","Purchase","Manufacture","Manufacture","Manufacture","Purchase",
 			"Purchase","Manufacture"]
-		
+
 		self.runtest_materials_requests(items, quantities, types, use_multi_level_bom=1, only_raw_materials=0, \
 			include_subcontracted=0)
-	
-	
-	
+
+
+
 	def test_materials_requests_single_level_purch_only(self):
 		items = ["_Test PPT Item Raw A","_Test PPT Item Raw B","_Test PPT Item Raw C","_Test PPT Item Raw D",
 			"_Test PPT Item Sub A","_Test PPT Item Sub B","_Test PPT Item Sub C","_Test PPT Item SC A",
@@ -72,10 +72,10 @@
 		quantities = [2,0,0,0,0,0,0,1,0,0]
 		types = ["Purchase","Purchase","Purchase","Purchase","Manufacture","Manufacture","Manufacture","Purchase",
 			"Purchase","Manufacture"]
-		
+
 		self.runtest_materials_requests(items, quantities, types, use_multi_level_bom=0, only_raw_materials=1, \
 			include_subcontracted=0)
-	
+
 	def test_materials_requests_single_level(self):
 		items = ["_Test PPT Item Raw A","_Test PPT Item Raw B","_Test PPT Item Raw C","_Test PPT Item Raw D",
 			"_Test PPT Item Sub A","_Test PPT Item Sub B","_Test PPT Item Sub C","_Test PPT Item SC A",
@@ -83,32 +83,32 @@
 		quantities = [2,0,0,0,2,1,0,1,0,0]
 		types = ["Purchase","Purchase","Purchase","Purchase","Manufacture","Manufacture","Manufacture","Purchase",
 			"Purchase","Manufacture"]
-		
+
 		self.runtest_materials_requests(items, quantities, types, use_multi_level_bom=0, only_raw_materials=0, \
 			include_subcontracted=0)
-	
+
 	def runtest_materials_requests(self, items, quantities, types,use_multi_level_bom, only_raw_materials, \
 		include_subcontracted):
-		
+
 		clear_material_requests()
 		create_test_records()
-		
-		ppt = run_production_planning_tool(use_multi_level_bom=use_multi_level_bom, 
-			only_raw_materials=only_raw_materials, include_subcontracted=include_subcontracted, 
-			item_code = "_Test PPT Item Master", bom_no = "BOM-_Test PPT Item Master-001", 
-			planned_qty = 1, planned_start_date = "5/5/2029", 
+
+		ppt = run_production_planning_tool(use_multi_level_bom=use_multi_level_bom,
+			only_raw_materials=only_raw_materials, include_subcontracted=include_subcontracted,
+			item_code = "_Test PPT Item Master", bom_no = "BOM-_Test PPT Item Master-001",
+			planned_qty = 1, planned_start_date = "5/5/2029",
 			warehouse = "_Test Warehouse - _TC", company = "_Test Company")
-			
+
 		create_material_requests(ppt)
-		
+
 		for item, qty, type in zip(items, quantities, types):
 			self.assertEqual(qty, get_requested_qty(item))
 			for mat_req_type in get_requested_types(item):
-				self.assertEqual(type, mat_req_type) 
-				
+				self.assertEqual(type, mat_req_type)
+
 def create_test_records():
 	from erpnext.stock.doctype.item.test_item import make_item
-	
+
 	subA = make_item("_Test PPT Item Sub A",{
 		"item_code": "_Test PPT Item Sub A",
 		"item_name": "_Test PPT Item Sub A",
@@ -119,7 +119,7 @@
 		"stock_uom": "_Test UOM",
 		"item_group": "_Test Item Group",
 		"default_warehouse": "_Test Warehouse - _TC"})
-		
+
 	subB = make_item("_Test PPT Item Sub B",{
 		"item_code": "_Test PPT Item Sub B",
 		"item_name": "_Test PPT Item Sub B",
@@ -130,7 +130,7 @@
 		"stock_uom": "_Test UOM",
 		"item_group": "_Test Item Group",
 		"default_warehouse": "_Test Warehouse - _TC"})
-		
+
 	subC = make_item("_Test PPT Item Sub C",{
 		"item_code": "_Test PPT Item Sub C",
 		"item_name": "_Test PPT Item Sub C",
@@ -141,7 +141,7 @@
 		"stock_uom": "_Test UOM",
 		"item_group": "_Test Item Group",
 		"default_warehouse": "_Test Warehouse - _TC"})
-		
+
 	sCA = make_item("_Test PPT Item SC A",{
 		"item_code": "_Test PPT Item SC A",
 		"item_name": "_Test PPT Item SC A",
@@ -172,7 +172,7 @@
 		"stock_uom": "_Test UOM",
 		"item_group": "_Test Item Group",
 		"default_warehouse": "_Test Warehouse - _TC"})
-		
+
 	rawA = make_item("_Test PPT Item Raw A",{
 		"item_code": "_Test PPT Item Raw A",
 		"item_name": "_Test PPT Item Raw A",
@@ -183,7 +183,7 @@
 		"stock_uom": "_Test UOM",
 		"item_group": "_Test Item Group",
 		"default_warehouse": "_Test Warehouse - _TC"})
-		
+
 	rawB = make_item("_Test PPT Item Raw B",{
 		"item_code": "_Test PPT Item Raw B",
 		"item_name": "_Test PPT Item Raw B",
@@ -194,7 +194,7 @@
 		"stock_uom": "_Test UOM",
 		"item_group": "_Test Item Group",
 		"default_warehouse": "_Test Warehouse - _TC"})
-		
+
 	rawC = make_item("_Test PPT Item Raw C",{
 		"item_code": "_Test PPT Item Raw C",
 		"item_name": "_Test PPT Item Raw C",
@@ -205,7 +205,7 @@
 		"stock_uom": "_Test UOM",
 		"item_group": "_Test Item Group",
 		"default_warehouse": "_Test Warehouse - _TC"})
-		
+
 	rawD = make_item("_Test PPT Item Raw D",{
 		"item_code": "_Test PPT Item Raw D",
 		"item_name": "_Test PPT Item Raw D",
@@ -216,7 +216,7 @@
 		"stock_uom": "_Test UOM",
 		"item_group": "_Test Item Group",
 		"default_warehouse": "_Test Warehouse - _TC"})
-		
+
 	master = make_item("_Test PPT Item Master",{
 		"item_code": "_Test PPT Item Master",
 		"item_name": "_Test PPT Item Master",
@@ -227,9 +227,9 @@
 		"stock_uom": "_Test UOM",
 		"item_group": "_Test Item Group",
 		"default_warehouse": "_Test Warehouse - _TC"})
-		
-	
-	
+
+
+
 	bom_subB = make_bom("BOM-_Test PPT Item Sub B-001",{"quantity":1.0,
 		"item": "_Test PPT Item Sub B",
 		"is_active": 1,
@@ -239,39 +239,39 @@
 				"rate":100, "amount": 100, "stock_uom": "_Test UOM"},
 			{"item_code": "_Test PPT Item Raw C", "doctype":"BOM Item", "stock_qty":4, "rate":100,
 				"amount": 400,"stock_uom": "_Test UOM"}])
-	
+
 	bom_subC = make_bom("BOM-_Test PPT Item Sub C-001",{"quantity":1,
 		"item": "_Test PPT Item Sub C",
 		"is_active": 1,
 		"is_default": 1,
 		"docstatus": 1,
 		"with_operations": 0}, [
-			{"item_code": "_Test PPT Item Raw A","item_name": "_Test PPT Item Raw A",   
+			{"item_code": "_Test PPT Item Raw A","item_name": "_Test PPT Item Raw A",
 				"doctype":"BOM Item", "stock_qty":6, "rate":100, "amount": 600},
-			{"item_code": "_Test PPT Item Sub B","item_name": "_Test PPT Item Sub B",   
+			{"item_code": "_Test PPT Item Sub B","item_name": "_Test PPT Item Sub B",
 				"bom_no":"BOM-_Test PPT Item Sub B-001", "doctype":"BOM Item", "stock_qty":2,
 				"rate":100, "amount": 200}])
-		
+
 	bom_sCA = make_bom("BOM-_Test PPT Item SC A-001",{"quantity":1,
 		"item": "_Test PPT Item SC A",
 		"is_active": 1,
 		"is_default": 1,
 		"docstatus": 1,
 		"with_operations": 0}, [
-			{"item_code": "_Test PPT Item Raw D","item_name": "_Test PPT Item Raw D",  
+			{"item_code": "_Test PPT Item Raw D","item_name": "_Test PPT Item Raw D",
 				"doctype":"BOM Item", "stock_qty":1, "rate":100, "amount": 100}])
-	
+
 	bom_sCB = make_bom("BOM-_Test PPT Item SC B-001",{"quantity":1,
 		"item": "_Test PPT Item SC B",
 		"is_active": 1,
 		"is_default": 1,
 		"docstatus": 1,
 		"with_operations": 0}, [
-			{"item_code": "_Test PPT Item Raw B","item_name": "_Test PPT Item Raw B", 
+			{"item_code": "_Test PPT Item Raw B","item_name": "_Test PPT Item Raw B",
 				"doctype":"BOM Item", "stock_qty":1, "rate":100, "amount": 100},
-			{"item_code": "_Test PPT Item Raw C","item_name": "_Test PPT Item Raw C",   
+			{"item_code": "_Test PPT Item Raw C","item_name": "_Test PPT Item Raw C",
 				"doctype":"BOM Item", "stock_qty":4, "rate":100, "amount": 400}])
-	
+
 	bom_subA = make_bom("BOM-_Test PPT Item Sub A-001",{"quantity":1,
 		"item": "_Test PPT Item Sub A",
 		"is_active": 1,
@@ -279,29 +279,29 @@
 		"docstatus": 1,
 		"with_operations": 0}, [
 			{"item_code": "_Test PPT Item Sub C","item_name": "_Test PPT Item Sub C",
-				"bom_no":"BOM-_Test PPT Item Sub C-001", "doctype":"BOM Item",  
+				"bom_no":"BOM-_Test PPT Item Sub C-001", "doctype":"BOM Item",
 				"stock_qty":1, "rate":100, "amount": 100},
-			{"item_code": "_Test PPT Item SC B","item_name": "_Test PPT Item SC B",  
+			{"item_code": "_Test PPT Item SC B","item_name": "_Test PPT Item SC B",
 				"bom_no":"BOM-_Test PPT Item SC B-001", "doctype":"BOM Item", "stock_qty":2,
-				"rate":100, "amount": 200}])		
-				
+				"rate":100, "amount": 200}])
+
 	bom_master = make_bom("BOM-_Test PPT Item Master-001",{"quantity":1,
 		"item": "_Test PPT Item Master",
 		"is_active": 1,
 		"is_default": 1,
 		"docstatus": 1,
 		"with_operations": 0}, [
-			{"item_code": "_Test PPT Item Sub A","item_name": "_Test PPT Item Sub A",   
-				"bom_no":"BOM-_Test PPT Item Sub A-001", 
+			{"item_code": "_Test PPT Item Sub A","item_name": "_Test PPT Item Sub A",
+				"bom_no":"BOM-_Test PPT Item Sub A-001",
 				"doctype":"BOM Item", "stock_qty":2, "rate":100, "amount": 200},
-			{"item_code": "_Test PPT Item Sub B","item_name": "_Test PPT Item Sub B",   
-				"bom_no":"BOM-_Test PPT Item Sub B-001", 
+			{"item_code": "_Test PPT Item Sub B","item_name": "_Test PPT Item Sub B",
+				"bom_no":"BOM-_Test PPT Item Sub B-001",
 				"doctype":"BOM Item", "stock_qty":1, "rate":100, "amount": 100},
-			{"item_code": "_Test PPT Item Raw A","item_name": "_Test PPT Item Raw A",  
+			{"item_code": "_Test PPT Item Raw A","item_name": "_Test PPT Item Raw A",
 				"doctype":"BOM Item", "stock_qty":2, "rate":100,
 				"amount": 200},
-			{"item_code": "_Test PPT Item SC A","item_name": "_Test PPT Item SC A",   
-				"bom_no":"BOM-_Test PPT Item SC A-001",  
+			{"item_code": "_Test PPT Item SC A","item_name": "_Test PPT Item SC A",
+				"bom_no":"BOM-_Test PPT Item SC A-001",
 				"doctype":"BOM Item", "stock_qty":1, "rate":100, "amount": 100}
 			])
 
@@ -309,7 +309,7 @@
 def make_bom(name, properties=None, items=None):
 	if frappe.db.exists("BOM", name):
 		return frappe.get_doc("BOM", name)
-		
+
 	bom = frappe.new_doc("BOM")
 	item = frappe.get_doc({
 		"doctype": "BOM",
@@ -317,20 +317,20 @@
 		"quantity": "1",
 		"with_operations": 0
 	})
-	
+
 	if properties:
 		bom.update(properties)
-	
+
 	if items:
 		for item in items:
 			bom.append("items", item)
-	
+
 
 	bom.insert()
 	bom.submit()
-	
+
 	return bom
-	
+
 def clear_material_requests():
 	frappe.db.sql("delete from `tabMaterial Request Item`")
 	frappe.db.sql("delete from `tabMaterial Request`")
@@ -339,53 +339,50 @@
 def run_production_planning_tool(**args):
 	ppt = frappe.new_doc("Production Planning Tool")
 	args = frappe._dict(args)
-	
+
 	if args.use_multi_level_bom:
 		ppt.use_multi_level_bom = args.use_multi_level_bom
 	else:
 		ppt.use_multi_level_bom = 0
-		
+
 	if args.only_raw_materials:
 		ppt.only_raw_materials = args.only_raw_materials
 	else:
 		ppt.only_raw_materials = 0
-		
+
 	if args.include_subcontracted:
 		ppt.include_subcontracted = args.include_subcontracted
 	else:
 		ppt.include_subcontracted = 0
-		
+
 	if args.warehouse:
-		ppt.purchase_request_for_warehouse = args.warehouse 
-		
+		ppt.purchase_request_for_warehouse = args.warehouse
+
 	if args.company:
 		ppt.company = args.company
 	ppt.create_material_requests_for_all_required_qty = 1
-	
-	ppt.append("items",{"item_code": args.item_code, "bom_no": args.bom_no, "planned_qty": args.planned_qty, 
-		"planned_start_date": args.planned_start_date, "warehouse": args.warehouse})
-	
-	return ppt
 
-def create_production_orders(ppt):
-	raise_production_orders(ppt)
+	ppt.append("items",{"item_code": args.item_code, "bom_no": args.bom_no, "planned_qty": args.planned_qty,
+		"planned_start_date": args.planned_start_date, "warehouse": args.warehouse})
+
+	return ppt
 
 def create_material_requests(ppt):
 	ppt.raise_material_requests()
-	
+
 def get_requested_qty(item_code):
 	total_qty = 0
-	for d in frappe.db.sql("""select item.qty as qty 
-		from `tabMaterial Request` mat_req, `tabMaterial Request Item` item 
+	for d in frappe.db.sql("""select item.qty as qty
+		from `tabMaterial Request` mat_req, `tabMaterial Request Item` item
 		where item.item_code = %(item_code)s and item.parent = mat_req.name""", {"item_code":item_code}, as_dict=1):
 		total_qty += d.qty
 	return total_qty
 
 def get_requested_types(item_code):
 	types = []
-	for d in frappe.db.sql("""select mat_req.material_request_type as type 
-		from `tabMaterial Request` mat_req, `tabMaterial Request Item` item 
+	for d in frappe.db.sql("""select mat_req.material_request_type as type
+		from `tabMaterial Request` mat_req, `tabMaterial Request Item` item
 		where item.item_code = %(item_code)s and item.parent = mat_req.name""", {"item_code":item_code}, as_dict=1):
 		types.append(d.type)
 	return types
-	
+
diff --git a/erpnext/patches.txt b/erpnext/patches.txt
index 6a14569..b6d29d8 100644
--- a/erpnext/patches.txt
+++ b/erpnext/patches.txt
@@ -427,6 +427,7 @@
 erpnext.patches.v8_5.fix_tax_breakup_for_non_invoice_docs
 erpnext.patches.v8_5.remove_quotations_route_in_sidebar
 erpnext.patches.v8_5.update_existing_data_in_project_type
+erpnext.patches.v8_5.set_default_mode_of_payment
 erpnext.patches.v8_5.update_customer_group_in_POS_profile
 erpnext.patches.v8_6.update_timesheet_company_from_PO
 erpnext.patches.v8_6.set_write_permission_for_quotation_for_sales_manager
diff --git a/erpnext/patches/v4_0/apply_user_permissions.py b/erpnext/patches/v4_0/apply_user_permissions.py
index 640fe6b..c21b605 100644
--- a/erpnext/patches/v4_0/apply_user_permissions.py
+++ b/erpnext/patches/v4_0/apply_user_permissions.py
@@ -12,8 +12,6 @@
 	frappe.clear_cache()
 
 def update_hr_permissions():
-	from frappe.core.page.user_permissions import user_permissions
-
 	# add set user permissions rights to HR Manager
 	frappe.db.sql("""update `tabDocPerm` set `set_user_permissions`=1 where parent in ('Employee', 'Leave Application')
 		and role='HR Manager' and permlevel=0 and `read`=1""")
diff --git a/erpnext/patches/v4_0/rename_sitemap_to_route.py b/erpnext/patches/v4_0/rename_sitemap_to_route.py
index 257580b..ffb1fda 100644
--- a/erpnext/patches/v4_0/rename_sitemap_to_route.py
+++ b/erpnext/patches/v4_0/rename_sitemap_to_route.py
@@ -12,6 +12,6 @@
 		frappe.model.rename_field("Item", "parent_website_sitemap", "parent_website_route")
 		frappe.model.rename_field("Sales Partner", "parent_website_sitemap",
 			 "parent_website_route")
-	except Exception, e:
+	except Exception as e:
 		if e.args[0]!=1054:
-			raise
\ No newline at end of file
+			raise
diff --git a/erpnext/patches/v4_2/add_currency_turkish_lira.py b/erpnext/patches/v4_2/add_currency_turkish_lira.py
index dac1fe9..1a46089 100644
--- a/erpnext/patches/v4_2/add_currency_turkish_lira.py
+++ b/erpnext/patches/v4_2/add_currency_turkish_lira.py
@@ -6,5 +6,5 @@
 
 def execute():
 	return
-	country = get_country_info(country="Turkey")
-	add_country_and_currency("Turkey", country)
+	# country = get_country_info(country="Turkey")
+	# add_country_and_currency("Turkey", country)
diff --git a/erpnext/patches/v4_2/default_website_style.py b/erpnext/patches/v4_2/default_website_style.py
index d168c86..e8f9502 100644
--- a/erpnext/patches/v4_2/default_website_style.py
+++ b/erpnext/patches/v4_2/default_website_style.py
@@ -3,9 +3,9 @@
 
 def execute():
 	return
-	frappe.reload_doc('website', 'doctype', 'style_settings')
-	style_settings = frappe.get_doc("Style Settings", "Style Settings")
-	if not style_settings.apply_style:
-		style_settings.update(default_properties)
-		style_settings.apply_style = 1
-		style_settings.save()
+	# frappe.reload_doc('website', 'doctype', 'style_settings')
+	# style_settings = frappe.get_doc("Style Settings", "Style Settings")
+	# if not style_settings.apply_style:
+	# 	style_settings.update(default_properties)
+	# 	style_settings.apply_style = 1
+	# 	style_settings.save()
diff --git a/erpnext/patches/v4_4/make_email_accounts.py b/erpnext/patches/v4_4/make_email_accounts.py
index 126acfc..510fe3a 100644
--- a/erpnext/patches/v4_4/make_email_accounts.py
+++ b/erpnext/patches/v4_4/make_email_accounts.py
@@ -78,7 +78,7 @@
 def insert_or_update(account):
 	try:
 		account.insert()
-	except frappe.NameError, e:
+	except frappe.NameError as e:
 		if e.args[0]=="Email Account":
 			existing_account = frappe.get_doc("Email Account", e.args[1])
 			for key, value in account.as_dict().items():
diff --git a/erpnext/patches/v7_0/fix_nonwarehouse_ledger_gl_entries_for_transactions.py b/erpnext/patches/v7_0/fix_nonwarehouse_ledger_gl_entries_for_transactions.py
index 2b92b17..58da059 100644
--- a/erpnext/patches/v7_0/fix_nonwarehouse_ledger_gl_entries_for_transactions.py
+++ b/erpnext/patches/v7_0/fix_nonwarehouse_ledger_gl_entries_for_transactions.py
@@ -34,7 +34,7 @@
 				voucher = frappe.get_doc(voucher_type, voucher_no)
 				voucher.make_gl_entries()
 				frappe.db.commit()
-			except Exception, e:
+			except Exception as e:
 				print frappe.get_traceback()
 				rejected.append([voucher_type, voucher_no])
 				frappe.db.rollback()
diff --git a/erpnext/patches/v7_0/update_party_status.py b/erpnext/patches/v7_0/update_party_status.py
index f3733db..9ca3d02 100644
--- a/erpnext/patches/v7_0/update_party_status.py
+++ b/erpnext/patches/v7_0/update_party_status.py
@@ -2,19 +2,19 @@
 
 def execute():
 	return
-	for party_type in ('Customer', 'Supplier'):
-		frappe.reload_doctype(party_type)
-
-		# set all as default status
-		frappe.db.sql('update `tab{0}` set status=%s'.format(party_type), default_status[party_type])
-
-		for doctype in status_depends_on[party_type]:
-			filters = get_filters_for(doctype)
-			parties = frappe.get_all(doctype, fields="{0} as party".format(party_type.lower()),
-				filters=filters, limit_page_length=1)
-
-			parties = filter(None, [p.party for p in parties])
-
-			if parties:
-				frappe.db.sql('update `tab{0}` set status="Open" where name in ({1})'.format(party_type,
-					', '.join(len(parties) * ['%s'])), parties)
\ No newline at end of file
+	# for party_type in ('Customer', 'Supplier'):
+	# 	frappe.reload_doctype(party_type)
+	#
+	# 	# set all as default status
+	# 	frappe.db.sql('update `tab{0}` set status=%s'.format(party_type), default_status[party_type])
+	#
+	# 	for doctype in status_depends_on[party_type]:
+	# 		filters = get_filters_for(doctype)
+	# 		parties = frappe.get_all(doctype, fields="{0} as party".format(party_type.lower()),
+	# 			filters=filters, limit_page_length=1)
+	#
+	# 		parties = filter(None, [p.party for p in parties])
+	#
+	# 		if parties:
+	# 			frappe.db.sql('update `tab{0}` set status="Open" where name in ({1})'.format(party_type,
+	# 				', '.join(len(parties) * ['%s'])), parties)
\ No newline at end of file
diff --git a/erpnext/patches/v8_0/rename_total_margin_to_rate_with_margin.py b/erpnext/patches/v8_0/rename_total_margin_to_rate_with_margin.py
index 3fc477e..4065438 100644
--- a/erpnext/patches/v8_0/rename_total_margin_to_rate_with_margin.py
+++ b/erpnext/patches/v8_0/rename_total_margin_to_rate_with_margin.py
@@ -19,6 +19,6 @@
 def rename_field_if_exists(doctype, old_fieldname, new_fieldname):
 	try:
 		rename_field(doctype, old_fieldname, new_fieldname)
-	except Exception, e:
+	except Exception as e:
 		if e.args[0] != 1054:
 			raise
diff --git a/erpnext/patches/v8_1/delete_deprecated_reports.py b/erpnext/patches/v8_1/delete_deprecated_reports.py
index 887277a..99d77c1 100644
--- a/erpnext/patches/v8_1/delete_deprecated_reports.py
+++ b/erpnext/patches/v8_1/delete_deprecated_reports.py
@@ -51,4 +51,4 @@
 		frappe.delete_doc("Auto Email Report", auto_email_report)
 
 	elif report in ["Customer Addresses And Contacts", "Supplier Addresses And Contacts"]:
-		frapppe.db.set_value("Auto Email Report", auto_email_report, "report", report)
\ No newline at end of file
+		frappe.db.set_value("Auto Email Report", auto_email_report, "report", report)
\ No newline at end of file
diff --git a/erpnext/patches/v8_5/set_default_mode_of_payment.py b/erpnext/patches/v8_5/set_default_mode_of_payment.py
new file mode 100644
index 0000000..34ecbb0
--- /dev/null
+++ b/erpnext/patches/v8_5/set_default_mode_of_payment.py
@@ -0,0 +1,17 @@
+# Copyright (c) 2017, Frappe and Contributors
+# License: GNU General Public License v3. See license.txt
+
+from __future__ import unicode_literals
+import frappe
+
+def execute():
+	frappe.reload_doctype("POS Profile")
+	frappe.reload_doctype("Sales Invoice Payment")
+
+	frappe.db.sql("""
+		update
+			`tabSales Invoice Payment`
+		set `tabSales Invoice Payment`.default = 1
+		where
+			`tabSales Invoice Payment`.parenttype = 'POS Profile'
+			and `tabSales Invoice Payment`.idx=1""")
\ No newline at end of file
diff --git a/erpnext/projects/doctype/activity_type/activity_type.json b/erpnext/projects/doctype/activity_type/activity_type.json
index 65a0fa1..dc50a09 100644
--- a/erpnext/projects/doctype/activity_type/activity_type.json
+++ b/erpnext/projects/doctype/activity_type/activity_type.json
@@ -1,5 +1,6 @@
 {
  "allow_copy": 0, 
+ "allow_guest_to_view": 0, 
  "allow_import": 1, 
  "allow_rename": 1, 
  "autoname": "field:activity_type", 
@@ -12,6 +13,7 @@
  "editable_grid": 0, 
  "fields": [
   {
+   "allow_bulk_edit": 0, 
    "allow_on_submit": 0, 
    "bold": 0, 
    "collapsible": 0, 
@@ -22,7 +24,8 @@
    "ignore_user_permissions": 0, 
    "ignore_xss_filter": 0, 
    "in_filter": 0, 
-   "in_list_view": 0, 
+   "in_global_search": 0, 
+   "in_list_view": 1, 
    "in_standard_filter": 0, 
    "label": "Activity Type", 
    "length": 0, 
@@ -39,6 +42,7 @@
    "unique": 0
   }, 
   {
+   "allow_bulk_edit": 0, 
    "allow_on_submit": 0, 
    "bold": 0, 
    "collapsible": 0, 
@@ -49,6 +53,7 @@
    "ignore_user_permissions": 0, 
    "ignore_xss_filter": 0, 
    "in_filter": 0, 
+   "in_global_search": 0, 
    "in_list_view": 0, 
    "in_standard_filter": 0, 
    "label": "Default Costing Rate", 
@@ -67,6 +72,7 @@
    "unique": 0
   }, 
   {
+   "allow_bulk_edit": 0, 
    "allow_on_submit": 0, 
    "bold": 0, 
    "collapsible": 0, 
@@ -77,6 +83,7 @@
    "ignore_user_permissions": 0, 
    "ignore_xss_filter": 0, 
    "in_filter": 0, 
+   "in_global_search": 0, 
    "in_list_view": 0, 
    "in_standard_filter": 0, 
    "length": 0, 
@@ -94,6 +101,7 @@
    "unique": 0
   }, 
   {
+   "allow_bulk_edit": 0, 
    "allow_on_submit": 0, 
    "bold": 0, 
    "collapsible": 0, 
@@ -104,6 +112,7 @@
    "ignore_user_permissions": 0, 
    "ignore_xss_filter": 0, 
    "in_filter": 0, 
+   "in_global_search": 0, 
    "in_list_view": 0, 
    "in_standard_filter": 0, 
    "label": "Default Billing Rate", 
@@ -120,20 +129,51 @@
    "search_index": 0, 
    "set_only_once": 0, 
    "unique": 0
+  }, 
+  {
+   "allow_bulk_edit": 0, 
+   "allow_on_submit": 0, 
+   "bold": 0, 
+   "collapsible": 0, 
+   "columns": 0, 
+   "default": "0", 
+   "fieldname": "disabled", 
+   "fieldtype": "Check", 
+   "hidden": 0, 
+   "ignore_user_permissions": 0, 
+   "ignore_xss_filter": 0, 
+   "in_filter": 0, 
+   "in_global_search": 0, 
+   "in_list_view": 0, 
+   "in_standard_filter": 0, 
+   "label": "Disabled", 
+   "length": 0, 
+   "no_copy": 0, 
+   "permlevel": 0, 
+   "precision": "", 
+   "print_hide": 0, 
+   "print_hide_if_no_value": 0, 
+   "read_only": 0, 
+   "remember_last_selected_value": 0, 
+   "report_hide": 0, 
+   "reqd": 0, 
+   "search_index": 0, 
+   "set_only_once": 0, 
+   "unique": 0
   }
  ], 
+ "has_web_view": 0, 
  "hide_heading": 0, 
  "hide_toolbar": 0, 
  "icon": "icon-flag", 
  "idx": 1, 
  "image_view": 0, 
  "in_create": 0, 
- "in_dialog": 0, 
  "is_submittable": 0, 
  "issingle": 0, 
  "istable": 0, 
  "max_attachments": 0, 
- "modified": "2016-12-13 12:38:18.218618", 
+ "modified": "2017-07-25 20:11:05.229092", 
  "modified_by": "Administrator", 
  "module": "Projects", 
  "name": "Activity Type", 
@@ -149,11 +189,11 @@
    "export": 1, 
    "if_owner": 0, 
    "import": 1, 
-   "is_custom": 0, 
    "permlevel": 0, 
    "print": 1, 
    "read": 1, 
    "report": 1, 
+   "restrict": 0, 
    "role": "System Manager", 
    "set_user_permissions": 0, 
    "share": 1, 
@@ -175,6 +215,7 @@
    "print": 1, 
    "read": 1, 
    "report": 1, 
+   "restrict": 0, 
    "role": "Projects User", 
    "set_user_permissions": 0, 
    "share": 1, 
@@ -196,6 +237,7 @@
    "print": 0, 
    "read": 1, 
    "report": 0, 
+   "restrict": 0, 
    "role": "Employee", 
    "set_user_permissions": 0, 
    "share": 0, 
@@ -206,6 +248,8 @@
  "quick_entry": 1, 
  "read_only": 0, 
  "read_only_onload": 0, 
+ "show_name_in_global_search": 0, 
  "sort_order": "ASC", 
+ "track_changes": 0, 
  "track_seen": 0
 }
\ No newline at end of file
diff --git a/erpnext/projects/doctype/activity_type/test_activity_type.js b/erpnext/projects/doctype/activity_type/test_activity_type.js
new file mode 100644
index 0000000..8023121
--- /dev/null
+++ b/erpnext/projects/doctype/activity_type/test_activity_type.js
@@ -0,0 +1,20 @@
+QUnit.test("test: Activity Type", function (assert) {
+	// number of asserts
+	assert.expect(1);
+	let done = assert.async();
+
+	frappe.run_serially([
+		// insert a new Activity Type
+		() => frappe.set_route("List", "Activity Type", "List"),
+		() => frappe.new_doc("Activity Type"),
+		() => frappe.timeout(1),
+		() => frappe.click_link('Edit in full page'),
+		() => cur_frm.set_value("activity_type", "Test Activity"),
+		() => frappe.click_button('Save'),
+		() => frappe.timeout(1),
+		() => {
+			assert.equal(cur_frm.doc.name,"Test Activity");
+		},
+		() => done()
+	]);
+});
diff --git a/erpnext/projects/doctype/timesheet/timesheet.py b/erpnext/projects/doctype/timesheet/timesheet.py
index 45d6442..16abd24 100644
--- a/erpnext/projects/doctype/timesheet/timesheet.py
+++ b/erpnext/projects/doctype/timesheet/timesheet.py
@@ -279,7 +279,6 @@
 			ts_detail.billing_rate = 0.0
 			ts_detail.costing_rate = 0.0
 
-
 @frappe.whitelist()
 def get_projectwise_timesheet_data(project, parent=None):
 	cond = ''
diff --git a/erpnext/public/css/email.css b/erpnext/public/css/email.css
new file mode 100644
index 0000000..8cf1a31
--- /dev/null
+++ b/erpnext/public/css/email.css
@@ -0,0 +1,29 @@
+.panel-header {
+  background-color: #fafbfc;
+  border: 1px solid #d1d8dd;
+  border-radius: 3px 3px 0 0;
+}
+.panel-body {
+  background-color: #fff;
+  border: 1px solid #d1d8dd;
+  border-top: none;
+  border-radius: 0 0 3px 3px;
+  overflow-wrap: break-word;
+}
+.sender-avatar {
+  width: 24px;
+  height: 24px;
+  border-radius: 3px;
+  vertical-align: middle;
+}
+.sender-avatar-placeholder {
+  width: 24px;
+  height: 24px;
+  border-radius: 3px;
+  vertical-align: middle;
+  line-height: 24px;
+  text-align: center;
+  color: #d1d8dd;
+  border: 1px solid #d1d8dd;
+  background-color: #fff;
+}
diff --git a/erpnext/public/images/erpnext-grey.png b/erpnext/public/images/erpnext-grey.png
new file mode 100644
index 0000000..0e70f05
--- /dev/null
+++ b/erpnext/public/images/erpnext-grey.png
Binary files differ
diff --git a/erpnext/public/js/controllers/taxes_and_totals.js b/erpnext/public/js/controllers/taxes_and_totals.js
index a54f30d..c653640 100644
--- a/erpnext/public/js/controllers/taxes_and_totals.js
+++ b/erpnext/public/js/controllers/taxes_and_totals.js
@@ -5,7 +5,7 @@
 	setup: function() {},
 	apply_pricing_rule_on_item: function(item){
 		if(item.margin_type == "Percentage"){
-			item.rate_with_margin = flt(item.price_list_rate) 
+			item.rate_with_margin = flt(item.price_list_rate)
 				+ flt(item.price_list_rate) * ( flt(item.margin_rate_or_amount) / 100);
 		} else {
 			item.rate_with_margin = flt(item.price_list_rate) + flt(item.margin_rate_or_amount);
@@ -70,12 +70,11 @@
 			} else {
 				frappe.throw(repl('%(conversion_rate_label)s' +
 					__(' is mandatory. Maybe Currency Exchange record is not created for ') +
-					'%(from_currency)s' + __(" to ") + '%(to_currency)s',
-					{
-						"conversion_rate_label": conversion_rate_label,
-						"from_currency": this.frm.doc.currency,
-						"to_currency": company_currency
-					}));
+				'%(from_currency)s' + __(" to ") + '%(to_currency)s', {
+					"conversion_rate_label": conversion_rate_label,
+					"from_currency": this.frm.doc.currency,
+					"to_currency": company_currency
+				}));
 			}
 
 		}
@@ -101,7 +100,7 @@
 		var me = this;
 		$.each(fields, function(i, f) {
 			doc["base_"+f] = flt(flt(doc[f], precision(f, doc)) * me.frm.doc.conversion_rate, precision("base_" + f, doc));
-		})
+		});
 	},
 
 	initialize_taxes: function() {
@@ -111,14 +110,14 @@
 			tax.item_wise_tax_detail = {};
 			var tax_fields = ["total", "tax_amount_after_discount_amount",
 				"tax_amount_for_current_item", "grand_total_for_current_item",
-				"tax_fraction_for_current_item", "grand_total_fraction_for_current_item"]
+				"tax_fraction_for_current_item", "grand_total_fraction_for_current_item"];
 
 			if (cstr(tax.charge_type) != "Actual" &&
 				!(me.discount_amount_applied && me.frm.doc.apply_discount_on=="Grand Total")) {
 				tax_fields.push("tax_amount");
 			}
 
-			$.each(tax_fields, function(i, fieldname) { tax[fieldname] = 0.0 });
+			$.each(tax_fields, function(i, fieldname) { tax[fieldname] = 0.0; });
 
 			if (!this.discount_amount_applied && cur_frm) {
 				cur_frm.cscript.validate_taxes_and_charges(tax.doctype, tax.name);
@@ -134,7 +133,7 @@
 		var has_inclusive_tax = false;
 		$.each(me.frm.doc["taxes"] || [], function(i, row) {
 			if(cint(row.included_in_print_rate)) has_inclusive_tax = true;
-		})
+		});
 		if(has_inclusive_tax==false) return;
 
 		$.each(me.frm.doc["items"] || [], function(n, item) {
@@ -223,7 +222,6 @@
 
 		$.each(this.frm.doc["items"] || [], function(n, item) {
 			var item_tax_map = me._load_item_tax_rate(item.item_tax_rate);
-
 			$.each(me.frm.doc["taxes"] || [], function(i, tax) {
 				// tax_amount represents the amount of tax for the current step
 				var current_tax_amount = me.get_current_tax_amount(item, tax, item_tax_map);
@@ -232,7 +230,7 @@
 				if (tax.charge_type == "Actual") {
 					actual_tax_dict[tax.idx] -= current_tax_amount;
 					if (n == me.frm.doc["items"].length - 1) {
-						current_tax_amount += actual_tax_dict[tax.idx]
+						current_tax_amount += actual_tax_dict[tax.idx];
 					}
 				}
 
@@ -258,23 +256,25 @@
 					current_tax_amount *= (tax.add_deduct_tax == "Deduct") ? -1.0 : 1.0;
 				}
 
-				// Calculate tax.total viz. grand total till that step
 				// note: grand_total_for_current_item contains the contribution of
 				// item's amount, previously applied tax and the current tax on that item
 				if(i==0) {
-					tax.grand_total_for_current_item = flt(item.net_amount + current_tax_amount, precision("total", tax));
+					tax.grand_total_for_current_item = flt(item.net_amount + current_tax_amount);
 				} else {
 					tax.grand_total_for_current_item =
-						flt(me.frm.doc["taxes"][i-1].grand_total_for_current_item + current_tax_amount, precision("total", tax));
+						flt(me.frm.doc["taxes"][i-1].grand_total_for_current_item + current_tax_amount);
 				}
 
-				// in tax.total, accumulate grand total for each item
-				tax.total += tax.grand_total_for_current_item;
-
 				// set precision in the last item iteration
 				if (n == me.frm.doc["items"].length - 1) {
 					me.round_off_totals(tax);
 
+					// in tax.total, accumulate grand total for each item
+					me.set_cumulative_total(i, tax);
+
+					me.set_in_company_currency(tax,
+						["total", "tax_amount", "tax_amount_after_discount_amount"]);
+
 					// adjust Discount Amount loss in last tax iteration
 					if ((i == me.frm.doc["taxes"].length - 1) && me.discount_amount_applied
 							&& me.frm.doc.apply_discount_on == "Grand Total" && me.frm.doc.discount_amount)
@@ -284,6 +284,16 @@
 		});
 	},
 
+	set_cumulative_total: function(row_idx, tax) {
+		if(row_idx==0) {
+			tax.total = flt(this.frm.doc.net_total + tax.tax_amount_after_discount_amount,
+				precision("total", tax));
+		} else {
+			tax.total = flt(this.frm.doc["taxes"][row_idx-1].total + tax.tax_amount_after_discount_amount,
+				precision("total", tax));
+		}
+	},
+
 	_load_item_tax_rate: function(item_tax_rate) {
 		return item_tax_rate ? JSON.parse(item_tax_rate) : {};
 	},
@@ -300,7 +310,6 @@
 
 		} else if(tax.charge_type == "On Net Total") {
 			current_tax_amount = (tax_rate / 100.0) * item.net_amount;
-
 		} else if(tax.charge_type == "On Previous Row Amount") {
 			current_tax_amount = (tax_rate / 100.0) *
 				this.frm.doc["taxes"][cint(tax.row_id) - 1].tax_amount_for_current_item;
@@ -310,8 +319,6 @@
 				this.frm.doc["taxes"][cint(tax.row_id) - 1].grand_total_for_current_item;
 		}
 
-		current_tax_amount = flt(current_tax_amount, precision("tax_amount", tax));
-
 		this.set_item_wise_tax(item, tax, tax_rate, current_tax_amount);
 
 		return current_tax_amount;
@@ -322,18 +329,14 @@
 		var key = item.item_code || item.item_name;
 		var item_wise_tax_amount = current_tax_amount * this.frm.doc.conversion_rate;
 		if (tax.item_wise_tax_detail && tax.item_wise_tax_detail[key])
-			item_wise_tax_amount += tax.item_wise_tax_detail[key][1]
+			item_wise_tax_amount += tax.item_wise_tax_detail[key][1];
 
-		tax.item_wise_tax_detail[key] = [tax_rate,flt(item_wise_tax_amount, precision("base_tax_amount", tax))]
-
+		tax.item_wise_tax_detail[key] = [tax_rate, flt(item_wise_tax_amount, precision("base_tax_amount", tax))];
 	},
 
 	round_off_totals: function(tax) {
-		tax.total = flt(tax.total, precision("total", tax));
 		tax.tax_amount = flt(tax.tax_amount, precision("tax_amount", tax));
 		tax.tax_amount_after_discount_amount = flt(tax.tax_amount_after_discount_amount, precision("tax_amount", tax));
-
-		this.set_in_company_currency(tax, ["total", "tax_amount", "tax_amount_after_discount_amount"]);
 	},
 
 	adjust_discount_amount_loss: function(tax) {
@@ -391,7 +394,7 @@
 							me.frm.doc.taxes_and_charges_deducted += flt(tax.tax_amount_after_discount_amount);
 						}
 					}
-				})
+				});
 
 				frappe.model.round_floats_in(this.frm.doc, ["taxes_and_charges_added", "taxes_and_charges_deducted"]);
 			}
@@ -437,7 +440,7 @@
 
 		if(this.frm.doc["taxes"] && this.frm.doc["taxes"].length) {
 			var temporary_fields = ["tax_amount_for_current_item", "grand_total_for_current_item",
-				"tax_fraction_for_current_item", "grand_total_fraction_for_current_item"]
+				"tax_fraction_for_current_item", "grand_total_fraction_for_current_item"];
 
 			if(!frappe.meta.get_docfield(this.frm.doc["taxes"][0].doctype, "tax_amount_after_discount_amount", this.frm.doctype)) {
 				temporary_fields.push("tax_amount_after_discount_amount");
@@ -473,13 +476,24 @@
 				precision("base_discount_amount"));
 
 			var total_for_discount_amount = this.get_total_for_discount_amount();
+			var net_total = 0;
 			// calculate item amount after Discount Amount
 			if (total_for_discount_amount) {
 				$.each(this.frm.doc["items"] || [], function(i, item) {
 					distributed_amount = flt(me.frm.doc.discount_amount) * item.net_amount / total_for_discount_amount;
-					item.net_amount = flt(item.net_amount - distributed_amount, precision("base_amount", item));
-					item.net_rate = flt(item.net_amount / item.qty, precision("net_rate", item));
+					item.net_amount = flt(item.net_amount - distributed_amount,
+						precision("base_amount", item));
+					net_total += item.net_amount;
 
+					// discount amount rounding loss adjustment if no taxes
+					if ((!(me.frm.doc.taxes || []).length || (me.frm.doc.apply_discount_on == "Net Total"))
+							&& i == (me.frm.doc.items || []).length - 1) {
+						var discount_amount_loss = flt(me.frm.doc.net_total - net_total
+							- me.frm.doc.discount_amount, precision("net_total"));
+						item.net_amount = flt(item.net_amount + discount_amount_loss,
+							precision("net_amount", item));
+					}
+					item.net_rate = flt(item.net_amount / item.qty, precision("net_rate", item));
 					me.set_in_company_currency(item, ["net_rate", "net_amount"]);
 				});
 
@@ -490,10 +504,8 @@
 	},
 
 	get_total_for_discount_amount: function() {
-		var me = this;
-
 		if(this.frm.doc.apply_discount_on == "Net Total") {
-			return this.frm.doc.net_total
+			return this.frm.doc.net_total;
 		} else {
 			var total_actual_tax = 0.0;
 			var actual_taxes_dict = {};
@@ -517,7 +529,7 @@
 
 	calculate_total_advance: function(update_paid_amount) {
 		var total_allocated_amount = frappe.utils.sum($.map(this.frm.doc["advances"] || [], function(adv) {
-			return flt(adv.allocated_amount, precision("allocated_amount", adv))
+			return flt(adv.allocated_amount, precision("allocated_amount", adv));
 		}));
 		this.frm.doc.total_advance = flt(total_allocated_amount, precision("total_advance"));
 
@@ -528,9 +540,9 @@
 		// NOTE:
 		// paid_amount and write_off_amount is only for POS Invoice
 		// total_advance is only for non POS Invoice
-		
+
 		if(this.frm.doc.doctype == "Sales Invoice" && this.frm.doc.is_return){
-			this.calculate_paid_amount()
+			this.calculate_paid_amount();
 		}
 
 		if(this.frm.doc.is_return || this.frm.doc.docstatus > 0) return;
@@ -558,25 +570,21 @@
 			}
 
 			if(this.frm.doc.doctype == "Sales Invoice"){
-				this.set_default_payment(total_amount_to_pay, update_paid_amount)
-				this.calculate_paid_amount()
+				this.set_default_payment(total_amount_to_pay, update_paid_amount);
+				this.calculate_paid_amount();
 			}
 
-			this.calculate_change_amount()
-			var outstanding_amount = 0.0
+			this.calculate_change_amount();
 
 			var paid_amount = (this.frm.doc.party_account_currency == this.frm.doc.currency) ?
 				this.frm.doc.paid_amount : this.frm.doc.base_paid_amount;
 
-			var change_amount = (this.frm.doc.party_account_currency == this.frm.doc.currency) ?
-				this.frm.doc.change_amount : this.frm.doc.base_change_amount;
-
 			this.frm.doc.outstanding_amount =  flt(total_amount_to_pay - flt(paid_amount) +
 				flt(this.frm.doc.change_amount * this.frm.doc.conversion_rate), precision("outstanding_amount"));
 
 		} else if(this.frm.doc.doctype == "Purchase Invoice") {
 			this.frm.doc.outstanding_amount = flt(total_amount_to_pay, precision("outstanding_amount"));
-		}		
+		}
 	},
 
 	set_default_payment: function(total_amount_to_pay, update_paid_amount){
@@ -584,14 +592,14 @@
 		var payment_status = true;
 		if(this.frm.doc.is_pos && (update_paid_amount===undefined || update_paid_amount)){
 			$.each(this.frm.doc['payments'] || [], function(index, data){
-				if(data.type == "Cash" && payment_status && total_amount_to_pay > 0) {
+				if(data.default && payment_status && total_amount_to_pay > 0) {
 					data.base_amount = flt(total_amount_to_pay, precision("base_amount"));
 					data.amount = flt(total_amount_to_pay / me.frm.doc.conversion_rate, precision("amount"));
 					payment_status = false;
 				}else if(me.frm.doc.paid_amount){
 					data.amount = 0.0;
 				}
-			})
+			});
 		}
 	},
 
@@ -604,7 +612,7 @@
 				data.base_amount = flt(data.amount * me.frm.doc.conversion_rate, precision("base_amount"));
 				paid_amount += data.amount;
 				base_paid_amount += data.base_amount;
-			})
+			});
 		} else if(!this.frm.doc.is_return){
 			this.frm.doc.payments = [];
 		}
@@ -617,30 +625,28 @@
 		this.frm.doc.change_amount = 0.0;
 		this.frm.doc.base_change_amount = 0.0;
 		if(this.frm.doc.paid_amount > this.frm.doc.grand_total && !this.frm.doc.is_return) {
-			var payment_types = $.map(this.frm.doc.payments, function(d) { return d.type });
+			var payment_types = $.map(this.frm.doc.payments, function(d) { return d.type; });
 			if (in_list(payment_types, 'Cash')) {
 				this.frm.doc.change_amount = flt(this.frm.doc.paid_amount - this.frm.doc.grand_total +
 					this.frm.doc.write_off_amount, precision("change_amount"));
-					
-				this.frm.doc.base_change_amount = flt(this.frm.doc.base_paid_amount - 
-					this.frm.doc.base_grand_total + this.frm.doc.base_write_off_amount, 
+
+				this.frm.doc.base_change_amount = flt(this.frm.doc.base_paid_amount -
+					this.frm.doc.base_grand_total + this.frm.doc.base_write_off_amount,
 					precision("base_change_amount"));
-				
 			}
 		}
 	},
 
 	calculate_write_off_amount: function(){
 		if(this.frm.doc.paid_amount > this.frm.doc.grand_total){
-			this.frm.doc.write_off_amount = flt(this.frm.doc.grand_total - this.frm.doc.paid_amount + this.frm.doc.change_amount,
-					precision("write_off_amount"))
-		
+			this.frm.doc.write_off_amount = flt(this.frm.doc.grand_total - this.frm.doc.paid_amount
+				+ this.frm.doc.change_amount, precision("write_off_amount"));
+
 			this.frm.doc.base_write_off_amount = flt(this.frm.doc.write_off_amount * this.frm.doc.conversion_rate,
 				precision("base_write_off_amount"));
 		}else{
-			this.frm.doc.paid_amount = 0.0
+			this.frm.doc.paid_amount = 0.0;
 		}
-		
-		this.calculate_outstanding_amount(false)
+		this.calculate_outstanding_amount(false);
 	}
-})
+});
diff --git a/erpnext/public/js/help_links.js b/erpnext/public/js/help_links.js
index 6ac60c2..7de87b7 100644
--- a/erpnext/public/js/help_links.js
+++ b/erpnext/public/js/help_links.js
@@ -14,7 +14,7 @@
 frappe.help.help_links['permission-manager'] = [
 	{ label: 'Role Permissions Manager', url: 'https://frappe.github.io/erpnext/user/manual/en/setting-up/users-and-permissions/role-based-permissions' },
 	{ label: 'Managing Perm Level in Permissions Manager', url: 'https://frappe.github.io/erpnext/user/manual/en/setting-up/articles/managing-perm-level' },
-	{ label: 'User Permissions Manager', url: 'https://frappe.github.io/erpnext/user/manual/en/setting-up/users-and-permissions/user-permissions' },
+	{ label: 'User Permissions', url: 'https://frappe.github.io/erpnext/user/manual/en/setting-up/users-and-permissions/user-permissions' },
 	{ label: 'Sharing', url: 'https://frappe.github.io/erpnext/user/manual/en/setting-up/users-and-permissions/sharing' },
 	{ label: 'Password', url: 'https://frappe.github.io/erpnext/user/manual/en/setting-up/articles/change-password' },
 ]
diff --git a/erpnext/public/js/pos/pos_selected_item.html b/erpnext/public/js/pos/pos_selected_item.html
index 0ed6c71..6f2772b 100644
--- a/erpnext/public/js/pos/pos_selected_item.html
+++ b/erpnext/public/js/pos/pos_selected_item.html
@@ -17,6 +17,6 @@
 	</div> 
 	<div class="pos-list-row">
 		<div class="cell">{{ __("Amount") }}:</div>
-		<input type="tel" class="form-control cell pos-amount" value="{%= amount %}"/>
+		<input type="tel" class="form-control cell pos-amount" disabled value="{%= amount %}"/>
 	</div>
 </div>
\ No newline at end of file
diff --git a/erpnext/public/less/email.less b/erpnext/public/less/email.less
new file mode 100644
index 0000000..4077c49
--- /dev/null
+++ b/erpnext/public/less/email.less
@@ -0,0 +1,32 @@
+@import "../../../../frappe/frappe/public/less/variables.less";
+
+.panel-header {
+	background-color: @light-bg;
+	border: 1px solid @border-color;
+	border-radius: 3px 3px 0 0;
+}
+
+.panel-body {
+	background-color: #fff;
+	border: 1px solid @border-color;
+	border-top: none;
+	border-radius: 0 0 3px 3px;
+	overflow-wrap: break-word;
+}
+
+.sender-avatar {
+	width: 24px;
+	height: 24px;
+	border-radius: 3px;
+	vertical-align: middle;
+}
+
+.sender-avatar-placeholder {
+	.sender-avatar;
+
+	line-height: 24px;
+	text-align: center;
+	color: @border-color;
+	border: 1px solid @border-color;
+	background-color: #fff;
+}
\ No newline at end of file
diff --git a/erpnext/schools/doctype/academic_term/test_academic_term.js b/erpnext/schools/doctype/academic_term/test_academic_term.js
index c74071b..688ad54 100644
--- a/erpnext/schools/doctype/academic_term/test_academic_term.js
+++ b/erpnext/schools/doctype/academic_term/test_academic_term.js
@@ -1,8 +1,7 @@
 // Testing Setup Module in Schools
-QUnit.module('setup');
+QUnit.module('schools');
 
-// Testing Academic Term option
-QUnit.test('test academic term', function(assert){
+QUnit.test('Test: Academic Term', function(assert){
 	assert.expect(4);
 	let done = assert.async();
 	frappe.run_serially([
diff --git a/erpnext/schools/doctype/academic_year/test_academic_year.js b/erpnext/schools/doctype/academic_year/test_academic_year.js
index 5123b6e..7bf1772 100644
--- a/erpnext/schools/doctype/academic_year/test_academic_year.js
+++ b/erpnext/schools/doctype/academic_year/test_academic_year.js
@@ -1,23 +1,22 @@
 // Testing Setup Module in Schools
-QUnit.module('setup');
+QUnit.module('schools');
 
-// Testing Academic Year Testing option
-QUnit.test('test academic year', function(assert){
+QUnit.test('Test: Academic Year', function(assert){
 	assert.expect(3);
 	let done = assert.async();
 	frappe.run_serially([
 		() => {
 			return frappe.tests.make('Academic Year', [
-				{academic_year_name: '2015-16'},
-				{year_start_date: '2015-07-20'},
-				{year_end_date:'2016-06-20'},
+				{academic_year_name: '2016-17'},
+				{year_start_date: '2016-07-20'},
+				{year_end_date:'2017-06-20'},
 			]);
 		},
 
 		() => {
-			assert.ok(cur_frm.doc.academic_year_name=='2015-16');
-			assert.ok(cur_frm.doc.year_start_date=='2015-07-20');
-			assert.ok(cur_frm.doc.year_end_date=='2016-06-20');
+			assert.ok(cur_frm.doc.academic_year_name=='2016-17');
+			assert.ok(cur_frm.doc.year_start_date=='2016-07-20');
+			assert.ok(cur_frm.doc.year_end_date=='2017-06-20');
 		},
 		() => done()
 	]);
diff --git a/erpnext/schools/doctype/assessment_criteria/test_assessment_criteria.js b/erpnext/schools/doctype/assessment_criteria/test_assessment_criteria.js
new file mode 100644
index 0000000..6c0540e
--- /dev/null
+++ b/erpnext/schools/doctype/assessment_criteria/test_assessment_criteria.js
@@ -0,0 +1,16 @@
+// School Assessment module
+QUnit.module('schools');
+
+QUnit.test('Test: Assessment Criteria', function(assert){
+	assert.expect(0);
+	let done = assert.async();
+	frappe.run_serially([
+		() => {
+			return frappe.tests.make('Assessment Criteria', [
+				{assessment_criteria: 'Pass'},
+				{assessment_criteria_group: 'Reservation'}
+			]);
+		},
+		() => done()
+	]);
+});
\ No newline at end of file
diff --git a/erpnext/schools/doctype/assessment_criteria_group/test_assessment_criteria_group.js b/erpnext/schools/doctype/assessment_criteria_group/test_assessment_criteria_group.js
new file mode 100644
index 0000000..92dba1d
--- /dev/null
+++ b/erpnext/schools/doctype/assessment_criteria_group/test_assessment_criteria_group.js
@@ -0,0 +1,15 @@
+// School Assessment module
+QUnit.module('schools');
+
+QUnit.test('Test: Assessment Criteria Group', function(assert){
+	assert.expect(0);
+	let done = assert.async();
+	frappe.run_serially([
+		() => {
+			return frappe.tests.make('Assessment Criteria Group', [
+				{assessment_criteria_group: 'Reservation'}
+			]);
+		},
+		() => done()
+	]);
+});
\ No newline at end of file
diff --git a/erpnext/schools/doctype/course/test_course.js b/erpnext/schools/doctype/course/test_course.js
new file mode 100644
index 0000000..4866730
--- /dev/null
+++ b/erpnext/schools/doctype/course/test_course.js
@@ -0,0 +1,36 @@
+// Testing Setup Module in Schools
+QUnit.module('schools');
+
+QUnit.test('test course', function(assert) {
+	assert.expect(8);
+	let done = assert.async();
+	frappe.run_serially([
+		() => {
+			return frappe.tests.make('Course', [
+				{course_name: 'Test_Subject'},
+				{course_code: 'Test_Sub'},
+				{department: 'Test Department'},
+				{course_abbreviation: 'Test_Sub'},
+				{course_intro: 'Test Subject Intro'},
+				{default_grading_scale: 'GTU'},
+				{assessment_criteria: [
+					[
+						{assessment_criteria: 'Pass'},
+						{weightage: 100}
+					]
+				]}
+			]);
+		},
+		() => {
+			assert.ok(cur_frm.doc.course_name == 'Test_Subject', 'Course name correctly set');
+			assert.ok(cur_frm.doc.course_code == 'Test_Sub', 'Course code correctly set');
+			assert.ok(cur_frm.doc.department == 'Test Department', 'Department selected correctly');
+			assert.ok(cur_frm.doc.course_abbreviation == 'Test_Sub');
+			assert.ok(cur_frm.doc.course_intro == 'Test Subject Intro');
+			assert.ok(cur_frm.doc.default_grading_scale == 'GTU', 'Grading scale selected correctly');
+			assert.ok(cur_frm.doc.assessment_criteria[0].assessment_criteria == 'Pass', 'Assessment criteria selected correctly');
+			assert.ok(cur_frm.doc.assessment_criteria[0].weightage == '100');
+		},
+		() => done()
+	]);
+});
\ No newline at end of file
diff --git a/erpnext/schools/doctype/grading_scale/test_grading_scale.js b/erpnext/schools/doctype/grading_scale/test_grading_scale.js
new file mode 100644
index 0000000..6539343
--- /dev/null
+++ b/erpnext/schools/doctype/grading_scale/test_grading_scale.js
@@ -0,0 +1,28 @@
+// School Assessment module
+QUnit.module('schools');
+
+QUnit.test('Test: Grading Scale', function(assert){
+	assert.expect(0);
+	let done = assert.async();
+	frappe.run_serially([
+		() => {
+			return frappe.tests.make('Grading Scale', [
+				{grading_scale_name: 'GTU'},
+				{description: 'The score will be set according to 10 based system.'},
+				{intervals: [
+					[
+						{grade_code: 'AA'},
+						{threshold: '90'},
+						{grade_description: 'Distinction'}
+					],
+					[
+						{grade_code: 'FF'},
+						{threshold: '0'},
+						{grade_description: 'Fail'}
+					]
+				]}
+			]);
+		},
+		() => done()
+	]);
+});
\ No newline at end of file
diff --git a/erpnext/schools/doctype/guardian/test_guardian.js b/erpnext/schools/doctype/guardian/test_guardian.js
new file mode 100644
index 0000000..a16ba08
--- /dev/null
+++ b/erpnext/schools/doctype/guardian/test_guardian.js
@@ -0,0 +1,34 @@
+// Testing Student Module in Schools
+QUnit.module('schools');
+
+QUnit.test('Test: Guardian', function(assert){
+	assert.expect(9);
+	let done = assert.async();
+	frappe.run_serially([
+		() => {
+			return frappe.tests.make('Guardian', [
+				{guardian_name: 'Test Guardian'},
+				{email_address: 'guardian@testmail.com'},
+				{mobile_number: 9898980000},
+				{alternate_number: 8989890000},
+				{date_of_birth: '1982-07-22'},
+				{education: 'Testing'},
+				{occupation: 'Testing'},
+				{designation: 'Testing'},
+				{work_address: 'Testing address'}
+			]);
+		},
+		() => {
+			assert.ok(cur_frm.doc.guardian_name == 'Test Guardian');
+			assert.ok(cur_frm.doc.email_address == 'guardian@testmail.com');
+			assert.ok(cur_frm.doc.mobile_number == 9898980000);
+			assert.ok(cur_frm.doc.alternate_number == 8989890000);
+			assert.ok(cur_frm.doc.date_of_birth == '1982-07-22');
+			assert.ok(cur_frm.doc.education == 'Testing');
+			assert.ok(cur_frm.doc.occupation == 'Testing');
+			assert.ok(cur_frm.doc.designation == 'Testing');
+			assert.ok(cur_frm.doc.work_address == 'Testing address');
+		},
+		() => done()
+	]);
+});
\ No newline at end of file
diff --git a/erpnext/schools/doctype/instructor/test_instructor.js b/erpnext/schools/doctype/instructor/test_instructor.js
new file mode 100644
index 0000000..a9e2561
--- /dev/null
+++ b/erpnext/schools/doctype/instructor/test_instructor.js
@@ -0,0 +1,20 @@
+// Testing Setup Module in Schools
+QUnit.module('schools');
+
+QUnit.test('Test: Instructor', function(assert){
+	assert.expect(2);
+	let done = assert.async();
+	frappe.run_serially([
+		() => {
+			return frappe.tests.make("Instructor", [
+				{instructor_name: 'Instructor 1'},
+				{department: 'Test Department'}
+			]);
+		},
+		() => {
+			assert.ok(cur_frm.doc.instructor_name == 'Instructor 1');
+			assert.ok(cur_frm.doc.department = 'Test Department');
+		},
+		() => done()
+	]);
+});
diff --git a/erpnext/schools/doctype/program/test_program.js b/erpnext/schools/doctype/program/test_program.js
new file mode 100644
index 0000000..a14fe97
--- /dev/null
+++ b/erpnext/schools/doctype/program/test_program.js
@@ -0,0 +1,34 @@
+// Testing Setup Module in Schools
+QUnit.module('schools');
+
+QUnit.test('Test: Program', function(assert){
+	assert.expect(6);
+	let done = assert.async();
+	let fee_structure_code;
+	frappe.run_serially([
+		() => {
+			return frappe.tests.make('Program', [
+				{program_name: 'Standard Test'},
+				{program_code: 'Standard Test'},
+				{department: 'Test Department'},
+				{program_abbreviation: 'Standard Test'},
+				{courses: [
+					[
+						{course: 'Test_Sub'},
+						{required: true}
+					]
+				]}
+			]);
+		},
+
+		() => {
+			assert.ok(cur_frm.doc.program_name == 'Standard Test');
+			assert.ok(cur_frm.doc.program_code == 'Standard Test');
+			assert.ok(cur_frm.doc.department == 'Test Department');
+			assert.ok(cur_frm.doc.program_abbreviation == 'Standard Test');
+			assert.ok(cur_frm.doc.courses[0].course == 'Test_Sub');
+			assert.ok(cur_frm.doc.courses[0].required == true);
+		},
+		() => done()
+	]);
+});
\ No newline at end of file
diff --git a/erpnext/schools/doctype/program_enrollment/program_enrollment.js b/erpnext/schools/doctype/program_enrollment/program_enrollment.js
index d1b703b..8418e85 100644
--- a/erpnext/schools/doctype/program_enrollment/program_enrollment.js
+++ b/erpnext/schools/doctype/program_enrollment/program_enrollment.js
@@ -43,6 +43,7 @@
 	},
 
 	program: function(frm) {
+		frm.events.get_courses(frm);
 		if (frm.doc.program) {
 			frappe.call({
 				method: "erpnext.schools.api.get_fee_schedule",
diff --git a/erpnext/schools/doctype/room/test_room.js b/erpnext/schools/doctype/room/test_room.js
new file mode 100644
index 0000000..0a93a85
--- /dev/null
+++ b/erpnext/schools/doctype/room/test_room.js
@@ -0,0 +1,22 @@
+// Testing Setup Module in Schools
+QUnit.module('schools');
+
+QUnit.test('Test: Room', function(assert){
+	assert.expect(3);
+	let done = assert.async();
+	frappe.run_serially([
+		() => {
+			return frappe.tests.make('Room', [
+				{room_name: 'Room 1'},
+				{room_number: '1'},
+				{seating_capacity: '60'},
+			]);
+		},
+		() => {
+			assert.ok(cur_frm.doc.room_name == 'Room 1');
+			assert.ok(cur_frm.doc.room_number = '1');
+			assert.ok(cur_frm.doc.seating_capacity = '60');
+		},
+		() => done()
+	]);
+});
diff --git a/erpnext/schools/doctype/school_settings/test_school_settings.js b/erpnext/schools/doctype/school_settings/test_school_settings.js
new file mode 100644
index 0000000..6414056
--- /dev/null
+++ b/erpnext/schools/doctype/school_settings/test_school_settings.js
@@ -0,0 +1,25 @@
+// Testing Setup Module in Schools
+QUnit.module('schools');
+
+QUnit.test("Test: School Settings", function(assert){
+	assert.expect(3);
+	let done = assert.async();
+	frappe.run_serially([
+		() => frappe.set_route("List", "School Settings"),
+		() => frappe.timeout(0.4),
+		() => {
+			return frappe.tests.set_form_values(cur_frm, [
+				{current_academic_year: '2016-17'},
+				{current_academic_term: '2016-17 (Semester 1)'},
+				{attendance_freeze_date: '2016-07-20'}
+			]);
+		},
+		() => {
+			cur_frm.save();
+			assert.ok(cur_frm.doc.current_academic_year=="2016-17");
+			assert.ok(cur_frm.doc.current_academic_term=="2016-17 (Semester 1)");
+			assert.ok(cur_frm.doc.attendance_freeze_date=="2016-07-20");
+		},
+		() => done()
+	]);
+});
\ No newline at end of file
diff --git a/erpnext/schools/doctype/student_admission/test_student_admission.js b/erpnext/schools/doctype/student_admission/test_student_admission.js
new file mode 100644
index 0000000..0d7c997
--- /dev/null
+++ b/erpnext/schools/doctype/student_admission/test_student_admission.js
@@ -0,0 +1,34 @@
+// Testing Admission Module in Schools
+QUnit.module('schools');
+
+QUnit.test('Test: Student Admission', function(assert) {
+	assert.expect(9);
+	let done = assert.async();
+	frappe.run_serially([
+		() => {
+			return frappe.tests.make('Student Admission', [
+				{academic_year: '2016-17'},
+				{admission_start_date: '2016-04-20'},
+				{admission_end_date: '2016-05-31'},
+				{title: '2016-17 Admissions'},
+				{program: 'Standard Test'},
+				{application_fee: 1000},
+				{naming_series_for_student_applicant: 'AP'},
+				{introduction: 'Test intro'},
+				{eligibility: 'Test eligibility'}
+			]);
+		},
+		() => {
+			assert.ok(cur_frm.doc.academic_year == '2016-17');
+			assert.ok(cur_frm.doc.admission_start_date == '2016-04-20');
+			assert.ok(cur_frm.doc.admission_end_date == '2016-05-31');
+			assert.ok(cur_frm.doc.title == '2016-17 Admissions');
+			assert.ok(cur_frm.doc.program == 'Standard Test', 'Program correctly selected');
+			assert.ok(cur_frm.doc.application_fee == 1000);
+			assert.ok(cur_frm.doc.naming_series_for_student_applicant == 'AP');
+			assert.ok(cur_frm.doc.introduction == 'Test intro');
+			assert.ok(cur_frm.doc.eligibility == 'Test eligibility');
+		},
+		() => done()
+	]);
+});
\ No newline at end of file
diff --git a/erpnext/schools/doctype/student_applicant/student_applicant.js b/erpnext/schools/doctype/student_applicant/student_applicant.js
index 974d972..9b08ee5 100644
--- a/erpnext/schools/doctype/student_applicant/student_applicant.js
+++ b/erpnext/schools/doctype/student_applicant/student_applicant.js
@@ -28,7 +28,7 @@
 
 		frappe.realtime.on("enroll_student_progress", function(data) {
 			if(data.progress) {
-				frappe.hide_frappe.msgprint(true);
+				frappe.hide_msgprint(true);
 				frappe.show_progress(__("Enrolling student"), data.progress[0],data.progress[1]);
 			}
 		})
diff --git a/erpnext/schools/doctype/student_applicant/tests/test_student_applicant.js b/erpnext/schools/doctype/student_applicant/tests/test_student_applicant.js
new file mode 100644
index 0000000..a45b45a
--- /dev/null
+++ b/erpnext/schools/doctype/student_applicant/tests/test_student_applicant.js
@@ -0,0 +1,95 @@
+// Testing Admission module in Schools
+QUnit.module('schools');
+
+QUnit.test('Test: Student Applicant', function(assert){
+	assert.expect(24);
+	let done = assert.async();
+	let guradian_auto_code;
+	let guardian_name;
+	frappe.run_serially([
+		() => frappe.set_route('List', 'Guardian'),
+		() => frappe.timeout(0.5),
+		() => {$(`a:contains("Test Guardian"):visible`)[0].click();},
+		() => frappe.timeout(1),
+		() => {
+			guardian_name = cur_frm.doc.guardian_name;
+			guradian_auto_code = frappe.get_route()[2];
+		},
+		// Testing data entry for Student Applicant
+		() => {
+			return frappe.tests.make('Student Applicant',[
+				{first_name: 'Fname'},
+				{middle_name: 'Mname'},
+				{last_name: 'Lname'},
+				{program: 'Standard Test'},
+				{student_admission: '2016-17 Admissions'},
+				{academic_year: '2016-17'},
+				{date_of_birth: '1995-07-20'},
+				{student_email_id: 'test@testmail.com'},
+				{gender: 'Male'},
+				{student_mobile_number: '9898980000'},
+				{blood_group: 'O+'},
+				{address_line_1: 'Test appt, Test Society,'},
+				{address_line_2: 'Test district, Test city.'},
+				{city: 'Test'},
+				{state: 'Test'},
+				{pincode: '400086'}
+			]);
+		},
+		// Entry in Guardian child table
+		() => $('a:contains("Guardian Details"):visible').click(),
+		() => $('.btn:contains("Add Row"):visible').click(),
+		() => {
+			cur_frm.get_field("guardians").grid.grid_rows[0].doc.guardian = guradian_auto_code;
+			cur_frm.get_field("guardians").grid.grid_rows[0].doc.relation = "Father";
+			cur_frm.get_field("guardians").grid.grid_rows[0].doc.guardian_name = guardian_name;
+			$('a:contains("Guardian Details"):visible').click();
+		},
+		// Entry in Sibling child table
+		() => $('a:contains("Sibling Details"):visible').click(),
+		() => $('.btn:contains("Add Row"):visible').click(),
+		() => {
+			cur_frm.get_field("siblings").grid.grid_rows[0].doc.full_name = "Test Name";
+			cur_frm.get_field("siblings").grid.grid_rows[0].doc.gender = "Male";
+			cur_frm.get_field("siblings").grid.grid_rows[0].doc.institution = "Test Institution";
+			cur_frm.get_field("siblings").grid.grid_rows[0].doc.program = "Test Program";
+			cur_frm.get_field("siblings").grid.grid_rows[0].doc.date_of_birth = "1995-07-20";
+			$('span.hidden-xs.octicon.octicon-triangle-up').click();
+			cur_frm.save();
+		},
+		() => {
+			assert.ok(cur_frm.doc.first_name == 'Fname');
+			assert.ok(cur_frm.doc.middle_name == 'Mname');
+			assert.ok(cur_frm.doc.last_name == 'Lname');
+			assert.ok(cur_frm.doc.program == 'Standard Test', 'Program selected correctly');
+			assert.ok(cur_frm.doc.student_admission == '2016-17 Admissions', 'Student Admission entry correctly selected');
+			assert.ok(cur_frm.doc.academic_year == '2016-17');
+			assert.ok(cur_frm.doc.date_of_birth == '1995-07-20');
+			assert.ok(cur_frm.doc.student_email_id == 'test@testmail.com');
+			assert.ok(cur_frm.doc.gender == 'Male');
+			assert.ok(cur_frm.doc.student_mobile_number == '9898980000');
+			assert.ok(cur_frm.doc.blood_group == 'O+');
+			assert.ok(cur_frm.doc.address_line_1 == 'Test appt, Test Society,');
+			assert.ok(cur_frm.doc.address_line_2 == 'Test district, Test city.');
+			assert.ok(cur_frm.doc.city == 'Test');
+			assert.ok(cur_frm.doc.state == 'Test');
+			assert.ok(cur_frm.doc.pincode == '400086');
+		},
+		() => frappe.timeout(1),
+		() => $('a:contains("Guardian Details"):visible').click(),
+		() => {
+			assert.ok(cur_frm.get_field("guardians").grid.grid_rows[0].doc.guardian == guradian_auto_code, 'Guardian correctly selected from dropdown');
+			assert.ok(cur_frm.get_field("guardians").grid.grid_rows[0].doc.relation == 'Father');
+			assert.ok(cur_frm.get_field("guardians").grid.grid_rows[0].doc.guardian_name == guardian_name, 'Guardian name was correctly retrieved');
+		},
+		() => $('a:contains("Sibling Details"):visible').click(),
+		() => {
+			assert.ok(cur_frm.get_field("siblings").grid.grid_rows[0].doc.full_name == 'Test Name');
+			assert.ok(cur_frm.get_field("siblings").grid.grid_rows[0].doc.gender == 'Male');
+			assert.ok(cur_frm.get_field("siblings").grid.grid_rows[0].doc.institution == 'Test Institution');
+			assert.ok(cur_frm.get_field("siblings").grid.grid_rows[0].doc.program == 'Test Program');
+			assert.ok(cur_frm.get_field("siblings").grid.grid_rows[0].doc.date_of_birth == '1995-07-20');
+		},
+		() => done()
+	]);
+});
\ No newline at end of file
diff --git a/erpnext/schools/doctype/student_applicant/tests/test_student_applicant_dummy_data.js b/erpnext/schools/doctype/student_applicant/tests/test_student_applicant_dummy_data.js
new file mode 100644
index 0000000..26244ab
--- /dev/null
+++ b/erpnext/schools/doctype/student_applicant/tests/test_student_applicant_dummy_data.js
@@ -0,0 +1,87 @@
+QUnit.module('Admission');
+
+QUnit.test('Make Students', function(assert){
+	assert.expect(0);
+	let done = assert.async();
+	let tasks = [];
+	let loop = [1,2,3,4];
+	let fname;
+
+	frappe.run_serially([
+		// Making School House to be used in this test and later
+		() => frappe.set_route('Form', 'School House/New School House'),
+		() => frappe.timeout(0.5),
+		() => cur_frm.doc.house_name = 'Test_house',
+		() => cur_frm.save(),
+
+		// Making Student Applicant entries
+		() => {
+			loop.forEach(index => {
+				tasks.push(() => {
+					fname = "Fname" + index;
+
+					return frappe.tests.make('Student Applicant', [
+						{first_name: fname},
+						{middle_name: "Mname"},
+						{last_name: "Lname"},
+						{program: "Standard Test"},
+						{student_admission: "2016-17 Admissions"},
+						{date_of_birth: '1995-08-20'},
+						{student_email_id: ('test' + (index+3) + '@testmail.com')},
+						{gender: 'Male'},
+						{student_mobile_number: (9898980000 + index)},
+						{blood_group: 'O+'},
+						{address_line_1: 'Test appt, Test Society,'},
+						{address_line_2: 'Test district, Test city.'},
+						{city: 'Test'},
+						{state: 'Test'},
+						{pincode: '395007'}
+					]);
+				});
+			});
+			return frappe.run_serially(tasks);
+		},
+
+		// Using Program Enrollment Tool to enroll all dummy student at once
+		() => frappe.set_route('Form', 'Program Enrollment Tool'),
+		() => {
+			cur_frm.set_value("get_students_from", "Student Applicants");
+			cur_frm.set_value("academic_year", "2016-17");
+			cur_frm.set_value("program", "Standard Test");
+		},
+		() => frappe.tests.click_button("Get Students"),
+		() => frappe.timeout(1),
+		() => frappe.tests.click_button("Enroll Students"),
+		() => frappe.timeout(1.5),
+		() => frappe.tests.click_button("Close"),
+
+		// Submitting required data for each enrolled Student
+		() => {
+			tasks = [];
+			loop.forEach(index => {
+				tasks.push(
+					() => {fname = "Fname" + index + " Mname Lname";},
+					() => frappe.set_route('List', 'Program Enrollment/List'),
+					() => frappe.timeout(0.6),
+					() => frappe.tests.click_link(fname),
+					() => frappe.timeout(0.4),
+					() => {
+						cur_frm.set_value('program', 'Standard Test');
+						cur_frm.set_value('student_category', 'Reservation');
+						cur_frm.set_value('student_batch_name', 'A');
+						cur_frm.set_value('academic_year', '2016-17');
+						cur_frm.set_value('academic_term', '2016-17 (Semester 1)');
+						cur_frm.set_value('school_house', 'Test_house');
+					},
+					() => cur_frm.save(),
+					() => frappe.timeout(0.5),
+					() => frappe.tests.click_button('Submit'),
+					() => frappe.tests.click_button('Yes'),
+					() => frappe.timeout(0.5)
+				);
+			});
+			return frappe.run_serially(tasks);
+		},
+		() => done()
+	]);
+});
\ No newline at end of file
diff --git a/erpnext/schools/doctype/student_applicant/tests/test_student_applicant_options.js b/erpnext/schools/doctype/student_applicant/tests/test_student_applicant_options.js
new file mode 100644
index 0000000..b983afd
--- /dev/null
+++ b/erpnext/schools/doctype/student_applicant/tests/test_student_applicant_options.js
@@ -0,0 +1,108 @@
+// Testing Admission module in Schools
+QUnit.module('schools');
+
+QUnit.test('test student applicant', function(assert){
+	assert.expect(11);
+	let done = assert.async();
+	let testing_status;
+	frappe.run_serially([
+		() => frappe.set_route('List', 'Student Applicant'),
+		() => frappe.timeout(0.5),
+		() => {$(`a:contains("Fname Mname Lname"):visible`)[0].click();},
+
+		// Checking different options
+		// 1. Moving forward with Submit
+		() => frappe.timeout(0.5),
+		() => frappe.tests.click_button('Submit'),
+		() => frappe.tests.click_button('Yes'),
+		() => {
+			testing_status = $('span.indicator.orange').text();
+			assert.ok(testing_status.indexOf('Submit this document to confirm') == -1); // checking if submit has been successfull
+		},
+
+		// 2. Cancelling the Submit request
+		() => frappe.timeout(0.5),
+		() => frappe.tests.click_button('Cancel'),
+		() => frappe.tests.click_button('Yes'),
+		() => frappe.timeout(0.5),
+		() => {
+			testing_status = $('h1.editable-title').text();
+			assert.ok(testing_status.indexOf('Cancelled') != -1); // checking if cancel request has been successfull
+		},
+
+		// 3. Checking Amend option
+		() => frappe.timeout(0.5),
+		() => frappe.tests.click_button('Amend'),
+		() => cur_frm.doc.student_email_id = "test2@testmail.com", // updating email id since same id again is not allowed
+		() => cur_frm.save(),
+		() => frappe.timeout(0.5),
+		() => frappe.tests.click_button('Submit'),
+		() => frappe.tests.click_button('Yes'), // Submitting again after amend
+		() => {
+			testing_status = $('span.indicator.orange').text();
+			assert.ok(testing_status.indexOf('Submit this document to confirm') == -1); // checking if submit has been successfull after amend
+		},
+
+		// Checking different Application status option
+		() => {
+			testing_status = $('h1.editable-title').text();
+			assert.ok(testing_status.indexOf('Applied') != -1); // checking if Applied has been successfull
+		},
+		() => cur_frm.set_value('application_status', "Rejected"), // Rejected Status
+		() => frappe.tests.click_button('Update'),
+		() => {
+			testing_status = $('h1.editable-title').text();
+			assert.ok(testing_status.indexOf('Rejected') != -1); // checking if Rejected has been successfull
+		},
+		() => cur_frm.set_value('application_status', "Admitted"), // Admitted Status
+		() => frappe.tests.click_button('Update'),
+		() => {
+			testing_status = $('h1.editable-title').text();
+			assert.ok(testing_status.indexOf('Admitted') != -1); // checking if Admitted has been successfull
+		},
+		() => cur_frm.set_value('application_status', "Approved"), // Approved Status
+		() => frappe.tests.click_button('Update'),
+		() => {
+			testing_status = $('h1.editable-title').text();
+			assert.ok(testing_status.indexOf('Approved') != -1); // checking if Approved has been successfull
+		},
+
+		// Clicking on Enroll button should add the applicant's entry in Student doctype, and take you to Program Enrollment page
+		() => frappe.timeout(0.5),
+		() => frappe.tests.click_button('Enroll'),
+		() => frappe.timeout(0.5),
+		() => {
+			assert.ok(frappe.get_route()[0] == 'Form'); // Checking if the current page is Program Enrollment page or not
+			assert.ok(frappe.get_route()[1] == 'Program Enrollment');
+		},
+
+		// Routing to Student List to check if the Applicant's entry has been made or not
+		() => frappe.timeout(0.5),
+		() => frappe.set_route('List', 'Student'),
+		() => frappe.timeout(0.5),
+		() => {$(`a:contains("Fname Mname Lname"):visible`)[0].click();},
+		() => frappe.timeout(0.5),
+		() => {assert.ok(($(`h1.editable-title`).text()).indexOf('Enabled') != -1, 'Student entry successfully created');}, // Checking if the Student entry has been enabled
+		// Enrolling the Student into a Program
+		() => {$('.form-documents .row:nth-child(1) .col-xs-6:nth-child(1) .octicon-plus').click();},
+		() => frappe.timeout(1),
+		() => {
+			cur_frm.set_value('program', 'Standard Test');
+			cur_frm.set_value('student_category', 'Reservation');
+			cur_frm.set_value('student_batch_name', 'A');
+			cur_frm.set_value('academic_year', '2016-17');
+			cur_frm.set_value('academic_term', '2016-17 (Semester 1)');
+			cur_frm.set_value('school_house', 'Test_house');
+		},
+		() => cur_frm.save(),
+
+		// Submitting Program Enrollment form for our Test Student
+		() => frappe.timeout(1),
+		() => frappe.tests.click_button('Submit'),
+		() => frappe.tests.click_button('Yes'),
+		() => {
+			assert.ok(cur_frm.doc.docstatus == 1, "Program enrollment successfully submitted");
+		},
+		() => done()
+	]);
+});
\ No newline at end of file
diff --git a/erpnext/schools/doctype/student_batch_name/test_student_batch_name.js b/erpnext/schools/doctype/student_batch_name/test_student_batch_name.js
new file mode 100644
index 0000000..6a10dc1
--- /dev/null
+++ b/erpnext/schools/doctype/student_batch_name/test_student_batch_name.js
@@ -0,0 +1,19 @@
+// Testing Setup Module in Schools
+QUnit.module('schools');
+
+QUnit.test('Test: Student Batch Name', function(assert){
+	assert.expect(1);
+	let done = assert.async();
+	frappe.run_serially([
+		() => {
+			return frappe.tests.make('Student Batch Name', [
+				{batch_name: 'A'}
+			]);
+		},
+		() => cur_frm.save(),
+		() => {
+			assert.ok(cur_frm.doc.batch_name=='A');
+		},
+		() => done()
+	]);
+});
diff --git a/erpnext/schools/doctype/student_category/test_student_category.js b/erpnext/schools/doctype/student_category/test_student_category.js
new file mode 100644
index 0000000..5e3109a
--- /dev/null
+++ b/erpnext/schools/doctype/student_category/test_student_category.js
@@ -0,0 +1,19 @@
+// Testing Setup Module in Schools
+QUnit.module('schools');
+
+QUnit.test('Test: Student Category', function(assert){
+	assert.expect(1);
+	let done = assert.async();
+	frappe.run_serially([
+		() => {
+			return frappe.tests.make('Student Category', [
+				{category: 'Reservation'}
+			]);
+		},
+		() => cur_frm.save(),
+		() => {
+			assert.ok(cur_frm.doc.name=='Reservation');
+		},
+		() => done()
+	]);
+});
diff --git a/erpnext/selling/doctype/product_bundle/test_product_bundle.js b/erpnext/selling/doctype/product_bundle/test_product_bundle.js
new file mode 100644
index 0000000..ba5ba0d
--- /dev/null
+++ b/erpnext/selling/doctype/product_bundle/test_product_bundle.js
@@ -0,0 +1,36 @@
+QUnit.test("test sales order", function(assert) {
+	assert.expect(4);
+	let done = assert.async();
+	frappe.run_serially([
+		() => {
+			return frappe.tests.make('Product Bundle', [
+				{new_item_code: 'Computer'},
+				{items: [
+					[
+						{item_code:'CPU'},
+						{qty:1}
+					],
+					[
+						{item_code:'Screen'},
+						{qty:1}
+					],
+					[
+						{item_code:'Keyboard'},
+						{qty:1}
+					]
+				]},
+			]);
+		},
+		() => cur_frm.save(),
+		() => {
+			// get_item_details
+			assert.ok(cur_frm.doc.items[0].item_code=='CPU', "Item Code correct");
+			assert.ok(cur_frm.doc.items[1].item_code=='Screen', "Item Code correct");
+			assert.ok(cur_frm.doc.items[2].item_code=='Keyboard', "Item Code correct");
+			assert.ok(cur_frm.doc.new_item_code == "Computer", "Parent Item correct");
+		},
+		() => frappe.timeout(0.3),
+		() => done()
+	]);
+});
+
diff --git a/erpnext/selling/doctype/quotation/quotation.js b/erpnext/selling/doctype/quotation/quotation.js
index 43fa20f..b90f725 100644
--- a/erpnext/selling/doctype/quotation/quotation.js
+++ b/erpnext/selling/doctype/quotation/quotation.js
@@ -27,9 +27,19 @@
 
 		var me = this;
 
+		if (doc.valid_till && frappe.datetime.get_diff(doc.valid_till, frappe.datetime.get_today()) < 0) {
+			this.frm.set_intro(__("Validity period of this quotation has ended"));
+		}
+
+		if (doc.__islocal) {
+			this.frm.set_value('valid_till', frappe.datetime.add_months(doc.transaction_date, 1))
+		}
+
 		if(doc.docstatus == 1 && doc.status!=='Lost') {
-			cur_frm.add_custom_button(__('Make Sales Order'),
-				cur_frm.cscript['Make Sales Order']);
+			if(!doc.valid_till || frappe.datetime.get_diff(doc.valid_till, frappe.datetime.get_today()) > 0) {
+				cur_frm.add_custom_button(__('Make Sales Order'),
+					cur_frm.cscript['Make Sales Order']);
+			}
 
 			if(doc.status!=="Ordered") {
 				cur_frm.add_custom_button(__('Set as Lost'),
diff --git a/erpnext/selling/doctype/quotation/quotation.json b/erpnext/selling/doctype/quotation/quotation.json
index 3130413..16ea578 100644
--- a/erpnext/selling/doctype/quotation/quotation.json
+++ b/erpnext/selling/doctype/quotation/quotation.json
@@ -369,6 +369,36 @@
    "bold": 0, 
    "collapsible": 0, 
    "columns": 0, 
+   "fieldname": "valid_till", 
+   "fieldtype": "Date", 
+   "hidden": 0, 
+   "ignore_user_permissions": 0, 
+   "ignore_xss_filter": 0, 
+   "in_filter": 0, 
+   "in_global_search": 0, 
+   "in_list_view": 0, 
+   "in_standard_filter": 0, 
+   "label": "Valid Till", 
+   "length": 0, 
+   "no_copy": 0, 
+   "permlevel": 0, 
+   "precision": "", 
+   "print_hide": 0, 
+   "print_hide_if_no_value": 0, 
+   "read_only": 0, 
+   "remember_last_selected_value": 0, 
+   "report_hide": 0, 
+   "reqd": 0, 
+   "search_index": 0, 
+   "set_only_once": 0, 
+   "unique": 0
+  }, 
+  {
+   "allow_bulk_edit": 0, 
+   "allow_on_submit": 0, 
+   "bold": 0, 
+   "collapsible": 0, 
+   "columns": 0, 
    "default": "Sales", 
    "fieldname": "order_type", 
    "fieldtype": "Select", 
diff --git a/erpnext/selling/doctype/quotation/quotation.py b/erpnext/selling/doctype/quotation/quotation.py
index 420b84a..5eb8b06 100644
--- a/erpnext/selling/doctype/quotation/quotation.py
+++ b/erpnext/selling/doctype/quotation/quotation.py
@@ -4,7 +4,7 @@
 from __future__ import unicode_literals
 import frappe
 from frappe.model.mapper import get_mapped_doc
-from frappe.utils import flt
+from frappe.utils import flt, nowdate, getdate
 from frappe import _
 
 from erpnext.controllers.selling_controller import SellingController
@@ -21,9 +21,14 @@
 		self.validate_order_type()
 		self.validate_uom_is_integer("stock_uom", "qty")
 		self.validate_quotation_to()
+		self.validate_valid_till()
 		if self.items:
 			self.with_items = 1
 
+	def validate_valid_till(self):
+		if self.valid_till and self.valid_till < self.transaction_date:
+			frappe.throw(_("Valid till date cannot be before transaction date"))
+
 	def has_sales_order(self):
 		return frappe.db.get_value("Sales Order Item", {"prevdoc_docname": self.name, "docstatus": 1})
 
@@ -100,6 +105,9 @@
 
 @frappe.whitelist()
 def make_sales_order(source_name, target_doc=None):
+	quotation = frappe.db.get_value("Quotation", source_name, ["transaction_date", "valid_till"], as_dict = 1)
+	if quotation.valid_till and (quotation.valid_till < quotation.transaction_date or quotation.valid_till < getdate(nowdate())):
+		frappe.throw(_("Validity period of this quotation has ended."))
 	return _make_sales_order(source_name, target_doc)
 
 def _make_sales_order(source_name, target_doc=None, ignore_permissions=False):
diff --git a/erpnext/selling/doctype/quotation/test_quotation.py b/erpnext/selling/doctype/quotation/test_quotation.py
index fa69df4..c642c47 100644
--- a/erpnext/selling/doctype/quotation/test_quotation.py
+++ b/erpnext/selling/doctype/quotation/test_quotation.py
@@ -3,7 +3,7 @@
 from __future__ import unicode_literals
 
 import frappe
-from frappe.utils import flt
+from frappe.utils import flt, add_days, nowdate, add_months
 import unittest
 
 test_dependencies = ["Product Bundle"]
@@ -13,10 +13,11 @@
 		from erpnext.selling.doctype.quotation.quotation import make_sales_order
 
 		quotation = frappe.copy_doc(test_records[0])
+		quotation.transaction_date = nowdate()
+		quotation.valid_till = add_months(quotation.transaction_date, 1)
 		quotation.insert()
 
 		self.assertRaises(frappe.ValidationError, make_sales_order, quotation.name)
-
 		quotation.submit()
 
 		sales_order = make_sales_order(quotation.name)
@@ -29,9 +30,21 @@
 
 		sales_order.delivery_date = "2014-01-01"
 		sales_order.naming_series = "_T-Quotation-"
-		sales_order.transaction_date = "2013-05-12"
+		sales_order.transaction_date = nowdate()
 		sales_order.insert()
 
+	def test_valid_till(self):
+		from erpnext.selling.doctype.quotation.quotation import make_sales_order
+
+		quotation = frappe.copy_doc(test_records[0])
+		quotation.valid_till = add_days(quotation.transaction_date, -1)
+		self.assertRaises(frappe.ValidationError, quotation.validate)
+
+		quotation.valid_till = add_days(nowdate(), -1)
+		quotation.insert()
+		quotation.submit()
+		self.assertRaises(frappe.ValidationError, make_sales_order, quotation.name)
+
 	def test_create_quotation_with_margin(self):
 		from erpnext.selling.doctype.quotation.quotation import make_sales_order
 		from erpnext.selling.doctype.sales_order.sales_order \
@@ -44,6 +57,8 @@
 		test_records[0]['items'][0]['margin_rate_or_amount'] = 18.75
 
 		quotation = frappe.copy_doc(test_records[0])
+		quotation.transaction_date = nowdate()
+		quotation.valid_till = add_months(quotation.transaction_date, 1)
 		quotation.insert()
 
 		self.assertEquals(quotation.get("items")[0].rate, rate_with_margin)
diff --git a/erpnext/selling/doctype/quotation/test_records.json b/erpnext/selling/doctype/quotation/test_records.json
index 5637fb9..7a9d3eb 100644
--- a/erpnext/selling/doctype/quotation/test_records.json
+++ b/erpnext/selling/doctype/quotation/test_records.json
@@ -23,14 +23,15 @@
     "parentfield": "items", 
     "qty": 10.0, 
     "rate": 100.0,
-	  "uom": "_Test UOM 1",
+	"uom": "_Test UOM 1",
     "stock_uom": "_Test UOM 1",
-	  "conversion_factor": 1.0
+	"conversion_factor": 1.0
    }
   ], 
   "quotation_to": "Customer", 
   "selling_price_list": "_Test Price List", 
   "territory": "_Test Territory", 
-  "transaction_date": "2013-02-21"
+  "transaction_date": "2013-02-21",
+  "valid_till": "2013-03-21"
  }
 ]
\ No newline at end of file
diff --git a/erpnext/selling/doctype/sales_order/test_sales_order.py b/erpnext/selling/doctype/sales_order/test_sales_order.py
index ce8c18a..7c0d7f9 100644
--- a/erpnext/selling/doctype/sales_order/test_sales_order.py
+++ b/erpnext/selling/doctype/sales_order/test_sales_order.py
@@ -16,7 +16,7 @@
 		frappe.set_user("Administrator")
 
 		for role in ("Stock User", "Sales User"):
-			set_user_permission_doctypes(doctype="Sales Order", role=role,
+			set_user_permission_doctypes(doctypes="Sales Order", role=role,
 				apply_user_permissions=0, user_permission_doctypes=None)
 
 	def test_make_material_request(self):
@@ -137,10 +137,10 @@
 		total_projected_qty = get_total_projected_qty('_Test Item')
 		item_doc_after_cancel = frappe.get_doc('Item', '_Test Item')
 		self.assertEqual(total_projected_qty,  item_doc_after_cancel.total_projected_qty)
-		
+
 	def test_reserved_qty_for_over_delivery_via_sales_invoice(self):
 		make_stock_entry(target="_Test Warehouse - _TC", qty=10, rate=100)
-		
+
 		# set over-delivery tolerance
 		frappe.db.set_value('Item', "_Test Item", 'tolerance', 50)
 
@@ -158,9 +158,9 @@
 		total_projected_qty = get_total_projected_qty('_Test Item')
 		item_doc = frappe.get_doc('Item', '_Test Item')
 		self.assertEqual(total_projected_qty,  item_doc.total_projected_qty)
-		
+
 		self.assertEqual(get_reserved_qty(), existing_reserved_qty)
-		
+
 		so.load_from_db()
 		self.assertEqual(so.get("items")[0].delivered_qty, 12)
 		self.assertEqual(so.per_delivered, 100)
@@ -170,7 +170,7 @@
 		total_projected_qty = get_total_projected_qty('_Test Item')
 		item_doc = frappe.get_doc('Item', '_Test Item')
 		self.assertEqual(total_projected_qty,  item_doc.total_projected_qty)
-		
+
 		so.load_from_db()
 		self.assertEqual(so.get("items")[0].delivered_qty, 0)
 		self.assertEqual(so.per_delivered, 0)
@@ -178,8 +178,8 @@
 	def test_reserved_qty_for_partial_delivery_with_packing_list(self):
 		make_stock_entry(target="_Test Warehouse - _TC", qty=10, rate=100)
 		make_stock_entry(item="_Test Item Home Desktop 100", target="_Test Warehouse - _TC", qty=10, rate=100)
-		
-		
+
+
 		existing_reserved_qty_item1 = get_reserved_qty("_Test Item")
 		existing_reserved_qty_item2 = get_reserved_qty("_Test Item Home Desktop 100")
 
@@ -227,7 +227,7 @@
 	def test_reserved_qty_for_over_delivery_with_packing_list(self):
 		make_stock_entry(target="_Test Warehouse - _TC", qty=10, rate=100)
 		make_stock_entry(item="_Test Item Home Desktop 100", target="_Test Warehouse - _TC", qty=10, rate=100)
-		
+
 		# set over-delivery tolerance
 		frappe.db.set_value('Item', "_Test Product Bundle Item", 'tolerance', 50)
 
@@ -257,7 +257,7 @@
 
 	def test_warehouse_user(self):
 		for role in ("Stock User", "Sales User"):
-			set_user_permission_doctypes(doctype="Sales Order", role=role,
+			set_user_permission_doctypes(doctypes="Sales Order", role=role,
 				apply_user_permissions=1, user_permission_doctypes=["Warehouse"])
 
 		frappe.permissions.add_user_permission("Warehouse", "_Test Warehouse 1 - _TC", "test@example.com")
@@ -283,6 +283,7 @@
 		frappe.set_user("test2@example.com")
 		so.insert()
 
+		frappe.set_user("Administrator")
 		frappe.permissions.remove_user_permission("Warehouse", "_Test Warehouse 1 - _TC", "test@example.com")
 		frappe.permissions.remove_user_permission("Warehouse", "_Test Warehouse 2 - _TC1", "test2@example.com")
 		frappe.permissions.remove_user_permission("Company", "_Test Company 1", "test2@example.com")
@@ -363,7 +364,7 @@
 		from erpnext.buying.doctype.purchase_order.purchase_order import update_status
 
 		make_stock_entry(target="_Test Warehouse - _TC", qty=10, rate=100)
-		
+
 		po_item = make_item("_Test Item for Drop Shipping", {"is_stock_item": 1, "delivered_by_supplier": 1,
         'default_supplier': '_Test Supplier',
 		    "expense_account": "_Test Account Cost for Goods Sold - _TC",
diff --git a/erpnext/selling/doctype/sales_order/tests/test_sales_order.js b/erpnext/selling/doctype/sales_order/tests/test_sales_order.js
new file mode 100644
index 0000000..3eceb89
--- /dev/null
+++ b/erpnext/selling/doctype/sales_order/tests/test_sales_order.js
@@ -0,0 +1,62 @@
+QUnit.module('Sales Order');
+
+QUnit.test("test sales order", function(assert) {
+	assert.expect(8);
+	let done = assert.async();
+	frappe.run_serially([
+		() => {
+			return frappe.tests.make('Sales Order', [
+				{customer: 'Test Customer 1'},
+				{items: [
+					[
+						{'delivery_date': frappe.datetime.add_days(frappe.defaults.get_default("year_end_date"), 1)},
+						{'qty': 5},
+						{'item_code': 'Test Product 4'},
+						{'uom': 'unit'},
+						{'margin_type': 'Percentage'},
+						{'discount_percentage': 10},
+					]
+				]},
+				{customer_address: 'Test1-Billing'},
+				{shipping_address_name: 'Test1-Shipping'},
+				{contact_person: 'Contact 1-Test Customer 1'},
+				{taxes_and_charges: 'TEST In State GST'},
+				{tc_name: 'Test Term 1'},
+				{terms: 'This is Test'}
+			]);
+		},
+		() => {
+			return frappe.tests.set_form_values(cur_frm, [
+				{selling_price_list:'Test-Selling-USD'},
+				{currency: 'USD'},
+				{apply_discount_on:'Grand Total'},
+				{additional_discount_percentage:10}
+			]);
+		},
+		() => cur_frm.save(),
+		() => {
+			// get_item_details
+			assert.ok(cur_frm.doc.items[0].item_name=='Test Product 4', "Item name correct");
+			// get tax details
+			assert.ok(cur_frm.doc.taxes_and_charges=='TEST In State GST', "Tax details correct");
+			// get tax account head details
+			assert.ok(cur_frm.doc.taxes[0].account_head=='CGST - '+frappe.get_abbr(frappe.defaults.get_default('Company')), " Account Head abbr correct");
+			// calculate totals
+			assert.ok(cur_frm.doc.items[0].price_list_rate==1000, "Item 1 price_list_rate");
+			assert.ok(cur_frm.doc.total== 4500, "total correct ");
+			assert.ok(cur_frm.doc.rounded_total== 4414.5, "rounded total correct ");
+
+		},
+		() => cur_frm.print_doc(),
+		() => frappe.timeout(1),
+		() => {
+			assert.ok($('.btn-print-print').is(':visible'), "Print Format Available");
+			assert.ok($(".section-break+ .section-break .column-break:nth-child(1) .data-field:nth-child(1) .value").text().includes("Billing Street 1"), "Print Preview Works As Expected");
+		},
+		() => cur_frm.print_doc(),
+		() => frappe.tests.click_button('Submit'),
+		() => frappe.tests.click_button('Yes'),
+		() => frappe.timeout(0.3),
+		() => done()
+	]);
+});
diff --git a/erpnext/selling/doctype/sales_order/tests/test_sales_order_with_discount_on_grand_total.js b/erpnext/selling/doctype/sales_order/tests/test_sales_order_with_discount_on_grand_total.js
new file mode 100644
index 0000000..3247c85
--- /dev/null
+++ b/erpnext/selling/doctype/sales_order/tests/test_sales_order_with_discount_on_grand_total.js
@@ -0,0 +1,41 @@
+QUnit.module('Sales Order');
+
+QUnit.test("test sales order with additional discount in grand total", function(assert) {
+	assert.expect(2);
+	let done = assert.async();
+	frappe.run_serially([
+		() => {
+			return frappe.tests.make('Sales Order', [
+				{customer: 'Test Customer 1'},
+				{items: [
+					[
+						{'delivery_date': frappe.datetime.add_days(frappe.defaults.get_default("year_end_date"), 1)},
+						{'qty': 5},
+						{'item_code': 'Test Product 4'},
+					]
+				]},
+				{customer_address: 'Test1-Billing'},
+				{shipping_address_name: 'Test1-Shipping'},
+				{contact_person: 'Contact 1-Test Customer 1'}
+			]);
+		},
+		() => {
+			return frappe.tests.set_form_values(cur_frm, [
+				{apply_discount_on:'Grand Total'},
+				{additional_discount_percentage:10}
+			]);
+		},
+		() => cur_frm.save(),
+		() => {
+			// get_item_details
+			assert.ok(cur_frm.doc.items[0].item_name=='Test Product 4', "Item name correct");
+			// get grand_total details
+			assert.ok(cur_frm.doc.grand_total== 450, "Grand total correct ");
+
+		},
+		() => frappe.tests.click_button('Submit'),
+		() => frappe.tests.click_button('Yes'),
+		() => frappe.timeout(0.3),
+		() => done()
+	]);
+});
diff --git a/erpnext/selling/doctype/sales_order/tests/test_sales_order_with_item_wise_discount.js b/erpnext/selling/doctype/sales_order/tests/test_sales_order_with_item_wise_discount.js
new file mode 100644
index 0000000..c745374
--- /dev/null
+++ b/erpnext/selling/doctype/sales_order/tests/test_sales_order_with_item_wise_discount.js
@@ -0,0 +1,37 @@
+QUnit.module('Sales Order');
+
+QUnit.test("test sales order", function(assert) {
+	assert.expect(2);
+	let done = assert.async();
+	frappe.run_serially([
+		() => {
+			return frappe.tests.make('Sales Order', [
+				{customer: 'Test Customer 1'},
+				{items: [
+					[
+						{'delivery_date': frappe.datetime.add_days(frappe.defaults.get_default("year_end_date"), 1)},
+						{'qty': 5},
+						{'item_code': 'Test Product 4'},
+						{'discount_percentage': 10},
+						{'margin_type': 'Percentage'}
+					]
+				]},
+				{customer_address: 'Test1-Billing'},
+				{shipping_address_name: 'Test1-Shipping'},
+				{contact_person: 'Contact 1-Test Customer 1'}
+			]);
+		},
+		() => cur_frm.save(),
+		() => {
+			// get_item_details
+			assert.ok(cur_frm.doc.items[0].item_name=='Test Product 4', "Item name correct");
+			// get grand_total details
+			assert.ok(cur_frm.doc.grand_total== 450, "Grand total correct ");
+
+		},
+		() => frappe.tests.click_button('Submit'),
+		() => frappe.tests.click_button('Yes'),
+		() => frappe.timeout(0.3),
+		() => done()
+	]);
+});
diff --git a/erpnext/selling/doctype/sales_order/tests/test_sales_order_with_multi_uom.js b/erpnext/selling/doctype/sales_order/tests/test_sales_order_with_multi_uom.js
new file mode 100644
index 0000000..74f51ca
--- /dev/null
+++ b/erpnext/selling/doctype/sales_order/tests/test_sales_order_with_multi_uom.js
@@ -0,0 +1,38 @@
+QUnit.module('Sales Order');
+
+QUnit.test("test sales order", function(assert) {
+	assert.expect(3);
+	let done = assert.async();
+	frappe.run_serially([
+		() => {
+			return frappe.tests.make('Sales Order', [
+				{customer: 'Test Customer 1'},
+				{items: [
+					[
+						{'delivery_date': frappe.datetime.add_days(frappe.defaults.get_default("year_end_date"), 1)},
+						{'qty': 5},
+						{'item_code': 'Test Product 4'},
+						{'uom': 'unit'},
+					]
+				]},
+				{customer_address: 'Test1-Billing'},
+				{shipping_address_name: 'Test1-Shipping'},
+				{contact_person: 'Contact 1-Test Customer 1'}
+			]);
+		},
+		() => cur_frm.save(),
+		() => {
+			// get_item_details
+			assert.ok(cur_frm.doc.items[0].item_name=='Test Product 4', "Item name correct");
+			// get uom details
+			assert.ok(cur_frm.doc.items[0].uom=='Unit', "Multi Uom correct");
+			// get grand_total details
+			assert.ok(cur_frm.doc.grand_total== 5000, "Grand total correct ");
+
+		},
+		() => frappe.tests.click_button('Submit'),
+		() => frappe.tests.click_button('Yes'),
+		() => frappe.timeout(0.3),
+		() => done()
+	]);
+});
diff --git a/erpnext/selling/doctype/sales_order/test_sales_order.js b/erpnext/selling/doctype/sales_order/tests/test_sales_order_with_multiple_delivery_date.js
similarity index 96%
rename from erpnext/selling/doctype/sales_order/test_sales_order.js
rename to erpnext/selling/doctype/sales_order/tests/test_sales_order_with_multiple_delivery_date.js
index 87f0e96..8e05385 100644
--- a/erpnext/selling/doctype/sales_order/test_sales_order.js
+++ b/erpnext/selling/doctype/sales_order/tests/test_sales_order_with_multiple_delivery_date.js
@@ -27,7 +27,7 @@
 			assert.ok(cur_frm.doc.items[0].delivery_date == delivery_date);
 		},
 		() => frappe.timeout(1),
-		// make SO without delivery date in parent, 
+		// make SO without delivery date in parent,
 		// parent delivery date should be set based on final delivery date entered in item
 		() => {
 			return frappe.tests.make('Sales Order', [
diff --git a/erpnext/selling/doctype/sales_order/tests/test_sales_order_with_pricing_rule.js b/erpnext/selling/doctype/sales_order/tests/test_sales_order_with_pricing_rule.js
new file mode 100644
index 0000000..e91fb01
--- /dev/null
+++ b/erpnext/selling/doctype/sales_order/tests/test_sales_order_with_pricing_rule.js
@@ -0,0 +1,34 @@
+QUnit.module('Sales Order');
+
+QUnit.test("test sales order with shipping rule", function(assert) {
+	assert.expect(2);
+	let done = assert.async();
+	frappe.run_serially([
+		() => {
+			return frappe.tests.make('Sales Order', [
+				{customer: 'Test Customer 3'},
+				{items: [
+					[
+						{'delivery_date': frappe.datetime.add_days(frappe.defaults.get_default("year_end_date"), 1)},
+						{'qty': 5},
+						{'item_code': 'Test Product 2'},
+					]
+				]},
+				{customer_address: 'Test1-Billing'},
+				{shipping_address_name: 'Test1-Shipping'},
+				{contact_person: 'Contact 1-Test Customer 1'},
+			]);
+		},
+		() => cur_frm.save(),
+		() => {
+			// get_item_details
+			assert.ok(cur_frm.doc.items[0].item_name=='Test Product 2', "Item name correct");
+			// get grand_total details
+			assert.ok(cur_frm.doc.grand_total== 675, "Grand total correct ");
+		},
+		() => frappe.tests.click_button('Submit'),
+		() => frappe.tests.click_button('Yes'),
+		() => frappe.timeout(0.3),
+		() => done()
+	]);
+});
diff --git a/erpnext/selling/doctype/sales_order/tests/test_sales_order_with_shipping_rule.js b/erpnext/selling/doctype/sales_order/tests/test_sales_order_with_shipping_rule.js
new file mode 100644
index 0000000..7d1211f
--- /dev/null
+++ b/erpnext/selling/doctype/sales_order/tests/test_sales_order_with_shipping_rule.js
@@ -0,0 +1,35 @@
+QUnit.module('Sales Order');
+
+QUnit.test("test sales order with shipping rule", function(assert) {
+	assert.expect(2);
+	let done = assert.async();
+	frappe.run_serially([
+		() => {
+			return frappe.tests.make('Sales Order', [
+				{customer: 'Test Customer 1'},
+				{items: [
+					[
+						{'delivery_date': frappe.datetime.add_days(frappe.defaults.get_default("year_end_date"), 1)},
+						{'qty': 5},
+						{'item_code': 'Test Product 4'},
+					]
+				]},
+				{customer_address: 'Test1-Billing'},
+				{shipping_address_name: 'Test1-Shipping'},
+				{contact_person: 'Contact 1-Test Customer 1'},
+				{shipping_rule:'Next Day Shipping'}
+			]);
+		},
+		() => cur_frm.save(),
+		() => {
+			// get_item_details
+			assert.ok(cur_frm.doc.items[0].item_name=='Test Product 4', "Item name correct");
+			// get grand_total details
+			assert.ok(cur_frm.doc.grand_total== 550, "Grand total correct ");
+		},
+		() => frappe.tests.click_button('Submit'),
+		() => frappe.tests.click_button('Yes'),
+		() => frappe.timeout(0.3),
+		() => done()
+	]);
+});
diff --git a/erpnext/selling/doctype/sales_order/tests/test_sales_order_with_taxes_and_charges.js b/erpnext/selling/doctype/sales_order/tests/test_sales_order_with_taxes_and_charges.js
new file mode 100644
index 0000000..c946443
--- /dev/null
+++ b/erpnext/selling/doctype/sales_order/tests/test_sales_order_with_taxes_and_charges.js
@@ -0,0 +1,40 @@
+QUnit.module('Sales Order');
+
+QUnit.test("test sales order with taxes and charges", function(assert) {
+	assert.expect(3);
+	let done = assert.async();
+	frappe.run_serially([
+		() => {
+			return frappe.tests.make('Sales Order', [
+				{customer: 'Test Customer 1'},
+				{items: [
+					[
+						{'delivery_date': frappe.datetime.add_days(frappe.defaults.get_default("year_end_date"), 1)},
+						{'qty': 5},
+						{'item_code': 'Test Product 4'},
+					]
+				]},
+				{customer_address: 'Test1-Billing'},
+				{shipping_address_name: 'Test1-Shipping'},
+				{contact_person: 'Contact 1-Test Customer 1'},
+				{taxes_and_charges: 'TEST In State GST'},
+				{tc_name: 'Test Term 1'},
+				{terms: 'This is Test'}
+			]);
+		},
+		() => cur_frm.save(),
+		() => {
+			// get_item_details
+			assert.ok(cur_frm.doc.items[0].item_name=='Test Product 4', "Item name correct");
+			// get tax details
+			assert.ok(cur_frm.doc.taxes_and_charges=='TEST In State GST', "Tax details correct");
+			// get tax account head details
+			assert.ok(cur_frm.doc.taxes[0].account_head=='CGST - '+frappe.get_abbr(frappe.defaults.get_default('Company')), " Account Head abbr correct");
+
+		},
+		() => frappe.tests.click_button('Submit'),
+		() => frappe.tests.click_button('Yes'),
+		() => frappe.timeout(0.3),
+		() => done()
+	]);
+});
diff --git a/erpnext/setup/doctype/company/test_company.js b/erpnext/setup/doctype/company/tests/test_company.js
similarity index 100%
rename from erpnext/setup/doctype/company/test_company.js
rename to erpnext/setup/doctype/company/tests/test_company.js
diff --git a/erpnext/setup/doctype/company/tests/test_company_production.js b/erpnext/setup/doctype/company/tests/test_company_production.js
new file mode 100644
index 0000000..73bd710
--- /dev/null
+++ b/erpnext/setup/doctype/company/tests/test_company_production.js
@@ -0,0 +1,19 @@
+QUnit.test("Test: Company", function (assert) {
+	assert.expect(0);
+
+	let done = assert.async();
+
+	frappe.run_serially([
+		// Added company for Production Order testing
+		() => frappe.set_route("List", "Company"),
+		() => frappe.new_doc("Company"),
+		() => frappe.timeout(1),
+		() => cur_frm.set_value("company_name", "Razer Blade"),
+		() => cur_frm.set_value("abbr", "RB"),
+		() => cur_frm.set_value("default_currency", "USD"),
+		() => cur_frm.save(),
+		() => frappe.timeout(1),
+
+		() => done()
+	]);
+});
\ No newline at end of file
diff --git a/erpnext/setup/page/welcome_to_erpnext/welcome_to_erpnext.html b/erpnext/setup/page/welcome_to_erpnext/welcome_to_erpnext.html
index cd4d977..57fce28 100644
--- a/erpnext/setup/page/welcome_to_erpnext/welcome_to_erpnext.html
+++ b/erpnext/setup/page/welcome_to_erpnext/welcome_to_erpnext.html
@@ -22,7 +22,7 @@
 			<ul class="list-unstyled">
 				<li><a class="text-muted" href="#">{%= __("Go to the Desktop and start using ERPNext") %}</a></li>
 				<li><a class="text-muted" href="#modules/Learn">{%= __("View a list of all the help videos") %}</a></li>
-				<li><a class="text-muted" href="https://frappe.github.io/erpnext/user" target="_blank">{%= __("Read the ERPNext Manual") %}</a></li>
+				<li><a class="text-muted" href="https://erpnext.org/docs/user" target="_blank">{%= __("Read the ERPNext Manual") %}</a></li>
 				<li><a class="text-muted" href="https://discuss.erpnext.com" target="_blank">{%= __("Community Forum") %}</a></li>
 			</ul>
 
diff --git a/erpnext/setup/setup_wizard/install_fixtures.py b/erpnext/setup/setup_wizard/install_fixtures.py
index f139d92..ea6da04 100644
--- a/erpnext/setup/setup_wizard/install_fixtures.py
+++ b/erpnext/setup/setup_wizard/install_fixtures.py
@@ -233,10 +233,10 @@
 
 		try:
 			doc.insert(ignore_permissions=True)
-		except frappe.DuplicateEntryError, e:
+		except frappe.DuplicateEntryError as e:
 			# pass DuplicateEntryError and continue
 			if e.args and e.args[0]==doc.doctype and e.args[1]==doc.name:
 				# make sure DuplicateEntryError is for the exact same doc and not a related doc
 				pass
 			else:
-				raise
\ No newline at end of file
+				raise
diff --git a/erpnext/setup/utils.py b/erpnext/setup/utils.py
index 086235e..888099f 100644
--- a/erpnext/setup/utils.py
+++ b/erpnext/setup/utils.py
@@ -107,7 +107,7 @@
 		_role.save()
 
 	# add all roles to users
-	user = frappe.get_doc("User", "test@erpnext.com")
+	user = frappe.get_doc("User", "Administrator")
 	user.add_roles(*[role.get("name") for role in roles])
 
 	domains = frappe.get_list("Domain")
diff --git a/erpnext/shopping_cart/test_shopping_cart.py b/erpnext/shopping_cart/test_shopping_cart.py
index f221a8a..22b2895 100644
--- a/erpnext/shopping_cart/test_shopping_cart.py
+++ b/erpnext/shopping_cart/test_shopping_cart.py
@@ -4,6 +4,7 @@
 from __future__ import unicode_literals
 import unittest
 import frappe
+from frappe.utils import nowdate, add_months
 from erpnext.shopping_cart.cart import _get_cart_quotation, update_cart, get_party
 from erpnext.tests.utils import create_test_contact_and_address
 
@@ -126,6 +127,8 @@
 			"selling_price_list": "_Test Price List Rest of the World",
 			"currency": "USD",
 			"taxes_and_charges" : "_Test Tax 1",
+			"transaction_date" : nowdate(),
+			"valid_till" : add_months(nowdate(), 1),
 			"items": [{
 				"item_code": "_Test Item",
 				"qty": 1
diff --git a/erpnext/stock/doctype/item/item.py b/erpnext/stock/doctype/item/item.py
index 2c6aab5..5dc97f6 100644
--- a/erpnext/stock/doctype/item/item.py
+++ b/erpnext/stock/doctype/item/item.py
@@ -132,7 +132,8 @@
 		from erpnext.stock.doctype.stock_entry.stock_entry_utils import make_stock_entry
 
 		# default warehouse, or Stores
-		default_warehouse = (frappe.db.get_single_value('Stock Settings', 'default_warehouse')
+		default_warehouse = (self.default_warehouse
+			or frappe.db.get_single_value('Stock Settings', 'default_warehouse')
 			or frappe.db.get_value('Warehouse', {'warehouse_name': _('Stores')}))
 
 		if default_warehouse:
@@ -696,7 +697,7 @@
 	if verbose:
 		msgprint(msg, raise_exception=True)
 	else:
-		raise frappe.ValidationError, msg
+		raise frappe.ValidationError(msg)
 
 
 def get_last_purchase_details(item_code, doc_name=None, conversion_rate=1.0):
diff --git a/erpnext/stock/doctype/manufacturer/manufacturer.js b/erpnext/stock/doctype/manufacturer/manufacturer.js
new file mode 100644
index 0000000..67df1bf
--- /dev/null
+++ b/erpnext/stock/doctype/manufacturer/manufacturer.js
@@ -0,0 +1,8 @@
+// Copyright (c) 2017, Frappe Technologies Pvt. Ltd. and contributors
+// For license information, please see license.txt
+
+frappe.ui.form.on('Manufacturer', {
+	refresh: function(frm) {
+
+	}
+});
diff --git a/erpnext/stock/doctype/manufacturer/manufacturer.json b/erpnext/stock/doctype/manufacturer/manufacturer.json
index 4e1da10..5025917 100644
--- a/erpnext/stock/doctype/manufacturer/manufacturer.json
+++ b/erpnext/stock/doctype/manufacturer/manufacturer.json
@@ -1,5 +1,6 @@
 {
  "allow_copy": 0, 
+ "allow_guest_to_view": 0, 
  "allow_import": 1, 
  "allow_rename": 1, 
  "autoname": "field:short_name", 
@@ -13,6 +14,7 @@
  "editable_grid": 0, 
  "fields": [
   {
+   "allow_bulk_edit": 0, 
    "allow_on_submit": 0, 
    "bold": 0, 
    "collapsible": 0, 
@@ -43,6 +45,7 @@
    "unique": 0
   }, 
   {
+   "allow_bulk_edit": 0, 
    "allow_on_submit": 0, 
    "bold": 0, 
    "collapsible": 0, 
@@ -72,6 +75,7 @@
    "unique": 0
   }, 
   {
+   "allow_bulk_edit": 0, 
    "allow_on_submit": 0, 
    "bold": 0, 
    "collapsible": 0, 
@@ -101,11 +105,12 @@
    "unique": 0
   }, 
   {
+   "allow_bulk_edit": 0, 
    "allow_on_submit": 0, 
    "bold": 0, 
    "collapsible": 0, 
    "columns": 0, 
-   "fieldname": "data_6", 
+   "fieldname": "country", 
    "fieldtype": "Link", 
    "hidden": 0, 
    "ignore_user_permissions": 0, 
@@ -131,6 +136,7 @@
    "unique": 0
   }, 
   {
+   "allow_bulk_edit": 0, 
    "allow_on_submit": 0, 
    "bold": 0, 
    "collapsible": 0, 
@@ -160,6 +166,7 @@
    "unique": 0
   }, 
   {
+   "allow_bulk_edit": 0, 
    "allow_on_submit": 0, 
    "bold": 0, 
    "collapsible": 0, 
@@ -189,18 +196,18 @@
    "unique": 0
   }
  ], 
+ "has_web_view": 0, 
  "hide_heading": 0, 
  "hide_toolbar": 0, 
  "icon": "fa fa-certificate", 
  "idx": 0, 
  "image_view": 0, 
  "in_create": 0, 
- "in_dialog": 0, 
  "is_submittable": 0, 
  "issingle": 0, 
  "istable": 0, 
  "max_attachments": 0, 
- "modified": "2017-02-20 13:28:13.374242", 
+ "modified": "2017-08-03 06:27:57.182666", 
  "modified_by": "Administrator", 
  "module": "Stock", 
  "name": "Manufacturer", 
diff --git a/erpnext/stock/doctype/manufacturer/test_manufacturer.js b/erpnext/stock/doctype/manufacturer/test_manufacturer.js
new file mode 100644
index 0000000..0254a36
--- /dev/null
+++ b/erpnext/stock/doctype/manufacturer/test_manufacturer.js
@@ -0,0 +1,23 @@
+/* eslint-disable */
+// rename this file from _test_[name] to test_[name] to activate
+// and remove above this line
+
+QUnit.test("test: Manufacturer", function (assert) {
+	let done = assert.async();
+
+	// number of asserts
+	assert.expect(1);
+
+	frappe.run_serially('Manufacturer', [
+		// insert a new Manufacturer
+		() => frappe.tests.make([
+			// values to be set
+			{key: 'value'}
+		]),
+		() => {
+			assert.equal(cur_frm.doc.key, 'value');
+		},
+		() => done()
+	]);
+
+});
diff --git a/erpnext/stock/doctype/material_request/material_request.js b/erpnext/stock/doctype/material_request/material_request.js
index 3361020..fc0b9b2 100644
--- a/erpnext/stock/doctype/material_request/material_request.js
+++ b/erpnext/stock/doctype/material_request/material_request.js
@@ -36,9 +36,14 @@
 			frappe.msgprint(__("Warning: Material Requested Qty is less than Minimum Order Qty"));
 		}
 	},
+
 	item_code: function(frm, doctype, name) {
 		frm.script_manager.copy_from_first_row('items', frm.selected_doc,
 			'schedule_date');
+	},
+
+	schedule_date: function(frm, cdt, cdn) {
+		erpnext.utils.copy_value_in_all_row(frm.doc, cdt, cdn, "items", "schedule_date");
 	}
 });
 
diff --git a/erpnext/stock/doctype/stock_entry/test_stock_entry.py b/erpnext/stock/doctype/stock_entry/test_stock_entry.py
index fdb65cd..92de229 100644
--- a/erpnext/stock/doctype/stock_entry/test_stock_entry.py
+++ b/erpnext/stock/doctype/stock_entry/test_stock_entry.py
@@ -32,7 +32,7 @@
 		set_perpetual_inventory(0)
 
 		for role in ("Stock User", "Sales User"):
-			set_user_permission_doctypes(doctype="Stock Entry", role=role,
+			set_user_permission_doctypes(doctypes="Stock Entry", role=role,
 				apply_user_permissions=0, user_permission_doctypes=None)
 
 	def test_fifo(self):
@@ -188,18 +188,18 @@
 			[["_Test Item", "_Test Warehouse - _TC", -45.0], ["_Test Item", "_Test Warehouse 1 - _TC", 45.0]])
 
 		stock_in_hand_account = get_inventory_account(mtn.company, mtn.get("items")[0].s_warehouse)
-		
+
 		fixed_asset_account = get_inventory_account(mtn.company, mtn.get("items")[0].t_warehouse)
-			
+
 		if stock_in_hand_account == fixed_asset_account:
 			# no gl entry as both source and target warehouse has linked to same account.
 			self.assertFalse(frappe.db.sql("""select * from `tabGL Entry`
 				where voucher_type='Stock Entry' and voucher_no=%s""", mtn.name))
-			
+
 		else:
 			stock_value_diff = abs(frappe.db.get_value("Stock Ledger Entry", {"voucher_type": "Stock Entry",
 				"voucher_no": mtn.name, "warehouse": "_Test Warehouse - _TC"}, "stock_value_difference"))
-		
+
 			self.check_gl_entries("Stock Entry", mtn.name,
 				sorted([
 					[stock_in_hand_account, 0.0, stock_value_diff],
@@ -467,7 +467,7 @@
 	# permission tests
 	def test_warehouse_user(self):
 		for role in ("Stock User", "Sales User"):
-			set_user_permission_doctypes(doctype="Stock Entry", role=role,
+			set_user_permission_doctypes(doctypes="Stock Entry", role=role,
 				apply_user_permissions=1, user_permission_doctypes=["Warehouse"])
 
 		frappe.defaults.add_default("Warehouse", "_Test Warehouse 1 - _TC", "test@example.com", "User Permission")
diff --git a/erpnext/stock/doctype/stock_reconciliation/stock_reconciliation.py b/erpnext/stock/doctype/stock_reconciliation/stock_reconciliation.py
index 9c42529..360ebca 100644
--- a/erpnext/stock/doctype/stock_reconciliation/stock_reconciliation.py
+++ b/erpnext/stock/doctype/stock_reconciliation/stock_reconciliation.py
@@ -143,16 +143,16 @@
 
 			# item should not be serialized
 			if item.has_serial_no == 1:
-				raise frappe.ValidationError, _("Serialized Item {0} cannot be updated using Stock Reconciliation, please use Stock Entry").format(item_code)
+				raise frappe.ValidationError(_("Serialized Item {0} cannot be updated using Stock Reconciliation, please use Stock Entry").format(item_code))
 
 			# item managed batch-wise not allowed
 			if item.has_batch_no == 1:
-				raise frappe.ValidationError, _("Batched Item {0} cannot be updated using Stock Reconciliation, instead use Stock Entry").format(item_code)
+				raise frappe.ValidationError(_("Batched Item {0} cannot be updated using Stock Reconciliation, instead use Stock Entry").format(item_code))
 
 			# docstatus should be < 2
 			validate_cancelled_item(item_code, item.docstatus, verbose=0)
 
-		except Exception, e:
+		except Exception as e:
 			self.validation_messages.append(_("Row # ") + ("%d: " % (row_num)) + cstr(e))
 
 	def update_stock_ledger(self):
diff --git a/erpnext/stock/doctype/warehouse/test_warehouse.js b/erpnext/stock/doctype/warehouse/test_warehouse.js
new file mode 100644
index 0000000..f13bc58
--- /dev/null
+++ b/erpnext/stock/doctype/warehouse/test_warehouse.js
@@ -0,0 +1,19 @@
+QUnit.test("test: warehouse", function (assert) {
+	assert.expect(0);
+	let done = assert.async();
+
+	frappe.run_serially([
+		// test warehouse creation
+		() => frappe.set_route("List", "Warehouse"),
+
+		// Create a Laptop Scrap Warehouse
+		() => frappe.tests.make(
+			"Warehouse", [
+				{warehouse_name: "Laptop Scrap Warehouse"},
+				{company: "Razer Blade"}
+			]
+		),
+
+		() => done()
+	]);
+});
\ No newline at end of file
diff --git a/erpnext/stock/stock_ledger.py b/erpnext/stock/stock_ledger.py
index 8022691..7c6b34b 100644
--- a/erpnext/stock/stock_ledger.py
+++ b/erpnext/stock/stock_ledger.py
@@ -378,7 +378,7 @@
 		if self.verbose:
 			frappe.throw(msg, NegativeStockError, title='Insufficent Stock')
 		else:
-			raise NegativeStockError, msg
+			raise NegativeStockError(msg)
 
 def get_previous_sle(args, for_update=False):
 	"""
diff --git a/erpnext/support/web_form/issues/issues.json b/erpnext/support/web_form/issues/issues.json
index 6474799..264b9df 100644
--- a/erpnext/support/web_form/issues/issues.json
+++ b/erpnext/support/web_form/issues/issues.json
@@ -7,16 +7,18 @@
  "allow_multiple": 1, 
  "allow_print": 0, 
  "amount": 0.0, 
- "breadcrumbs": "[{\"title\":\"Issues\", \"name\":\"issues\"}]", 
+ "amount_based_on_field": 0, 
+ "breadcrumbs": "[{\"label\":_(\"Issues\"), \"route\":\"issues\"}]", 
  "creation": "2016-06-24 15:50:33.186483", 
  "doc_type": "Issue", 
  "docstatus": 0, 
  "doctype": "Web Form", 
  "idx": 0, 
+ "introduction_text": "", 
  "is_standard": 1, 
  "login_required": 1, 
  "max_attachment_size": 0, 
- "modified": "2016-12-07 04:26:13.917693", 
+ "modified": "2017-07-25 22:49:10.762704", 
  "modified_by": "Administrator", 
  "module": "Support", 
  "name": "issues", 
diff --git a/erpnext/templates/emails/daily_work_summary.html b/erpnext/templates/emails/daily_work_summary.html
index 726de3b..a22e09c 100644
--- a/erpnext/templates/emails/daily_work_summary.html
+++ b/erpnext/templates/emails/daily_work_summary.html
@@ -1,28 +1,25 @@
 <table border="0" cellpadding="0" cellspacing="0" width="100%">
 	<tr>
-		<div style="color: #333; font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif; word-wrap: break-word; overflow-wrap: break-word;">
-			<h3>{{ title }}</h3>
-		</div>
+		<h3>{{ title }}</h3>
 	</tr>
 </table>
 {% for reply in replies %}
-<table border="0" cellpadding="0" cellspacing="0" width="100%"
-	style="background-color: #fafbfc; border: 1px solid #d1d8dd; border-radius: 3px 3px 0 0">
+<table class="panel-header" border="0" cellpadding="0" cellspacing="0" width="100%">
 	<tr height="10"></tr>
 	<tr>
 		<td width="15"></td>
 		<td valign="top" width="24">
 			{% if reply.image %}
-			<img width="24" height="24" embed="{{ reply.image }}" style="border-radius: 3px; vertical-align: middle;" />
+			<img class="sender-avatar" width="24" height="24" embed="{{ reply.image }}"/>
 			{% else %}
-			<div style="width: 24px; height: 24px; font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif;background: #fff; border-radius: 3px; border: 1px solid #d1d8dd; text-align: center; line-height: 24px; color: #d1d8dd;">
+			<div class="sender-avatar-placeholder">
 				{{ reply.sender_name[0] }}
 			</div>
 			{% endif %}
 		</td>
 		<td width="10"></td>
 		<td>
-			<div style="font-size: 12px; color: #8D99A6; font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif; word-wrap: break-word; line-height: 22px; overflow-wrap: break-word; text-decoration: none;">
+			<div class="text-medium text-muted">
 				<span>{{ reply.sender_name }}</span>
 			</div>
 		</td>
@@ -30,13 +27,12 @@
 	</tr>
 	<tr height="10"></tr>
 </table>
-<table border="0" cellpadding="0" cellspacing="0" width="100%"
-	style="background-color: #fff; border: 1px solid #d1d8dd; border-top: none; border-radius: 0 0 3px 3px">
+<table class="panel-body" border="0" cellpadding="0" cellspacing="0" width="100%">
 	<tr height="10"></tr>
 	<tr>
 		<td width="15"></td>
 		<td>
-			<div style="font-size: 14px; color: #333; font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif; word-wrap: break-word; line-height: 22px; overflow-wrap: break-word; text-decoration: none;">
+			<div>
 				{{ reply.content }}
 			</div>
 		</td>
@@ -51,7 +47,7 @@
 {% if did_not_reply %}
 <table border="0" cellpadding="0" cellspacing="0" width="100%">
 	<tr>
-		<div style="font-size: 14px; color: #8D99A6; font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif; word-wrap: break-word; line-height: 22px; overflow-wrap: break-word; text-decoration: none;">
+		<div class="text-muted">
 			<p>{{ did_not_reply_title }}: {{ did_not_reply }}</p>
 		</div>
 	</tr>
diff --git a/erpnext/templates/includes/announcement/announcement_row.html b/erpnext/templates/includes/announcement/announcement_row.html
index d807bfc..3099441 100644
--- a/erpnext/templates/includes/announcement/announcement_row.html
+++ b/erpnext/templates/includes/announcement/announcement_row.html
@@ -3,12 +3,12 @@
 		<div class="row">
 			<a href="/announcements?announcement={{doc.name}}">
 				<div class="col-xs-12">
-					<h1 class="blog-header">{{ doc.subject }}</h1>
+					<h1>{{ doc.subject }}</h1>
 					<p class="post-description more">{{ doc.description }}</p>
 					<p class="post-by text-muted small">
 						<i>{{ doc.posted_by }}</i>
-						<i class="blog-dot"></i> {{ frappe.format_date(doc.modified) }}
-						<i class="blog-dot"></i> {{ doc.num_attachments }} attachments
+						<i class="spacer-dot"></i> {{ frappe.format_date(doc.modified) }}
+						<i class="spacer-dot"></i> {{ doc.num_attachments }} attachments
 					</p>
 				</div>
 			</a>
diff --git a/erpnext/templates/pages/order.html b/erpnext/templates/pages/order.html
index da9eb33..3e4eca3 100644
--- a/erpnext/templates/pages/order.html
+++ b/erpnext/templates/pages/order.html
@@ -80,7 +80,7 @@
 			<div class="page-header-actions-block" data-html-block="header-actions">
 				<p>
 				    <a href="/api/method/erpnext.accounts.doctype.payment_request.payment_request.make_payment_request?dn={{ doc.name }}&dt={{ doc.doctype }}&submit_doc=1"
-				        class="btn btn-primary btn-sm">Pay {{ doc.get_formatted("grand_total") }} </a>
+				        class="btn btn-primary btn-sm">{{ _("Pay") }} {{ doc.get_formatted("grand_total") }} </a>
 				</p>
 			</div>
 			{% endif %}
diff --git a/erpnext/templates/pages/order.py b/erpnext/templates/pages/order.py
index b453c7e..7551a0f 100644
--- a/erpnext/templates/pages/order.py
+++ b/erpnext/templates/pages/order.py
@@ -18,6 +18,7 @@
                 context.attachments = get_attachments(frappe.form_dict.doctype, frappe.form_dict.name)
 
 	context.parents = frappe.form_dict.parents
+	context.title = frappe.form_dict.name
 	context.payment_ref = frappe.db.get_value("Payment Request",
 		{"reference_name": frappe.form_dict.name}, "name")
 
diff --git a/erpnext/tests/ui/tests.txt b/erpnext/tests/ui/tests.txt
index 84af433..b08c18e 100644
--- a/erpnext/tests/ui/tests.txt
+++ b/erpnext/tests/ui/tests.txt
@@ -1,20 +1,58 @@
 erpnext/tests/ui/make_fixtures.js #long
-erpnext/setup/doctype/company/test_company.js
+erpnext/setup/doctype/company/tests/test_company.js
 erpnext/accounts/doctype/account/test_account.js
+erpnext/accounts/doctype/account/test_make_tax_account.js
+erpnext/accounts/doctype/pricing_rule/test_pricing_rule.js
+erpnext/accounts/doctype/sales_taxes_and_charges_template/test_sales_taxes_and_charges_template.js
+erpnext/accounts/doctype/shipping_rule/test_shipping_rule.js
 erpnext/crm/doctype/lead/test_lead.js
 erpnext/crm/doctype/opportunity/test_opportunity.js
 erpnext/selling/doctype/quotation/test_quotation.js
+erpnext/setup/doctype/company/tests/test_company_production.js
 erpnext/crm/doctype/item/test_item.js
+erpnext/selling/doctype/sales_order/tests/test_sales_order.js
+erpnext/selling/doctype/sales_order/tests/test_sales_order_with_multiple_delivery_date.js
+erpnext/selling/doctype/sales_order/tests/test_sales_order_with_item_wise_discount.js
+erpnext/selling/doctype/sales_order/tests/test_sales_order_with_multi_uom.js
+erpnext/selling/doctype/sales_order/tests/test_sales_order_with_discount_on_grand_total.js
+erpnext/selling/doctype/sales_order/tests/test_sales_order_with_taxes_and_charges.js
+erpnext/selling/doctype/sales_order/tests/test_sales_order_with_shipping_rule.js
+erpnext/selling/doctype/sales_order/tests/test_sales_order_with_pricing_rule.js
 erpnext/manufacturing/doctype/workstation/test_workstation.js
 erpnext/manufacturing/doctype/operation/test_operation.js
 erpnext/manufacturing/doctype/bom/test_bom.js
+erpnext/projects/doctype/project/project_timesheet.js
 erpnext/hr/doctype/holiday_list/test_holiday_list.js
 erpnext/hr/doctype/branch/test_branch.js
-erpnext/manufacturing/doctype/bom/test_bom.js
-erpnext/projects/doctype/project/project_timesheet.js
 erpnext/hr/doctype/leave_block_list/test_leave_block_list.js
 erpnext/hr/doctype/department/test_department.js
 erpnext/hr/doctype/designation/test_designation.js
 erpnext/hr/doctype/employment_type/test_employment_type.js
 erpnext/hr/doctype/employee/test_employee.js
-erpnext/selling/doctype/sales_order/test_sales_order.js
\ No newline at end of file
+erpnext/hr/doctype/employee_attendance_tool/test_employee_attendance_tool.js
+erpnext/hr/doctype/attendance/test_attendance.js
+erpnext/hr/doctype/leave_type/test_leave_type.js
+erpnext/hr/doctype/leave_control_panel/test_leave_control_panel.js
+erpnext/hr/doctype/leave_allocation/test_leave_allocation.js
+erpnext/hr/doctype/leave_application/test_leave_application.js
+erpnext/schools/doctype/academic_year/test_academic_year.js
+erpnext/schools/doctype/academic_term/test_academic_term.js
+erpnext/schools/doctype/school_settings/test_school_settings.js
+erpnext/schools/doctype/student_batch_name/test_student_batch_name.js
+erpnext/schools/doctype/student_category/test_student_category.js
+erpnext/schools/doctype/room/test_room.js
+erpnext/schools/doctype/instructor/test_instructor.js
+erpnext/stock/doctype/warehouse/test_warehouse.js
+erpnext/manufacturing/doctype/production_order/test_production_order.js #long
+erpnext/accounts/page/pos/test_pos.js
+erpnext/selling/doctype/product_bundle/test_product_bundle.js
+erpnext/schools/doctype/grading_scale/test_grading_scale.js
+erpnext/schools/doctype/assessment_criteria_group/test_assessment_criteria_group.js
+erpnext/schools/doctype/assessment_criteria/test_assessment_criteria.js
+erpnext/schools/doctype/course/test_course.js
+erpnext/schools/doctype/program/test_program.js
+erpnext/schools/doctype/guardian/test_guardian.js
+erpnext/schools/doctype/student_admission/test_student_admission.js
+erpnext/schools/doctype/student_applicant/tests/test_student_applicant_dummy_data.js
+erpnext/schools/doctype/student_applicant/tests/test_student_applicant.js
+erpnext/schools/doctype/student_applicant/tests/test_student_applicant_options.js
\ No newline at end of file
