Re-Age
Operational Use Cases
- Hardship extension after maturity: Borrower qualifies for a fresh payment plan once the original Dynamic schedule has matured without full repayment.
- Collections workout: Move outstanding principal into a new tail of installments without opening a new loan.
Supported only on the Dynamic repayment schedule engine, non-interest-bearing loans, using the Advanced Payment Allocation strategy. Interest recalculation is not involved because qualifying loans do not accrue interest.
All examples reference Baseline C (non-interest Dynamic loan). The Dynamic engine rejects interest-bearing schedules for re-age requests, so be sure to clone Baseline C (or an equivalent non-interest product) before testing.
Re-age vs Re-amortize at a glance
Question Re-age Re-amortize When can I run it? After the original maturity date. Before maturity while installments remain. What changes? Appends brand-new installments (extends term). Re-splits principal across existing future installments (term unchanged). Best use case Hardship plan once the contract is already overdue. Smoothing shortfalls while the plan is still active. Undo rules Blocked if repayments post after the re-age. Blocked if repayments post after the re-amortize.
Lifecycle Snapshot
flowchart TD
A[Hardship request approved] --> B[Submit reAge command]
B --> C[System appends new installments]
C --> D[Loan continues with refreshed repayment plan]
D --> E{Need to undo?}
E -->|Yes| F[Submit undoReAge]
E -->|No| G[Follow new installment tail]
API Playbook
-
Apply the re-age
POST /v1/loans/{loanId}/transactions?command=reAge { "locale": "en", "dateFormat": "dd MMM yyyy", "startDate": "15 Jan 2025", "frequencyType": "MONTHS", "frequencyNumber": 1, "numberOfInstallments": 6, "note": "Hardship tail" }Validations:
- Loan must be Active, Dynamic schedule, Advanced Payment Allocation, non-interest-bearing, and already past original maturity.
- Only one re-age per business day is allowed.
-
Undo (if necessary)
POST /v1/loans/{loanId}/transactions?command=undoReAge { "note": "Hardship plan cancelled" }Allowed only if no repayments occurred after the re-age transaction.
-
Collections follow-up
- Update borrower communication plans with the new installment dates and amounts.
Tips for Operations Teams
- Use the
startDateto define when the first hardship installment should fall; the system adds the rest based onfrequencyType/number. - Use
note/externalIdto capture hardship approvals for compliance reviews.
Baseline Example (Dynamic Loan C)
After maturity, Baseline C (non-interest) still owes USD 200. Re-age with parameters:
{
"startDate": "04 Apr 2026",
"frequencyType": "WEEKS",
"frequencyNumber": 2,
"numberOfInstallments": 3,
"note": "Hardship tail"
}Transactions created
| Date | Type | Amount | Allocation | Notes |
|---|---|---|---|---|
| 04 Apr 2026 | REAGE | USD 200.00 | 0 / 0 / 200 | Outstanding principal redistributed across 3 new installments (Baseline C is non-interest). Loan must be past original maturity when this command runs. |
New installment tail
| Tail Inst. | Due date | Principal due | Interest due | Total |
|---|---|---|---|---|
| 1 | 2026-04-04 | 66.67 | 0.00 | 66.67 |
| 2 | 2026-04-18 | 66.67 | 0.00 | 66.67 |
| 3 | 2026-05-02 | 66.66 | 0.00 | 66.66 |
Loan summary delta
| Metric | Before | After | |
|---|---|---|---|
| Outstanding principal | USD 200.00 | USD 200.00 | (schedule changed only) |
| Maturity date | 21 Mar 2026 | 02 May 2026 | |
| Sub-status | Active | Active |
Verification checklist
GET /v1/loans/{id}?associations=repaymentSchedule,transactionsto confirm theREAGEtransaction and appended installments.- Ensure no repayment posts between the re-age command and any potential undo.
- Communicate the new dates/amounts to the borrower.
- Remember: validators require the business date to be after the original maturity date and the loan to be non-interest-bearing.
Updated about 1 month ago
