This is step-by-step guide on how to use Etherscan to withdraw stMATIC for MATIC tokens by calling functions directly from the stMATIC smart contract.
Step 1: Open the stMATIC Contract on Etherscan
Go to the stMATIC contract on Etherscan.
Confirm it’s the correct contract (Lido on Polygon: stMATIC).
Step 2: Navigate to the "Contract" Tab (Use "Read as Proxy" and "Write as Proxy")
On the contract page, click on "Contract."
You will see sub-tabs: Code, Read Contract, Write Contract, Read as Proxy, and Write as Proxy.
Use Read as Proxy and Write as Proxy.
Step 3: Check Your Balance (Read as Proxy)
Click on "Read as Proxy."
Find
balanceOf(address account)
.Enter your wallet address in the
account
field.Click "Query" to see your stMATIC balance.
Copy this numeric result (you’ll need it for the withdrawal request).
Step 4: Switch to "Write as Proxy" and Connect Your Wallet
Click on "Write as Proxy".
Just above the list of available methods, select "Connect to Web3."
Approve the connection in your wallet (e.g., MetaMask).
Step 5: Use requestWithdraw
Function
Locate
requestWithdraw
.Under
_amount
, paste the stMATIC balance you copied in Step 3.Under
_referral
, enter the zero address (0x0000000000000000000000000000000000000000
).Click "Write" and confirm the transaction in your wallet.
This transaction initiates the unbonding process for your stMATIC.
Step 6: Record the Minted NFT ID
Once the transaction is confirmed, click on the transaction link in your wallet or find it on Etherscan by looking up the transaction hash.
In the transaction details, you will see an NFT that was minted. This NFT represents your withdrawal request.
Write down the NFT ID associated with this minted token — you’ll need it for the final claim step.
Step 7: Wait the Unbonding Period
Lido on Polygon typically requires a waiting (unbonding) period of around 3 days.
During this time, your stMATIC is in a "requested withdrawal" state.
Optionally Check When the Unbonding Period Ends
Under Read as Proxy, look for the method
getToken2WithdrawRequests(uint256 _tokenId)
.Enter your NFT ID in the
_tokenId
field and click "Query."The response includes fields such as
requestAmount
,validatorNonce
, and an epoch (the third field).Compare that epoch to the checkpoint height shown at validator.info/polygon.
When the checkpoint height is higher than the epoch value from the contract, the unbonding period has passed and you can proceed to claim your MATIC.
Step 8: Claim Your MATIC
After the unbonding period, return to "Write as Proxy".
Look for a function
claimTokens(uint256 _tokenId)
.In the
_tokenId
parameter, enter the NFT ID you noted in the "Step 6".Click "Write" and confirm the transaction.
Once it’s confirmed, your MATIC should appear in your wallet.