Polymarket
Buy Yes or No on any Polymarket event from a Deposit Wallet nobody has seen before, one market per wallet.


| You trade | Any outcome on Polymarket's book: Yes/No and multi-outcome events |
| The wallet | A Polymarket Deposit Wallet for a fresh signer key, one market per wallet |
| Funded with | USDC, credited as pUSD by Polymarket's bridge |
| Code | packages/venues/src/polymarket, apps/web/src/features/polymarket |
Set up
Polymarket's official TypeScript SDK runs in its own Web Worker whose only network is the sealed fetch. The Deposit Wallet's address is known before it exists (it is derived from the signer), so Polymarket's bridge can give it a deposit address before it is deployed; the wallet is deployed and approved gasless through Polymarket's relayer on its first trade. The builder secret that authorises those relayer calls stays on the gateway, which signs only Deposit Wallet calls.
Funding
One standard amount of ZEC goes to a NEAR Intents deposit address, with a fresh shielded refund address.
NEAR delivers USDC to the wallet's Polymarket bridge address: on Polygon, or on Arbitrum or Base when NEAR has no Polygon route at that moment.
The bridge credits pUSD to the Deposit Wallet. The wallet is ready when the bridge reports it complete.
Trading
- Buy or sell any outcome at market (fill-and-kill, within two ticks of the estimate) or with a limit (good till cancelled); cancel open orders; redeem winning shares after the market resolves.
- One market per wallet. Adding to a position or selling it stays on the wallet that holds it; a new market takes a ready wallet that has never traded, or asks you to fund one.
- No builder code on orders (
packages/venues/src/polymarket/account.ts).
Coming home
Send home cancels open orders, redeems resolved shares, sells the rest at market and brings any Perps money back first. The pUSD then leaves through a one-time bridge withdrawal that pays a NEAR deposit address in USDC on Polygon, and NEAR swaps it to ZEC at a fresh shielded address. Under 1 pUSD stays behind as dust. If NEAR refunds the trip home, the money returns to the Deposit Wallet as USDC on Polygon; the next Send home sends it through the wallet's own bridge address, back into pUSD, and out with the rest (the bridge takes $2 or more).
Not in NEAR's confidential mode
This is the one swap Umbra Trade can't make confidential: the bridge pays out an inexact amount, which needs a flexible-input quote, and 1Click offers no confidential mode for those. NEAR's record pairs that payout with the fresh shielded address it goes to.
Public on purpose
Each wallet's relayer calls (creating it, its approvals, redeeming, moving pUSD into Perps, the trip home) are attributed to Umbra Trade's builder profile. Polymarket can tell these come from Umbra Trade users, and when, not which one.
