diff --git a/docs/docs.user.buying.material_request.md b/docs/docs.user.buying.material_request.md
index 19d558b..c6a7785 100644
--- a/docs/docs.user.buying.material_request.md
+++ b/docs/docs.user.buying.material_request.md
@@ -40,7 +40,7 @@
 
 - Fill in the Items you want and their quantities.
 
-- 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 for this Item. 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, including supply and demand in the past that is done as part of the planning process. The projected inventory is used by the planning system to monitor the reorder point and to determine the reorder quantity. The projected Quantity is used by the planning engine to monitor the safety stock levels. These levels are maintained to serve unexpected demands. Having a tight control of the projected inventory is crucial to detect when the reorder point is being crossed and to calculate the right order quantity.
+- 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.stock.projected_quantity.html)for this Item.
 
 
 - You can optionally add the Terms, using the Terms and Conditions master and also the reason.
diff --git a/docs/docs.user.buying.supplier.md b/docs/docs.user.buying.supplier.md
index f9d0803..e477fa2 100644
--- a/docs/docs.user.buying.supplier.md
+++ b/docs/docs.user.buying.supplier.md
@@ -13,7 +13,9 @@
 ![Supplier](img/supplier.png)
 
 
-Contacts and Addresses in ERPNext are stored separately so that you can attach multiple Contacts or Addresses to Customers and Suppliers. To add a Contact or Address go to Buying and click on “New Contact” or “New Address”.
+### Contacts and Addresses
+
+ Contacts and Addresses in ERPNext are stored separately so that you can attach multiple Contacts or Addresses to Customers and Suppliers. To add a Contact or Address go to Buying and click on “New Contact” or “New Address”.
 
 
 > Tip: When you select a Supplier in any transaction, one Contact and Address gets pre-selected. This is the “Default Contact or Address”. So make sure you set your defaults correctly!
diff --git a/docs/docs.user.md b/docs/docs.user.md
index 00128f0..1d22e8c 100644
--- a/docs/docs.user.md
+++ b/docs/docs.user.md
@@ -74,7 +74,7 @@
 	1. [Price Lists](docs.user.setup.price_lists.html)
 	1. [Sub Contracting](docs.user.stock.sub_contracting.html)
 1. [Stock (Inventory)](docs.user.stock.html)
-	1. [Warehouse](docs.user.stock.item.html)
+	1. [Warehouse](docs.user.stock.warehouse.html)
 	1. [Item Group](docs.user.stock.item_group.html)
 	1. [Item](docs.user.stock.item.html)
 	1. [Serialized Inventory](docs.user.stock.serialized.html)
@@ -82,9 +82,9 @@
 	1. [Delivery Note](docs.user.stock.delivery_note.html)
 	1. [Stock Entry / Material Transfer](docs.user.stock.stock_entry.html)
 	1. [Material Issue](docs.user.stock.material_issue.html)
-	1. [Material Issue](docs.user.stock.material_issue.html)
 	1. [Sales Return](docs.user.stock.sales_return.html)
-	1. [Purchase Return](docs.user.stock.sales_return.html)
+	1. [Purchase Return](docs.user.stock.purchase_return.html)
+	1. [Projected Quantity](docs.user.stock.projected_quantity.html)
 1. [Accounting](docs.user.accounting.html)
 	1. [Chart of Accounts](docs.user.setup.accounting.html)
 	1. [Chart of Cost Centers](docs.user.setup.cost_centers.html)
diff --git a/docs/docs.user.stock.delivery_note.md b/docs/docs.user.stock.delivery_note.md
index b1d1736..3017a1b 100644
--- a/docs/docs.user.stock.delivery_note.md
+++ b/docs/docs.user.stock.delivery_note.md
@@ -13,6 +13,16 @@
 
 or from a “Submitted” Sales Order (that is not already shipped) by clicking on “Make Delivery Note”.
 
+
+
+
+![Delivery Note](img/delivery-note.png)
+
+
+
+
+
+
 You can also “fetch” the details from an unshipped Sales Order. 
 
 You will notice that all the information about unshipped Items and other details are carried over from your Sales Order.
diff --git a/docs/docs.user.stock.item.md b/docs/docs.user.stock.item.md
index 958c454..c5c58bd 100644
--- a/docs/docs.user.stock.item.md
+++ b/docs/docs.user.stock.item.md
@@ -7,64 +7,59 @@
 	]
 }
 ---
-An Item is simply a product or service which you sell or buy from your Customers or Suppliers. ERPNext is optimized for itemized management of your sales and purchase. However, you can skip creating Items. If you are in services, you can create an Item for each services that your offer.
+An Item is your company's product or a service.The term Item is applicable to your core products as well as your raw materials. It can be a product or 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. 
 
-There are two main categories of Items in ERPNext
+ERPNext is optimized for itemized 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.
 
