USDC Expense Splitting with Optional Confidential Settlement
Abstract Fairsplit is a USDC-native expense splitting app for friends, teams, and communities. It combines onchain verifiability with optional confidential payments, allowing users to coordinate shared expenses transparently or privately when needed. Fairsplit is live on Base Sepolia and ARC Testnet, with Fairblock’s confidential transfer infrastructure integrated.
Why this exists Splitting expenses sounds trivial, but current solutions force tradeoffs: • Web2 apps are convenient, but rely on centralized custody, private databases, and trust in intermediaries. • Onchain tools are verifiable, but often expose payment amounts and relationships publicly. • Most tools stop at “send money” and ignore the full coordination lifecycle: reminders, status tracking, and history. • Privacy, when available at all, is usually all-or-nothing.
Fairsplit exists because everyday payments need coordination, verifiability, and choice not just transfers.
Vision Fairsplit aims to be the default USDC coordination layer for shared expenses: • Simple enough for everyday use • Verifiable through onchain state • Privacy-optional by design • Portable across web and mini-apps
Core Product Fairsplit lets users: • Create immutable USDC expense splits • Track participant-level payment status • Pay via public USDC transfer or confidential settlement • Send reminders and payment requests • Verify payments via explorer links • Use wallet-native identity and name resolution
Key Differentiator: Privacy Is Optional Most bill-split apps force everything to be public. Fairsplit doesn’t. Users can choose: • Public flow → standard ERC-20 USDC transfer • Confidential flow → Fairblock StableTrust–powered private settlement Same bill. Same UX. Different privacy guarantees.
Feature Snapshot • USDC-only settlement (6-decimal precision, exact accounting) • Participant-level paid state tracking • Confidential wallet flows (deposit, transfer, withdraw) • Multi-chain support (Base Sepolia, ARC Testnet) • ENS / Basename resolution • Activity feed with chain badges & explorer links • Mini-app compatible UX • Builder attribution support
Architecture overview Onchain • Smart contracts manage bill state, participant eligibility, and settlement status • USDC-only accounting simplifies logic and expectations • Onchain state is the single source of truth Frontend • Built with Next.js and React • Wallet interactions via wagmi and viem • Chain-aware UI with explorer links for verification Offchain (V1) • Profiles, friends, and activity stored in browser local storage • Email and in-app notifications for coordination only
Why this matters Fairsplit shows that everyday financial coordination can happen onchain without forcing users to give up privacy or usability. By combining USDC-native settlement, optional confidentiality, and simple coordination tools, it offers a practical foundation for social payments in Web3. The current testnet release is a proving ground, not a finish line.
Limitations (V1) • User data is device-specific (local storage) • No centralized accounts or recovery • Testnet performance may vary • Confidential UX depends on SDK and network execution timing These constraints are explicit and intentional for an early release.
Security & Assumptions • Contracts are immutable post-deployment • Confidential flows depend on correct key management • Name resolution may fail under RPC edge cases • Local frontend state can be cleared by users Mitigated via explicit chain labels, explorer links, and strict validation.
Roadmap • Mainnet rollouts • Better error decoding • Improved analytics • Automated reminders
Disclaimer Fairsplit is experimental software. Users should evaluate smart contract, wallet, and privacy tradeoffs before transacting meaningful value. This document is not financial or legal advice.