If the amount of MUSD exceeds a single trove, it will continue to redeem in ascending order of collateralization ratio. Troves with collateralization ratios below 110% are eligible for liquidation, and cannot be redeemed against.
Prerequisites
Before you start, verify:Check System Status
Go to TroveManager → “Read as Proxy” → call
getTCR() with current BTC price. Must show ≥ 1100000000000000000 (110%)Redemption Methods
Option A: Quick & Simple (Higher Gas)
Use this if you want to redeem quickly without calculating hints.Go to TroveManager Contract
Open the TroveManager contract in your block explorer and click the “Write as Proxy” tab.
Your amount in wei (see conversion below)
0x0000000000000000000000000000000000000000Your wallet address
Your wallet address
11000000000000000000000Converting MUSD to Wei
Option B: With Hints (Lower Gas)
Use this to save on gas costs by providing optimal hints.Get Redemption Hints
Go to HintHelpers → “Read as Proxy” →
getRedemptionHints()Fill in:_amount: Your amount in wei_price: Current BTC price from PriceFeed_maxIterations: 50
firstRedemptionHintpartialRedemptionHintNICR
Get Position Hints
Go to SortedTroves → “Read as Proxy” →
findInsertPosition()Fill in:_NICR: Use thepartialRedemptionHintNICRfrom Step 1_prevId: Your wallet address_nextId: Your wallet address
upperHintlowerHint
Call redeemCollateral
Go back to TroveManager → “Write as Proxy” →
redeemCollateral_amount: Your amount in wei_firstRedemptionHint: from Step 1_upperPartialRedemptionHint: upperHint from Step 2_lowerPartialRedemptionHint: lowerHint from Step 2_partialRedemptionHintNICR: from Step 1_maxIterations: 50
Smart Contract Integration
TypeScript Example
Calculation Example
Redeeming 100 MUSD:Calculate BTC
Formula:
(Your MUSD Amount ÷ BTC Price) × 0.9925 = BTC receivedExample: (100 ÷ 100000) × 0.9925 = 0.0009925 BTCCommon Issues
”Cannot redeem when TCR < MCR”
”Unable to redeem any amount”
This can happen for several reasons:- No troves available with collateral ratio above 110%
- Hints are out of date (specifically the NICR hint)
- The redemption amount would leave the target trove with less than the minimum debt requirement of 1,800 MUSD
- Max iterations set too low for the redemption size
Transaction runs out of gas
Lower_maxIterations to 10 or split into smaller redemptions.
Transaction reverts unexpectedly
Get fresh hints and try again. Someone may have redeemed before you.Received less than expected
Check the
Redemption event in your transaction. Some MUSD may have been returned if the last trove would go below 1,800 MUSD minimum.Best Practices
- Generate hints immediately before redeeming - They become stale if someone else redeems first
- Use Option A for small amounts (< $10,000) - The higher gas cost is negligible
- Use Option B for large amounts - Saves significant gas on big redemptions
- Set higher maxIterations for larger redemptions:
- Small (< 10 troves): 10
- Medium (10-30 troves): 50
- Large (30+ troves): 100
Contract Addresses
Mainnet
0x94AfB503dBca74aC3E4929BACEeDfCe19B93c1930xD267b3bE2514375A075fd03C3D9CBa6b95317DC30x8C5DB4C62BF29c1C4564390d10c20a47E0b2749f0x44b1bac67dDA612a41a58AAf779143B181dEe0310xc5aC5A8892230E0A3e1c473881A2de7353fFcA880xdD468A1DDc392dcdbEf6db6e34E89AA338F9F186Testnet
0xE47c80e8c23f6B4A1aE41c34837a0599D5D16bb00x4e4cBA3779d56386ED43631b4dCD6d8EacEcBCF60x722E4D24FD6Ff8b0AC679450F3D91294607268fA0xCdF7028ceAB81fA0C6971208e83fa7872994beE50x86bCF0841622a5dAC14A313a15f96A95421b93660x118917a40FAF1CD7a13dB0Ef56C86De7973Ac503Need Help?
- Check your transaction on the block explorer to see events and error messages
- Join our Discord and open a ticket: https://discord.com/invite/mezo