-- Stock Items
-- Non Stock Items
+## Item Properties
 
-As you may have guessed, inventory balances are tracked for stock items and not for
-non-stock items. Non-stock items could be services or consumables that are not tracked.
+- **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.user.setup.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.
+- **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.
 
-### Item Groups
+![Item Properties](img/item-properties.png)
 
-ERPNext allows you to classify items into groups. This will help you in getting reports about various classes of items and also help in cataloging your items for the website.
+### Upload an Image
 
-### Warehouses
+To  upload an image for your icon that will appear in all transactions, save the partially filled form. Only after your file is saved a “+” button will appear besides the Image icon. Click on this sign and upload the image.
 
-In ERPNext you can create Warehouses to identify where your Items reside. 
+![Item Properties](img/item-add-image.png)
 
-There are two main Warehouse Types that are significant in ERPNext.
+### Item Pricing
 
-Stores: These are where your incoming Items are kept before they are consumed or sold. You can have as many “Stores” type Warehouses as you wish. Stores type warehouses are significant because if you set an Item for automatic re-order, ERPNext will check its quantities in all “Stores” type Warehouses when deciding whether to re-order or not.
+Item Price and Price Lists: ERPNext lets you maintain multiple selling prices for an Item using Price Lists. A Price List is a place where different rate plans can be stored. It’s a name you can give to a set of Item prices. In case you have different zones (based on the shipping costs), for different currencies etc, you can maintain different Price Lists. A Price List is formed when you create different Item Prices. To import Item Price visit “Import Item Price”.
 
-Asset: Items marked as type “Fixed Asset” are maintained in Asset Type Warehouses. This helps you to separate them for the Items that are consumed as a part of your regular operations or “Cost of Goods Sold”.
+## Inventory : Warehouse and Stock Setting
 
-### Item Taxes
+In ERPNext, you can select  different type of Warehouses to stock your different Items. This can be selected based on Item types. It could be Fixed Asset Item, Stock Item or even Manufacturing Item. 
 
-These settings are only required if this particular Item has a different tax rate than what is the rate defined in the standard tax Account.
+- **Stock Item:** If you are maintaining stock of this Item in your Inventory, ERPNext will make a stock ledger entry for each transaction of this item.
+- **Default Warehouse:** This is the Warehouse that is automatically selected in your transactions. 
+- **Allowance Percentage:** This is the  percent by which you will be allowed to over-bill or  over-deliver this Item. If not set, it will select from  the Global Defaults. 
+- **Valuation Method:** There are two options to maintain valuation of stock. FIFO (first in -  first out) and Moving Average. To understand this topic in detail please visit “ Item Valuation, FIFO and Moving Average”.
 
-For example, you have a tax Account, “VAT 10%” and this particular item is exempted from this tax, then you select “VAT 10%” in the first column, and set “0” as the tax rate in the second column.
+### Serialized and Batched Inventory
+
+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. 
+
+> Important: Once you mark an item as serialized or batched or neither, you cannot change it after you have made any stock entry.
+
+- [Disucssion on Serialized Inventory](docs.user.stock.serialized.html)
+
+### Re Ordering
+
+- **Re-order level** suggests the amount of stock balance in the Warehouse. 
+- **Re-order Qty** suggests the amount of stock to be ordered  to maintain minimum stock levels.
+- **Minimum Order Qty** is the minimum quantity for which a Material Request / Purchase Order must be made.
+
+### Item Tax
+
+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.
 
 ### Inspection
 
-Inspection Required: If an incoming inspection (at the time of delivery from the Supplier) is mandatory for this Item, mention “Inspection Required” as “Yes”. The system will ensure that a Quality Inspection will be prepared and approved before a Purchase Receipt is submitted.
+Inspection Required: If an incoming inspection (at the time of delivery from the Supplier) is mandatory for this Item, mention “Inspection Required” as “Yes”. The system will ensure that a Quality Inspection will be prepared and approved before a Purchase 	Receipt is submitted.
 
