Certifications: Roster, Definitions & Expiration Tracking
Every member holds credentials with their own issuing authority, number, and expiration date — Firefighter I, EMT, hazmat operations, driver/operator, CPR. Command Established keeps them in one roster, attaches the certificate itself to each record, and lets you slice the list by member, type, status, or how soon it expires.
A lapsed credential is rarely discovered at a convenient time. It surfaces when the state inspector asks for proof, when a compliance program flags a member as ineligible, or when the only hazmat tech on the call turns out to have expired two months ago. Certification tracking exists so that the expiration date is the first thing you see, not the last thing you find out.
Where Certifications Live
Certifications show up in three places, and they are all views of the same records.
- Training › Certifications — The department-wide roster, with filters for member, type, status, and expiration window. This is where you answer "who holds X?" and "what expires this quarter?". Admins can also switch the View control to Pending review and Definitions here.
- Personnel › Certifications tab — One member's certifications on their personnel page. Admins add, edit, and archive a member's records here.
- Certification detail page — Click a roster row (or the View eye icon on the personnel tab, then More details) to open the full record, including the Supporting Documents section for attached files. The breadcrumb takes you back to the roster with the filters you had set.

Note: Certifications is a screen in the Training module — open Training, then Certifications. If you don't see it, the module may be disabled for your department.
Certifications vs. Definitions
- A certification is one member's credential — "Jane Smith's Firefighter I, issued 2024-03-12, expires 2027-03-12." It has a status, dates, and attached documents.
- A certificate definition is the catalog entry for a kind of credential — "Firefighter I, issued by the State Fire Academy, renews every 36 months." Definitions are what the Type picker offers when you add a certification, what the roster's Type filter groups by, and what a compliance program checks against.
One definition, many certifications. Keeping definitions consistent is what lets you ask "show me everyone with a current Firefighter I" and get a complete answer.
Adding or Editing a Certification
Open the member's personnel page, go to the Certifications tab, and click Add Certification. (The roster itself has no add button — every certification belongs to a member, so you add it from their record.) The form asks for:
- Type — Required. Pick a definition from the catalog. Choosing one fills in the issuing authority for you if that field is empty.
- Name — Required. What the credential is called on the certificate itself.
- Issue Date — Required. Expiration Date is optional; leave it blank for credentials that never expire.
- Certification #, Hours, Issuing Authority, Description — Optional. The certification number and issuing authority are searchable from the roster.
- Status — Defaults to Active. See Status Badges.
Click Add Certification (or Save Changes when editing). If a required field is missing, the form tells you which one.

