Kabanata 36 ng 36

Maikling Bersyon

Noong Abril 28, 2026, inilipat ng Polymarket ang kolateral (collateral) para sa settlement nito sa Polygon mula sa USDC.e (ang naka-bridge na USDC token, contract 0x2791Bca1f2de4661ED88A30C99A7a9449Aa84174) tungo sa pUSD, isang stablecoin (stablecoin) na inilabas ng Polymarket na maaring tubusin nang 1:1 para sa native USDC. Walang kinailangang gawin ang mga trader sa web app - awtomatikong na-convert ang mga balanse at posisyon sa snapshot block. Kailangang mag-update ang mga operator ng API at bot: nagbago ang asset address ng collateral sa loob ng bawat CLOB order signature, nakansela ang mga lumang order na nilagdaan laban sa USDC.e, at kinakailangan ang py-clob-client 0.40 o mas bago. Ipinapakita ng gabay na ito ang eksaktong code, contract, at mga pagbabagong kailangan sa approval para mapatakbo ang bot sa panahon at pagkatapos ng cutover.

Ang matututunan mo: kung bakit lumayo ang Polymarket sa USDC.e, ano ang nagbago sa antas ng contract, ang eksaktong ruta ng pag-upgrade ng py-clob-client, kung paano mag-re-approve ng allowances para sa bagong collateral, kung paano beripikahin ang iyong balanse pagkatapos ng swap, at kung paano asikasuhin ang legacy na USDC.e dust na hawak na ngayon ng karamihan sa mga account.
Mga kinakailangan: dapat mayroon ka nang gumaganang Polymarket account, pangunahing pamilyar sa mga contract ng Polygon, at isang umiiral na bot o manual na workflow ng API na ginawa bago ang Abril 28, 2026. Kung ngayon ka pa lang magsisimula, i-install lang ang pinakabagong SDK at dumiretso sa Kabanata Apat - hindi mo na kailanman kailangang galawin ang USDC.e.
01
Kabanata Uno

Bahagi 1: Tatlong stablecoin (stablecoin), Isang Polygon

Bago ang paglipat, may tatlong USD stablecoin sa orbit ng Polymarket sa Polygon. Ang pag-alam sa pagkakaiba ng mga ito ang unang hakbang sa pag-unawa kung bakit lumipat ng venue ang Polymarket.

TokenIssuerContract on PolygonUri ng reserve
USDC.ePolygon PoS bridge0x2791Bca1f2de4661ED88A30C99A7a9449Aa84174Inilipat mula sa Ethereum mainnet
USDC (native)Circle0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359Native, direktang inisyu sa Polygon
pUSDPolymarket TreasuryTingnan ang docs.polymarket.com/pusd1:1 na sinusuportahan ng native USDC, buwanang attestation

Sa simula, pinili ng Polymarket ang USDC.e dahil ito ang nangingibabaw na bersyon ng USDC sa Polygon noong ilunsad noong 2020. Kalaunan, naglabas ang Circle ng native na USDC nang direkta sa Polygon at nagpahiwatig ng kalaunang pag-phase out ng bridged na bersyon. Ang patuloy na pag-settle ng bawat market sa USDC.e ay naglantad sa Polymarket sa long-tail na panganib ng biglaang pagwawakas ng bridge. Ang paglipat sa stablecoin na kontrolado ng Polymarket ay lumulutas doon at nagbubukas ng mga hinaharap na feature ng produkto (hal., perps margin, mga deposit sa vault, cross-chain receipt) na gumagamit ng parehong yunit ng account.

02
Kabanata Dalawa

Bahagi 2: Ano ang pUSD (at Ano ang Hindi Ito)

Ang pUSD ay isang karaniwang ERC-20 token sa Polygon (chain id 137) na may 6 na decimal, kapareho ng precision ng USDC. Maaari lamang itong i-mint ng Polymarket Treasury contract at puwedeng i-redeem nang 1:1 para sa native USDC anumang oras, nang walang fee sa conversion (mag-a-apply pa rin ang network gas). Ang reserve na sumusuporta sa pUSD ay iniingatan sa mga hiwalay na account at nirereport buwan-buwan na may third-party attestation.

Ang pUSD ay hindi algorithmic stablecoin (stablecoin), hindi ito over-collateralized gamit ang crypto, at hindi ito yield-bearing. Kung may hawak kang pUSD sa labas ng Polymarket, dapat mo itong ituring bilang IOU na inisyu ng Polymarket para sa native USDC - kapaki-pakinabang sa loob ng platform, puwedeng i-redeem kapag hinihingi, pero walang benepisyo ang paghawak nito nang pangmatagalan sa isang external wallet.

