diff --git a/erpnext/docs/assets/old_images/erpnext/budgeting-1.png b/erpnext/docs/assets/old_images/erpnext/budgeting-1.png
deleted file mode 100644
index 29038a0..0000000
--- a/erpnext/docs/assets/old_images/erpnext/budgeting-1.png
+++ /dev/null
Binary files differ
diff --git a/erpnext/docs/assets/old_images/erpnext/budgeting-2-1.png b/erpnext/docs/assets/old_images/erpnext/budgeting-2-1.png
deleted file mode 100644
index 7cd431e..0000000
--- a/erpnext/docs/assets/old_images/erpnext/budgeting-2-1.png
+++ /dev/null
Binary files differ
diff --git a/erpnext/docs/assets/old_images/erpnext/budgeting-3.png b/erpnext/docs/assets/old_images/erpnext/budgeting-3.png
deleted file mode 100644
index 29037c7..0000000
--- a/erpnext/docs/assets/old_images/erpnext/budgeting-3.png
+++ /dev/null
Binary files differ
diff --git a/erpnext/docs/assets/old_images/erpnext/budgeting-4-1.png b/erpnext/docs/assets/old_images/erpnext/budgeting-4-1.png
deleted file mode 100644
index 6348f1e..0000000
--- a/erpnext/docs/assets/old_images/erpnext/budgeting-4-1.png
+++ /dev/null
Binary files differ
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 042e800..010d897 100644
--- a/erpnext/docs/user/manual/en/accounts/advance-payment-entry.md
+++ b/erpnext/docs/user/manual/en/accounts/advance-payment-entry.md
@@ -7,19 +7,17 @@
 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.
+Once Sales Order or Purchase Order is submitted, you will find option to create Advance Payment entry against it.
+
+To directly create Advance Payment Entry, Go to:
 
 > 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.  
+Select a Voucher Type based on a mode in which advance payment is made.
 
 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
+credit entry against the customer. To balance it with the debit entry [as per the Double
+accounting system] enter $5000 as debit against the company's cash account. In
 the row "Is Advance" click 'Yes'.
 
 #### Figure 1 : Journal Entry -Advance Entry  
@@ -43,7 +41,7 @@
 
 <img class="screenshot" alt="Advace Payment" src="{{docs_base_url}}/assets/img/accounts/advance-payment-2.png">
 
-Save and submit the JV. If this document is not saved it will not be pulled in
+Save and submit the Journal Entry. If this document is not saved it will not be pulled in
 other accounting documents.
 
 When you make a new Sales Invoice for the same customer, mention the advance
diff --git a/erpnext/docs/user/manual/en/accounts/budgeting.md b/erpnext/docs/user/manual/en/accounts/budgeting.md
index a5f35d2..49a73ac 100644
--- a/erpnext/docs/user/manual/en/accounts/budgeting.md
+++ b/erpnext/docs/user/manual/en/accounts/budgeting.md
@@ -11,48 +11,35 @@
 You can define it in the Cost Center. If you have seasonal sales you can also
 define a budget distribution that the budget will follow.
 
-In order to allocate budget, go to Accounts > Setup > Chart of Cost Centers and click on Chart of Cost Center.
-Select a Cost Center and click on Open.
+In order to allocate budget, go to:
 
-#### Step 1: Click on Edit.
+> Accounts > Setup > Chart of Cost Centers 
 
-![]({{docs_base_url}}/assets/old_images/erpnext/budgeting-1.png)  
+and click on Chart of Cost Center. Select a Cost Center and click on Open.
 
-<img alt="Accounts Receivable" class="screenshot" src="{{docs_base_url}}/assets/img/accounts/accounts-receivable.png">
+#### Step 1: Click on Edit.	 
 
-#### Step 2: Enter Monthly Distribution.
+<img alt="Cost Center" class="screenshot" src="{{docs_base_url}}/assets/img/accounts/cost-center-1.gif">
 
-![]({{docs_base_url}}/assets/old_images/erpnext/budgeting-2-1.png)
+#### Step 3:Add New Row and select budget account.  
 
+<img alt="Cost Center Account" class="screenshot" src="{{docs_base_url}}/assets/img/accounts/cost-center-2.png"> 
+
+#### Step 3: Enter Monthly Distribution (optional)
+
+<img alt="Cost Center" class="screenshot" src="{{docs_base_url}}/assets/img/accounts/cost-center-distribution.gif">
 
 If you leave the** **distribution ID blank, ERPNext will calculate on a yearly
 basis or in equal proportion for every month.
 