The Type picker
Start typing in Type to filter the catalog. If nothing matches, choose Use "…" (creates a definition) — a new definition is created when you save, so the next person who enters the same credential finds it in the list. A panel above the field lets you set the definition's name, issuing authority, and renewal period first.
Only admins see this form and the Type picker. Members who aren't admins submit the certificate document with Submit Certificate on their personnel page, and the reviewing admin picks the Type when approving it (see member self-submission).
Tip: Before typing a custom type, search for a partial word — "Firefighter" rather than "FF1". Duplicate definitions ("Firefighter I" and "FF I") split your roster and make compliance checks miss people. If you create a duplicate by accident, see Managing Definitions for how to collapse it.
How Do I Attach the Certificate PDF?
Open the certification's detail page (or the Edit Certification dialog from the personnel tab). Below the form is a Supporting Documents section with an Upload button. Attach up to five files — PDFs, scans, or photos of the wallet card. Anyone with document access can open them from the view dialog without editing the record.
Attaching documents to an existing certification is an admin action. A member who has a new certificate to add uses Submit Certificate on their personnel page instead, which creates a new pending certification with the file attached for an admin to review.
Tip: Have a stack of certificates to enter at once? Bulk Certificate Upload reads each file with AI, extracts the details, and matches the recipient to a member — you just review and approve.
Status Badges
- Active — Current and valid.
- Expired — The expiration date has passed. A certification that expires today is still Active; tomorrow it reads Expired. This happens automatically; you don't need to change anything.
- Revoked — Set by hand when a credential is withdrawn by the issuing authority or the department.
- Pending — Awaiting admin approval. Certifications from bulk upload or member self-submission start here.
- Rejected — A pending submission an admin declined, with the reason shown on the detail page.
"Expiring soon" is not a status; it shows on the date. In the roster's Expires column, a date within the next 30 days (or already past) turns red. On a member's Certifications tab, hovering the red date shows "Expires in N days", "Expires today", or "Expired".
How Do I Mark a Certification Renewed or Revoked?
There is no separate "renewed" status — a renewal is a new issue date and a new expiration date.
- Renewed — Open the certification, update Issue Date and Expiration Date to the new cycle (and the Certification # if it changed), set Status back to Active if it had expired, and attach the new certificate under Supporting Documents.
- Revoked — Open the certification and set Status to Revoked. It stays on the member's record for the audit trail but no longer counts for compliance.
- Entered in error — Use Archive (the trash icon on the personnel tab, or the archive action on the detail page). Archived certifications leave the roster but the history is preserved.
Filtering the Roster
Every filter lives in the page URL, so a filtered view can be bookmarked or pasted to another officer, and the browser's Back button steps through the views you've visited. Opening a certification and coming back returns you to the same filters.
- Member — Searchable multi-select over the roster (archived members included, so old records are still findable).
- Certification — Free-text search across the name, certificate number, and issuing authority.
- Type — Multi-select over definitions. Deprecated definitions are listed with "(deprecated)" so you can still find their records, plus a No type option for records with no definition — never linked, or whose definition has since been archived.
- Status — Any combination of Active, Expired, Revoked, Pending, Rejected.
- Expires — The expiration-window filter, below.
How Do I Keep Track of Soon-to-Expire Credentials?
Open the Expires column menu. Under Expiration window, choose:
- Any — No expiration filtering (the default).
- Expired — Only certifications whose date has passed.
- Within 30 days, Within 60 days, Within 90 days — Certifications still valid today that expire within that many days.
A checkbox, Show certifications with no expiration, is on by default. Turn it off to hide never-expiring credentials; it's greyed out when a window is selected, since a window already excludes them.

The roster is the officer's view. The member also hears about it directly: they get reminders 30 days before, 7 days before, and on the day a certification expires — for whichever of those milestones are still ahead when the certification is added or approved. A certification entered 20 days out gets the 7-day and expiry reminders; one entered inside the last week gets only the expiry reminder. Reminders arrive in-app, and by email or push if the member has those channels on under Settings › Notifications in the Certifications group (emails are bundled into the notification digest). Reminders go only to the certificate holder, not to officers, and aren't sent for revoked, rejected, or archived certifications.
Tip: Set the window to Within 90 days, sort Expires ascending, and bookmark the URL. That link is your renewal queue — open it at the start of each month. Pair it with a compliance program requirement of type Certification active if you want a lapse to affect a member's standing automatically.
How Do I Find Everyone Who Holds a Given Certification?
- From the roster — Open the Type filter, pick the definition, and set Status to Active. Add an expiration window to see whose is coming due.
- From the definition — In the Definitions view, click the definition's row. The detail dialog lists every member, status, and expiration date under Certifications using this definition.
Sorting
Click the Issued or Expires header to sort by that column, ascending or descending; only one sort applies at a time. Certifications with no expiration date always sort last, so a "soonest first" view starts with real deadlines.
Export CSV
Export CSV at the top of the roster exports the current view — the same filters and sort you see on screen — including every matching row, not just the ones you've scrolled through. Columns: Member, Certification, Cert #, Issuing Authority, Type, Issued, Expires, Status, Hours. The file opens cleanly in Excel.
The button is greyed out while the list is still loading. If the export fails partway, you'll see a message and no partial file is written; try again.
Tip: Set the Expires window to Within 30 days, export, and hand the CSV to the training officer — a ready-made renewal to-do list. Run a second export with the window set to Expired for credentials that have already lapsed (the two windows are separate views, so they export separately).
Managing Definitions
The Definitions view (admins only) is your certificate catalog.
- Add Definition — Name (required), Issuing Authority, Jurisdiction (Local, County, State, Federal, Other), Renewal Period in months, and a Description. The renewal period is shown in the table and detail dialog for reference; it doesn't change the expiration date of individual certifications, which is always set on the record itself.
- Active / Deprecated — Active definitions appear in the Type picker. Deprecated ones don't, but every certification that uses them is preserved and still filterable.
- Deprecate / Reactivate — Click a definition's row to open its detail dialog; the footer has Edit, Deprecate (for active definitions) or Reactivate (for deprecated ones). The green refresh icon on a deprecated row also reactivates it.
- Collapsing a duplicate — Deprecate the one you're retiring, then open it and use its Certifications using this definition list as a worklist: click each certification's name, change its Type to the definition you're keeping, and save.
- Built-in and AI badges — Built-in definitions came with your department and can't be archived. The AI badge marks definitions created from a parser proposal during bulk upload approval. Review those periodically and edit or deprecate any that duplicate an existing entry.

Note: Deprecating a definition doesn't affect members who already hold a certification of that type; it only stops new certifications from being filed under it.
Definitions and Compliance Programs
A compliance program can include a Certification active requirement. When you configure it, the Certificate definition field lists your department's definitions. A member satisfies the requirement when they hold an Active certification of that type that either has no expiration date or hasn't expired yet. Never-expiring credentials count as held indefinitely.
This is the payoff for a clean catalog: one definition per real-world credential means the compliance dashboard, the roster filter, and the definition's usage list all agree on who is current.
Permissions
Certification access has two tiers:
- Roster tier — Who holds what, the type, dates, status, certificate number, issuing authority, and hours. Every signed-in member can see the roster.
- Document tier — The attached files, description, and the AI-extracted details from bulk upload. Viewing another member's documents needs the certification-document permission; members can always see the documents on their own certifications.
Editing another member's certifications, approving pending submissions, and managing definitions are admin actions. Members without edit rights can still submit their own certificates for approval from their personnel page. See Understanding Permissions & Groups.
Getting Started
- Review the Definitions view. Rename or deprecate anything that doesn't match how your department actually names credentials, and collapse duplicates. Do this before entering certifications so the Type picker guides everyone to the same entries.
- Enter current certifications. Use Bulk Certificate Upload for the stack of PDFs; add the rest by hand from each member's Certifications tab.
- Attach documents as you go. A record with the certificate attached is proof; a record without one is a claim.
- Bookmark your renewal view. Roster, Expires within 90 days, sorted ascending. Check it monthly.
- Wire definitions into compliance. Add a Certification active requirement for any credential your active-member or pay-eligibility program depends on.
Frequently Asked Questions
What's the difference between a certification and a definition?
A certification is one member's credential with its own dates, number, and documents. A definition is the catalog entry for that kind of credential — the thing you choose in the Type picker. Many certifications point at one definition, and compliance programs check against the definition.
Does Command Established email us before a certification expires?
It notifies the member who holds the certification: 30 days before, 7 days before, and on the expiration date (for whichever of those are still ahead when it's entered). Each reminder is an in-app notification, plus email or push if the member has those channels on for the Certifications types under Settings › Notifications. Officers and admins don't receive these reminders — use the roster's Expires filter as the department-wide view, or tie the credential to a compliance program requirement so a lapse changes the member's standing.
Why does a certification show Expired when I set it to Active?
The expiration date has passed. Renewing it means entering the new dates; once the expiration date is in the future, set the status back to Active.
Can I share a filtered roster with another officer?
Yes. All filters and the sort are in the page URL. Copy the address bar and send it; the recipient sees the same view (subject to their own permissions).
Why can't I create a custom type?
Custom types create a certificate definition, and both the add/edit form and the Definitions view are admin-only. If you're a member, submit the certificate with Submit Certificate on your personnel page and the reviewing admin will classify it, creating a new definition if needed.
What happens to certifications when I deprecate their definition?
Nothing. They stay on the members' records, remain filterable (the Type filter lists the definition with "(deprecated)"), and still satisfy compliance requirements that reference that definition. The definition simply stops appearing in the Type picker for new certifications.
Does the CSV export include only the rows on screen?
It includes every row that matches the current filters and sort, across all pages. It does not include certifications filtered out of the view.