Skip to content

Fund Security

Your funds on SharkBetX are held through the UserVault smart contract on Polygon. The backend calculates trading and settlement results, while the contract enforces custody boundaries such as withdrawal destinations, active-risk locks, release limits, and atomic settlement transfers.

How Your Funds Are Protected

1. Withdrawal Address Binding

When you first deposit, your wallet address is permanently registered as your withdrawal destination. Every withdrawal — whether you initiate it, or the platform processes it — always goes back to your wallet.

There is no way for anyone to redirect your funds to a different address. Changing your withdrawal address requires a 48-hour waiting period that you must initiate yourself.

2. Withdrawal Lock Protection

Open bets reduce your available balance. The contract stores the current locked amount for your account, and withdrawals can only execute against the portion that is not locked or externalized for trading.

Withdrawals use a two-step flow. After you request a withdrawal, the platform refreshes your risk lock before final execution. If that refresh is unavailable, the contract has an emergency-delay fallback so a pending withdrawal cannot be blocked forever by a missing lock update.

3. Atomic Settlement Transfers

When a position settles, UserVault applies the settlement accounting and the matching USDC.e movement in one transaction. If the required transfer cannot happen, the settlement transaction reverts instead of partially updating balances.

4. Trading Wallet Narrowing

Client funds released for execution can only go through the configured Trading Safe when custody narrowing is enabled. The Trading Safe is the Polymarket funder wallet used for CLOB orders and settlement liquidity.

5. Governance Safe Controls

UserVault upgrades are controlled by a Governance Safe. A TimelockController is deployed for future hardening, but it is not the active upgrade owner today. The live backend also checks the expected implementation address at startup and refuses to run in production if the deployed implementation does not match.

Verify It Yourself

You don't need to take our word for it. Everything is on-chain and verifiable.

Check Your Balance

The simplest way: click "Verify balance on-chain" in the Wallet tab of SharkBetX. That page reads your balance directly from the UserVault contract via a public Polygon RPC — no server involved — and also shows the platform's on-chain solvency coverage.

If you prefer to query Polygonscan directly:

  1. Open the UserVault contract on Polygonscan
  2. Click Connect to Web3 (read-only — Polygonscan only sees your address)
  3. Find balances → paste your wallet address → Query
  4. Divide the result by 1,000,000 for the USDC amount

Check Your Withdrawal Address

On the same page, find withdrawalAddress → paste your wallet address. It should show your own wallet address.

View the Contract Source Code

All contract source code is verified on Polygonscan. You (or any developer) can read the Solidity code and confirm exactly how your funds are managed:

Summary

ProtectionWhat it means
Withdrawal bindingFunds always return to your wallet
Withdrawal locksOpen risk reduces only your available balance
Atomic settlementAccounting and USDC movement succeed or revert together
Trading wallet narrowingReleased funds must use the configured Trading Safe path
Governance SafeUpgrades require Safe-controlled administration

TIP

You can verify the proxy address, implementation, and your balance directly on Polygon at any time.