PAY PRIVATELY · PROVE IT ONCE · ANY APP UNLOCKS · LIVE ON DEVNET · PAY PRIVATELY · PROVE IT ONCE · ANY APP UNLOCKS · LIVE ON DEVNET · PAY PRIVATELY · PROVE IT ONCE · ANY APP UNLOCKS · LIVE ON DEVNET · PAY PRIVATELY · PROVE IT ONCE · ANY APP UNLOCKS · LIVE ON DEVNET · PAY PRIVATELY · PROVE IT ONCE · ANY APP UNLOCKS · LIVE ON DEVNET · PAY PRIVATELY · PROVE IT ONCE · ANY APP UNLOCKS · LIVE ON DEVNET · PAY PRIVATELY · PROVE IT ONCE · ANY APP UNLOCKS · LIVE ON DEVNET · PAY PRIVATELY · PROVE IT ONCE · ANY APP UNLOCKS · LIVE ON DEVNET · PAY PRIVATELY · PROVE IT ONCE · ANY APP UNLOCKS · LIVE ON DEVNET · PAY PRIVATELY · PROVE IT ONCE · ANY APP UNLOCKS · LIVE ON DEVNET · PAY PRIVATELY · PROVE IT ONCE · ANY APP UNLOCKS · LIVE ON DEVNET · PAY PRIVATELY · PROVE IT ONCE · ANY APP UNLOCKS · LIVE ON DEVNET ·
𓋹 pay private. prove it. unlock.

Pay in the dark.
Unlock in the light.

Paying for something on Solana usually carves your wallet into a public ledger forever. Jat turns a payment into a one-time receipt you prove in your browser, so any app can check it and unlock what you paid for, without tying the unlock back to your wallet. Built on the Semaphore and Sismo lineage of nullifier proofs, non-custodial by design.

𓆎 paying to unlock exposes you

Unlocking with your wallet unlocks your wallet.

Pay for a drop, a membership, or gated content on-chain and you hand over your wallet, and with it your whole history, to be read forever. Today's token gates just check that public wallet. Jat lets you prove you paid without showing the wallet you paid from, so access opens and your history stays yours. Non-custodial, sealed by cryptography, not by a company.

𓏏 carved 4,400 years ago · still public today

Stone remembers
everything.

𓊽 the seal

Three stones, one seal.

I

Pay into the pool

You deposit into a shared Jat pool in a fixed denomination, non-custodial, signing your own transfer. The denomination is public; which deposit is later spent stays unlinked from your wallet.

II

Prove the receipt

In your browser, prove in zero knowledge that you hold a pool deposit of at least the threshold, plus a one-time nullifier scoped to where you are unlocking. The proof never shows which deposit is yours. The seal that opens doors.

III

Verified on-chain

A small fixed Groth16 circuit, proven in your browser in seconds, verified by a Solana program any app can call. One seal, used once. Running on devnet, unaudited.

01 Deposit
02 Receipt
03 Prove
04 Unlock
𓎟 how a seal is made

Pay in the dark.
Unlock in the light.

Deposit into the shared pool in a fixed denomination. That deposit becomes a sealed receipt only you can open. You prove in your browser "I hold a deposit of at least X" with a one-time nullifier, and any app verifies the seal on-chain and opens the gate. The proof does not reveal which deposit is yours, and the unlock is not linked to your wallet. Used once, never reusable.

Jat is live, and verified on-chain.
Proof size
~260B
Browser prove
~1.5s
On-chain verify
<280k CU