diff --git a/lms/djangoapps/instructor/paidcourse_enrollment_report.py b/lms/djangoapps/instructor/paidcourse_enrollment_report.py
index 67e4e5869117e1be372279df1ad6c2733f909f86..f011ee67df5baabbf17fd1d340e1957c54bc6eb2 100644
--- a/lms/djangoapps/instructor/paidcourse_enrollment_report.py
+++ b/lms/djangoapps/instructor/paidcourse_enrollment_report.py
@@ -25,6 +25,7 @@ class PaidCourseEnrollmentReportProvider(BaseAbstractEnrollmentReportProvider):
         """
         course = get_course_by_id(course_id, depth=0)
         is_course_staff = bool(has_access(user, 'staff', course))
+        manual_enrollment_reason = 'N/A'
 
         # check the user enrollment role
         if user.is_staff:
@@ -59,8 +60,10 @@ class PaidCourseEnrollmentReportProvider(BaseAbstractEnrollmentReportProvider):
                 manual_enrollment = ManualEnrollmentAudit.get_manual_enrollment(course_enrollment)
                 if manual_enrollment is not None:
                     enrollment_source = _(
-                        'manually enrolled by {username} - reason: {reason}'
-                    ).format(username=manual_enrollment.enrolled_by.username, reason=manual_enrollment.reason)
+                        'manually enrolled by username: {username}'
+                    ).format(username=manual_enrollment.enrolled_by.username)
+
+                    manual_enrollment_reason = manual_enrollment.reason
                 else:
                     enrollment_source = _('Manually Enrolled')
 
@@ -71,6 +74,7 @@ class PaidCourseEnrollmentReportProvider(BaseAbstractEnrollmentReportProvider):
         course_enrollment_data['Enrollment Date'] = enrollment_date
         course_enrollment_data['Currently Enrolled'] = currently_enrolled
         course_enrollment_data['Enrollment Source'] = enrollment_source
+        course_enrollment_data['Manual (Un)Enrollment Reason'] = manual_enrollment_reason
         course_enrollment_data['Enrollment Role'] = enrollment_role
         return course_enrollment_data
 
diff --git a/lms/djangoapps/instructor/views/api.py b/lms/djangoapps/instructor/views/api.py
index a6fb2113c3c54fd8aee250292f90a5b16b632fc0..c1fa8a89fe29a8e1217b9778911df188c0d0eadc 100644
--- a/lms/djangoapps/instructor/views/api.py
+++ b/lms/djangoapps/instructor/views/api.py
@@ -630,6 +630,7 @@ def students_update_enrollment(request, course_id):
                 )
                 before_enrollment = before.to_dict()['enrollment']
                 before_allowed = before.to_dict()['allowed']
+                enrollment_obj = CourseEnrollment.get_enrollment(user, course_id)
 
                 if before_enrollment:
                     state_transition = ENROLLED_TO_UNENROLLED
diff --git a/lms/djangoapps/instructor_task/tasks_helper.py b/lms/djangoapps/instructor_task/tasks_helper.py
index 073f1a535791eb0717a38e5b2f1443717303a7e9..ca66ded2e926d5f69371be5fa2fe17dfdb6eaa21 100644
--- a/lms/djangoapps/instructor_task/tasks_helper.py
+++ b/lms/djangoapps/instructor_task/tasks_helper.py
@@ -1091,6 +1091,7 @@ def upload_enrollment_report(_xmodule_instance_args, _entry_id, course_id, _task
             'Enrollment Date': _('Enrollment Date'),
             'Currently Enrolled': _('Currently Enrolled'),
             'Enrollment Source': _('Enrollment Source'),
+            'Manual (Un)Enrollment Reason': _('Manual (Un)Enrollment Reason'),
             'Enrollment Role': _('Enrollment Role'),
             'List Price': _('List Price'),
             'Payment Amount': _('Payment Amount'),
diff --git a/lms/djangoapps/instructor_task/tests/test_tasks_helper.py b/lms/djangoapps/instructor_task/tests/test_tasks_helper.py
index 4561c7e6b790fc115e44553e02e44d40f6fa2cb2..bf55e5701028b6bbbad94e930adfca6a6354fcba 100644
--- a/lms/djangoapps/instructor_task/tests/test_tasks_helper.py
+++ b/lms/djangoapps/instructor_task/tests/test_tasks_helper.py
@@ -419,10 +419,15 @@ class TestInstructorDetailedEnrollmentReport(TestReportMixin, InstructorTaskCour
         with patch('instructor_task.tasks_helper._get_current_task'):
             result = upload_enrollment_report(None, None, self.course.id, task_input, 'generating_enrollment_report')
 
-        enrollment_source = u'manually enrolled by {username} - reason: manually enrolling unenrolled user'.format(
+        enrollment_source = u'manually enrolled by username: {username}'.format(
             username=self.instructor.username)  # pylint: disable=no-member
         self.assertDictContainsSubset({'attempted': 1, 'succeeded': 1, 'failed': 0}, result)
         self._verify_cell_data_in_csv(student.username, 'Enrollment Source', enrollment_source)
+        self._verify_cell_data_in_csv(
+            student.username,
+            'Manual (Un)Enrollment Reason',
+            'manually enrolling unenrolled user'
+        )
         self._verify_cell_data_in_csv(student.username, 'Payment Status', 'TBD')
 
     def test_student_used_enrollment_code_for_course_enrollment(self):