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.
Users can request issue of Via bonds by staking ether. User facing applications should call the
requestViaForEtherfunction 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.
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
requestIssueForViaCashfunction 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.
Users can also transfer Via bonds to other users. User facing applications should call the
requestTransferfunction 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.
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
redeemByIssuerfunction, 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
redeemByInvestorfunction, which will result in ether being credited to Via bond investor accounts.