diff --git a/core/serializers/student.py b/core/serializers/student.py
index 32f7c3790f64f7a9eae182f120d3ac81e61b0f25..2f7c070e349f32036ef86f1df41581a4f43b2e6e 100644
--- a/core/serializers/student.py
+++ b/core/serializers/student.py
@@ -3,7 +3,8 @@ from rest_framework import serializers
 from core.models import StudentInfo
 from core.serializers import DynamicFieldsModelSerializer, ExamSerializer
 from core.serializers.submission import (SubmissionListSerializer,
-                                         SubmissionNoTextFieldsSerializer)
+                                         SubmissionNoTextFieldsSerializer,
+                                         SubmissionNoTypeSerializer)
 
 
 class StudentInfoSerializer(DynamicFieldsModelSerializer):
@@ -42,3 +43,24 @@ class StudentInfoForListViewSerializer(DynamicFieldsModelSerializer):
                   'matrikel_no',
                   'passes_exam',
                   'is_active')
+
+
+class StudentExportSerializer(DynamicFieldsModelSerializer):
+    name = serializers.ReadOnlyField(source='user.fullname')
+    user = serializers.ReadOnlyField(source='user.username')
+    user_pk = serializers.ReadOnlyField(source='user.pk')
+    exam = serializers.ReadOnlyField(source='exam.pk')
+    is_active = serializers.BooleanField(source='user.is_active')
+    submissions = SubmissionNoTypeSerializer(many=True)
+
+    class Meta:
+        model = StudentInfo
+        fields = ('pk',
+                  'name',
+                  'user',
+                  'user_pk',
+                  'exam',
+                  'submissions',
+                  'matrikel_no',
+                  'passes_exam',
+                  'is_active')