Bets between friends. No bookmaker.
You pick a football match, a friend bets against you. A smart contract holds both stakes and pays out automatically after the final whistle – the result comes from the UMA oracle, not from us.
How it works
- 1
Pick a match
You take one of the three outcomes – 1, X or 2 – and set stake and quote.
- 2
Send the link
Before kickoff your friend picks one of the two other outcomes and puts in the counter-stake set by the quote. Now both stakes sit in the contract.
- 3
Automatic payout
After the final whistle the result is confirmed through UMA. The winner gets the whole pot, nobody has to report anything.
Who decides who won?
- A result bot fetches the score from football-data.org and reports it to UMA, an independent oracle, putting down a bond.
- For two hours anyone can dispute it. Whoever is right gets part of the other's bond; in a dispute UMA's participants vote.
- The result after 90 minutes plus stoppage time counts – no extra time, no penalties.
- If the third outcome happens, the one nobody picked, both get their stake back.
- Cancelled, postponed, abandoned or no confirmed result within 14 days: both get their stake back.
- If nobody takes the bet before kickoff, you get your stake back.
iWhat is UMA?
UMA is an independent oracle: a service that brings real-world events – here football results – reliably onto the blockchain.
- After the match our result bot reports the score to UMA and puts down a bond.
- For two hours anyone can dispute the report if it is wrong.
- If nobody disputes it, the result stands and the contract pays out automatically.
- If someone disputes it, UMA's participants vote on the correct result. Whoever was wrong loses their bond.
That way neither the operator nor your opponent can decide the result alone. Well-known prediction markets such as Polymarket also settle their markets through UMA.
On the testnet this vote does not exist yet: a dispute there would be decided by a test oracle.
More about UMA ↗What the contract can do – and what it can't
- It holds the stakes until the bet is decided. There is no bookmaker: you set the quote yourselves, and nobody earns a margin.
- The operator cannot move stakes, change a running bet or set a result on its own.
- The result bot can list matches and report results – every report can be disputed at UMA.
- Fee: 0 %. Changing it would go through a 2-day timelock and never applies to running bets.
- The code is public but has not been externally audited yet.
Why play money only?
Real-money betting offered to the public needs a licence under the Swiss Money Gaming Act; Germany and the EU have similar rules. That also applies when the bet runs on a blockchain. That is why this beta runs only on the Base Sepolia testnet with tUSD – a test dollar with no value that anyone can get for free.