diff --git a/userhandler/templates/modal/user_create.html b/userhandler/templates/modal/user_create.html
index 5b8d73a..5aba035 100644
--- a/userhandler/templates/modal/user_create.html
+++ b/userhandler/templates/modal/user_create.html
@@ -56,6 +56,14 @@
                             </div>
                     </div>
 
+                    <div class="form-group">
+                        <label for="domain_name" class="col-sm-3 control-label">Domain</label>
+                        
+                        <div class="col-sm-6">
+                            <select required id="domain_name" class="js-example-basic form-control" name="domain_name">
+                            </select>
+                        </div>
+                    </div>
 
 
                 </div>
diff --git a/userhandler/templates/user_list.html b/userhandler/templates/user_list.html
index f756ff5..8de4c6b 100644
--- a/userhandler/templates/user_list.html
+++ b/userhandler/templates/user_list.html
@@ -54,7 +54,7 @@
                     <h3 class="box-title">Users</h3>
                     <div class="box-tools">
                         <button type="button" class="btn btn-default" data-container="body"
-                                onclick="javascript:openModalCreateUser({'projects_list_url': '{% url "projects:projects_list" %}'})"
+                                onclick="javascript:openModalCreateUser({'projects_list_url': '{% url "projects:projects_list" %}', 'domains_list_url': '{% url "projects:domains_list" %}'})"
                                 data-toggle="tooltip" data-placement="top" title="New User">
 
                             <i class="fa fa-plus"></i> Create User
diff --git a/userhandler/views.py b/userhandler/views.py
index 66fc22a..f6f2bf6 100644
--- a/userhandler/views.py
+++ b/userhandler/views.py
@@ -32,11 +32,10 @@
     client = Client()
     result = client.user_list(user.get_token())
 
-    users = result['data'] if result and result['error'] is False else []    
     result = {
         'users': result['data'] if result and result['error'] is False else []
     }
-    
+
     return __response_handler(request, result, 'user_list.html')
 
 
@@ -44,11 +43,12 @@
 def create(request):
     user = osmutils.get_user(request)
     client = Client()
-    user_data ={
+    user_data = {
         "username": request.POST['username'],
-        "password": request.POST['password']
+        "password": request.POST['password'],
+        "domain_name": request.POST['domain_name']
     }
-    
+
     result = client.user_create(user.get_token(), user_data)
     if result['error']:
         return __response_handler(request, result['data'], url=None,
@@ -72,12 +72,13 @@
     else:
         return __response_handler(request, {}, url=None, status=200)
 
+
 @login_required
 def user_info(request, user_id=None):
     user = osmutils.get_user(request)
     try:
         client = Client()
-        
+
         info_res = client.get_user_info(user.get_token(), user_id)
     except Exception as e:
         log.exception(e)
@@ -88,6 +89,7 @@
     else:
         return __response_handler(request, info_res['data'], url=None, status=200)
 
+
 @login_required
 def update(request, user_id=None):
     user = osmutils.get_user(request)
@@ -107,7 +109,7 @@
                     'project': project,
                     'role': role_param_ip[i],
                 })
-        
+
         update_res = client.user_update(user.get_token(), user_id, payload)
     except Exception as e:
         log.exception(e)