Audit at reserves: ang pUSD smart contract ay na-audit ng mga nakapirming auditor ng Polymarket. Ang mga reserve attestation report ay inilalathala sa docs.polymarket.com/pusd-audit kada buwan. I-verify ang pareho bago maghawak ng malalaking balanse nang pangmatagalan.
03
Kabanata Tatlo

Bahagi 3: Ang Nakita ng mga Trader sa Web App

Kung sa polymarket.com ka lang nagte-trade, hindi napansin ang migration. Sa snapshot block noong Abril 28, 2026:

  • Ang bawat USDC.e balance na hawak sa isang Polymarket proxy wallet ay awtomatikong kinonbert sa pUSD sa 1:1.
  • Nanatili ang parehong dollar value, parehong odds ng kinalabasan, at parehong expiry ng mga bukas na posisyon. Hindi nagbago ang mga conditional token ID.
  • Ang mga resting order na naka-denominate sa USDC.e ay kinansela sa snapshot. Ang mga bagong order pagkatapos ng migration ay awtomatikong pumipirma gamit ang pUSD.
  • Ang mga withdrawal papunta sa mga external wallet ay nagpalit mula sa pagpapadala ng USDC.e patungo sa pagpapadala ng native USDC (o, kapag hiniling, raw pUSD - karamihan sa mga user ay hindi na kailangang gawin ito).

Walang kinakailangang signature, transaction, o pagbabago sa settings. Ang mga resting limit na order na mahalaga sa iyo ay dapat muling ilagay nang manu-mano pagkatapos ng migration; ang pagkansela ay isang beses lang na pangyayari.

04
Kabanata Apat

Bahagi 4: Mga Operator ng API at Bot - Mga Kritikal na Pagbabago

Ito ang bahaging sisira sa isang bot kung hindi ka kikilos.

Ano ang nagbago sa lagda ng order: Ang mga CLOB order ay nilalagdaan sa pamamagitan ng EIP-712 at itinuturing ang address ng kolateral (collateral) asset bilang bahagi ng typed data. Bago ang migration, ang address na iyon ay USDC.e (0x2791Bca1f2de4661ED88A30C99A7a9449Aa84174). Pagkatapos ng migration, ito ay pUSD. Ang isang order na nilagdaan laban sa lumang address ay mabibigo sa beripikasyon ng lagda sa CLOB at magbabalik ng error na "invalid maker (maker) asset" o "signature mismatch".

I-upgrade ang py-clob-client

Inilabas ng Polymarket ang py-clob-client 0.40.0 dalawang linggo bago ang cutover na may buong suporta sa pUSD. Ang linya ng 0.34.x ay itinigil kinabukasan pagkatapos ng migration.

# I-upgrade sa isang release na aware sa pUSD
pip install --upgrade "py-clob-client>=0.40.0"

# I-verify ang naka-wire na collateral asset
python -c "from py_clob_client.constants import POLYGON; \
print('pUSD address:', POLYGON.get('collateral'))"

Kinukuha ng bagong SDK ang address ng collateral mula sa configuration ng chain sa pagsisimula, kaya hindi mo kailangang mag-hard-code ng anuman. Kung nag-fork ka o nag-pin ng mas lumang bersyon, ang pinakaligtas na hakbang ay burahin ang lockfile, mag-install muli gamit ang pinakabagong constants module, at patakbuhin muli ang iyong test suite.

Muling i-approve ang mga allowance

Kailangan ng iyong Polymarket proxy wallet ng ERC-20 allowance mula sa iyong trading account → kontrata ng CTF Exchange para sa token na pUSD. Ang lumang allowance para sa USDC.e ay nandoon pa rin sa chain pero wala nang silbi: hindi ito gagamitin ng CLOB. Kung walang bagong pUSD allowance, magbabalik ang bawat order ng "INSUFFICIENT_ALLOWANCE".

from py_clob_client.client import ClobClient

client = ClobClient(
    host="https://clob.polymarket.com",
    chain_id=137,
    key=os.environ["POLY_PRIVATE_KEY"],
    funder=os.environ["POLY_FUNDER"],
    signature_type=1,  # POLY_PROXY para sa Magic-link accounts
)
client.set_api_creds(client.create_or_derive_api_creds())

# Isang beses lang: i-approve ang pUSD para sa kontrata ng CTF Exchange
# (Helper na idinagdag sa py-clob-client 0.40)
client.update_balance_allowance(asset_type="COLLATERAL")

I-refresh ang mga kredensyal ng API

Patuloy na gagana ang mga umiiral na API key, pero kung nag-derive ka ng mga kredensyal bago ang Abril 1, dapat mo silang i-rotate bilang pag-iingat: ang L1 ECDSA signature ay naka-bind na ngayon sa isang domain na kasama ang bagong collateral address. Ang pinakasimpleng paraan:

