diff --git a/smash/web/api_views/visit.py b/smash/web/api_views/visit.py
index e6fbe9693dc121643817b92a73d93463ff038716..59f0eb977ae48eca6fee42d9231f2dee8de4097c 100644
--- a/smash/web/api_views/visit.py
+++ b/smash/web/api_views/visit.py
@@ -36,8 +36,8 @@ def get_visit_columns(request, visit_list_type):
     result = []
     add_column(result, "First name", "first_name", visit_subject_columns, "string_filter")
     add_column(result, "Last name", "last_name", visit_subject_columns, "string_filter")
-    add_column(result, "Location", "default_location", visit_subject_study_columns, "location_filter",
-               study.columns)
+    add_column(result, "ND number", "nd_number", visit_subject_study_columns, "string_filter", study.columns)
+    add_column(result, "Location", "default_location", visit_subject_study_columns, "location_filter", study.columns)
     add_column(result, "Flying team location", "flying_team", visit_subject_study_columns, "flying_team_filter",
                study.columns)
     add_column(result, "Visit begins", "datetime_begin", visit_columns, None)
@@ -86,6 +86,8 @@ def get_visits_order(visits_to_be_ordered, order_column, order_direction):
         result = visits_to_be_ordered.order_by(order_direction + 'subject__subject__first_name')
     elif order_column == "last_name":
         result = visits_to_be_ordered.order_by(order_direction + 'subject__subject__last_name')
+    elif order_column == "nd_number":
+        result = visits_to_be_ordered.order_by(order_direction + 'subject__nd_number')
     elif order_column == "default_location":
         result = visits_to_be_ordered.order_by(order_direction + 'subject__default_location')
     elif order_column == "flying_team":
@@ -139,6 +141,8 @@ def get_visits_filtered(visits_to_be_filtered, filters):
             result = result.filter(subject__subject__first_name__icontains=value)
         elif column == "last_name":
             result = result.filter(subject__subject__last_name__icontains=value)
+        elif column == "nd_number":
+            result = result.filter(subject__nd_number__icontains=value)
         elif column == "flying_team":
             result = result.filter(subject__flying_team=value)
         elif column == "default_location":
@@ -227,6 +231,7 @@ def serialize_visit(visit):
     result = {
         "first_name": visit.subject.subject.first_name,
         "last_name": visit.subject.subject.last_name,
+        "nd_number": visit.subject.nd_number,
         "datetime_begin": serialize_date(visit.datetime_begin),
         "datetime_end": serialize_date(visit.datetime_end),
         "flying_team": flying_team_to_str(visit.subject.flying_team),