Borrow Diagram

Technical Information

Lender Module

The Lender Module equips the protocol with the functionality to seamlessly integrate with external lending platforms. Additionally, the module provides users with the ability to cancel their protection.

Lender Blueprint

The lender blueprint is the logic contract to facilitate the engagement of third party lenders.

Action
Task

supply

The "supply" function is a universal function that will supply collateral to a third-party lender depending on the choice of the user.

borrow

The "borrow" function is a universal function that will borrow from a third-party lender depending on the choice of the user.

repay

The "repay" function is a universal function that will repay collateral to a third-party lender depending on the choice of the user.

withdraw

The "withdraw" function is a universal function that will withdraw collateral from a third-party lender depending on the choice of the user.

Loan Brokerage Module

The Loan Brokerage Module provides the protocol with the functionality to assign users a portfolio and a loan token. It streamlines operations to eliminate the need for users to possess protection, while also establishing mechanisms for users to activate protection for a given loan.

Loan Blueprint

The loan blueprint facilitated by the lender module gives our users the ability to store their loan information inside the concrete protocol accessed by their loan token .

Action
Task

Mint Loan Token

The "Mint Loan Token" creates and initializes a loan token for a given user's portfolio as well it creates the user a lender implementation know as the "users blueprint".

Update Loan Info

The "Update Loan Info" function is utilized to modify the details of an existing loan. Refer to the data structures to see the updatable data.

Set Loan Update Data

The "Set Loan Update Data" sets data that can be updated please refer to the data structures to see the updatable data.

Set Supply Data

The "Set Supply Data" function sets a user's supply details.

Set Borrow Data

The "Set Borrow Data" function sets borrow details of a user's position.

Create Portfolio

The "Create Portfolio" function mints a user a concrete portfolio.

Protection Blueprint

The Protection Blueprint is tasked with integrating new protection details related to a user's loan.

Action
Task

Update Loan Info

The "Update Loan Info" function is utilized to modify the details of an existing loan.

Set Protection Data

The "Set Protection Data" function sets the initial policy information for a given loan.

Set Protection Update Data

The "Set Protection Update Data" function sets the undateable information for a user's protection. Please refer to the data structures to see the updatable data.

Set Protection Financial Terms

The "Set Protection Update Data" function sets the specific financial terms for a user's protection.

Transfer Token

The "Transfer Token" function will allow us to transfer a token from a given address to a receiver. In the context of the Protection Blueprint, the transfer token function will allow us to send the initial opening fee to our vault.

Loan Management Module

The Loan Management Module is responsible for implementing all mechanisms necessary to rehabilitate loans, reclaim foreclosed loans to the protocol, and settling protections on loans.

Claim Blueprint

The Claim Blueprint is engineered to manage all necessary interventions to restore a loan to a healthy state.

Action
Task

Start Claim

The "Start Claim" function checks if a user is protected or unprotected. Unprotected users are sent directly to foreclosure to initiate the foreclosure process. For protected users, we will check their protection financial terms to check their tranche amounts. From there we will request the necessary amounts if applicable and supply them on the users' behalf to ensure their loan is back to health. Lastly, we will calculate the tranche fee and borrow the fee against the users' position.

Initiate Foreclosure

The "InitiateForeclosure" function will start the process of foreclosure a delinquent loan by transferring the loan to the protocol.

Update Protection

The "Update Protection" function will allow us to set all user protection information to the foreclosed state.

Update Loan Info

The "Update Loan Info" function is utilized to modify the details of an existing loan. Refer to the list below for fields that can be updated.

Foreclosure Blueprint

The Foreclosure Blueprint is engineered to manage all necessary interventions to foreclosure delinquent loans.

Action
Task

Request Debt Token

The "requestDebtToken" function will fetch the user's debt token from our buffer vaults and return it to the user's blueprint. From there we trigger a repayment on the user's loan and withdraw the collateral to the foreclosure blueprint. Lastly, we take the collateral calculate the owed funds, and send the funds owed to the protocol back to the protocol vaults and the rest to the user.

Update Protection

The "Update Protection" function will allow us to set all user protection information to the foreclosed state.

Last updated