Verify · no account · nothing uploaded
Check a receipt.
Paste a receipt, drop the file, or try the sample. The check runs entirely in this page: the signature first, then the school's books and seal when they're available.
Try it
Check against a different public key
By default this checks against the sample school's published demo key. Paste a school's key list to check its receipts instead.
Results appear here. The check runs in this page; nothing is uploaded.
Questions about a receipt? Ask your school.
What a pass proves, and what it doesn't
Proves
- The receipt was signed with the named key.
- It hasn't changed since it was signed.
- The amount, date and Stripe record are as signed.
- When the verifier holds the school's books: they hold the same event, and its month is sealed.
Doesn't prove
- That the school delivered the hours.
- That a state program accepts the receipt.
- That the key belongs to the school, unless you got the key from the school or from Trifold.
What this page checks
- The shape. The receipt has exactly the fields of a version-1 Trifold receipt, nothing missing, nothing added.
- The key. The key id the receipt names is one the school has published.
- The signature. An Ed25519 signature over the receipt's exact bytes (JSON with sorted keys). Change one character and it fails.
- The books and the seal. When the verifier holds the school's books (here, the sample school's), it makes the receipt again from the event in the books and compares, then checks the month's seal.
Run a school on books like these? Get early access