
By Pluto Loans B2B
Self-repaying loans: Spend your future yield today
Pluto Loans allows users to spend their future yield today. With Pluto Loans, users can deposit yield-producing collateral and get a loan of their future yield immediately. No liquidation risks. The loan debt is time-based and self-repaying. While the long-term objective for Pluto Loans is to be global, the initial rollout will be focused in Argentina, with plans to quickly expand to the rest of LATAM.
The Problem: A quick summary
Argentina has an inflation rate of over 50%. The Argentinian peso has devalued 2,609% since 2012. Argentina has a ban on purchasing foreign currency, but not on cryptocurrencies. Fixed-term deposits in USD have a yearly interest rate of 0.75% - 2%. Users of platforms such as Mercadopago who deposit ARS benefit from a ~32.3% annual interest rate, which is worse than the aforementioned ~50% inflation rate. Personal loans in Argentinian pesos have an interest rate of >76% (and most have early cancellation or repayment fees).
The Opportunity
Pluto is LATAM-focused, with most of its core team members being based in Argentina, and with Argentina being its main country of operation. Cryptocurrency is legal in Argentina. Users can make use of regional anchors to buy ARS issued on the Stellar network or use exchanges to buy XLM. Users deposit yUSDC and get a loan of 50% of their collateral loaned out in pUSD. pUSD is a token backed by the future yield generated by yUSDC, intended to trade 1:1 with yUSDC through various pegging mechanisms. Self-repaying; a loan gets paid by the yield generated by the collateral of yUSDC (and other reward mechanisms), at the maturity of the loan, a user gets back their collateral and keeps their loan. Get more than yUSDC’s APY due to our “Shared Yield” mechanism where Pluto Loans vault shares “unclaimed” APY with all borrowers. No risk of liquidation. No early cancellation fees. Build on top of other Stellar projects (Ultrastellar’s yUSDC), strengthening the ecosystem.
While the concept of self-repaying loans exists in other chains such as Alchemix, the fees charged by the ETH network make it prohibitive for the average Argentinian to make use of. Thanks to Stellar’s low network fees and broad network of Anchors, we are able to bring financial inclusion to the personal loans space to every Argentinian.
The Problem: In depth
To fully understand the potential of Pluto Loans, it is important to take a look at the unique economic situation of Argentina. The Nobel prize-winning economist Simon Kuznets is said to have remarked that there were four types of countries: the developed, the underdeveloped, Japan, and Argentina. Argentina has one of the highest inflation rates in the world. On an annual basis, consumer prices soared 55.1 percent, the fastest annual rise since June of 2019, quickening from a 52.3 percent surge and beating market forecasts of 53.8 percent. This inflation chart comes hand in hand with the depreciation of the Argentinian Peso, a currency that has suffered a massive devaluation in the past few years, going from requiring ARS 4.42 to buy USD 1 in May 2012, to requiring 115.32 to buy 1 USD as of April 2022. The unique positioning of Pluto Loans in the Argentinian market could not be completely explained without also mentioning the ban on purchasing foreign currency that was reinstated in Argentina on September 1st, 2019, which has created a parallel market that is often used as a reference for the “true price” of the USD, currently with a ~100% gap with the official exchange rate. This has made Argentinians seek to hold their savings in crypto stablecoins, especially USD-pegged ones, which can be legally bought and traded in the country.
The Solution: Pluto Loans
The core concept presented by Pluto Loans is simple: A user takes out a loan by locking away yUSDC which is a yield-generating asset, with an estimated yield of 9% at the time of writing and 50% of the locked amount is loaned out in the form of pUSD (therefore, pUSD is backed by the future yield of yUSDC). After the yield produced by the collateral has covered the loan amount, a user can get back their initial investment and keep their loaned amount. In order to illustrate the basic operation behind Pluto Loans, let’s consider a user who wants to take out a loan. They would deposit 100 yUSDC into Pluto Loans’ platform which would be securely locked away and start generating a daily interest thanks to yUSDC’s mechanics, and immediately get 50 pUSDC disbursed to their account. This happens atomically in one single transaction. The user is free to spend those 50 pUSD how they see fit, perhaps exchanging it to other stellar assets such as BTC or ETH because they believe the price might go up. After ~4.5 years, the original 100 yUSDC has generated 50 yUSDC in interest @ 9% APY; At this point, the owner of the loan can simply withdraw the original 100 yUSDC and keep the 50 pUSD, which are now backed by 50 yUSDC still locked in Pluto Loans’ account. Note: Pluto Loans generates revenue by keeping 10% of the APY generated from loans, which is omitted from the calculations and diagrams to keep things simple. In the above scenario, the 100 yUSDC would take ~4.87 years to generate 55 yUSDC to pay for the 50 pUSD loaned out and the 5 yUSDC service fee to Pluto Loans.
Extra repayments, pegging mechanism and rewards
The Pluto Loans system allows users to pay back their loan debt at any time, with no repayment or cancellation penalty. Consider the case of our user who took out a 50 pUSD loan and locked away 100 yUSDC. If they were to regret their decision and pay back the debt immediately (50 pUSD not considering Pluto Loans’ service fee), they would pay back the 50 pUSD which would in turn be burnt (as they are no longer backed by future yield of yUSDC) and the 100 yUSDC would be sent back to the user. An important aspect of the burn mechanism is that Pluto Loans accepts pUSD always at a 1:1 rate, regardless of market price, this incentivizes borrowers to buy more pUSD when the price is low, helping to maintain a 1:1 ratio. Let’s see an example. A user deposits 100 yUSDC and gets a 50 pUSD loan. The market rate is 1:1 with yUSDC. The user buys ETH with those 50 pUSD (now they have 100 yUSDC locked and 50 USD worth of ETH). The price of pUSD drops, and is now 0.9 instead of 1:1. The owner of a loan can now purchase 50 pUSD at 0.9 yUSDC each (spending 45 yUSDC), and repay his loan with the 50 pUSD, since Pluto Loans always accepts pUSD at a 1:1 rate regardless of market price. Our user now has the 100 yUSDC back, 50 USD worth of ETH and because they bought pUSD, this drove the price up, helping to maintain a 1:1 balance. Pluto Loans considers yUSDC, USDC and USDT as valid USD assets, and any of them can be used to repay a loan at a 1:1 rate, regardless of market price, and they may choose to use any of these assets to make repayments or cancel a loan, which has an interesting consequence for the Pluto Loans ecosystem. When a user makes an early repayment in pUSD, these are burnt since they are no longer backed by the underlying asset. However, when repayments are made in USDC, yUSDC or USDT, there is no need to burn these assets since their value has a different pegging mechanism. When this happens, these funds are exchanged to yUSDC and since they don’t belong to any loan, they start creating “Shared Yield”, which is distributed proportionally based on the weight of each loan, which effectively means that the yield of Pluto Loans is always higher than the yield of yUSDC alone. Because the yield is higher than simply keeping yUSDC, some users may choose to keep their funds locked in Pluto Loans vault even if their loan has already been paid out in order to keep generating interest. This is also possible and encouraged, as a small 0.5% fee is charged and added to the “Shared Yield”. Other pegging mechanisms include rewarding those users who provide liquidity to pUSD and other valid USD pegged assets. Finally, recalling the original scenario when a loan has reached its maturity and it has been self-repaid, “... the owner of the loan can simply withdraw the original 100 yUSDC and keep the 50 pUSD, which are now backed by 50 yUSDC still locked in Pluto Loans’ account.” Those 50 yUSDC are also now generating “Shared Yield”, further helping to auto-pay down loans faster.
Technical considerations
While Stellar has created Turrets, a clever smart contract protocol for Stellar, they have lost momentum due to the recent announcement of native Smart Contracts; Pluto has decided not to pursue an implementation using Turrets but rather build its software in a way where the server-based approach can be replaced by smart contracts once they become available. Two models are being considered at the moment, one which is purely CEFI (Pluto must be trusted as an entity), and another one which is semi-CEFI (trust is still required, but it guarantees that the funds will not be spent by Pluto). The technical design for the full-CEFI solution is as follows: From a storage perspective, Pluto Loans does not use a centralized database and instead relies on account balances stored on-chain. This design puts the system in a good place to be migrated to smart contracts later on. When a user takes out a loan, they send the money to a Pluto Loans account, and in exchange they receive tokens that represent their loan status; the reason for this approach is that any data we ask the user to store on their account can be erased by them later on, so it cannot be relied upon. We can’t store it in our own account since Stellar accounts have a 1000 subentries limit. By using the AUTHORIZE flag on the assets sent to the user we can guarantee the assets are immovable and the user cannot transfer, delete or otherwise alter their loan data. A common authorization pattern looks as follows: Operation 1: Issuer uses SetTrustLineFlags to fully authorize account A, asset pUSDDEBT. Operation 2: Payment of pUSDDEBT from Pluto Loans to A. Operation 3: Issuer uses SetTrustLineFlags to set account A, asset pUSDDEBT to AUTHORIZED_TO_MAINTAIN_LIABILITIES_FLAG state (effectively freezing the asset). The list of immovable assets we use are: pUSDDLP, which represents the loaned amount. pUSDSHARE, which represents the locked collateral (while right now it’s 2:1 ratio in the future this could be configurable which is when having separate assets is necessary). pUSSDEBT, which is used to calculate the portion of the yield generated into the Pluto Loans Vault account that each user is entitled to. When the loan has been repaid in full, either because of an early repayment or because the loan has been self-repaid, the borrower can ask Pluto Loans to get back their collateral which will then unfreeze the Pluto Loan assets and burn them, and give the user back their collateral. The technical design for the semi-CEFI solution is similar to the above, but with the following twist: Instead of one central vault, each loan will have its own vault (account) of which Pluto and the user will carry 50% each of the required weight to perform any operation. This guarantees that Pluto cannot move the funds without the users’ consent, and also that the user cannot withdraw the collateral without Pluto’s consent. Due to Ultrastellar’s innovative model, yUSDC is paid daily into this vault; the loan gets repaid over time automatically. It is innovative because generally in dApps the interaction is initiated by users (e.g. “Claim reward”). This approach has the benefit of clear accounting, but it requires managing multiple vaults which has some drawbacks: A user’s vault contains yUSDC which are 50% in the users’ control and 50% in Pluto’s control. Even after the loan is repaid, the funds cannot be moved unless the user wants to. Harder to migrate to smart contracts (locked funds would not be entirely in Plutos’ control). Pluto also pays out extra yUSDC from its shared yield vault. In the CEFI model, this is a mathematical formula that calculates how much extra yield the user has accrued, in this second approach, the shared yield would have to be paid into each vault, following Ultrastellar’s model, which increases risk of failure and is more computationally expensive. Pluto has so far implemented the fully-CEFI approach but will be seeking community feedback regarding the semi-CEFI approach.
The DAO
Is Pluto a DAO? Not yet, but we want to be, and we are working very hard to achieve it. In order to show our commitment to the full decentralization of our project, Pluto has open-sourced its governance projects which will provide the on-chain voting mechanism that the DAO will be built on top of: https://github.com/PlutoDAO/gov, https://github.com/PlutoDAO/gov-ui, https://github.com/PlutoDAO/gov-worker.
$48.5K

