diff --git a/erpnext/accounts/page/pos/pos.js b/erpnext/accounts/page/pos/pos.js
index 8cc393d..f9f0cb8 100644
--- a/erpnext/accounts/page/pos/pos.js
+++ b/erpnext/accounts/page/pos/pos.js
@@ -363,8 +363,8 @@
 
 	make: function () {
 		this.make_search();
-		this.make_list_customers();
 		this.make_customer();
+		this.make_list_customers();
 		this.make_item_list();
 		this.bind_numeric_keypad();
 		this.make_discount_field()
@@ -391,24 +391,41 @@
 			}, 1000);
 		});
 
-		this.search_item_group = frappe.ui.form.make_control({
-			df: {
-				"fieldtype": "Select",
-				"options": me.item_groups,
-				"label": __("Item Group"),
-				"fieldname": "item_group",
-				"placeholder": __("Item Group")
-			},
-			parent: this.wrapper.find(".search-item-group"),
-			only_input: true,
-		});
+		// this.search_item_group = frappe.ui.form.make_control({
+		// 	df: {
+		// 		"fieldtype": "Select",
+		// 		"options": me.item_groups,
+		// 		"label": __("Item Group"),
+		// 		"fieldname": "item_group",
+		// 		"placeholder": __("Item Group")
+		// 	},
+		// 	parent: this.wrapper.find(".search-item-group"),
+		// 	only_input: true,
+		// });
 
