A digital identity you carry,
not one you keep asking for.
Today, proving who you are in India means handing over your Aadhaar each time and asking a central portal to vouch for you. AadhaarChain inverts that: verify once, anchor a wallet-bound proof on Solana, then decide what to reveal, to whom, and for how long. This explainer shows how the trust substrate works and how three apps — ONDC Buyer, ONDC Seller, and FlatWatch — consume it.
How to read this
Nine tabs on the left, in order. Why sets the premise, Substrate–Proof show the mechanism, the three app tabs show consumption, and Agents + Boundary close the loop.
One sentence each
AadhaarChain verifies you once and issues wallet-signed proofs. ONDC Buyer/Seller use those proofs to gate commerce. FlatWatch uses them to make society finance accountable.
01 · Premise
Today
Every vendor, bank, broker, society, and marketplace pings a central portal, receives your full Aadhaar profile, and keeps a copy. You re-do KYC everywhere. You can't see who has your data, can't revoke it, can't carry it across borders.
The bet
Verify once at the government source, anchor a wallet-bound proof on Solana, then re-use it everywhere as a short-lived, audience-bound, consent-scoped signature. Reveal only what's needed.
02 · Architecture
AadhaarChain splits into a trust producer (the only place that ever sees raw Aadhaar/PAN/OCR) and a trust consumer contract that downstream apps speak. Raw identity never crosses the dashed boundary.
03 · Interface
| Endpoint | Purpose |
|---|---|
GET /api/identity/{wallet}/trust | Returns verified, pending, unverified, or revoked + a safe summary. |
POST /api/identity/{wallet}/proof-token | Issues a 5-minute, audience-bound challenge — only if wallet is verified. |
POST /api/identity/proof-token/verify | Checks the exact message, wallet, audience, expiry, and ed25519 signature. |
GET /api/identity/status/{verification_id} | Status, plus review and revocation paths inside the producer. |
buyer_checkout_identity_proof),
the user's wallet signs it, the gateway verifies. The proof is meaningless to anyone
else and expires in minutes.
04 · Sequence
Every high-trust action across the portfolio — checkout, publish a listing, raise a society challenge, an agent write — is gated by this same eight-step sequence.
05 · App I
What it solves
An ONDC buyer app where the shopper is identified by a portable wallet identity rather than a marketplace account. Discovery, cart, and checkout degrade gracefully for unverified users; high-trust actions unlock only when an identity proof is signed for that specific checkout.
Routes
SearchPage → ResultsPage → ProductDetailPage →
CartPage → CheckoutPage → OrdersPage.
Plus AgentChatPage at /agent. Signs purpose
buyer_checkout_identity_proof.
Buyers are pseudonymous-but-verifiable — the seller never sees Aadhaar, only that this wallet has a verified identity and signed for this checkout. The same wallet works across any ONDC node.
06 · App II
What it solves
Onboards sellers using their wallet identity. Listings, price changes, order
acceptance, and payouts are gated on verified trust plus an
audience-bound signature — so a buyer (or a society) can be confident the vendor
they transact with is the same accountable identity that signed up.
Action policy
| View · draft | auth / wallet subject |
| Publish · edit · price | verified + server policy |
| Accept · dispatch order | verified + server policy |
| Payout / config | verified + server policy |
| Agent-originated write | verified + approval + audit |
Combined with on-chain reputation signals from aadhar-solana, this is the
substrate for a trust score per seller: verified identity + signed
actions + reviewed history.
07 · App III
The problem
In Indian housing societies, committee members handle the maintenance fund. Cash transactions, opaque vendor sourcing, and missing receipts make it trivial to skim money or favour friendly vendors. Residents see a charge — they don't see where it went.
The fix
Every society transaction is online and signed by a named, AadhaarChain-verified committee member. Receipts are uploaded and OCR-reviewed. Residents can raise challenges. Sourcing happens through ONDC: society opens a bid, ONDC sellers compete, the winning quote is paid against a receipt. A Chat Guard agent flags anomalies in real time.
08 · Intelligence
All three apps share one Claude Agent SDK runtime — the agent control plane on port 8100. Each app exposes an agent surface. UCP — Google's Universal Commerce Protocol — is the message contract that lets buyer and seller agents negotiate without a human in the loop while still respecting identity gating.
09 · Boundary
Crosses to apps
Trust status (verified, pending, unverified,
revoked); safe summary (wallet, audience-bound proof receipt); signed
challenge plus verification result; audit references and revocation events.
Never leaves AadhaarChain
Raw Aadhaar or PAN numbers; OCR text; verifier internals; transferable on-chain identity credentials; anything that would let a downstream app re-identify the user against the government registry.
Where this is going
Today the active trust producer is the FastAPI gateway. The aadhar-solana
Anchor program suite — identity registry, verification oracle, credential manager,
reputation, staking — is the long-term substrate. Once the bridge (verification event
schema, signer/oracle identity, attestation format, revocation propagation) is
verified, trust state moves on-chain and the same trust contract keeps working. Apps
don't need to change. The identity becomes truly yours: anchored on a public chain,
portable across borders.