valid.ca
valid.ca is an open verifiable-credential platform for Canadian safety training.
A training provider applies and gets approved. From then on it posts the facts of each certificate to one API endpoint, and valid.ca signs that record as a W3C Verifiable Credential under the provider's own domain. The worker keeps a copy in a wallet. Anyone can check it for free, with no account and no app.
Workers and verifiers never pay. Issuing is free at launch.
The whole flow
- Apply.
/issuers/apply. valid.ca staff review it. Approval generates your signing key and yourdid:web. Start the flat monthly membership and your first API key appears. - Issue.
POST /api/v1/credentialswith the worker's name and email, the course, and your own certificate number. The response has the signed credential and a public verification URL to print on the certificate. - Deliver. The worker gets an email with a wallet offer and a PIN, and can keep the credential in a valid.ca wallet or any OpenID4VCI wallet.
- Verify. An employer or inspector opens the URL, or pastes the credential at
/verify, and sees whether the signature holds, whether it has been revoked, and whether valid.ca approved the issuer.
You add a certificate by posting JSON. You do not upload a PDF, and you do not sign anything yourself. The credential still names you as the issuer and verifies against a key on your domain, which is the part How issuing works explains in detail.
Start here
- Writing the integration. How issuing works, then the API reference for every field, status code, and sample in four languages.
- Setting up as an issuer. Issuers covers the application, API keys, and the DNS record verifiers depend on.
- Checking credentials. Verification covers the public page, the paste form, and asking a wallet to present a credential.
- Reviewing the cryptography. Standards lists every format and spec, with nothing invented in between.
Where things live
/this site/docsthese guides/verifyand/c/{id}public verification/registryand/.well-known/valid-issuers.jsonwho valid.ca has approved/issuers/applyissuer applications/portalthe issuer portal: credentials, templates, API keys, domain setup/walleta worker's credentials/employersthe employer dashboard/admin/applicationsstaff review