On November 18th, 2019, the Maker Protocol is scheduled to upgrade to a new version called Multi-Collateral Dai (MCD), where new asset classes will enter the Maker System. Final vote pending, Multi-Collateral Dai (MCD) will start with crypto native assets followed soon after by non-fungible real-world assets. At Centrifuge we have been working closely with the Maker Foundation to build the tools to responsibly bridge real-world assets to the DeFi ecosystem. We are convinced that pledging non-crypto-native assets to the system will be essential for Dai’s long term stability and accelerate adoption.
This post describes Centrifuge Tinlake, a set of smart contracts that allows companies and individuals to use tokenized non-fungible real-world assets as collateral to obtain liquidity via decentralized lending protocols such as MakerDAO. This will change the decentralized lending landscape significantly and spur the creation of financial products unknown to the financial markets today.
This article provides:
- an overview of what Tinlake is and does
- an outline of Tinlake’s governance, oracle and liquidation mechanisms
- a summary of the legal framework under which Tinlake operates
- a basis for discussions with the MakerDAO Community
Fostering a discussion with the Maker Community.
The main objective of this article is to foster a discussion with the MakerDAO Community on introducing different real-world asset classes to the Maker System via Tinlake. We want to explain how Tinlake works, hear your opinion and address any questions you might have. We also plan to introduce Centrifuge and Tinlake during a Maker Community and Risk & Governance calls soon.
By kicking off these discussions we hope to assist Maker Governance in assessing the different asset originators that have used the Tinlake infrastructure to add assets to MCD. In the next few weeks each asset originator listed above will publish a Governance Proposal to provide details on their assets and risk assessment procedures.
In parallel to this process, we will expand the joint effort with the Maker Foundation to conduct pilots covering other asset classes, such as commodities or auto loans. The Tinlake contracts are also under continuous development. Currently, we are focused on our oracle infrastructure and the implementation of a trustless risk assessment. We will also have a smart contracts audit and launch a bug bounty.
What we have achieved so far
The Tinlake smart contracts and legal setup have been tested and verified in a joint effort with the Maker Foundation in order to develop a tool to bring real-world assets into MCD. Throughout the past few months the Centrifuge team and the Maker Foundation have carried out four pilots where different asset types have been tokenized and used as collateral to take out loans. These pilots include:
- New-Silver — a Boston based residential bridge loan originator
- Paperchain — a New York based financing solution for music royalties
- Future Finance — a New York based mortgage originator
- DexFreight — a decentralized US logistics platform providing invoice factoring
What is Tinlake
Tinlake is a set of smart contracts that enables borrowers to draw loans against non-fungible real world assets, such as mortgages, invoices or royalty payments. Anything that can be represented on-chain as NFTs (Non-Fungible Tokens) can be financed using the Tinlake infrastructure. This is done by issuing an ERC20 token, the Collateral Value Token (CVT), against all of the collateral NFTs that are deposited into the Tinlake contracts. This CVT can be used to draw funding from crypto lending protocols such as Maker.
The team behind Tinlake
Tinlake has been developed by Centrifuge. We are a Berlin based team with the mission to change the rules of global trade to foster economic opportunity everywhere. That entails facilitating access to liquidity for SMEs around the world and unlock value that is currently inaccessible. Our technology will help to access the $30 Trillion globally that is locked up in unpaid invoices at any given time. To achieve this mission we have built Centrifuge OS, an open, decentralized platform to connect the global financial supply chain. Having previously built and scaled Taulia, the leading company for supply chain finance, this is our home turf. Tinlake is the natural extension to achieve our mission.
Why we developed Tinlake
The Maker system and DeFi in general allow users to borrow against ERC20 assets. The fungibility of ERC20 assets means that one asset can be replaced by another without any loss of value, similar to how one can swap out any dollar bill for a different dollar bill. However, support for non-fungible assets (e.g., unique invoices or properties) is still missing in the ecosystem. That is why we built Tinlake — to provide the technology to bridge the gap between real-world assets and the DeFi ecosystem. Our solution will enable any entity with non-fungible assets to access DeFi protocols like MakerDAO. Anyone with real-world assets, such as unpaid invoices, music royalties or property can tokenize these assets and lock them into a Vault drawing Dai in exchange.
Why include non-trustless assets in MCD
There is a healthy debate around the risks and benefits of including diversified real-world assets in Maker’s MCD. At Centrifuge we are convinced that adding tokenized real-world assets as collateral for Dai is key for its long term stability and adoption as it addresses the two main challenges the DeFi ecosystem is currently facing: stability and volume.
By admitting non-fungible non-crypto-native assets to the system it will become significantly easier to mitigate price volatility of Dai as its value is not directly tied to the value of ETH. Further, we believe that public, permissionless blockchains can only grow and be successful if they move beyond crypto-native use cases and start impacting the world outside of the Ethereum ecosystem that we know today. Check out this blogpost detailing our thoughts around this topic.
Benefits for asset originators
For asset originators this means significantly improved access to competitive financing as numerous companies and individuals are currently excluded from traditional financing sources due to theirs size, location or pure circumstance. Operating on trustless data allows for better underwriting, thus better and more appropriate conditions for borrowers. Finally, the automation of securitizing assets and servicing loans has the potential to eliminate rent seeking and to make it economically feasible to finance smaller assets. Motivation and extent of benefits is individual to each use case and will be detailed in the Governance Proposals published by the different asset originators.
How Tinlake works
Tinlake is used by three different entities:
- Borrower: Asset originators, such as Paperchain or New Silver described above
- Lender: Lending protocols providing the funding, such as a Maker Vault
- Operator: Entities that assume the responsibilities of underwriting and valuing the assets as well as keeping a balanced portfolio
Funding through “Collateral Value Tokens”
Borrowers submit NFTs representing real-world assets (e.g., a mortgage or an invoice) into a Tinlake deployment. The Operators underwrite the NFT and whitelist it. Whitelisting entails risk assessment in order to value the NFT, to set interest rates accordingly as well as to define the collateralization-ratio. After that process the NFT becomes eligible as collateral.
When the Borrower draws a loan against this collateral Tinlake issues an ERC20 token, the Collateral Value Token (CVT), against all of the collateral NFTs that are deposited into the Tinlake contracts. As borrowers deposit NFTs into Tinlake new CVTs are minted on demand to draw Dai from a Vault.
The total amount of CVTs minted always represents the NFT value of the entire pool. This ensures that the value of the CVT is stable at $1 of the underlying collateral. Thus, each CVT represents a fraction of the respective set of collateral.
If a new loan is taken out by locking a NFT new CVTs are minted to represent the pool value increase. In case of repayment, the corresponding CVT amount is burned and the NFT transferred back to the borrower. The CVT balance is also adjusted when the individual NFTs representing the real-world asset increases or decreases in value. For instance, an invoice NFT decreases in value if an invoice is overdue for a couple of days as it increases the likelihood of default.
Independent deployments per asset type
The Tinlake set of smart contracts can be deployed in different configurations that are generally independent of each other. At the beginning there will be one deployment per asset originator and asset type. Going forward similar asset types from different originators can be used in the same deployment. Each lender to a deployment shares the risk of all assets within the specific deployment but not from any other deployment. All parameters of a deployment such as interest rates or collateral ratios can be configured differently. This allows for each deployment to be fully customized. The modular architecture allows anyone to customize the behavior of a deployment by configuring the modules differently or by replacing certain modules altogether.
Built on Centrifuge OS
Tinlake is based on Centrifuge OS. Centrifuge OS is an open, decentralized platform to connect the global financial supply chain. Its protocol delivers a standard way to tokenize illiquid real-world assets and turn them into tradable assets. Documents are exchanged via an off-chain protocol implemented on a scalable and secure p2p network. Via Centrifuge these cryptographically signed documents can be tokenized as NFTs (Non-Fungible Tokens), hence offering a seamless way to push collateral into Tinlake. This is done without any intermediary, loss of privacy or dependance on a central party.
Onboarding of asset originators
To be able to access MCD via Tinlake asset originators need to be vetted by the Maker Community. This includes the introduction of the asset originator during the Community and Risk & Governance Calls as well as providing an extensive writeup, the Governance Proposal, to the Maker Community. This enables Maker Governance to make an informed decision when casting their votes.
After this initial application process and the tentative go-ahead from the community, a variety of DAO teams will perform assessments of the asset originator and its associated crypto-assets in order to allow the originator to be onboarded into the protocol. This will again be voted on by the Maker Community.
The role of the Operator
The adequate governance of a Tinlake deployment is essential. An Operator assumes the responsibility of collateral management which includes underwriting and valuing the assets as well as keeping a balanced portfolio. In case of a payment default collateral governance manages the liquidation of the assets. For collateral management the Operator relies on price oracles.
The Operator could theoretically be a single centralized entity, a set of smart contracts automatically qualifying and pricing an asset or a DAO that manages the Tinlake deployment. Throughout the pilots we relied on the asset originator acting as Operator. In the future, this will be done by a network of decentralized asset underwriters.
Process of underwriting the NFT
Before Borrowers are able to submit a NFT to Tinlake and draw Dai in exchange the Operator needs to underwrite the underlying asset. As described above the risk assessment and whitelisting of assets can also be outsourced to one or various (decentralized) underwriters. For the pilots the underwriting was carried out by the asset originator.
There are several steps the underwriter must adhere to:
- The underwriter receives access to the private data of the asset and is able to verify the authenticity of the asset. Metadata attached to an individual NFT entails the most important information for pricing the asset. For invoices this will be, e.g. the face value of the invoice, the supplier information as well as the buyer information and the due date of the invoice. For mortgages this could be mortgage amount, interest rate, as-is-value of the underlying property, etc.
- Price oracles will feed the value of the NFT (Appraisal) into the system
- The underwriter will set the parameters (1) interest rate and (2) the collateralization-ratio by defining the Principal representing the maximum loan amount depending on the estimated credit risk of the asset
- The underwriters whitelist the NFT in the respective Tinlake deployment.
Borrowers can now draw Dai from Tinlake if they submit their NFTs as collateral.
As described above the total amount of CVT minted by the Tinlake contracts always represents the value of the entire pool. Hence, if a new loan is taken out, an existing loan is repaid or the value of individual NFTs changes new CVTs are minted or an existing amount is burned. A decrease or increase of an individual assets thus affects the entire pool.
If the value of a NFT within the pool drops below its required collateralization value the underlying loan has to be repaid by the underwriter. In this scenario, the debt (principal + interest) is transferred to the lending protocol by the underwriter in exchange for CVTs. The underlying NFT is removed from the pool and placed in escrow temporarily transferring ownership to the underwriter for the duration of the loan period.
NFT price feed
Tinlake relies on a price feed for valuing individual NFTs. Each individual asset will be priced continuously. This pricing mechanism is used to determine the CVT balance and the amount of Dai extended to the Borrower. Depending on the asset type these price feeds can rely on different third party data sources such as real estate appraisal firms, market data from financial markets or other data sources.
In addition to a pricing oracle there is a per NFT provenance oracle. Third parties are engaged to consistently ensure that the CVT claim upon the collateral is valid. The output of this assessment is addressed in the technical implementation as the “Provenance Oracle,” which weighs the collateral by multiplying its price by 1 or 0. For the pilots we used a custom solution for each deployment. Going forward this will be formalized depending on the underlying asset type.
CVT price feed
Tinlake’s architecture means that the CVT price that MCD relies on can be easily derived from the NFT price oracles by adding up all of the values of the NFTs currently in the collateral pool divided by the total supply of CVTs. There is no need for any additional oracles here as the CVT is purely a fractional representation of the sum of NFTs.
When is a Vault liquidated?
Tinlake is set up to minimize the liquidation risk of a Maker Vault. Liquidation by the lending protocol should only occur in case the Operator is not reacting on a value decrease of the pool which exceeds the preconfigured collateralization-ratio threshold for the entire pool. In order to protect the lenders from defaults the Operator reacts to value decreases which drive the pool value below the defined threshold by liquidating bad assets from the pool on an individual basis. Operators are contractually obligated and financially incentivized to manage the liquidation of individual loans. Their compensation originates from the extra interest charged to borrowers minus any losses. Each pool can have a different collateralization-ratio which determines a liquidation event described below.
With regards to portfolio diversification, it is possible that over time MKR holders mandate a minimum and statistically based level of diversification within borrower portfolios. The potential impact of this mandate would be the ability to standardize the risk of a portfolio relative to an established benchmark — like an economic index or market index. In doing so, both the assets and market place for liquidations could theoretically be standardized and therefore maximize liquidity and lower rates.
Process of liquidation
The liquidation of the Vault and global settlement result in more or less the same scenario: a number of third parties now own CVT and should be able to redeem it for Dai. When the Vault gets liquidated the CVT are auctioned off and the collateral gets distributed to the auction winners. In the case of global settlement the CVT is distributed to all Dai holders.
Settlement or liquidation of the Vault will result in the Tinlake contracts halting the acceptance of new NFTs and commencing settlement of outstanding Dai. In this state, the Tinlake contracts allow anyone who purchased CVT in an auction or received it via global settlement to withdraw their share of the Dai reserve from the NFT holder. Whenever an NFT gets paid back or sold off to a collection agency the Borrower will be required to pass the proceeds pari passu onto CVT owners on a pro rata basis.
To ensure that the NFTs that exist on-chain have a legal claim each Tinlake deployment has a corresponding legal entity in the form of a Special Purpose Vehicle (SPV). This is the counterparty to the Asset Originator issuing the NFT and Maker providing the financing denominated in Dai. This legal entity is set up by the Asset Originator.
SPVs in today’s financial system are common and the processes around operating and verifying them are fairly standard processes. While this structure is inherently “trusted” as it relies on off-chain data we envision to reduce the need for trust as much as possible. Several audit firms can act as decentralized oracles and attest to the correctness of the off-chain data. The SPV can be governed by operating agreements that adhere to what is decided by the decentralized on-chain governance making the SPV merely a framework with very little power in itself. The SPV acts as pure pass-through entity without making any profits. It holds the claims and risk and is the legal contractual counterparty for both the borrowing as well the lending side. This many (Borrowers) to one (SPV) to many (decentralized MakerDAO) is supporting the current legal and regulatory requirements where the SPV is carrying the risk, is in charge for KYC and AML, and abstracts the trusted real-world parties and their real-world assets from the decentralized Maker system.
Please find a detailed, up to date overview of the technical specifications in the Tinlake Developer Documentation.
Tinlake means access to liquidity for anyone: providing better and more transparent processes for those operating in opaque and convoluted market structures and more so allowing participation of those who have been marginalized by the legacy financial system. We are at the inflection point of DeFi and convinced that introducing tokenized real-world assets are the way to move beyond niche usage.
We are looking at eventful weeks to come and are excited to take part.
Try Tinlake yourself
Tinlake DEMO is a user interface (UI) deployed on the Kovan testnet that allows anyone to test a simplified feature set of Tinlake. Please access Tinlake DEMO here.
Get in touch:
- Via Centrifuge Slack Channel: https://centrifuge.io/slack/
- Twitter: @centrifuge
- Email: firstname.lastname@example.org