creds = client.create_or_derive_api_creds()  # idempotent na muling pag-derive
client.set_api_creds(creds)

# I-save sa iyong .env
print(creds.api_key, creds.api_secret, creds.api_passphrase)
05
Kabanata Lima

Bahagi 5: Pagberipika sa Iyong Bot Pagkatapos ng Migrasyon

Patakbuhin ang minimal na smoke test na ito bago pahintulutang gumana ang anumang sizing logic gamit ang totoong pera:

# 1. Kumpirmahin ang pUSD balance sa proxy wallet
from py_clob_client.client import ClobClient
client = ClobClient(...)  # gaya sa itaas
balance = client.get_balance_allowance(params={"asset_type": "COLLATERAL"})
print("pUSD balance (raw):", balance["balance"])
print("Allowance to exchange:", balance["allowance"])

# 2. Maglagay ng limit na order na $1 na malayo sa touch
from py_clob_client.clob_types import OrderArgs
order = client.create_order(OrderArgs(
    token_id=test_token_id,
    price=0.05,        # malayo sa market
    size=20,           # $1 na notional sa $0.05
    side="BUY",
))
resp = client.post_order(order)
print(resp)

# 3. Kanselahin at kumpirmahin
client.cancel(order_id=resp["orderID"])

Kung matagumpay ang lahat ng tatlong tawag, maayos ang iyong koneksyon: pumirma ang SDK laban sa pUSD, kinikilala ang allowance, at konsistent ang order ledger. Unti-unting taasan muli ang sukat.

Maingat na itiming ang upgrade: kung pinatakbo mo ang bot nang tuloy-tuloy sa buong snapshot block, malamang na nagkaiba ang local aklat ng mga order (order book) state mo. Palaging i-reconcile laban sa mga REST snapshot pagkatapos ng malaking pagbabago sa venue bago mag-quote ng size.
06
Kabanata Anim

Bahagi 6: Mga Karaniwang Pagkakamali at mga Ayos

Error o sintomasDahilanAyos
signature verification failedNaka-sign ang order laban sa domain ng USDC.e EIP-712I-upgrade ang py-clob-client sa 0.40+; i-reload ang module ng constants
INSUFFICIENT_ALLOWANCE sa bawat orderWalang pUSD allowance mula sa iyong proxy papunta sa CTF ExchangePatakbuhin ang update_balance_allowance(asset_type="COLLATERAL") nang isang beses
invalid maker assetNaka-hard-code pa rin sa iyong config ang USDC.e addressPalitan ang anumang naka-hard-code na collateral address ng constant ng SDK
Ang wallet ay nagpapakita ng USDC.e balance > 0 pagkatapos ng migrationMga natirang "dust" token mula sa transfer ng third partyI-bridge ang USDC.e pabalik sa native USDC sa CCTP ng Circle, o hayaan na lang ito
Ang muling pagkonekta ng WebSocket ay nagbubunga ng walang laman na bookGumamit ang lumang subscription ng lumang market state mula bago ang snapshotI-drop ang lokal na cache, kuning muli ang REST book, tapos mag-resubscribe
Ang pag-withdraw sa external wallet ay nagpapakita ng pUSD sa halip na USDCPinili mo ang "pUSD" sa halip na "USDC" sa withdraw modalPiliin ang "USDC" - kino-convert ng bridge ang pUSD → native USDC nang 1:1
07
Kabanata Pito

Bahagi 7: Mga Conditional Token, Order ID, at Iba Pang Mga Bagay na Hindi Nagbago

Para mapanatiling tapat ang saklaw ng refactor, narito ang listahan ng mga identifier na matatag sa buong migration:

  • Conditional Token contract (CTF): kaparehong address. Hindi nagalaw ang iyong mga YES / NO na posisyon sa ERC-1155.
  • condition_id at question_id: deterministiko mula sa mga parameter ng market; hindi naapektuhan ng pagpapalit ng kolateral (collateral).
  • token_id (kinalabasan): hinango mula sa condition_id + index ng kinalabasan; walang pagbabago.
  • Polymarket proxy wallet address: parehong address; parehong code na gaya ng Gnosis Safe.
  • API key, API secret, API passphrase: valid pa rin (inirerekomendang i-rotate; hindi kailangan).
  • WebSocket schemas: kapareho; ang bagong asset field ay nagbabasa ng "pUSD" sa halip na "USDC.e" sa mga fill event.
  • Gamma at Data APIs: hindi nangangailangan ng authentication, walang pagbabago. Hindi nila kailanman direktang tinukoy ang collateral token.
