On-chain escrow · OPN Testnet
Rewards stay locked
until the proof
is real.
RewardVault holds giveaways, ambassador rewards, bounties, and campaign payouts in escrow on OPN Chain. Every wallet gets a Merkle proof. Tokens move when the proof, the amount, and the deadline agree.
- 984Chain id
- 1 leafPer address
- PartialClaims allowed
- 0xA91c…4e212,400
- 0x18Fd…09aa800
- 0x77B1…e2c05,000
3 wallets · one leaf each
A CSV becomes one leaf per wallet. Duplicate addresses are added together, and invalid amounts are rejected.
Workspace
Campaigns, claims, and locked balances in one view.
Connect a wallet, switch to OPN Testnet, and run the drop from the same screen you are about to open.
01
One leaf per wallet
Each leaf is a hash of the address and its allocation. A messy CSV is cleaned before the root is published.
leaf = keccak256(address, allocation) 0xA91c… 2,400 0x18Fd… 800 0x77B1… 5,000
02
Claim any installment
Recipients take part of an allocation now and the rest later. The original proof keeps working until the allocation is used up.
600 of 2,400 paid · 1,800 still inside
03
Each drop is sealed
A campaign keeps its own root, deadline, funding, and claim total. Publishing the root is the last edit it ever gets.
- RootImmutable
- DeadlineFixed
- BalanceIsolated
Vault rules
The owner sets the drop. The contract keeps the books.
- 01
Cancel only while the drop is untouched
The owner can cancel before the deadline, and only if nobody has claimed yet.
- 02
Unclaimed tokens return after the deadline
Once the deadline passes, the owner withdraws whatever the campaign never paid out.
- 03
Locked rewards stay locked
Surplus recovery can move leftover reward tokens. It leaves campaign liabilities where they are.
OPN Testnet