Skip to main content

Initiate Loan Reschedule

Overview

API endpoint to initiate loan reschedule transactions, modifying the payment schedule of existing loans to adjust payment amounts, extend repayment periods, or accommodate borrower financial difficulties while maintaining the loan relationship.

Command

InitiateLoanRescheduleCommand

Endpoint

POST /api/bpm/cmd

Request Headers

Authorization: Bearer {access_token}
Content-Type: application/json
X-Tenant-ID: {tenant_id}

Request Body

{
"loanId": "string",
"rescheduleReason": "string",
"newPaymentAmount": "decimal",
"newTermMonths": "integer",
"newInterestRate": "decimal",
"effectiveDate": "datetime",
"gracePeriodMonths": "integer",
"capitalizeArrearage": "boolean",
"notes": "string"
}

Request Parameters

ParameterTypeRequiredDescription
loanIdstringYesUnique identifier of the loan to reschedule
rescheduleReasonstringYesReason for rescheduling (financial hardship, etc.)
newPaymentAmountdecimalNoModified payment amount (if applicable)
newTermMonthsintegerNoExtended term in months
newInterestRatedecimalNoModified interest rate (if applicable)
effectiveDatedatetimeYesDate when reschedule takes effect
gracePeriodMonthsintegerNoGrace period before payments resume
capitalizeArrearagebooleanNoWhether to add arrears to principal
notesstringNoAdditional notes or comments

Response

Success Response (200 OK)

{
"success": true,
"message": "Loan reschedule initiated successfully",
"data": {
"transactionId": "string",
"loanId": "string",
"previousPaymentAmount": "decimal",
"newPaymentAmount": "decimal",
"previousMaturityDate": "datetime",
"newMaturityDate": "datetime",
"capitalizedAmount": "decimal",
"newOutstandingBalance": "decimal",
"effectiveDate": "datetime",
"status": "string"
}
}

Error Responses

400 Bad Request

{
"success": false,
"message": "Invalid request parameters",
"errors": [
{
"field": "string",
"message": "string"
}
]
}

404 Not Found

{
"success": false,
"message": "Loan not found"
}

422 Unprocessable Entity

{
"success": false,
"message": "Loan reschedule validation failed",
"errors": [
"Loan status does not permit rescheduling",
"Insufficient authorization for reschedule terms"
]
}

Business Rules

  1. Loan reschedule requires appropriate approval authority
  2. Rescheduling may affect loan classification and provisioning
  3. Arrearages can be capitalized and added to principal
  4. Grace periods must comply with regulatory requirements
  5. Complete documentation of hardship or restructuring reason required

Code Example

JavaScript Example

const response = await fetch('https://api.example.com/api/bpm/cmd', {
method: 'POST',
headers: {
'Authorization': `Bearer ${accessToken}`,
'Content-Type': 'application/json',
'X-Tenant-ID': tenantId
},
body: JSON.stringify({
loanId: 'LN-12345',
rescheduleReason: 'Temporary financial hardship - job loss',
newPaymentAmount: 750.00,
newTermMonths: 84,
effectiveDate: new Date(Date.now() + 30 * 24 * 60 * 60 * 1000).toISOString(),
gracePeriodMonths: 3,
capitalizeArrearage: true,
notes: '3-month payment deferral with term extension'
})
});

const result = await response.json();
console.log('Reschedule details:', result);
  • GenerateLoanSchedulesCommand - Generate new payment schedule
  • CalculateRescheduleImpactQuery - Calculate financial impact before executing
  • ApproveTransactionCommand - Approve reschedule transaction
  • ReverseLoanTransactionCommand - Reverse reschedule if needed

Notes

  • Rescheduling may be classified as troubled debt restructuring (TDR)
  • Regulatory reporting requirements apply to restructured loans
  • Credit bureau reporting must reflect modification status
  • Rescheduling should be documented with hardship evidence
  • Multiple reschedules may indicate deeper credit problems requiring different intervention