diff --git a/erpnext/setup/install.py b/erpnext/setup/install.py
index 81f909a..1c64610 100644
--- a/erpnext/setup/install.py
+++ b/erpnext/setup/install.py
@@ -12,6 +12,7 @@
 	<a style="color: #888" href="http://erpnext.org">ERPNext</a></div>"""
 
 def after_install():
+	leave_application_workflow()
 	frappe.get_doc({'doctype': "Role", "role_name": "Analytics"}).insert()
 	set_single_defaults()
 	create_compact_item_print_custom_field()
@@ -19,6 +20,51 @@
 	add_all_roles_to("Administrator")
 	frappe.db.commit()
 
+def leave_application_workflow():
+	states = {'Approved': 'Success', 'Rejected': 'Danger', 'Open': 'Warning'}
+
+	for state, style in states.items():
+		if not frappe.db.exists("Workflow State", state):
+			frappe.get_doc({
+				'doctype': 'Workflow State',
+				'workflow_state_name': state,
+				'style': style
+			}).insert(ignore_permissions=True)
+
+	if not frappe.db.exists("Workflow", "Leave Approval"):
+		frappe.get_doc({
+			'doctype': 'Workflow',
+			'workflow_name': 'Leave Approval',
+			'document_type': 'Leave Application',
+			'is_active': 1,
+			'workflow_state_field': 'workflow_state',
+			'states': [{
+				"state": 'Open',
+				"doc_status": 0,
+				"allow_edit": 'Employee'
+			}, {
+				"state": 'Approved',
+				"doc_status": 1,
+				"allow_edit": 'Leave Approver'
+			}, {
+				"state": 'Rejected',
+				"doc_status": 1,
+				"allow_edit": 'Leave Approver'
+			}],
+			'transitions': [{
+				"state": 'Open',
+				"action": 'Approve',
+				"next_state": 'Approved',
+				"allowed": 'Leave Approver'
+			},
+			{
+				"state": 'Open',
+				"action": 'Reject',
+				"next_state": 'Rejected',
+				"allowed": 'Leave Approver'
+			}]
+		}).insert(ignore_permissions=True)
+
 def check_setup_wizard_not_completed():
 	if frappe.db.get_default('desktop:home_page') == 'desktop':
 		print()
