Contracts & transparency
Everything this product does happens on Monad Testnet. Here is exactly what is deployed and where to verify it.
Network
- Chain
- Monad Testnet
- Chain ID
- 10143
- RPC
- https://testnet-rpc.monad.xyz
- Source
- GitHub repository
Deployed contracts
ISAFactory
Deploys and indexes every agreement. Batched snapshot reads for the explore page.
0xdaA1Dca29D758cEc7B3bA659c2921ccCcd494c01ISAAgreement
One contract per agreement, deployed by the factory. Holds the terms, funder positions, income history and settlement accounting.
Deployed per agreement — open any agreement page for its address.
TestUSD (tUSD)
Demo settlement asset, 6 decimals, open faucet. No real-world value.
0x9aE4053b0aa7a042eA3355fe743E0C21F2Cb6e95DemoIncomeVerifier
Records the recipient’s self-reported income on-chain. Implements IIncomeVerifier so a payroll or oracle provider can replace it without changing agreement logic.
0x1811389195AC43285f8c9489aDD72a83F2a0A34c
What the contracts enforce
- Income share percentage applied to every attested income figure.
- Minimum income floor below which a period settles at zero.
- Hard repayment cap; the final settlement is clipped so it can never be exceeded.
- Term deadline after which no new income can be reported.
- Pro-rata distribution across funders, claimed rather than pushed.
- Overfunding rejected outright; refunds available on a cancelled raise.
- Only the recipient can report income, settle, withdraw capital or cancel.
Known limitations
- Income is self-reported. The demo verifier records the figure on-chain but does not check it against real earnings.
- Nothing compels a recipient to report. A production system needs payroll or open-banking attestation plus legal recourse.
- Integer division leaves dust in the agreement contract when a settlement does not divide evenly across funders.
- The contracts are unaudited and deployed to testnet only.