MEV Rebates

The OFA proxy returns 90% of captured MEV value back to the originating user as a rebate. This page covers the rebate model, lifecycle, and query endpoints.

Rebate Model

RecipientShareDescription
User90%Returned to the transaction originator.
Protocol10%Retained for protocol operations and staking.

Rebates are denominated in the native token of the chain where the MEV was captured (e.g., ETH on Ethereum mainnet).

Rebate Lifecycle

1. Capture

When a backrun auction completes and the bundle is included on-chain, the MEV value extracted by the winning backrun is recorded against the user's originating transaction.

2. Accumulation

Rebates accumulate in the user's rebate account. Small rebates from multiple transactions are batched to reduce gas costs on distribution.

3. Flush

Once the accumulated rebate exceeds the flush threshold (currently 0.001 ETH), the system queues a payout transaction. Payouts are batched across users and executed in a single on-chain transaction via the RebateDistributor contract.

4. Verification

Users can verify their rebate on-chain by submitting a Merkle proof to the RebateDistributor contract. The proof is generated from the rebate epoch's Merkle tree and can be retrieved via the audit endpoint.

Query Endpoints

GET /protect/rebates?originator_id={address}

Also available via WebSocket gateway as mev_getProtectRebates (or alias yq_getRebateHistory).

Returns the rebate summary for a given originator address.

Response:

{
  "address": "0x1234...abcd",
  "total_earned_wei": "12500000000000000",
  "total_claimed_wei": "10000000000000000",
  "pending_wei": "2500000000000000",
  "tx_count": 47
}

Rebates are distributed on-chain via the RebateDistributor contract. Users can claim accumulated rebates by submitting a Merkle proof for the relevant epoch. See Settlement Contracts for contract details.

Code Examples

Fetch rebates via HTTP

curl "https://mev.yoorquezt.io/protect/rebates?originator_id=0x1234...abcd" \
  -H "Authorization: Bearer $API_KEY"

Fetch rebates via WebSocket gateway

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "mev_getProtectRebates",
  "params": { "originator_id": "0x1234...abcd" }
}
Edit this page