Isang maliit na pagbabago sa UI: ipinapakita na ngayon sa view ng Polymarket proxy wallet ang mga balanse sa pUSD, na may 1:1 na label na USD. Ipinapakita ng mga block explorer (PolygonScan, Polygonscan API) ang mga paglipat ng pUSD ERC-20 sa kasaysayan ng transaksyon ng proxy wallet. Nanatiling makikita sa history ang mga lumang paglipat ng USDC.e; magkakaroon lang ang iyong address ng dalawang hanay ng ERC-20 token sa loob ng ilang panahon.
08
Kabanata Otso

Bahagi 8: Mga Implikasyon sa Buwis at Bookkeeping

Para sa karamihan ng mga hurisdiksiyon, ang awtomatikong pag-convert ng USDC.e sa pUSD ay isang like-kind swap ng mga stablecoin (stablecoin) na naka-peg sa USD sa 1:1 at hindi lumilikha ng anumang taxable event. Ang iyong cost basis at holding period ay magpapatuloy.

Gayunman, may dalawang usapin sa bookkeeping na dapat bigyang-pansin:

  1. I-update ang iyong ledger schema. Anumang tax tool, SQLite ledger, o export para sa accountant na nagfi-filter ng mga transaksyon sa Polygon ayon sa contract ng USDC.e ay tahimik na makakaligtaan ang bawat transaksyon pagkatapos ng migration. Idagdag ang address ng contract ng pUSD bilang alias.
  2. I-annotate ang snapshot conversion. Kahit na hindi ito taxable sa karamihan ng mga regime, itala nang malinaw ang conversion sa iyong mga record: halaga, block, timestamp, at isang tala na ito ay 1:1 stablecoin migration. Kung tanungin ito ng iyong hurisdiksiyon sa hinaharap, gusto mong may malinis na audit trail.

Dapat kumonsulta ang mga trader sa Israel sa Tax Guide para sa report na partikular sa ITA; hindi binabago ng migration mismo ang karaniwang pagtrato ngunit mahalaga ang pagbabago ng address ng contract para sa mga automated na tool sa pag-uulat.

09
Kabanata Siyam

Bahagi 9: Mga Pro Tip Mula sa mga Operator na Nakaabot sa Switch

  1. I-pin ang py-clob-client sa >=0.40,<0.50 sa requirements.txt. Ang 0.40 line ang minimum na tama ang paglagda sa mga pUSD order; ang pag-pin sa itaas na hangganan ay proteksiyon laban sa isang susunod na breaking change.
  2. Muling i-approve ang mga allowance sa panahon ng mababang volume. Ang tawag na update_balance_allowance ay isang Polygon transaction; ang paggawa nito habang mabilis ang galaw ng merkado ay pag-anyaya sa pagtaas ng gas fee.
  3. Kumuha ng snapshot ng balanse mong USDC.e bago ang Abril 28. Kahit awtomatiko ang conversion, ang mapapatunayang pre-snapshot na balanse ang pinakamalinis na paraan para i-dispute ang anumang isyu sa reconciliation.
  4. Kanselahin nang manu-mano ang mga nakahimpil na order bago ang snapshot. Kinaselna rin naman sila ng venue; ang ikaw mismo ang gumawa nito ay magbibigay sa iyo ng malinis na ledger entry imbes na isang linyang "system cancel".
  5. Bantayan ang mga dashboard na hindi pa napapanahon. Ang mga third-party na dashboard ng Polymarket (PolymarketAnalytics, Polynance, atbp.) ay inabot ng dalawa hanggang tatlong araw bago muling i-parse ang mga pUSD event. Maaaring mauna ang lokal na DB ng iyong bot kaysa sa mga pampublikong dashboard sa loob ng ilang araw.
  6. I-bridge ang natitirang USDC.e ayon sa sarili mong iskedyul. Karamihan sa mga account ay may ilang sentimo ng natitirang USDC.e mula sa mga dating rebate sa fee o peer transfer. Gamitin ang CCTP ng Circle o ang standard na Polygon Portal bridge - walang pagmamadali.
  7. Panatilihin ang lumang USDC.e address sa mga alerto mo sa block explorer. Kung sakaling may mag-sweep mula sa iyong proxy sa USDC.e pagkatapos ng migration, malaking red flag iyon na dapat siyasatin agad.

Ano ang Susunod?

Mahahalagang punto

Ang migrasyon ng pUSD ng Polymarket ay isang low-risk na one-time refactor para sa sinumang operator na nagpapatakbo na ng Polymarket bot. I-upgrade ang py-clob-client sa 0.40+, muling aprubahan ang mga pUSD allowance, magpatakbo ng $1 smoke test, at magpatuloy. Hindi nagbago ang imprastraktura sa ilalim nito (CTF, condition IDs, token IDs, API keys), kaya maliit ang saklaw at malinis ang kwento ng rollback.