Page Properties | ||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
...
- Days in Year – Actual
- Recalculate Interest? – checkbox - Null
- Rest or Frequency at which outstanding principal is recalculated – Null
- Days Calculation Basis – Actual
Database changes
1. Modifications to Loan Product (“m_product_loan”)
Column Name | Data Type | Description |
---|---|---|
days_in_month_enum | int | No of Days should be considered in loan calculation Actual or 30 days |
days_in_year_enum | int | No of Days should be considered in loan calculation Actual or 360 or 365 or 364 |
interest_recalculation_enabled | tinyint | Boolean flag indicates is interest recalculation required if payment not done as per the schedule. |
2. Modifications to Loan Product (“m_loan”)
Column Name | Data Type | Description |
---|---|---|
days_in_month_enum | int | No of Days should be considered in loan calculation Actual or 30 days |
days_in_year_enum | int | No of Days should be considered in loan calculation Actual or 360 or 365 or 364 |
interest_recalculation_enabled | tinyint | Boolean flag indicates is interest recalculation required if payment not done as per the schedule. |
3. Interest Recalculation settings (m_loan_recalculation_details)
Column Name | Data Type | Description |
---|---|---|
interest_compound_enabled | tinyint | Boolean flag indicates whether interest compounding to be used in recalculation |
rest_frequency_id | bigint | frequency to be used for interest recalculation. references to m_frequency_details |
reschedule_strategy | int | indicates which reschedule strategy to be used on prepayment
|
4. Frequency or periodicity details (m_frequency_details)
Column Name | Data Type | Description |
---|---|---|
frequency_type | smallint |
|
repeat_on_day | smallint | |
repeat_on_month | smallint | |
repeat_interval | smallint |
Use cases:
1. identify recalculation : check the payment against schedule and should process recalculation in following scenarios
- late payment, should be identified by a batch job
- back dated entry
- pre-payment
- on time with advanced-payment / less payment(ex : on 3rd should pay 1000 but the payment is done for 500 or 1500)
2. process recalculation :
- identify outstanding principal
- identify amount for interest compound
- regenerate schedule based on outstanding and rest frequency
- add the extra interest to next installment(should define the behavior if last payment is delayed?)
- if prepayment is done then use one of the strategy to reschedule.
- adjust EMI amount
- adjust loan duration
- adjust next installments
3. Capture new fields for loan product and account(editable only from product level but will maintain a copy at account level)
4. Add new screen for pre-payment(internally same as repayment but will return recalculated interest by setting closure date as today)
5. change schedule generator to use newly added days in year and days in month values
Questions
Below is a list of questions to be addressed as a result of this requirements document:
...