How CredVault works
A look inside the engines that power credential lifecycle management — from upload to approval to renewal.
Core data flow
Upload
Employee submits document
Validate
Rules engine checks completeness
Approve
Manager reviews & signs off
Store
Vault with version history
Remind
Auto alerts before expiry
Reminder engine
schedule: daily 06:00 UTC
for each credential C:
days_left = C.expiresOn - today
if days_left in [90, 60, 30, 14, 7, 1]:
notify(C.owner, "${days_left} days until ${C.name} expires")
if days_left < 0 and not C.notified_expired:
escalate(C.owner.manager)Configurable cadence per organization. Supports email, in-app, and SMS channels.
Rules engine
rule "RN must hold license + BLS" when role == "Registered Nurse" require credential type "License" status active require credential type "Certification" name "BLS" status active else mark non_compliant rule "Background check expires yearly" when type == "Compliance" and name contains "Background" set ttl 365 days
Declarative compliance rules per role and per credential type, evaluated in real time.
System layers
API & Web
REST + WebSocket layer powering web and mobile clients
Workflows
Approvals, reminders, and renewal queues
Vault & Audit
Encrypted document store with immutable audit log