Skip to main content
Withdraw pUSD from your Polymarket wallet to any supported chain and token. Funds are automatically bridged and swapped to your desired token on the destination chain.

How It Works

  1. Specify your destination chain, token, and recipient address
  2. Receive bridge addresses for each destination chain (EVM, Solana, Bitcoin)
  3. Send pUSD from your Polymarket wallet to the appropriate bridge address
  4. Funds are automatically bridged and swapped to your desired token
  5. Funds arrive at your destination wallet
Do not pre-generate withdrawal addresses. Only generate them when you are ready to execute the withdrawal. Each address is configured for a specific destination.
When withdrawing, pUSD is unwrapped to USDC via the Collateral Offramp and swapped through the Uniswap v3 pool for USDC (native). The UI enforces less than 10bp difference in output amount. At times, this pool may be exhausted. If you are having withdraw issues, try breaking your withdraw into smaller amounts or waiting for the pool to be rebalanced. Alternatively, you can withdraw pUSD directly, which does not require Uniswap liquidity — just be aware that some exchanges no longer accept pUSD deposits directly.
For very large withdrawals (over $50,000), consider breaking the withdrawal into smaller amounts or using a third-party bridge to minimize slippage.

Create Withdrawal Addresses

Generate bridge addresses configured for your withdrawal destination. See Create withdrawal addresses for the full request and response schemas.
Builders: attach your code. If you route user funds through this endpoint, pass your builder code via the optional X-Builder-Code header (bytes32 hex; 0x + 64 hex chars). It lets our bridge provider attribute traffic to your app, so stuck or delayed transfers can be traced and prioritized. The header is optional. Requests without it still succeed but return a missing_builder_code warning, and a malformed code returns 400. Get your code at Settings → Builder.
Tell the bridge where you’re sending funds, including the destination chain, the destination token, and the recipient wallet, and it hands back one address per address type.
Your Polymarket wallet lives on Polygon, so you always send pUSD to the evm address. The response also includes svm and btc addresses because withdrawals and deposits share the same response format. Ignore those addresses when withdrawing.

Address Types

Withdrawals are instant and free — Polymarket does not charge withdrawal fees.

Withdrawal Flow

1

Check Supported Assets

Verify your destination chain and token are supported via /supported-assets.
2

Get a Quote

Preview fees and estimated output via POST /quote.
3

Create Withdrawal Addresses

Call POST /withdraw with your wallet address, destination chain, token, and recipient.
4

Send pUSD

Transfer pUSD from your Polymarket wallet to the appropriate bridge address.
5

Track Status

Monitor progress using /status/{address}.

Next Steps

Get a Quote

Preview fees and estimated output before withdrawing.

Check Status

Track your withdrawal progress.