Offline receipt verification · no account · no upload
Prove it. Here.
In your browser.
This page verifies an a11oy receipt bundle with the same fail-closed checks the reference verifier runs — and it proves its own offline claim by counting its network requests while it works. Flip one byte and watch the check name the exact position of the break.
The demo bundle is unsigned — a persistent signer has not landed yet — so the honest verdict is UNSIGNED-LOCAL, not a green check.
Press “Verify the demo bundle.” Nothing leaves this page.
The tour walks the full buyer test: run, denial, approval, offline verification, tamper, missing evidence, durability, malformed input, trust anchor, report.
Load an example bundle
Or drop / paste any bundle JSON into the editor. These four examples are generated by fixtures/gen_fixtures.py from the reference verifier, and carry their expected verdicts.
Simulated offline blocks network calls at the service-worker layer. Pull the plug for the real thing — the counter reads zero either way.
The one thing you take on trust
Offline verification removes every server from the loop except one assumption: that this page served you the real SZL verification key. That assumption is checkable — when signing lands, the key is pinned here and published through three independent channels:
Current key status — honest state
Today the demo fixtures are unsigned: key management has not landed, so this page ships no production key and every demo verdict is hash-checked and honestly labeled UNSIGNED-LOCAL. A demo session key you mint in the sandbox is labeled DEMO-KEY-UNTRUSTED, lives only in this tab, and never persists.
Article 12 logging conformance profile
One click turns your last completed verification into a downloadable JSON report: every receipt field mapped to a profile row marked PASS, INCOMPLETE, or UNKNOWN — a field never silently passes. The report carries the bundle's honest verdict, states the six-month retention floor, and says plainly that applicability, classification, and deployer obligations are customer-specific.
Runs a verification of the demo bundle first if you have not verified anything yet.