4.4 KiB
4.4 KiB
Bridge
Polymarket uses USDC.e (Bridged USDC) on Polygon as collateral. The Bridge API handles deposits from and withdrawals to multiple chains.
Base URL: https://bridge.polymarket.com
Deposit Flow
POST /depositwith your Polymarket wallet address → get deposit addresses- Verify token is supported via
/supported-assets - Send assets to the appropriate address for your source chain
- Assets are bridged and auto-swapped to USDC.e on Polygon
- Track status via
/status/{deposit_address}
# Create deposit addresses
curl -X POST https://bridge.polymarket.com/deposit \
-H "Content-Type: application/json" \
-d '{"address": "0xYOUR_POLYMARKET_WALLET"}'
Response includes three address types:
| Address | Use For |
|---|---|
evm |
Ethereum, Arbitrum, Base, Optimism, and other EVM chains |
svm |
Solana |
btc |
Bitcoin |
tvm |
Tron |
Each address is unique to your wallet.
Supported Chains
| Chain | Address Type | Min Deposit | Example Tokens |
|---|---|---|---|
| Ethereum | EVM | $7 | ETH, USDC, USDT, WBTC, DAI, LINK, UNI, AAVE |
| Polygon | EVM | $2 | POL, USDC, USDT, DAI, WETH, SAND |
| Arbitrum | EVM | $2 | ETH, ARB, USDC, USDT, DAI, WBTC, USDe |
| Base | EVM | $2 | ETH, USDC, USDT, DAI, cbBTC, AERO, USDS |
| Optimism | EVM | $2 | ETH, OP, USDC, USDT, DAI, USDe |
| BNB Smart Chain | EVM | $2 | BNB, USDC, USDT, DAI, ETH, BTCB, BUSD |
| Solana | SVM | $2 | SOL, USDC, USDT, USDe, TRUMP |
| Bitcoin | BTC | $9 | BTC |
| Tron | TVM | $9 | USDT |
| HyperEVM | EVM | $2 | HYPE, USDC, USDe, stHYPE, UBTC, UETH |
| Abstract | EVM | $2 | ETH, USDC, USDT |
| Monad | EVM | $2 | MON, USDC, USDT |
| Ethereal | EVM | $2 | USDe, WUSDe |
| Katana | EVM | $2 | AUSD |
| Lighter | EVM | $2 | USDC |
Always call /supported-assets for the current list — assets change over time.
Withdrawal Flow
- Check destination chain/token via
/supported-assets - Preview fees via
POST /quote POST /withdrawwith wallet address, destination chain, token, and recipient → get deposit addresses- Send USDC.e from Polymarket wallet to the appropriate address
- Track status via
/status/{address}
# Create withdrawal addresses
curl -X POST https://bridge.polymarket.com/withdraw \
-H "Content-Type: application/json" \
-d '{
"address": "0xYOUR_POLYMARKET_WALLET",
"toChainId": "1",
"toTokenAddress": "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
"recipientAddr": "0xDESTINATION_ADDRESS"
}'
Do not pre-generate withdrawal addresses. Generate them only when ready to execute.
Quote
Preview fees and estimated output for deposits and withdrawals. Withdrawals are instant and free — Polymarket does not charge withdrawal fees.
POST https://bridge.polymarket.com/quote
Status Tracking
# Use the deposit address (not your wallet address)
curl https://bridge.polymarket.com/status/0xDEPOSIT_ADDRESS
Transaction Statuses
| Status | Terminal | Description |
|---|---|---|
DEPOSIT_DETECTED |
No | Funds detected on source chain, not yet processing |
PROCESSING |
No | Being routed and swapped |
ORIGIN_TX_CONFIRMED |
No | Source chain transaction confirmed |
SUBMITTED |
No | Submitted to Polygon |
COMPLETED |
Yes | Funds arrived — success |
FAILED |
Yes | Error occurred |
Poll every 10–30 seconds until COMPLETED or FAILED.
Response
{
"transactions": [{
"fromChainId": "1",
"fromTokenAddress": "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48",
"fromAmountBaseUnit": "1000000000",
"toChainId": "137",
"toTokenAddress": "0x2791Bca1f2de4661ED88A30C99A7a9449Aa84174",
"status": "COMPLETED",
"txHash": "0x...",
"createdTimeMs": 1697875200000
}]
}
Empty transactions array = no deposits detected yet.
Recovery
If you deposited the wrong token:
- Ethereum deposits: https://recovery.polymarket.com/
- Polygon deposits: https://matic-recovery.polymarket.com/
Sending unsupported tokens may cause irrecoverable loss.
Caveats
- Withdrawals >$50,000: break into smaller amounts to minimize slippage
- Uniswap pool exhaustion: USDC.e → USDC swap goes through Uniswap v3 pool. If pool is exhausted, use smaller amounts or wait for rebalance
- Deposits below minimum: will not be processed
- Supported assets change: always check
/supported-assetsbefore depositing