Staking to borrow

Issuing, Redemption and Transfer

Users with Via cash balances in Verified accounts can purchase Via bonds for earning yields. Via bonds are issued by other users who stake assets (currently, only ether is accepted) who retain the benefit of owning assets staked and at the same time, use the liquidity from the sale of Via bonds issued to other users.

Issuing Via bonds

Users can request issue of Via bonds by staking ether. User facing applications should call the requestViaForEther function which requires amount of ether to stake, and the currency in which the Via bond issued is to be denominated in. This credits the Via bond issued to the user's Verified account.

Purchasing Via bonds

Users can invest in Via bonds issued by other users. For example, a Via-INR bond issued can be purchased by holder of Via-USD cash for a yield that returns a good return to the investing (purchasing) user. Investing user facing applications should call the requestIssueForViaCash function that requires the amount of a Via cash to invest, and the address of Via bond to purchase to be passed as parameters. This function transfers Via cash invested to the issuing user's Verified account, and transfers Via bond from the issuing user to the investing user's Verified account.

Transferring Via bonds

Users can also transfer Via bonds to other users. User facing applications should call the requestTransfer function which requires amount and address of the Via bond to transfer and the recipient's address. The function debits the transferor's Verified account and credits the transferee's Verified account with the amount of Via bond specified.

Redeeming Via bonds

Via bonds invested in by users should receive their returns back in one year from issue of such bonds. Issuers can redeem Via bonds by paying in Via cash in which such bonds are denominated in. Applications should call the redeemByIssuer function, which will result in staked ether being credited to Via bond issuer accounts and Via cash being credited to Via bond investor accounts.

If issuers default in redeeming Via bonds, investing users can redeem such bonds and getting their returns in assets (currently, only ether is supported) staked by issuers. Investor facing applications should call the redeemByInvestor function, which will result in ether being credited to Via bond investor accounts.

Last updated