Three concepts in one catalog:
| Skills | Trained capabilities that don't expire (e.g. mini-split certified, boiler service, paint correction). |
| Certifications | Earned credentials from a third party (e.g. NATE, IKECA CECS, ISA Arborist). May or may not expire. |
| Licenses | State or regulatory credentials (e.g. master plumber, journeyman electrician, pesticide applicator). Almost always expire. |
Bundle and Front Office. Voice/Visibility tier sees an upgrade card.
Building your catalog
- 1Open the catalog
Sidebar → Operations → Skills & Certs.
- 2Seed the starter library
On first visit (empty catalog), click "Seed [your industry] library" to clone a curated set of common credentials for your trade — HVAC gets EPA-608/NATE/HVAC Excellence; plumbing gets master plumber/backflow; electrical gets EVITP/NABCEP/NFPA 70E; etc. All 12 industries covered. Plus a universal safety baseline (OSHA 10/30, First Aid/CPR, driver's license).
- 3Customize
Add your own entries via the per-section Add buttons. Edit existing entries to tweak the description or default validity period.
- 4Set expiration semantics
Each entry has a "Has expiration / requires renewal" toggle. When checked, set a Default validity (months) — used to auto-fill the expiration date on the tech form when you enter an issued date.
Assigning credentials to a tech
- 1Open the tech editor
/portal/team → click Edit on a tech.
- 2Scroll to Credentials section
Below the Skill keywords field, you'll see a "Credentials from catalog" section. Click Assign to add one.
- 3Pick + dates + cert number
Pick from the dropdown (catalog entries this tech doesn't already hold). For credentials with expiration, fill in Issued date — the Expiration date auto-fills based on the catalog's Default validity. Optional cert # + notes.
- 4Renewal
When a tech recerts, click the credential card → edit → update Issued + Expiration dates. The unique constraint enforces one assignment per skill per tech, so renewal = update, not new row.
Expiration tracking
On the Skills & Certs page, the "Expiring soon" tile counts every tech-credential pair with an expiration date within 30 days OR already expired. Below the tiles, an amber callout lists each one with the tech's name + skill name + status. On individual tech edit forms, expiring credentials show with amber/red borders.
v1 surfaces expiration status on the page. A weekly digest email cron (same pattern as fleet compliance reminders) is planned for v2.
Skill keywords vs catalog credentials
Two parallel systems coexist:
| Skill keywords (legacy) | Free-form text array on the tech row. Used by smart-slot to text-match against service required_skills. Quick + simple; no expiration tracking. |
| Catalog credentials (new) | Structured assignments via tech_certifications. Tracks issued/expiration/cert# per credential. Doesn't (yet) feed smart-slot — that's a v2 enhancement. |
For v1, use both: keep the keyword that matches your service requirements ("EPA-608") AND the structured credential entry (which tracks the actual cert + cert #). v2 will unify these so a single catalog assignment satisfies both surfaces.
Pre-seeded library — what each industry gets
| HVAC | EPA-608 (Universal/I/II), NATE, HVAC Excellence, ICE, ductless/mini-split, boiler/hydronic, state HVAC license |
| Plumbing | state journeyman + master plumber, backflow tester (ASSE 5110), medical gas (ASSE 6010), water heater specialist, PEX |
| Electrical | state journeyman + master, NFPA 70E, EVITP, generator install, NABCEP solar PV |
| Roofing | GAF Master Elite, OC Platinum Preferred, CertainTeed MSA, HAAG inspector, IBHS FORTIFIED, fall protection |
| Pool service | CPO, AFO, IPSSA, equipment install, plaster/tile |
| Pressure washing | PWNA membership + fleet wash + environmental, IKECA CECS, soft wash |
| Junk removal | CDL Class B, HAZWOPER 40-hr, EPA-608 (refrigerant disposal), trauma-scene biohazard |
| Auto detailing | IDA SVD/CD, CarPro/Gtechniq/FeynLab installer, paint correction |
| Landscaping | state pesticide applicator, ISA Certified Arborist, Irrigation Association CIC, mosquito control |
| House cleaning | IICRC Certified Master Cleaner, Green Seal, move-in/out specialist, OSHA Silica Standard |
| Handyman | NAHB CAPS, state GC license, EPA RRP (Lead-Safe), grab-bar install |
| All trades baseline | OSHA 10/30, First Aid/CPR, driver's license, background-checked (always seeded) |
What's next
v1 ships catalog + tech assignments + expiration UI. Coming in future releases: weekly cert-expiration email digest cron (same pattern as fleet compliance), smart-slot skill-matching against catalog (currently uses free-form keyword array), service requirements pulled from catalog instead of free-form, customer-facing badge widget for marketing pages ("Your tech holds N certifications including X, Y, Z").