Splitwise tracks shared expenses, balances, and IOUs so groups can split costs and settle up easily
Splitwise on Canton is a multi-party shared-expense app built with Daml smart contracts and a React UI. It lets seeded parties create groups, invite members, split expenses, track obligations, and record settlements with Canton’s per-party privacy. For the demo, users can quickly switch between Alice, Bob, Carol, Dave, and Erin to see how each party’s ledger view differs. This makes invites, balances, pending confirmations, and private group visibility easy to demonstrate in one browser.
Built with Daml 3.4 smart contracts running on a Canton sandbox, with Daml Script seeding demo parties and users. The contract model encodes groups, invites, expenses, obligations, settlement proposals, and receipts with multi-party authorization and per-party visibility.
The frontend is a React/Vite TypeScript app using direct JSON Ledger API v2 calls instead of generated bindings. It reads each party’s active contracts, submits commands with the selected user, and keeps seeded-party switching fast for demos.

