Skip to content

Deposit

Openfish settles all prediction market trades in USDC.e on Polygon. The Bridge API lets you send tokens from EVM chains, Solana, or Bitcoin. Incoming assets are converted to USDC.e automatically and credited to your Openfish balance.

  1. Call POST /deposit with your Openfish wallet address.
  2. Receive three deposit addresses: one each for EVM chains, Solana, and Bitcoin.
  3. Transfer tokens to the address that matches your source chain.
  4. The bridge picks up the incoming transfer, swaps it to USDC.e, and credits your wallet.
POST https://bridge.openfish.fun/deposit
FieldTypeRequiredDescription
addressstringYesYour Openfish wallet address (0x)
{
"address": {
"evm": "0x23566f8b2E82aDfCf01846E54899d110e97AC053",
"svm": "CrvTBvzryYxBHbWu2TiQpcqD5M7Le7iBKzVmEj3f36Jb",
"btc": "bc1q8eau83qffxcj8ht4hsjdza3lha9r3egfqysj3g"
},
"note": "Send supported assets to these addresses to deposit into your Openfish wallet."
}
AddressUse For
evmEthereum, Arbitrum, Base, Optimism, Polygon, BSC
svmSolana
btcBitcoin

Each address is deterministically derived from your wallet and stays the same across calls. You can reuse these deposit addresses for multiple transfers.

use openfish_client_sdk::BridgeClient;
#[tokio::main]
async fn main() -> anyhow::Result<()> {
let bridge = BridgeClient::new("https://bridge.openfish.fun");
let resp = bridge
.deposit("0x56687bf447db6ffa42ffe2204a05edaa20f55839")
.await?;
println!("EVM deposit address: {}", resp.address.evm);
println!("Solana deposit addr: {}", resp.address.svm);
println!("Bitcoin deposit addr: {}", resp.address.btc);
Ok(())
}
  1. Generate Deposit Addresses — Call POST /deposit with your wallet address.
  2. Verify Supported Assets — Confirm your token meets the minimum via GET /supported-assets.
  3. Send Tokens — Transfer from your external wallet to the correct deposit address.
  4. Monitor Progress — Poll GET /status/{address} until the transaction reaches COMPLETED.

Openfish generates one deposit address per chain family:

  • EVM addresses are computed from your Openfish wallet through a deterministic salt, yielding a unique Polygon-compatible address that accepts tokens from any EVM-compatible chain.
  • Solana addresses are created as associated program derived addresses (PDAs) tied to your wallet, supporting SOL and SPL token deposits.
  • Bitcoin addresses follow a P2WPKH (SegWit) scheme mapped to your wallet for reduced on-chain costs.

Every asset enforces a minimum USD-equivalent deposit. Transfers below the threshold are not processed. Always check GET /supported-assets before sending funds.

If you deposit native USDC (not USDC.e), the bridge automatically swaps it to USDC.e through a low-slippage DEX route. No additional action is required on your part.

For deposits exceeding $50,000, consider using a third-party bridge to minimize slippage and settle directly to your Openfish EVM deposit address:

Openfish is not affiliated with any third-party bridge provider.

Sending an unsupported token to a deposit address may result in permanent loss. Always verify your token is listed in the Supported Assets response before initiating a transfer.