Skip to main content
The optimistic network for TON

Optimistic truth.
Universal markets.
Native to TON.

OMY is the TON-native event oracle. Resolve real-world facts on-chain by economic game — for prediction markets, bridges, insurance, and RWA.

consumer.tolk
// React to truth on-chain
match (msg) {
    OracleResult => {
        // always dedupe — at-least-once delivery
        if (settled.contains(msg.questionId)) return;
        settled.set(msg.questionId, true);

        // settle YOUR contract on msg.answer
        if (msg.answer) payout(winners);
        else refund(holders);
    }
}

Prices alone don't tell the truth.
Markets need verifiable facts.

OMY turns truth into a market. Ask a question, post a bond, propose an answer. If nobody disputes, the answer is accepted. If they do, both sides risk capital and the economic game decides. Honest reporting becomes the only rational strategy.

The gap

TON has price oracles.
Now it has truth.

Existing oracles on TON deliver prices — numeric feeds, sub-second. Useful, but they can't answer "did event X happen?". That gap blocks prediction markets, insurance payouts, bridge attestations, RWA settlement, and conditional payments of every kind.

OMY fills it with the most battle-tested model in DeFi: the optimistic oracle, ported to TON's actor model. Native bonds in USDT, committee at launch, stake-weighted DVM in Phase B.

Price oracles
$2 437.18
One number. Updates every block.
Existing TON oracles
vs
Event oracle
Yes / No
Arbitrary facts. Settled by bond + dispute.
OMY
How it works

Optimistic by default.
Final by consensus.

In most cases the truth settles in a single transaction. Disputes are the rare escalation — and when they happen, capital is at stake on both sides.

01

Propose

Anyone asserts an answer and locks a USDT bond. The bond is refundable — if the proposer is right.

02

Liveness window

A challenge window opens. Anyone with conviction can dispute by posting their own bond. No challenge means the proposed answer is accepted.

The common case

Accepted

Nobody disputes. The proposer's bond is refunded, the consumer receivesOracleResult with the truth. One transaction, no arbitration cost.

The escalation

Disputed → Resolved

A disputer challenges with their own bond. The resolver settles — committee at launch, stake-weighted DVM in Phase B. Winner takes back their bond plus half of the loser's; the other half goes to treasury.

What you can build

Infrastructure for any market.

One oracle. Any consumer. Click a card to explore — each is a real product pattern that a TON team could ship on top of OMY.

Canonical use case

Prediction markets

On-chain markets for any future event. Users buy YES or NO shares with USDT; the winning side claims $1 per share on the oracle's answer.

Will event X happen by date Y?$42,180 vol
1D1W1MALL
Live
Day 1Day 10Day 20Day 30Today
YES67¢+14¢
NO33¢−14¢
Bought 500 YES2m ago
Sold 120 NO5m ago
SDK

Ten lines.
Then you have truth.

The SDK is a single TypeScript file. Drop it in, build theCreateAssertion body, send it to the factory. The oracle handles the rest — your consumer just listens for theOracleResult callback.

integrate.ts
import { buildMeta, buildCreateAssertion } from '@omy/sdk';

const meta = buildMeta({
    identifier: 1n,
    callbackRecipient: myContract,
    question: beginCell()
        .storeStringTail('Did X happen?')
        .endCell(),
});

const body = buildCreateAssertion({
    id: 1n, resolver, bondAmount: 1_000_000n,
    liveness: 3600, meta,
});
// → send body to OracleFactory

The truth layer for TON.
Yours to build on.

Open source. MIT licensed. Built in Tolk.