-		this.search_item_group.make_input();
-		this.search_item_group.$input.on("change", function () {
+		this.search_item_group = this.wrapper.find('.search-item-group');
+
+		var dropdown_html = me.item_groups.map(function(item_group) {
+			return "<li><a class='option' data-value='"+item_group+"'>"+item_group+"</a></li>";
+		}).join("");
+
+		this.search_item_group.find('.dropdown-menu').html(dropdown_html);
+
+		this.search_item_group.on('click', '.dropdown-menu a', function() {
+			me.selected_item_group = $(this).attr('data-value');
+			me.search_item_group.find('.dropdown-text').text(me.selected_item_group);
+
 			me.page_len = 20;
 			me.items = me.get_items();
 			me.make_item_list();
-		});
+		})
+
+		// this.search_item_group.make_input();
+		// this.search_item_group.$input.on("change", function () {
+		// 	me.page_len = 20;
+		// 	me.items = me.get_items();
+		// 	me.make_item_list();
+		// });
 
 		this.wrapper.find(".btn-more").on("click", function() {
 			me.page_len += 20;
@@ -423,9 +440,9 @@
 
 	make_list_customers: function () {
 		var me = this;
-		this.list_customers_btn = this.wrapper.find('.list-customers-btn');
+		this.list_customers_btn = this.page.wrapper.find('.list-customers-btn');
 		this.add_customer_btn = this.wrapper.find('.add-customer-btn');
-		this.pos_bill = this.wrapper.find('.pos-bill').hide();
+		this.pos_bill = this.wrapper.find('.pos-bill-wrapper').hide();
 		this.list_customers = this.wrapper.find('.list-customers');
 		this.numeric_keypad = this.wrapper.find('.numeric_keypad');
 
@@ -466,13 +483,27 @@
 		$(this.numeric_keypad).find('.numeric-keypad').on('click', function(){
 			me.numeric_id = $(this).attr("id") || me.numeric_id;
 			me.val = $(this).attr("val")
+			console.log(me.numeric_id);
+
+			me.selected_field = $(me.wrapper).find('.selected-item').find('.' + me.numeric_id)
+			
 			if(me.val && me.numeric_id) {
-				me.selected_field = $(me.wrapper).find('.selected-item').find('.' + me.numeric_id)
 				me.numeric_val += me.val;
+				console.log(me.numeric_val)
+				console.log(me.selected_field)
+
 				me.selected_field.val(flt(me.numeric_val))
 				me.selected_field.trigger("change")
 				me.render_selected_item()
 			}
+
+			if(me.numeric_id && $(this).hasClass('pos-operation')) {
+				me.numeric_keypad.find('button.pos-operation').removeClass('active');
+				$(this).addClass('active');
+
+				me.selected_row.find('.pos-list-row').removeClass('active');
+				me.selected_field.closest('.pos-list-row').addClass('active');
+			}
 		})
 		
 		$(this.numeric_keypad).find('.numeric-del').click(function(){
@@ -582,10 +613,12 @@
 
 	make_customer: function () {
 		var me = this;
-
-		$(frappe.render_template('customer_toolbar', {
-			allow_delete: this.frm.doc.allow_delete
-		})).insertAfter(this.page.$title_area.hide());
+		
+		if(this.page.wrapper.find('.pos-bill-toolbar').length === 0) {
+			$(frappe.render_template('customer_toolbar', {
+				allow_delete: this.frm.doc.allow_delete
+			})).insertAfter(this.page.$title_area.hide());
+		}
 
 		this.party_field = frappe.ui.form.make_control({
 			df: {
@@ -879,6 +912,7 @@
 		$(me.wrapper).on("click", ".pos-item-wrapper", function () {
 			if(me.list_customers_btn.hasClass("view_customer")) return;
 
+			console.log($(this).attr('data-item-code'));
 			me.customer_validate();
 			if (me.frm.doc.docstatus == 0) {
 				me.items = me.get_items($(this).attr("data-item-code"))
@@ -936,7 +970,7 @@
 
 	apply_category: function() {
 		var me = this;
-		category = this.search_item_group.$input.val();
+		category = this.selected_item_group;
 
 		if(category == 'All Item Groups') {
 			return this.item_data
@@ -1015,7 +1049,7 @@
 		doc = this.get_child_item(this.item_code);
 		$(this.wrapper).find('.selected-item').empty();
 		if(doc.length) {
-			this.selected_row = frappe.render_template("pos_selected_item", doc[0])
+			this.selected_row = $(frappe.render_template("pos_selected_item", doc[0]))
 			$(this.wrapper).find('.selected-item').html(this.selected_row)
 		}
 	},
@@ -1280,14 +1314,19 @@
 
 	set_primary_action: function () {
 		var me = this;
-
+		this.page.set_primary_action(__("Add Customer"), function () {
+			me.save_previous_entry();
+			me.create_new();
+			me.refresh();
+			me.set_focus();
+		})
 		if (this.frm.doc.docstatus == 0) {
-			this.page.set_primary_action(__("Pay"), function () {
-				me.validate();
-				me.update_paid_amount_status(true);
-				me.create_invoice();
-				me.make_payment();
-			}, "fa fa-credit-card");
+			// this.page.set_primary_action(__("Pay"), function () {
+			// 	me.validate();
+			// 	me.update_paid_amount_status(true);
+			// 	me.create_invoice();
+			// 	me.make_payment();
+			// }, "fa fa-credit-card");
 		} else if (this.frm.doc.docstatus == 1) {
 			this.page.set_primary_action(__("Print"), function () {
 				html = frappe.render(me.print_template_data, me.frm.doc)
@@ -1578,6 +1617,7 @@
 
 	mandatory_batch_no: function () {
 		var me = this;
+		console.log(this.items[0])
 		if (this.items[0].has_batch_no && !this.item_batch_no[this.items[0].item_code]) {
 			frappe.throw(__(repl("Error: Batch no is mandatory for item %(item)s", {
 				'item': this.items[0].item_code
diff --git a/erpnext/public/css/erpnext.css b/erpnext/public/css/erpnext.css
index 6a1d3b6..e233c08 100644
--- a/erpnext/public/css/erpnext.css
+++ b/erpnext/public/css/erpnext.css
@@ -301,8 +301,9 @@
 .pos-bill-header {
   background-color: #f5f7fa;
   border: 1px solid #d1d8dd;
+  padding: 13px 15px;
 }
-.pos-bill-item.active {
+.pos-list-row.active {
   background-color: #fffce7;
 }
 .totals-area {
@@ -310,11 +311,8 @@
   border-left: 1px solid #d1d8dd;
   margin-bottom: 15px;
 }
-body[data-route="pos"] .page-body {
-  height: calc(100vh - 40px);
-}
 .item-cart-items {
-  height: 30vh;
+  height: calc(100vh - 500px);
   overflow: auto;
   border: 1px solid #d1d8dd;
   border-top: none;
@@ -337,4 +335,22 @@
 .pos .item-list {
   border-left: 1px solid #d1d8dd;
   border-right: 1px solid #d1d8dd;
+  height: calc(100vh - 180px);
+  overflow: auto;
+}
+.pos .item-list .image-field {
+  height: 140px;
+}
+.pos-bill-toolbar {
+  margin-top: 10px;
+}
+.pos .search-item .form-group {
+  margin: 0;
+}
+.item-list-area .pos-bill-header {
+  padding: 5px;
+  padding-left: 15px;
+}
+.pos-selected-item-action > .pos-list-row {
+  border: none;
 }
diff --git a/erpnext/public/js/pos/customer_toolbar.html b/erpnext/public/js/pos/customer_toolbar.html
index a32c157..86a38c3 100644
--- a/erpnext/public/js/pos/customer_toolbar.html
+++ b/erpnext/public/js/pos/customer_toolbar.html
@@ -1,10 +1,8 @@
-<div class="pos-bill-toolbar" style="display: flex;">
+<div class="pos-bill-toolbar col-sm-9" style="display: flex;">
 	<div class="party-area" style="flex: 1;"></div>
-	<button class="btn btn-default list-customers-btn" style="margin: 0 5px 0 15px;">
-		<i class="fa fa-list"></i>
+	<button class="btn btn-default list-customers-btn" style="margin-left: 12px">
+		<i class="octicon octicon-organization"></i>
 	</button>
-	<button class="btn btn-default add-customer-btn">
-		<i class="fa fa-plus"></i>
 	</button> {% if (allow_delete) { %}
 	<button class="btn btn-default btn-danger" style="margin: 0 5px 0 5px;display:none">
 			<i class="octicon octicon-trashcan"></i>
diff --git a/erpnext/public/js/pos/pos_bill_item_new.html b/erpnext/public/js/pos/pos_bill_item_new.html
index f5c888e..80a33d4 100644
--- a/erpnext/public/js/pos/pos_bill_item_new.html
+++ b/erpnext/public/js/pos/pos_bill_item_new.html
@@ -1,4 +1,4 @@
-<div class="pos-list-row pos-bill-item" data-item-code="{%= item_code %}">
+<div class="pos-list-row pos-bill-item" data-item-code="{{ item_code }}">
 	<div class="cell subject">
 		<!--<input class="list-row-checkbox" type="checkbox" data-name="{{item_code}}">-->
 		<a class="grey list-id" title="{{ item_name }}">{{ strip_html(__(item_name)) || item_code }}</a>
diff --git a/erpnext/public/js/pos/pos_item.html b/erpnext/public/js/pos/pos_item.html
index 89384ed..7e374ae 100644
--- a/erpnext/public/js/pos/pos_item.html
+++ b/erpnext/public/js/pos/pos_item.html
@@ -1,4 +1,4 @@
-<div class="pos-item-wrapper image-view-item" data-item-code={{item_code}}>
+<div class="pos-item-wrapper image-view-item" data-item-code="{{item_code}}">
 	<div class="image-view-header doclist-row">
 		<div class="list-value">
 			<a class="grey list-id" data-name="{{item_code}}" title="{{ item_name || item_code}}">{{item_name || item_code}}</a>
diff --git a/erpnext/public/js/pos/pos_selected_item.html b/erpnext/public/js/pos/pos_selected_item.html
index 501e1da..ff97501 100644
--- a/erpnext/public/js/pos/pos_selected_item.html
+++ b/erpnext/public/js/pos/pos_selected_item.html
@@ -4,18 +4,18 @@
 	</div>
 	<div class="pos-list-row">
 		<div class="cell">Price:</div>
-		<div class="cell pos-item-price">{%= rate %}</div>
+		<input class="form-control cell pos-item-price" value="{%= rate %}"/>
 	</div>
 	<div class="pos-list-row">
 		<div class="cell">Quantity:</div>
-		<div class="cell pos-item-qty">{%= qty %}</div>
+		<input class="form-control cell pos-item-qty" value="{%= qty %}"/>
 	</div>
 	<div class="pos-list-row">
 		<div class="cell">Discount:</div>
-		<div class="cell pos-item-disc">{%= discount_percentage %}</div>
+		<input class="form-control cell pos-item-disc" value="{%= discount_percentage %}">
 	</div>
 	<div class="pos-list-row">
 		<div class="cell">Amount:</div>
-		<div class="cell pos-item-disc">{%= amount %}</div>
+		<input class="form-control cell" value="{%= amount %}"/>
 	</div>
 </div>
\ No newline at end of file
diff --git a/erpnext/public/less/erpnext.less b/erpnext/public/less/erpnext.less
index bec2c91..ae1c818 100644
--- a/erpnext/public/less/erpnext.less
+++ b/erpnext/public/less/erpnext.less
@@ -379,9 +379,10 @@
 .pos-bill-header {
 	background-color: #f5f7fa;
 	border: 1px solid @border-color;
+	padding: 13px 15px;
 }
 
-.pos-bill-item.active {
+.pos-list-row.active {
 	background-color: @light-yellow;
 }
 
@@ -391,12 +392,12 @@
 	margin-bottom: 15px;
 }
 
-body[data-route="pos"] .page-body {
-	height: ~"calc(100vh - 40px)";
-}
+// body[data-route="pos"] .page-body {
+// 	height: ~"calc(100vh - 40px)";
+// }
 
 .item-cart-items {
-	height: 30vh;
+	height: ~"calc(100vh - 500px)";
 	overflow: auto;
 	border: 1px solid @border-color;
 	border-top: none;
@@ -424,4 +425,27 @@
 .pos .item-list {
 	border-left: 1px solid @border-color;
 	border-right: 1px solid @border-color;
+	height: ~"calc(100vh - 180px)";
+	overflow: auto;
+
+	.image-field {
+		height: 140px;
+	}
+}
+
+.pos-bill-toolbar {
+	margin-top: 10px;
+}
+
+.pos .search-item .form-group {
+	margin: 0;
+}
+
+.item-list-area .pos-bill-header {
+	padding: 5px;
+	padding-left: 15px;
+}
+
+.pos-selected-item-action > .pos-list-row {
+	border: none;
 }
\ No newline at end of file
