Redeeming via the Canopy Terminal
If you are using the Canopy trading terminal rather than integrating programmatically, the UI surfaces all redeemable positions automatically once the unlock time has passed.1
Open the Canopy terminal and go to My Claims
Navigate to the Canopy trading terminal and click the My Claims tab. This view lists every series for which your connected wallet holds claim tokens.
2
Find the series showing Redeemable status
Series whose unlock timestamp has passed display a Redeemable badge. Series that are still locked show their remaining time to unlock instead.
3
Enter the amount of claim tokens to redeem
Type the number of claim tokens you want to redeem, or click Max to redeem your entire balance for that series. The UI shows the expected asset output — for standard tokens this is a 1:1 exchange.
4
Click Redeem and confirm the transaction
Click Redeem and approve the transaction in your wallet. The terminal submits the
redeem call to the venue on your behalf.5
Receive your assets and confirm the burn
After the transaction confirms, the redeemed asset tokens appear in your wallet and the spent claim tokens are permanently burned. The My Claims balance updates to reflect the redemption.
Redeeming Programmatically with ethers.js
For indexers, bots, or custom frontends, you can redeem claim tokens directly against the contract. Work through the following steps to check the unlock status, verify your balance, and execute the redemption.1
Compute the series ID and check unlock status
Always gate the redemption call behind an unlock time check. Calling
redeem before the unlock time will revert with NotYetUnlocked(), wasting gas.2
Check your claim token balance
Retrieve your current claim token balance from the ERC-20 contract deployed at
seriesData.claimToken. This is the maximum amount you can redeem in a single call.3
Call redeem on the venue
Pass the series ID and the amount you want to redeem. You can pass any value from
1 up to your full balance — partial redemptions are fully supported. For fee-on-transfer asset tokens, use redeemWithMinimum to set a floor on the received amount.Partial redemption is fully supported. Pass any amount up to your current balance — you do not need to redeem all of your claim tokens at once. Your remaining tokens continue to be backed 1:1 by the escrowed collateral.