EarnProof currently implements minimum-income proof creation end to end in the backend and frontend.

Minimum Income Proof

Proves that total or average income met a threshold during a selected period. Example:
The subject received at least 1,000 USDC between January and March 2026.

Frontend Flow

The frontend exposes proof creation at:
The page lets a worker:
  • connect Freighter,
  • request and sign a wallet challenge,
  • sync Stellar testnet payments,
  • classify payments as income or non-income,
  • select eligible income payments,
  • enter a threshold and date window,
  • create a signed minimum-income credential,
  • open the public verification page for the resulting proof ID.

API Flow

Example request:
The backend checks that selected payments belong to the authenticated wallet, are marked as income, are eligible, use the requested asset, and fall inside the requested date window.

Response

The response includes:
  • proofId,
  • proof status,
  • signed credential payload,
  • public verification URL,
  • contract anchoring result,
  • disclosed claim summary,
  • expiration timestamp.
The signed credential hides raw payment IDs, full wallet history, and individual source transaction details from public verifiers.

Planned Proof Types

Recurring-income proofs and payment-receipt proofs are still planned. They should reuse the same wallet authentication, payment indexing, canonical credential signing, and public verification path.