
Repayments, late payments and defaults
3 minDifficulty Checked 2026-11-10- Each payment covers interest and principal on a fixed schedule set at signing.
- Impairment marks a likely loss early, so leavers cannot dodge it.
- On default, cover pays first and every vault share loses value for the rest.
Each loan has a schedule. It sets the number of payments and the time between them. Every payment covers some interest and some principal, like a car loan.
Paying on time is the normal path. Paying extra is allowed only if the loan was created to allow it. Paying off the whole loan early is possible too, with an early-payoff fee and rate set in the terms.
Paying late costs more. A late payment adds a late fee and extra interest.
Impairment. Once a payment is overdue, the broker can mark the loan as impaired. This tells the vault the money may not come back. The vault then prices withdrawals as if that loss already happened. That stops well-informed depositors from leaving first and leaving others with the loss. A payment from the borrower clears the mark.
Default. Each loan has a grace period after its due date. If the borrower still has not paid when it ends, the broker can declare a default.
Losses then land in order:
- The broker's first-loss capital pays its share into the vault.
- The vault absorbs the rest. Every share is worth less.
A frozen borrower still owes the loan. A freeze stops payments, but it does not cancel the debt.
Defaulted and fully paid loans can then be deleted from the ledger.
Schedule fields, set in LoanSet:
PaymentTotal: number of payments, default 1.PaymentInterval: seconds between payments, at least 60.GracePeriod: seconds after a due date before default is allowed, at least 60 and no more thanPaymentInterval.InterestRate: annual rate in 1/10 basis points.
The Loan entry tracks NextPaymentDueDate, PaymentRemaining, PrincipalOutstanding, TotalValueOutstanding and PeriodicPayment.
LoanPay comes from the borrower. It takes an Amount and at most one flag:
| Flag | Use |
|---|---|
tfLoanLatePayment | Required once the due date has passed |
tfLoanFullPayment | Early payoff of the whole loan |
tfLoanOverpayment | Extra principal, if the loan allows it |
A late payment must cover the periodic payment, service fee, late fee and late interest. Anything less fails with tecINSUFFICIENT_PAYMENT.
LoanManage comes from the broker. It takes one of tfLoanImpair, tfLoanUnimpair or tfLoanDefault.
- Impair adds the amount owed to the vault to
Vault.LossUnrealized. WithfixCleanup3_4_0, already enabled, this works only afterNextPaymentDueDatehas passed. - Withdrawals price shares at
AssetsTotal − LossUnrealized. - Default fails with
tecTOO_SOONuntilNextPaymentDueDate + GracePeriodhas passed.
On default, cover moves DefaultCovered into the vault. Vault.AssetsTotal falls by the remaining loss. The loan gets lsfLoanDefault, and its outstanding balances are set to zero.
LoanDelete removes a loan that is fully paid or defaulted. The borrower or the broker can submit it. A Loan costs the borrower one owner reserve until then.
Related: Brokers and first-loss capital, Freeze, Deep Freeze and Clawback.
- XLS-66 Lending ProtocolRead 2026-11-10
- Lending ProtocolRead 2026-11-10
- XLS-65 Single Asset VaultRead 2026-11-10