-#### Step 3:Add New Row and select budget account.  
-
-
-
-![]({{docs_base_url}}/assets/old_images/erpnext/budgeting-3.png)  
-
-
-
 ### To Create New Distribution ID
 
-ERPNext allows you to take a few budget actions. It signifies whether to stop
-, warn or Ignore  if you exceed budgets.  
-
-![]({{docs_base_url}}/assets/old_images/erpnext/budgeting-4.png)
-
-
+ERPNext allows you to take a few budget actions. It signifies whether to stop, warn or Ignore  if you exceed budgets.
 
 These can be defined from the Company record.
 
-![]({{docs_base_url}}/assets/old_images/erpnext/budgeting-4-1.png)  
+<img alt="Cost Center" class="screenshot" src="{{docs_base_url}}/assets/img/accounts/cost-center-company.gif">
 
-
-
-Even if you choose to “ignore” budget overruns, you will get a wealth of
-information from the “Budget vs Actual” variance report. This report shows
-month wise actual expenses as compared to the budgeted expenses.
+Even if you choose to “ignore” budget overruns, you will get a wealth of information from the “Budget vs Actual” variance report. This report shows month wise actual expenses as compared to the budgeted expenses.
 
 {next}
diff --git a/erpnext/docs/user/manual/en/accounts/opening-accounts.md b/erpnext/docs/user/manual/en/accounts/opening-accounts.md
index 28ba0c2..5325855 100644
--- a/erpnext/docs/user/manual/en/accounts/opening-accounts.md
+++ b/erpnext/docs/user/manual/en/accounts/opening-accounts.md
@@ -29,11 +29,7 @@
 
 #### Temporary Accounts
 
-A nice way to simplify opening is to use a temporary account
-just for opening. These accounts will become zero once all your old
-invoices and opening balances of bank, debt stock etc are entered.
-In the standard chart of accounts, a **Temporary Opening** account is created under
-assets
+A nice way to simplify opening is to use a temporary account just for opening. These accounts will become zero once all your old invoices and opening balances of bank, debt stock etc are entered. In the standard chart of accounts, a **Temporary Opening** account is created under assets
 
 #### The Opening Entry
 
@@ -54,7 +50,6 @@
 
 ![Opening Temp Entry]({{docs_base_url}}/assets/old_images/erpnext/image-temp-opening.png)
 
-
 ![Opening Entry]({{docs_base_url}}/assets/old_images/erpnext/opening-entry-2.png)
 
 Temporary Asset and Liability account is used for balancing purpose. When you update opening balance in Liability Account, you can use Temporary Asset Account for balancing.
@@ -68,26 +63,19 @@
   * In this method you can update opening balance of specific balancesheet accounts and not for all.
   * Opening entry is only for balance sheet accounts and not for expense or Income accounts.
 
-After completing the accounting entries, the trial balance report will look
-like the one given below:
-
+After completing the accounting entries, the trial balance report will look like the one given below:
 
 ![Trial Balance]({{docs_base_url}}/assets/old_images/erpnext/trial-balance-1.png)
 
 #### Outstanding Invoices
 
-After your Opening Journal Entrys are made, you will need to enter each
-Sales Invoice and Purchase Invoice that is yet to be paid.
+After your Opening Journal Entrys are made, you will need to enter each Sales Invoice and Purchase Invoice that is yet to be paid.
 
-Since you have already booked the income or expense on these invoices in the
-previous period, select the temp opening account **Temporary Opening** in the “Income” and
-“Expense” accounts.
+Since you have already booked the income or expense on these invoices in the previous period, select the temp opening account **Temporary Opening** in the “Income” and “Expense” accounts.
 
 > Note: Make sure to set each invoice as “Is Opening”!
 
-If you don’t care what items are in that invoice, just make a dummy item entry
-in the Invoice. Item code in the Invoice is not necessary, so it should not be
-such a problem.
+If you don’t care what items are in that invoice, just make a dummy item entry in the Invoice. Item code in the Invoice is not necessary, so it should not be such a problem.
 
 Once all your invoices are entered, your **Temporary Opening** account will have a balance of zero!
 
