Certificates
Automatically generate, distribute, and verify PDF certificates for exam completions.
Overview
Testify's certificate system generates professional PDF certificates for students who complete online exams. Certificates are created automatically after exam submission, include a unique verification code with QR code, and can be verified publicly by anyone with the verification URL. Teachers can generate certificates in bulk for an entire exam, resend certificate emails, and set minimum score thresholds.
Certificates are built using PDFKit and include student name, exam title, score, percentage, rank, total participants, and a public verification link.
How It Works
Automatic Generation
When a student submits an exam:
- The system automatically generates a certificate for the attempt.
- A unique verification code is created in the format
CERT-XXXXXXXXXXXX(12 hex characters). - A PDF is generated with the student's details, score, rank among all participants, and a QR code linking to the verification page.
- The certificate is stored on the server and a record is saved in the database.
- If the student has an email on file, the certificate is automatically emailed to them.
No teacher action is required for individual certificate generation -- it happens automatically.
Bulk Generation
Teachers and administrators can generate certificates for all qualifying students of an exam at once:
- Navigate to the exam's management page.
- Click Generate Certificates.
- Optionally set a minimum percentage threshold (e.g., only students scoring 40% or above receive certificates).
- Choose a template (default template is used if none specified).
- Click Generate -- certificates are created for all qualifying submitted attempts.
Viewing Your Certificates
Students can view all their earned certificates:
- Go to My Certificates from the student dashboard.
- See a list of all certificates with exam title, score, percentage, rank, and issue date.
- Click any certificate to view details or download the PDF.
Public Verification
Anyone can verify a certificate's authenticity:
- Visit the verification URL:
/certificate/verify/CERT-XXXXXXXXXXXX. - The page displays the certificate details if valid:
- Student name.
- Exam title.
- Score and percentage.
- Rank out of total participants.
- Issue date.
- Verification code.
- If the certificate code is invalid, an error message is shown.
No login is required to verify a certificate -- the verification page is fully public.
Downloading Certificates
Certificates can be downloaded as PDF files:
- From the My Certificates page, click the download button.
- From the verification page, click the download link.
- The PDF file is named using the verification code (e.g.,
CERT-1A2B3C4D5E6F.pdf).
Resending Certificate Emails
If a student did not receive their certificate email:
- Teachers or administrators navigate to the exam's certificate list.
- Find the student's certificate.
- Click Resend Email.
- The system re-sends the certificate email with the PDF attachment and verification link.
Key Features
Certificate Data
Each certificate contains:
| Field | Description |
|---|---|
| Student Name | From the exam attempt or user profile |
| Exam Title | The title of the completed exam |
| Score | Marks obtained out of total marks |
| Percentage | Score as a percentage |
| Rank | Student's rank among all participants |
| Total Participants | Number of students who took the exam |
| Issue Date | When the certificate was generated |
| Verification Code | Unique CERT- prefixed code |
| QR Code | Links directly to the verification page |
PDF Generation
Certificates are generated using PDFKit with:
- Professional layout and formatting.
- QR code generated using the
qrcodelibrary. - Verification URL embedded in the QR code.
- Stored in
/uploads/certificates/on the server.
Email Delivery
Certificate emails are sent via the platform's email service and include:
- Student name and exam title.
- Score and percentage.
- Rank information.
- Verification URL as a clickable link.
- PDF certificate as an attachment (when pdf_path is available).
Role-Based Access
| Role | Capabilities |
|---|---|
| Student | View own certificates, download PDFs, access verification page |
| Teacher | Generate certificates for exams, view exam certificate lists, resend emails |
| Admin / Org Admin | All teacher capabilities plus organization-wide certificate management |
| Public (no login) | Verify any certificate using the verification code |
Tips and Best Practices
- Set meaningful minimum percentages -- a 0% threshold means everyone gets a certificate regardless of performance, which may reduce the perceived value.
- Use certificate verification URLs in official communications to add credibility.
- Encourage students to share their verification links on social media or portfolios.
- Check email delivery -- if students report missing certificate emails, use the resend function.
- Generate bulk certificates after all students have submitted, not during the exam window.
Related Features
- Online Exams -- certificates are generated from exam attempts.
- Notifications -- students receive notifications when certificates are generated.
- Classroom -- certificates respect class and organization boundaries.