Clearwave

Compliance-gated music royalty shares. Artists sell a slice of future streaming royalties to verified investors.

Monad Testnet · 10143

Offering #0

A Cleanverse A-Token representing a share of this artist's royalties.

StatusOpen
Share token0x0EDd…2f36
Price per share5 CWUSD
Sold22 / 1000
Remaining978
Supply invariantintact

Compliance is enforced on-chain

These are live canBuyAmount() reads against the deployed contract — not a UI mock. The same check the buy transaction runs.

Verified investor
Holds a Cleanverse A-Pass. Can buy, can claim royalties.
can buy
Unverified investor
No A-Pass. The A-Token itself refuses the transfer on-chain.
refused

Buy one share — as either wallet

Both buttons send a real transaction on Monad testnet, signed server-side by the demo wallets. Same code path, same offering; only the A-Pass differs.

Buy as verified investor
Holds an A-Pass — expect this to settle.
Buy as unverified investor
No A-Pass — expect the contract to refuse.

The refusal is produced by the chain, not by this page. The button is enabled either way — nothing is hidden client-side — and the transaction is simulated against the deployed contract before it is sent, so the error shown is the contract's own.

Your wallet

Optional. The offering above is real on-chain state and renders without one.

Expect to be refused: a wallet without a Cleanverse A-Pass cannot buy. That refusal is the point, and it comes from the token contract, not from this page.

Under the hood

Every contract below is ours except the A-Tokens, which Cleanverse issues and which enforce compliance themselves.

ShareOffering0xD9eb…3a87
RoyaltyDistributor0x26b3…3101
APassComplianceValidator0x45bD…56eB
CWUSD (settlement A-Token)0x1A32…aD40

The RoyaltyDistributor holds its own Cleanverse A-Pass. It is not a wrapper around compliance — it is itself a verified entity, and without that A-Pass it cannot receive or pay out a single unit of royalty.