Risks
Read this before you spend anything. It is the complete list of ways this can go badly for you, written plainly, including the parts that are inconvenient to say.
You pay 0.02 ETH, which is not refundable. What you receive afterwards is whatever Sitowise credits to your node, which is currently funded by Sitowise itself and can be reduced or stopped at any time. There is no promised return, no rate, and no protection if any of this goes wrong. Do not spend money here that you need.
1. Rewards are funded by Sitowise during the launch period
Sitowise is a genuine Uniswap v4 hook, and that code is written and deployable. But a v4 pool fixes its hook at initialisation and a hook cannot be attached to pools that already exist. Until Sitowise creates pools that name the hook and those pools carry real volume, the hook earns nothing.
So the value credited to nodes today comes from Sitowise, not from swap flow. It is discretionary. It can be reduced without notice, paused, or stopped permanently. Nothing in the contract compels anyone to credit anything to any node, ever.
Every round records its funding mode, and that field is public in GET /api/distributions. You can check for yourself which source has been funding rounds.
2. This is not a yield, an investment, or a return
A node is not a deposit, a security, a share of a fund, or a claim on any pool of assets. Nothing accrues at a rate. Sitowise publishes no APR, no projection and no payback period, because any such figure would be invented.
Historical figures on this site, including the charts, describe what has already happened. They are not a forecast, and past rounds do not entitle you to future ones. If you are buying a node expecting a specific return, you have misunderstood what it is, and you should not buy one.
3. The purchase is final
The 0.02 ETH is a plain transfer to the payments wallet, which is an ordinary account Sitowise controls. It is not escrowed, not held on your behalf, not refundable, and not recoverable by retiring the node or by any other action. There is no cancellation window and no function that could reverse it, because the contract never receives that money in the first place.
A node also cannot be sold or transferred, so there is no exit other than withdrawing whatever has been credited to it. You may withdraw less in total than you paid. That is a realistic outcome, not a remote one.
4. A balance is real ETH, and that is a smaller promise than it sounds
A credit is a payable call: creditBatch reverts unless the ETH sent with it equals the amounts being credited, so a balance cannot exist without the money behind it, and no withdrawal can fail for want of liquidity. You can check this without asking anyone. outstanding() is the sum of every node balance and isSolvent() returns whether the contract still covers it. Both are public views.
That removes one risk and leaves the larger one untouched. Nothing obliges anyone to credit your node anything, ever. The danger is not that a balance you hold evaporates, it is that no balance appears in the first place, or that credits stop after a few rounds. A backed balance of zero is still zero.
The whole balance moves at once, to an address you name, and the transfer is a raw call. A destination that rejects ETH makes the transaction revert with TransferFailed, which costs gas and changes nothing else.
5. The code is not audited
No third party has reviewed this contract. There are 112 passing tests including fuzzed invariants, which demonstrates that the paths the author thought of behave as intended and says nothing about the paths they did not. A fault in a contract holding ETH can mean the loss of that ETH, and this one holds every node balance.
The contract is small, public and verified on the explorer. Review it yourself or assume the risk; see Audits.
6. Operator discretion and centralisation
This is not a decentralised protocol and does not claim to be. One party runs the ledger, decides what is credited, and holds the owner, relayer and distributor keys.
| The operator can | The operator cannot |
|---|---|
| Decide what, if anything, is credited to nodes | Take a node from you, or move it |
| Retire a node, excluding it from future rounds | Reduce a node’s balance, or either of its running totals |
| Pause new mints | Pause or block a withdrawal |
| Change the relayer and the distributor | Withdraw from a node it does not own |
| Change the per-wallet cap, up to a hard ceiling of 100 | Raise that cap past the ceiling, which is a constant |
Remove contract funds that back no node, through rescue | Remove any ETH that backs a node balance |
| Change the price and the payments wallet, both of which live off chain | Charge you anything at withdrawal time, or take a cut of one |
| Stop operating entirely | Upgrade or replace the deployed contract |
The full analysis, including what each limit is enforced by, is on Security model.
7. Operator keys live on a server
Two keys sit on the application server because they have to send transactions unattended. Neither of them, and no key at all, can withdraw from a node: only the node’s own owner can, and the contract checks msg.sender against nothing else. What a leak costs is still worth stating exactly.
- The relayer may call
mintForand nothing else. Stolen, it mints nodes to addresses that never paid, and burns whatever gas the key holds. That dilutes future rounds and costs Sitowise money; it does not touch anything you hold. - The distributor may call
creditBatchand nothing else. Because that call is payable and has to carry the ETH being credited, the key holds the payout float. Stolen, that float is gone, and rounds stop until it is replaced. Only a few days of runway is meant to sit on it, but that is an operating practice, not something the contract enforces. - The owner key is the cold deployer key and is meant to stay off the server. It can pause new mints, change the relayer and the distributor, change the per-wallet cap, and call
rescuefor at mostfreeBalance(). Stolen, it can halt sales and take unattached funds. It cannot reach a node balance, cannot block a withdrawal, and cannot change the code. Ownership transfer is two-step, so it also cannot be handed away by a typo.
8. Payment happens off chain, and mistakes there are unrecoverable
You buy a node by sending ETH to an ordinary wallet. No contract validates that transfer, so nothing about it can revert, and nothing about it can be undone.
- Send to the wrong address and the money is simply gone. There is no contract holding it, nobody who can reverse it, and no support process that can recover it. Take the payments address from Addresses, never from a message.
- Send the wrong amount and no node is minted. The transfer is held for manual review and needs a person to sort out.
- A payment can be seen and still not minted, if the relayer is out of gas, the contract is paused, or the process is down. Your payment hash is the only reference for putting that right, so keep it.
- The node is minted to whichever address sent the ETH. Pay from an exchange and the node belongs to the exchange, permanently and irrecoverably.
9. Dependency on Sitowise continuing to operate
Withdrawal survives Sitowise disappearing. It needs no server, no signature and no permission, and the contract is verified on the explorer, so any node owner can call withdraw or withdrawAll for whatever balance they already hold without this site existing.
Everything else stops. Only the distributor can call creditBatch, so nothing new is ever credited to any node. Only the relayer can call mintFor, so payments already sent but not yet minted would need a human who is no longer there. This site, the API and the dashboard are conveniences; balances, ownership and the running totals are on chain and readable without any of them.
10. Chain and infrastructure risk
- Everything runs on Robinhood Chain, chain id 4663. Downtime, congestion, reorganisation or a change in the network affects Sitowise directly.
- The RPC endpoint, the explorer and this site are third-party or hosted services and can be unavailable.
- The hook depends on Uniswap v4 contracts on that chain. A problem in the PoolManager would affect accrual.
- Gas prices are outside anyone’s control, and you pay gas for your payment and for every withdrawal.
11. Mistakes you can make that nobody can undo
- Losing the wallet. Nodes cannot be reassigned, so losing the key loses the node permanently.
- Paying from an address you do not control. The node is minted to whichever address the ETH came from, and it can never be moved to you afterwards.
- Withdrawing to the wrong address. You choose the destination and the transfer is final. Nobody checks it for you and there is no reversal.
- Withdrawing to a contract that cannot receive ETH. The transaction reverts, which costs gas.
- Signing something else. Sitowise never asks for a seed phrase or a private key, never asks you to send ETH anywhere except the payments wallet printed on Addresses, never asks you to pay to unlock a balance, and never sells nodes second-hand, because they cannot be transferred. Anyone offering otherwise is impersonating this project.
12. Legal, tax and eligibility
Nothing on this site is financial, legal or tax advice, and nobody here is licensed to give any. How a node and its payouts are treated where you live is your responsibility to determine, and the answer may be unfavourable. Access may be restricted or unlawful in some jurisdictions. There is no consumer protection, no deposit insurance and no recourse if any of the above goes wrong.