> ## Documentation Index
> Fetch the complete documentation index at: https://docs.skillfactory.com.br/llms.txt
> Use this file to discover all available pages before exploring further.

# Certificate Management

> Configure certificate templates, automatic issuance, and public validation

## Certificates

Configure course completion certificate templates. The platform supports automatic generation, positionable dynamic fields, and public validation via a unique code.

## Certificate templates

Each course can have its own certificate template with a custom design.

### Create a template

<Steps>
  <Step title="Go to Admin → Certificates">
    Click "New template"
  </Step>

  <Step title="Associate with a course">
    Select the course that will use this template.
  </Step>

  <Step title="Upload images">
    Upload the front image (required) and optionally the back image.
  </Step>

  <Step title="Configure fields">
    Position the dynamic fields over the certificate image.
  </Step>

  <Step title="Enable automatic generation">
    If desired, enable certificates to be generated automatically when a student completes the course.
  </Step>
</Steps>

### Certificate images

| Image     | Required | Default dimensions |
| --------- | -------- | ------------------ |
| **Front** | Yes      | 1056 x 816 pixels  |
| **Back**  | No       | 1056 x 816 pixels  |

### Dynamic fields

Fields are visually positioned over the certificate image. For each field, you configure:

| Property            | Description                                  |
| ------------------- | -------------------------------------------- |
| **Type**            | Student name, start date, or completion date |
| **Position (X, Y)** | Coordinates in pixels over the image         |
| **Font size**       | In pixels                                    |
| **Font family**     | E.g., Arial, Times New Roman                 |
| **Color**           | Text color in hexadecimal                    |
| **Weight**          | Normal, bold, or numeric values (100-900)    |
| **Alignment**       | Left, center, or right                       |
| **Width**           | Text box width in pixels                     |

<Info>
  Field positioning is visual. Drag and drop fields over the preview image to set the exact position.
</Info>

## Automatic generation

When the `auto_generate` option is enabled on the template:

1. The student completes all lessons in the course
2. The system automatically detects the completion
3. A certificate is generated with the student's data
4. The student receives a notification that the certificate is ready
5. Optionally, an email is sent with the details

<Note>
  Automatic generation depends on the student's progress. The course must be 100% completed to trigger the certificate.
</Note>

## Public validation

Each certificate receives a unique alphanumeric code that can be used for validation.

### How to validate

Anyone can verify the authenticity of a certificate:

1. Go to the platform's public validation page
2. Enter the certificate code
3. The system displays the certificate data if it is valid

### Information displayed during validation

* Student name
* Course name
* Start and completion dates
* Validation code
* Certificate images (front and back)

### Validation security

* Search is done by code (case-insensitive)
* Revoked or expired certificates return an error
* Rate limiting of 10 validations per IP per minute to prevent abuse
* Public access (no authentication required)

## Certificate status

| Status        | Description                                 |
| ------------- | ------------------------------------------- |
| **Generated** | Valid and available certificate             |
| **Revoked**   | Certificate invalidated by an administrator |
| **Expired**   | Certificate with an expired validity period |

### Revoke a certificate

Administrators can revoke a certificate when necessary. The revocation records:

* Who revoked it
* When it was revoked
* Reason for revocation

## Email notification

When a certificate is generated, the system can send an email to the student containing:

* Student name
* Course name
* Completion date
* Validation code

The email uses the `certificate_ready` template configurable in the email templates.

## Next steps

<CardGroup cols={2}>
  <Card title="Email templates" icon="envelope-open-text" href="/en/admin/email-templates">
    Customize the certificate email
  </Card>

  <Card title="Certificates (student)" icon="certificate" href="/en/students/certificates">
    See how students access certificates
  </Card>
</CardGroup>
