Skip to content
Snippets Groups Projects
Unverified Commit b452f3d5 authored by Christie Rice's avatar Christie Rice Committed by GitHub
Browse files

docs: Add ADR on regular course certificate requirements (#27140)

MICROBA-1039
parent 0ad27ed2
Branches
Tags
No related merge requests found
Course Certificate Allowlist Requirements
Allowlist Course Certificate Requirements
=========================================
Status
......@@ -7,6 +7,8 @@ Accepted
Background
----------
This doc covers requirements for allowlist course certificates.
Users can earn a course certificate in a particular course run (the certificate
is stored in the *GeneratedCertificate* model). If a user has not earned a certificate
but the course staff would like them to have a certificate anyway, the user can
......@@ -22,16 +24,16 @@ won't necessarily have a course certificate available to them. To receive a
downloadable allowlist course certificate, the following things must be true at
the time the certificate is generated:
* The user must have an enrollment in the course
* The user must have an enrollment in the course run
* The enrollment mode must be eligible for a certificate
* The enrollment does not need to be active
* The user must have an approved, unexpired, ID verification
* The user must be on the allowlist for the course run (see the *CertificateWhitelist* model)
* The user must not have an invalidated certificate for the course run (see the *CertificateInvalidation* model)
* Automatic certificate generation must be globally enabled
* HTML (web) certificates must be globally enabled, and also enabled for the course run
* The user must be on the allowlist for the course run (see the *CertificateWhitelist* model)
Note: the above requirements were written for the allowlist, which assumes the
CourseWaffleFlag *certificates_revamp.use_allowlist* has been enabled for the
......
Regular Course Certificate Requirements
=======================================
Status
------
Accepted
Background
----------
This doc covers requirements for regular (non-allowlist) course certificates.
Users can earn a course certificate in a particular course run if they meet a
number of criteria, and the course run is configured to grant them the certificate.
The certificates are stored in the *GeneratedCertificate* model.
Requirements
------------
For a user to receive a course certificate in the *downloadable* state (for the
user to have a course certificate available to them), the following things must
be true at the time the certificate is generated:
* The user must have an enrollment in the course run
* The enrollment mode must be eligible for a certificate
* The enrollment does not need to be active
* The user must have an approved, unexpired, ID verification
* The user must not have an invalidated certificate for the course run (see the *CertificateInvalidation* model)
* Automatic certificate generation must be globally enabled
* HTML (web) certificates must be globally enabled, and also enabled for the course run
* The user must have passed the course run
* The user must not be a beta tester in the course run
* The course run must not be a CCX (custom edX course)
Note: the above requirements were written for V2 of course certificates, which
assumes the CourseWaffleFlag *certificates_revamp.use_updated* has been enabled
for the course run. If it has not been enabled, the prior logic will apply.
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment