2.4.1. Update Collateral Process
Description of the process of updating collateral.
Last updated
Description of the process of updating collateral.
Last updated
The updateCollateral()
function (Update Collateral) needs to be called once per Update Collateral Interval.
Update Collateral Interval: In accordance with Protocol specifications, the period between which Update Collateral must be called by a Minter. If Minters do not call Update Collateral within this amount of time after their previous call, their on-chain Collateral Value is assumed to be 0 and they will incur a penalty rate on the next update. This protocol parameter is alterable with a Standard Proposal.
The Penalty Rate is defined as the percentage charged on Owed $M that is in excess of the amount a Minter is permitted to have generated. It is assessed any time Impose Penalty is called, which is embedded in both Update Collateral and Burn. It is alterable with a Standard Proposal. This is a fixed percentage and not an annualized rate.
Failure to do so will result in the Collateral Balance being set to 0 and the application of a respective Penalty.
Some key financial definitions are outlined below:
Deposit Equivalents are amounts, denominated in the Reference Currency, held in either Deposit Accounts or in the form of stablecoins (including $M) in wallets.
Deposit Account is the demand deposit account held by the SPV with the demand deposit providers.
Custody Account is the securities account or digital asset account held by the SPV with custody providers.
The Reference Currency throughout this document is USD (United States Dollar).
An example collateral update flow, assuming a look-through validation of the collateral, is shown in the picture below:
The Minter purchases Notes from the SPV with Deposit Equivalents.
The SPV Operator on behalf of the SPV will perform the collateralization process.
Minter sends a Validation Request (see below) which contains the amount it would like to update on-chain to the Validator.
Validator verifies the existence of the Collateral (e.g. via its read access to the depository account or, in case of eligible tokenized collateral, via observation of distributed ledger entries), verifies the compliance with the eligibility criteria and, potentially, verifies the implementation of Mandatory Contracts.
If all checks have been successful, the Validator sends a Signature to the Minter.
With this Signature the Minter can call the updateCollateral()
function.
Validation Request: A call from the Minter to the Validator where the Minter requests a Signature for either updating its Collateral Balance or for removing a RetrieveID from the Protocol.
Steps 3-6 have to be completed at least once per Update Collateral Interval. Step 2 has to be completed whenever new funds are transferred to the Collateral Storage or whenever collateral matures thus liquidates.