Exchange Agent
Exchange Agent contract contains all the information and functions for which enables CoverCompared to take payment in multiple currencies even though our partners may take payments in limited forms.
Get Token Amount For ETH
Using Uniswap TWAP oracles the  getTokenAmountforETH function calculates needed _token amount for _desiredAmount of ETH to be paid to buy cover
function getTokenAmountForETH(address _token, 
    uint256 _desiredAmount)Input variables : 
- _token : refers to the token which is to be compared against ETH 
- _desiredAmount : desired ETH amount 
Get Needed Token Amount
Using Uniswap TWAP oracles the  getNeededTokenAmount function calculates needed _token0 amount for _desiredAmount of _token1
 function getNeededTokenAmount(
        address _token0,
        address _token1,
        uint256 _desiredAmount
    )Input variables : 
- _token0 : refers to the token which is to be compared 
- _token1 : refers to the token which is to be compared 
- _desiredAmount : desired token1 amount 
Swap Token with ETH
CoverCompared takes payment in a range of ERC20 tokens but our partners are limited and bound. Thus to forward the payment the swapTokenWithETH function is called after which the equivalent ETH is transferred to the partner.
function swapTokenWithETH(
        address _token,
        uint256 _amount,
        uint256 _desiredAmount
    )Input variables : 
- _token : refers to the token which is to be compared against ETH 
- amount : _token amount which user se 
- desiredAmount : ETH amount which user desires to get instead of amount of _token. 
Swap Token with Token 
CoverCompared takes payment in a range of ERC20 tokens but our partners are limited and bound. Thus to forward the payment the swapTokenToken function is called after which the equivalent compliant ERC20 token is transferred.
    function swapTokenWithToken(
        address _token0,
        address _token1,
        uint256 _amount,
        uint256 _desiredAmount
    )Input variables : 
- _token0 : refers to the token which is to be compared 
- _token1 : refers to the token which is to be compared 
- _amount : token0 amount which user sends to get token1 
- desiredAmount : token1 amount which user desires to get instead of _amount of _token0 
Note : When the total paid amout becomes equal to the loan amount, the status of the loan will be automatically changed to LOAN PAID.
Last updated
Was this helpful?
