This wallet received at least 1,000 USDC per month for the last three months.A verifier can check the claim without seeing the worker’s full financial history.
How It Works
- A worker connects Freighter on Stellar testnet.
- The backend authenticates the wallet through a signed challenge.
- The backend indexes incoming Stellar payments.
- The worker classifies qualifying income payments.
- The backend evaluates a proof condition and signs a credential.
- The worker shares a verification link or QR code.
- A verifier checks signature, expiration, revocation, issuer status, and disclosed claim.
Key Features
- Selective disclosure — prove a claim without revealing unrelated transactions.
- Stellar-native payments — start with public testnet payment activity.
- Signed credentials — use deterministic payloads and cryptographic signatures.
- Revocation support — invalidate shared proofs after issuance.
- Soroban trust layer — use issuer and proof registries without storing private income data on-chain.
- Open-source architecture — separate frontend, backend, contracts, SDK, docs, and specification repositories.
MVP Scope
The first implementation targets:Documentation
Getting Started
- Getting Started — run the local stack and understand the repository layout
- Roadmap — delivery order and future protocol direction
Architecture
- Architecture Overview — system components and trust boundaries
- Privacy Model — what is disclosed and what stays hidden
- Credential Lifecycle — creation, verification, expiration, and revocation
- Data Model — core backend entities
Guides
- Wallet Authentication — signed challenge flow
- Payment Indexing — Stellar payment discovery and normalization
- Create an Income Proof — proof inputs and disclosure preview
- Public Verification — verifier result states
- Revocation — proof invalidation flow
Contracts
- Contracts Overview — Soroban trust layer
- Protocol Config — admin, pause, and schema controls
- Issuer Registry — issuer status and metadata
- Proof Registry — commitments and revocation