For the complete documentation index, see llms.txt. This page is also available as Markdown.

Renegotiation

The Renegotiation phase allows the Pool Manager to propose modified loan terms when circumstances change. This happens from the Active phase — a struggling loan can be restructured before it defaults. (Once a loan has defaulted, the manager's collateral is already slashed and it cannot be renegotiated.)

When to Renegotiate

Renegotiation is useful when:

  • The borrower is struggling with payments and needs adjusted terms

  • Market conditions have changed and rates need updating

  • A struggling loan needs restructuring before it defaults

  • The loan term needs to be extended or shortened

How It Works

1. Propose

The Pool Manager calls propose_renegotiation(caller, new_interest_rate, new_loan_term):

  • The vault's current phase (Active) is saved

  • A RenegotiationProposal is stored with the new rate, new term, and timestamp

  • The vault transitions to the Renegotiation phase

2. Approve or Reject

The Pool Manager then either approves or rejects the proposal:

If approved (approve_renegotiation):

  • The vault's interest rate and loan term are updated

  • The EMI is recalculated based on the outstanding principal (not the original principal)

  • Payment tracking is reset: payments_made = 0, missed_payments = 0, late_fees = 0

  • The next due date is set to 30 days from now

  • The vault transitions back to Active

If rejected (reject_renegotiation):

  • The proposal is discarded

  • The vault returns to the Active phase

Key Details

  • Only the vault's Pool Manager can propose, approve, or reject renegotiations

  • The EMI recalculation uses the remaining outstanding principal, not the original principal — this means the new payment schedule reflects what's actually owed

  • Renegotiation is a pre-default tool — it lets a manager restructure a struggling loan while it's still Active. Once a loan defaults, the manager's collateral is slashed and the loan can no longer be renegotiated.

Relevant Functions

Function
Caller
Description

propose_renegotiation(caller, rate, term)

Manager

Propose new terms

approve_renegotiation(caller)

Manager

Apply new terms, recalculate EMI

reject_renegotiation(caller)

Manager

Cancel proposal, restore previous phase

get_reneg_proposal()

Anyone

View current proposal

Last updated