The Unifi Controller is a work in progress with minor tweaks here and there. Full documentation will be available once it is optimized!

Primary Uses - The Unifi Controller is responsible for the setting the variables of UP minting on individual pairs as well as updating the redeem value of UP tokens globally.

uTrade V2 Controller Code / Interfaces

uTrade V2 Controller Contract Addresses


event SwapFeesUpminted(address indexed pool, uint amountUPMinted, address defaultPoolAddress, uint platforUPFees);

The SwapFeeUpminted event is emitted whenever UP is minted. In the majority of cases, this will occur any time a trade occurs.

Parameter Breakdown


event UpdatePoolRewards(address indexed pool, uint rewards);    

The UpdatePoolRewards event is emitted when the amount of UP claimable by the liquidity providers in the liquidity pool is updated. This event occurs when a trade occurs and results in UP being minted for liquidity providers, or a liquidity provider performs a claim UP transaction.

Parameter Breakdown

Read-Only Functions


function feeSetter() external view returns (address);

The feeSetter function returns the address of uTrade V2's Smart Contract which sets the fees for trading.


function WBNB() external view returns (address);

The WBNB function will return the address of WBNB on BSC. As this does not change, it will always return 0xbb4CdB9CBd36B01bD1cBaEBF2De08d9173bc095c.


function UNIFIUPVault() external view returns (address);

The UNIFIUPVault function returns the address of the UPBnb vault. This vault contains the BNB that is redeemable for UP.


function nativeFeeTo() external view returns (address);

The nativeFeeTo function returns the address where, in the case of Unifi Protocol collecting native token fees, the fees would be sent to.

Last updated