diff --git a/lms/templates/dashboard.html b/lms/templates/dashboard.html
index 2353fb3f83..1661523bb6 100644
--- a/lms/templates/dashboard.html
+++ b/lms/templates/dashboard.html
@@ -183,7 +183,10 @@ from student.models import CourseEnrollment
pseudo_session = unfulfilled_entitlement_pseudo_sessions[str(entitlement.uuid)]
if not pseudo_session:
continue
- enrollment = CourseEnrollment(user=user, course=CourseOverview.get_from_id(pseudo_session['key']), mode=pseudo_session['type'])
+ pseudo_key = pseudo_session['key']
+ if not isinstance(pseudo_key, CourseKey):
+ pseudo_key = CourseKey.from_string(pseudo_session['key'])
+ enrollment = CourseEnrollment(user=user, course=CourseOverview.get_from_id(pseudo_key), mode=pseudo_session['type'])
# We only show email settings for entitlement cards if the entitlement has an associated enrollment
show_email_settings = is_fulfilled_entitlement and (entitlement_session.course_id in show_email_settings_for)
else:
diff --git a/themes/edx.org/lms/templates/dashboard.html b/themes/edx.org/lms/templates/dashboard.html
index de015a173a..c3c7de2df2 100644
--- a/themes/edx.org/lms/templates/dashboard.html
+++ b/themes/edx.org/lms/templates/dashboard.html
@@ -179,7 +179,10 @@ from student.models import CourseEnrollment
pseudo_session = unfulfilled_entitlement_pseudo_sessions[str(entitlement.uuid)]
if not pseudo_session:
continue
- enrollment = CourseEnrollment(user=user, course=CourseOverview.get_from_id(pseudo_session['key']), mode=pseudo_session['type'])
+ pseudo_key = pseudo_session['key']
+ if not isinstance(pseudo_key, CourseKey):
+ pseudo_key = CourseKey.from_string(pseudo_session['key'])
+ enrollment = CourseEnrollment(user=user, course=CourseOverview.get_from_id(pseudo_key), mode=pseudo_session['type'])
# We only show email settings for entitlement cards if the entitlement has an associated enrollment
show_email_settings = is_fulfilled_entitlement and (entitlement_session.course_id in show_email_settings_for)
else: