Redemption System
The Redemption System component handles redemption of nUSD for collateral.
Action
Description
Function
Redeem
Redeem nUSD for collateral
redemption(address debtor, uint256 nusdAmount, uint256 minReceiveAmount)
Calculate Redemption
Calculate redemption amounts
calculateRedemption(address provider, uint256 nusdAmount)
Example: Redeem nUSD for Collateral
// Calculate redemption details
(uint256 providerFee, uint256 protocolFee, uint256 nusdToProtocol, uint256 nusdToRepay, uint256 nusdToConvert, uint256 collateralReceived) =
IVault(vaultAddress).calculateRedemption(userAddress, nusdAmount);
// Approve nUSD for redemption
IERC20(nUSDAddress).approve(vaultAddress, nusdAmount);
// Execute redemption with minimum amount check
IVault(vaultAddress).redemption(userAddress, nusdAmount, minCollateralAmount);
Last updated