When a Polymarket market resolves, holders of winning outcome tokens must callDocumentation Index
Fetch the complete documentation index at: https://mintlify.com/deniszidbaev-cmyk/polyclaw-cmyk/llms.txt
Use this file to discover all available pages before exploring further.
redeemPositions on the Conditional Token Framework (CTF) contract to exchange those tokens back for pUSD collateral. Polymarket’s website auto-redeems positions placed through its UI — but positions opened via polyclaw buy (direct contract calls) are invisible to that auto-redeemer. You must claim your collateral manually using these commands.
Requirements
CHAINSTACK_NODE
Polygon RPC URL. Required for all redeem operations to query the CTF contract and submit transactions.
POLYCLAW_PRIVATE_KEY
Your EVM private key. Required for
redeem <id> and redeem all to sign the redeemPositions transaction.polyclaw redeem list
Shows all resolved positions that have not yet been redeemed.
Usage
Output as a JSON array instead of the formatted table.
| Column | Description |
|---|---|
ID | First 8 characters of the position UUID |
Side | YES or NO |
Won | yes if your outcome was the winner, no otherwise |
Share | Payout numerator/denominator from the CTF contract |
Est. payout | Estimated pUSD payout = entry_amount × numerator / denominator |
Market | Truncated market question |
Won: no and $0.00 payout) because they exist in your position file. They are automatically skipped during redemption.
polyclaw redeem <position_id>
Redeems a single position by calling redeemPositions on the CTF contract.
Usage
Position ID prefix (minimum 8 characters). If the prefix matches multiple positions, PolyClaw will ask you to be more specific.
Look up position and condition ID
The position record is loaded from
~/.openclaw/polyclaw/positions.json. If the condition_id is missing, it is back-filled from the Gamma API.Verify resolution on-chain
The CTF contract is queried for
payoutDenominator and payoutNumerators. If the denominator is zero, the market has not resolved yet.Check winning side
If your side’s payout numerator is zero (losing outcome), the redemption is skipped with a message.
Send redeemPositions transaction
A
redeemPositions call is sent to the CTF contract with the correct index set for your outcome (1 for YES, 2 for NO). Gas cost is approximately 0.005 POL.polyclaw redeem all
Sweeps every open position and attempts to redeem all winning resolved positions in one pass.
Usage
Why manual redemption is needed
Polymarket’s web application automatically redeems outcome tokens for positions you open through its UI. However, positions executed viapolyclaw buy involve direct calls to the CTF and Exchange contracts — the UI has no awareness of them. As a result:
- The auto-redeemer does not process your PolyClaw positions
- Winning tokens sit in your wallet earning nothing until you redeem them
polyclaw redeemcalls the sameredeemPositionsfunction the UI would call, returning pUSD to your wallet at the correct payout ratio
The Collateral Onramp migration on 2026-04-28 changed the redemption collateral from USDC.e to pUSD. All redemptions via
polyclaw redeem return pUSD, which you can use directly for new trades or withdraw via any pUSD-compatible exchange route.