-Inspection Criteria: If a Quality Inspection is prepared for this Item, then this template of criteria will automatically be updated in the Quality Inspection table of the Quality Inspection.  Examples of Criteria are: Weight, Length, Finish etc.
-
-### Item Pricing and Price Lists
-
-ERPNext lets you maintain multiple selling prices for an Item using Price Lists. A Price List 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, regions etc.
-
-#### Negative Stock
-
-FIFO is the more accurate system of the two but has a disadvantage. You cannot have negative stock in FIFO. This means that you cannot make forward transactions that would make your stock negative. Why is this? Because sequences are so important to FIFO, you cannot track the value of the stock if it does not exist!
-
-In Moving Average, since each item has an “average” value, the value of the negative stock is also based on this “average”.
-
-### Serial Numbers and Batches
-
-In scenarios where you may have to track individual units or batches of Items you sell, ERPNext allows you to manage Serial Numbers and Batches.
-￼
-Why is this useful?
-
-- To track warranty and returns.
-- To trace individual Items incase they are recalled by the Supplier.
-- To manage expiry.
-
-In ERPNext, Serial Number and Batch are separate entities and all stock transactions for Items that serialized or batches must be tagged with either the Batch or Serial Number.
-
-> Important: Once you mark an item as serialized or batched or neither, you cannot change it after you have made any stock entry.
+Inspection Criteria: If a Quality Inspection is prepared for this Item, then this template of criteria will automatically be updated in the Quality Inspection table of the Quality Inspection. Examples of Criteria are: Weight, Length, Finish etc.
diff --git a/docs/docs.user.stock.purchase_receipt.md b/docs/docs.user.stock.purchase_receipt.md
index 14b2a2f..a2e428d 100644
--- a/docs/docs.user.stock.purchase_receipt.md
+++ b/docs/docs.user.stock.purchase_receipt.md
@@ -13,6 +13,14 @@
 
 or from a “Submitted” Purchase Order, by clicking on “Make Purchase Receipt”.
 
+
+
+![Purchase Receipt](img/purchase-receipt.png)
+
+
+
+
+
 ### Rejections
 
 In the Purchase Receipt, you are required to enter whether all the materials you receive are of accepted quality (in case you check). If you have any rejections, update the “Rejected Quantity” column in the Items table.
diff --git a/docs/docs.user.stock.serialized.md b/docs/docs.user.stock.serialized.md
index 5a9f32b..8c12534 100644
--- a/docs/docs.user.stock.serialized.md
+++ b/docs/docs.user.stock.serialized.md
@@ -11,10 +11,40 @@
 
 If your Item is *serialized* you will have to enter the Serial Nos in the related column with each Serial No in a new line.
 
+### Serial Nos and Inventory
+
+Inventory of an Item can only be affected if the Serial No is transacted via a Stock transaction (Stock Entry, Purchase Receipt, Delivery Note, Sales Invoice). When a new Serial No is created directly, its warehouse cannot be set.
+
+### Using Serial Nos
+
+To add a Serial No to a stock transaction, you can set the Serial No in the serial no field:
+
+![Serial No Entry](img/serial-no-entry.png)
+
+### Creation
+
+Serial Nos can automatically be created from a Stock Entry or Purchase Receipt. If you mention Serial No in the Serial Nos column, it will automatically create those serial Nos.
+
+### Automatic Series
+
+If in the Item Master, the Serial No Series is mentioned, you can leave the Serial No column blank in a Stock Entry / Purchase Receipt and Serial Nos will automatically be set from that series.
+
+#### Step 1: Mention the Series in the Item
+
+![Automatic Series](img/item-serial-no-series.png)
+
+#### Step 2: Keep Serial No field blank in your entry
+
+#### Step 3: Save / Submit your transaction (Serial Nos Automatically Updated)
+
+![Serial No Created Message](img/serial-no-auto-1.png)
+
+![Serial No Updated in Transaction](img/serial-no-auto-2.png)
+
+
 ### Importing and Updating Serial Nos
 
-Serial Nos cannot be imported from Stock Reconciliation. To import Serial Nos, you will have to use the Data Import Tool. When you import the Serial Nos, the stock level of its corresponding Item will be automatically updated.
-
+Serial Nos cannot be imported from Stock Reconciliation. To import Serial Nos, you will have to use the Data Import Tool.
 
 ### Using Serial Numbers for Multiple Purposes
 
diff --git a/docs/docs.user.stock.stock_entry.md b/docs/docs.user.stock.stock_entry.md
index 8eda743..0b49585 100644
--- a/docs/docs.user.stock.stock_entry.md
+++ b/docs/docs.user.stock.stock_entry.md
@@ -5,6 +5,20 @@
 ---
 A Stock Entry is a simple document that lets you record Item movement from a Warehouse, to a Warehouse and between Warehouses.
 
+To make a Stock Entry you have to go to:
+
+> Stock > Stock Entry
+
+
+
+
+
+![Stock Entry](img/stock-entry.png)
+
+
+
+
+
 This can also be useful in tracking:
 
 - Material Issues from Stores
@@ -13,11 +27,7 @@
 
 We will look into the special features of the Stock Entry later when we discuss Accounting and Manufacturing processes.
 
-To make a Stock Entry you have to go to:
-
-> Stock > Stock Entry
 
 In the Stock Entry you have to update the Items table with all your transactions. For each row, you must enter a “Source Warehouse” or a “Target Warehouse” or both (if you are recording a movement).
 
-> **Note:** To update Stock from a spreadsheet, see Stock Reconciliation.
-
+> **Note:** To update Stock from a spreadsheet, see Stock Reconciliation.
\ No newline at end of file
