EOD Schedules
How does the EOD interest accrual process impact the schedules? or What are EOD schedules?
With the Platinum patch (3.6019.33 version of Q2 Loan Servicing, 3.6001.3 version of Q2 Marketplace, 3.6003.5 version of the CL Common package) release, the FinCalc calculates interest taking into account the Accrual Type parameter introduced in this release for interest to be accrued at the end of the day in the EOD process instead of the SOD process. This means that the system calculates interest on a loan based on the Accrual Type defined on the contract so that the schedule depicts the expected dues or payments as per the number of days for which interest accrued has to be included in a cycle. These number of days are decided as per the value selected in the Accrual Type parameter.
FinCalc Changes
The FinCalc calculator methods are enhanced to consider the accrual types.
Depending on the Org Parameters > Daily Interest Accrual Time selected, the type of accrual is passed to the calculator. If Daily Interest Accrual Time is EOD, then the type of accrual selected is passed to the calculator. Else, nothing is passed.
Note: For more information, see Global Methods.
How does the Accrual Type parameter impact the schedules?
The schedules generated in the EOD interest accrual loan vary depending on the value in the Accrual Type selected. The Accrual Type parameter can have one of the following values:
Click on each of the following links to know how the parameter affects the schedules.
For more information on Accrual Type, see the Interest Posting Job as an EOD Process section.
Accrual To Date
If the Accrual Type is Accrual To Date, the dues in the schedule display the interest amount that is calculated just like in the default scenario where interest is accrued in the SOD process and interest is calculated on the due day. The interest amount posted or capitalized is equal to the amount accrued till the previous day.
Accrual Through Date
If the Accrual Type is Accrual Through Date, the dues in the schedule display the interest posted or capitalized as the amount accrued till that day.
Additional Information
Accrual Through Date Accrual Type calculations supports all the interest posting frequencies and payment frequencies.
Accrual Through Date Accrual Type calculations supports all kinds of repayment models, Interest Only payments, P+I, Single payment loans, and more.
-
When Compounding Interest is enabled on the product, the total interest accrual calculation in the loan servicing contract matches the number on the schedule. The schedules match the interest postings at the end of the day so that the correct bill amount is generated for the customer. Capitalization considers one day's interest, which changes the EMI, and the interest portion on the schedules matches the end-of-day (EOD) interest postings.
Note: For more information, see Why does the Compounding Frequency need to be enabled for schedules that are EOD enabled?.
Which APIs are modified to include the EOD schedules in the system?
REST APIs
The following two REST APIs of the Q2 Marketplace package are modified by adding two parameters to each:
v1/loanApplications/
v1/loanAccounts/
For more information on these APIs, see the Creating a loan account (CL Contract) and the Creating a Loan Application sections of the Q2 Loan Servicing and Q2 Marketplace REST APIs guide.
The two parameters added to the preceding REST APIs are:
-
eodAccrualType: This parameter is used to calculate the end of the day interest and holds one of the two values:
Accrual Through Date
Accrual To Date
eodFeeAccrual: This parameter is used to enable EOD fee accrual. If this parameter has a true value, the fee accrual job is run as part of the end of the job process.
If at the product level, you have defined these parameters, but have not passed these while calling this API, then the system takes into account the values defined at the product by default.
If you have passed accrual type to the API but have not passed anything to enable fee accrual, the fee accrual enablement is inferred from the product's configuration.
If both are provided, it considers these values, and in addition to that, whatever else is defined in the product's additional parameters, is copied over to the contract.
Global Methods
The FinCalc calculator methods are enhanced to consider the accrual types. Depending on the Org Parameters > Daily Interest Accrual Time selected, the type of accrual is passed to the calculator. If Daily Interest Accrual Time is EOD, then the type of accrual selected is passed to the calculator. Else, nothing is passed.
LoanCalculatorInput
This global constructor method of the LoanCalculatorInput global inner class is enhanced to pass the accrual type to the calculator.
The clcommon.LoanCalculator_v3.LoanCalculatorInput global inner class of the LoanCalculator_v3 global class now accepts the following new parameter to be passed to its global constructor method:
Accrual_Type_c
This is illustrated in the following code:
financialCalculatorMap.put('Accrual_Type_c', 'Accrual Through Date' or 'Accrual To Date');
//If nothing is passed then 'Accrual To Date' is considered by default.
clcommon.LoanCalculator_v3.LoanCalculatorInput loanCalculatorInput = new clcommon.LoanCalculator_v3.LoanCalculatorInput(financialCalculatorMap);
For more information, see the LoanCalculator_v3 Class section of the Q2 Loan Servicing Global Methods guide.
If the correct value is not passed in the map of the method, then the system displays a validation message as explained in the following section table.
What are the error messages or the validations that you may encounter while using the API or UI of the EOD schedules?
The following table illustrates the various error messages or validations that you may come across while using this feature in the Q2 Loan Servicing:
Error Message or Validation | When |
---|---|
Accrual Type : (Accrual Through Date/Accrual To Date) cannot be given when Daily Interest Accrual Time is not EOD. | When you call the calculateEMI method of the clcommon.LoanCalculator_v3 class and you pass the Accrual Type, but the Daily_Interest_Accrual_Time is either null or any value apart from EOD. |
End of Day Accrual is not supported with Include Start Date. |
When you have defined both of the following and trying to save the lending product or contract:
Note:
You can define only one, that is, either set Daily Interest Accrual Time to EOD or set Interest Calculation Period to Include Start Date and not both. |
End of Day Accrual is not supported with Include Start Date. |
When you call the calculateEMI method of the clcommon.LoanCalculator_v3 class and Daily_Interest_Accrual_Time is EOD and Interest_Period_Calculation_c is 'Include Start Date'.
Note:
You can define only one, that is, either set Daily Interest Accrual Time to EOD or set Interest Calculation Period to Include Start Date and not both. |
Advance Interest is not supported with EOD accrual. | When you call the calculateEMI method of the clcommon.LoanCalculator_v3 class and Daily_Interest_Accrual_Time is EOD, Advance_Interest_c is true OR repayment schedules are advance interest enabled. |
Invalid Accrual Type given. Accrual Types Accrual Through Date, Accrual To Date are only allowed. | When you call the calculateEMI method of the clcommon.LoanCalculator_v3 class, and Daily_Interest_Accrual_Time is EOD, but the value of Accrual_Type_c passed is an incorrect value. |
Accrual Through Date is not supported with Include Start Date given. | When you define or edit the Additional Parameters in the contract. |
Advance Interest is not supported with EOD accrual. | When you define or edit the Additional Parameters in the contract. |
Accrual Through Date is not supported with Month and Days time counting method. |
When you use Month and Days as the Time Counting Method for Accrual Through Date type of accrual while defining or editing the Additional Parameters in the contract.
Note:
This validation is to restrict Month and Days Time Counting Method when Accrual Through Date is defined. Validation is available in version 3.6019.32 onward. |
What is the impact of Estimated Interest for EOD schedules on the calculation of fee accrual?
The Accrued Fee is different for EOD schedules as compared to the Accrued Fee for non-EOD schedules.
For Income Basis, the fee accrual amount is calculated as follows:
Accrued Fee= (Total Interest Accrued (Till Today) * Fee Amount)/Estimated Interest.
The Estimated Interest considered in the preceding formula is different from the non-EOD schedules, and because of this, the fee accrual on Income Basis calculates using the EOD Estimated Interest and EOD Interest Accrued resulting in a different value of the Accrued Fee as compared to the Accrued Fee calculated for non-EOD schedules.
How does a rescheduling of a loan impact the way interest is calculated for the EOD schedules when the accrual type is Accrual Through Date?
The following table illustrates the impact of rescheduling on the interest calculation in EOD schedules when the accrual type is Accrual Through Date and Maintain Delinquency is True so that bills and IPTs are not discarded:
Rescheduling | Impact |
---|---|
When a loan is rescheduled on one day before the due date | An additional interest for the next schedule is rightly calculated from the (previous schedule's due date + 1) to the Transaction Date of the rescheduling. This is to exclude the previous due date as it was already including for the previous schedule interest calculation. |
When a loan is rescheduled on the due date | Interest for the next schedule is calculated from the (Transaction Date of the rescheduling + 1). |
The following types of rescheduling are impacted in the same way:
Bulk rescheduling such as rescheduling due to excess payment on bill date, or one day before bill date.
FIT disbursal on bill date, or one day before bill date.
FIT disbursal on posting date when the option to be able to the change the maturity date is enabled so as to keep the payments same by extending the terms. This can be done by disabling the Keep Same Maturity Date on FIT Disbursal flag in the Org Parameters. Note: When the flag Keep Same Maturity Date on FIT Disbursal is enabled in the Custom Settings > Org Parameters, the system retains the original maturity date for FIT loans on future disbursals. By default, the maturity date gets extended on each disbursal. For example, if second disbursal is made on third month of a twelve-month loan, then the maturity date is extended by three months.
For more information, see the Example: Impact of Rescheduling in FIT loans.
Why does the Compounding Frequency need to be enabled for schedules that are EOD enabled?
When you enable the Is Capitalization Enabled flag on the product, you are enabling the calculations for capitalization of unpaid interest for the servicing of the loan. However, these are not reflected in the schedules. To enable the compounding of interest for schedules, you need to enable the Compounding Interest flag on the product. Once this is enabled, you can select the Compounding Frequency at the contract level to match the Interest Posting Frequency of the contract. The amortization schedule generated for the contract then displays the compounded interest. This enables the interest portion on the schedules to match the end-of-day (EOD) interest postings.
Compounding Frequency is the frequency at which the unpaid interest gets added to the loan balance. While creating the lending product, lenders can opt to generate payment schedules by enabling the Compounding Interest. All contracts created for this product then compound the interest as per the compounding frequency and use the compounding interest when generating the repayment schedule.
For more information, see Example: EOD Schedules when a loan has an AIC with Compounding Frequency as Weekly.
Example: Impact on Number of Days for calculation in Schedules
Let us understand how FinCalc considers the number of days in the EOD schedules with the help of an example.
Let us say we have a loan with the following details:
Loan Amount | $1,000,000.00 |
Disbursed Amount or Transaction Amount | $300,000.00 |
Interest Rate | 10% |
AIC Interest Rate | 5% |
Disbursement Date | November 5, 2019 |
Maturity Date | November 5, 2020 |
Undrawn Balance | $700,000.00 |
Scenario 1: Monthly EMI Schedule and Accrual Through Date
Let us consider a scenario where the EMI is calculated monthly and the Accrual Type is Accrual Through Date. The system does the calculations for generating the EOD schedule as follows:
Due Dates | Opening DrawnBalance | Closing DrawnBalance | Days Considered | Interest Due(On drawn balance) | AIC due(On undrawn balance) | PrincipalDue | TotalInstallment(P + I) | Total Due |
---|---|---|---|---|---|---|---|---|
December 5, 2019 | $300,000.00 | $276,173.18 | 30 +1 | $2,547.95 | $2,972.60 | $23,826.82 | $26,374.77 | ₹ 29,347.37 |
January 5, 2020 | $276,173.18 | $252,143.99 | 31 | $2,345.58 | $2,972.60 | $24,029.19 | $26,374.77 | ₹ 29,347.37 |
February 5, 2020 | $252,143.99 | $227,910.72 | 31 | $2,141.50 | $2,972.60 | $24,233.27 | $26,374.77 | ₹ 29,347.37 |
March 5, 2020 | $227,910.72 | $203,346.76 | 29 | $1,810.80 | $2,780.82 | $24,563.97 | $26,374.77 | ₹ 29,155.59 |
April 6, 2020 | $203,346.76 | $178,754.76 | 32 | $1,782.77 | $3,068.49 | $24,592.00 | $26,374.77 | ₹ 29,443.26 |
May 6, 2020 | $178,754.76 | $153,849.21 | 30 | $1,469.22 | $2,780.82 | $24,905.55 | $26,374.77 | ₹ 29,155.59 |
June 5, 2020 | $153,849.21 | $128,738.95 | 30 | $1,264.51 | $2,780.82 | $25,110.25 | $26,374.77 | ₹ 29,155.59 |
July 5, 2020 | $128,738.95 | $103,422.32 | 30 | $1,058.13 | $2,780.82 | $25,316.64 | $26,374.77 | ₹ 29,155.59 |
August 5, 2020 | $103,422.32 | $77,925.93 | 31 | $878.38 | $2,876.71 | $25,496.38 | $26,374.77 | ₹ 29,251.48 |
September 5, 2020 | $77,925.93 | $52,213.00 | 31 | $661.84 | $2,876.71 | $25,712.93 | $26,374.77 | ₹ 29,251.48 |
October 5, 2020 | $52,213.00 | $26,267.38 | 30 | $429.15 | $2,780.82 | $25,945.62 | $26,374.77 | ₹ 29,155.59 |
November 5, 2020 | $26,267.38 | $0.00 | 31 - 1 | $215.90 | $2,876.71 | $26,267.38 | $26,483.28 | $29,359.99 |
From the preceding table, we observe the following:
The number of days considered for the first month in the schedule is (30 + 1). This is because since the Accrual Type is Accrual Through Date, the system accrues the interest at the end of the day in the EOD process, thus including the due date too. In the SOD process, the interest was accrued at the beginning of the day and hence it did not include the interest of the due date too.
As the system does not include the maturity date while accruing for Accrual Through Date, the number of days considered for the last month is (actual number of days for that month - the last maturity date), which in this case for November 5, 2020, is (31 - 1) as October as 31 days and November 5 is the last date or the Maturity Date of the loan.
The interests are calculated as per the number of days considered for each cycle of the EMI for the Accrual Through Date Accrual Type.
Accrual Through Date is not supported with the Month and Days Time Counting Method.
If the Maturity date was included, then the number of days for November 5, 2020, remains as 31, and not 31-1. However, currently, the system excludes the Maturity Date to be considered for the Accrual Through Date EOD calculations.
Scenario 2: Normal EMI, Accrual Through Date, Rate Schedule
Let us consider a scenario where the EMI is monthly, Accrual Type is Accrual Through Date, and there is a Rate Schedule added in the loan.
Let's say the First Payment Date is December 05, 2019, and the rate change also occurs on December 05, 2019:
Rate Start Date | Interest Rate |
---|---|
December 5, 2019 | 20% |
January 5, 2020 | 5% |
As per the preceding scenario, we see that the days from November 05 to December 05 are considered as 31 for Accrual Through Date. So the rate applicable for 30 days is the earlier rate, which is 10%, and the rate applicable for 1 day is 20% because of the rate schedule. Similary, for January 05 too, and so on as illustrated in the following table:
Due Dates | Opening DrawnBalance | Closing DrawnBalance | Days Considered | Interest Due(On Drawn Balance) | AIC due(On undrawn balance) | PrincipalDue | TotalInstallment(P + I) | Total Due |
---|---|---|---|---|---|---|---|---|
December 5, 2019 | $3,00,000.00 | $2,76,731.20 | 30 days at 10% + 1 day at 20% | $2,630.14 | $2,972.60 | $23,268.80 | $25,898.94 | ₹ 28,871.54 |
January 5, 2020 | $2,76,731.20 | $2,53,144.67 | 30 days at 20% + 1 day at 5% | $2,312.41 | $2,972.60 | $23,586.53 | $25,898.94 | ₹ 28,871.54 |
February 5, 2020 | $2,53,144.67 | $2,28,320.73 | 31 days at 5% | $1,075.00 | $2,972.60 | $24,823.94 | $25,898.94 | ₹ 28,871.54 |
November 5, 2020 | $25,789.42 | $0.00 | (31 - 1) days at 5% | $109.52 | $2,876.71 | $25,789.42 | $25,898.94 | $28,775.65 |
Currently, the system does not consider the rate schedules for an additional interest component.
From the preceding table, we observe the following:
The number of days considered for the due date of December 5, 2019, is 31 days, where a 10% rate is applicable for 30 days and 20% for 1 day. Here, the system considers a 10% interest rate from November 6, 2019, to December 4, 2019, and a 20% interest rate for December 5, 2019, as the due date is included in interest calculations for Accrual Through Date type of accrual.
The number of days considered for the due date of January 5, 2019, is 31 days, where a 20% rate is applicable for 30 days and 5% for 1 day. Here, the system considers a 20% interest rate from December 6, 2020, to January 4, 2020, and a 5% interest rate for January 5, 2020, as the due date is included in interest calculations for Accrual Through Date type of accrual.
The number of days considered for the due date of February 5, 2019, is 31 days, where a 5% rate is applicable for all the 31 days as the rate schedule does not change after January 5.
The number of days considered for the due date of November 5, 2019, is (31-1) days, where a 5% rate is applicable for the 30 days. Here, as the system does not consider the Maturity Date for the interest calculation, the days considered are one day less than the total days, which is 30.
Example: EOD Schedules when a loan has an AIC with Compounding Frequency as Weekly
Let us see this example to understand how the schedules for EOD accruals are created when the loan has an additional interest component and the Interest Posting Frequency and the Compounding Frequency are both Weekly.
Lending Product
Let us create a lending product with the following details:
Lending Product | |
---|---|
Edit Additional Parameters | |
Accrual Type | Accrual Through Date |
Other Details | |
Payment Frequency | Monthly |
Time Counting Method | Actual Days(366) |
Interest Posting Frequency | Weekly |
Interest Rate | 12% |
Is Interest Posting Transaction Enabled | True |
Is Capitalization Enabled | True |
Compounding Interest | True |
Compounding Frequency | Weekly |
Funding In Tranches | True |
Additional Interest Component Details | |
Interest Rate | 10% |
Minimum Interest Rate | 1% |
Maximum Interest Rate | 50% |
Interest Posting Frequency | Weekly |
Interest Bearing Principal | Amount Not Funded |
Time Counting Method | Actual days(366) |
Is Capitalization Enabled | True |
Compounding Frequency | Weekly |
Interest Calculation Type | Future Value Based |
Actions
On March 1, 2017, let us take the following actions:
Create a contract with the preceding lending product, and with Loan Amount = $10,000.
Approve and disburse the loan with Transaction Amount = $5,000.This updates the Amount Not Funded to: $10,000 - $5,000 = $5,000.
Check the loan every week till March 29, 2017, to validate that the total IPT amount matches the one on the schedules.
Interest Calculations on Loan and AIC
As we have defined the Interest Posting Frequency and Compounding Frequency on Loan and AIC as Weekly, the posting and capitalization of interest for loan and AIC also take place weekly as illustrated in the following table:
Week | Dates | Days Considered for Interest Calculation | Loan Balance | Amount Not Funded | Interest Calculation on AIC | Interest Calculation on loan |
---|---|---|---|---|---|---|
Week 1 | March 1, 2017, to March 8, 2017 | 8 | $5,000 | $5,000 |
5,000 * (10/100) * (8/365) = $10.96
Note:
10.96 is added to the Loan Balance. |
|
$5,000 | $5,000 |
5000 * (12/100) * (8/365) = $13.15
Note:
13.15 is added to the Loan Balance. |
||||
Week 2 | March 9, 2017, to March 15, 2017 | 7 | 5000 + 10.96 + 13.15 = $5,024.11. | $5,000 | 5000 * (10/100) * (7/365) = $9.59 | |
$5,024.11 | $5,000 | 5024.11 * (12/100) * (7/365) = $11.57 |
||||
Week 3 | March 16, 2017, to March 22, 2017 | 7 | $5,024.11 + 9.59 + 11.57 = $5,045.27. | $5,000 | 5000 * (10/100) * (7/365) = $9.59 | |
$5,045.27 | $5,000 | 5045.27 * (12/100) * (7/365) = $11.61 | ||||
Week 4 | March 23, 2017, to March 29, 2017 | 7 | 5045.27 + 9.59 + 11.61 = $5,066.47 | $5,000 | 5000 * (10/100) * (7/365) = $9.59 | |
$5,066.47 | $5,000 | 5066.47 * (12/100) * (7/365) = $11.66 | ||||
March 29, 2017, to April 1, 2017 |
3 | 5066.47 + 9.59 + 11.66 = $5,087.72 | $5,000 | 5087.72 * (12/100) * (3/365) = $5 | ||
Total days considered for the first month |
32
Note:
The first month considers 32 days due to the Accrual Through Date selected. |
|||||
Total interest amount = Sum of all the Interest Posted amounts of the month | $52.99 |
EOD Schedule
On April 1, 2017, the EOD schedule's interest amount is equal to the sum of all the IPT amounts of the whole month, which is 13.15+11.57+11.61+11.66+5= $52.99 as highlighted in the following schedule:
EOD Schedules |
---|
Example: Impact of Rescheduling in FIT loans
Let us say we have an FIT EOD loan with the following details:
Terms | 10 |
Principal | $5,000 |
Interest Posting Frequency | Monthly |
Billing Frequency | Monthly |
Last Interest Posting Date | January 1 |
Interest Posted | $200 |
Last Billing Date | January 15 |
Interest Posting Date | February 1 |
Billing Date | February 15 |
On February 1, IPT gets generated at EOD, and let us assume that on the schedules, the expected principal balance is $4,900.
Now let us consider that a disbursal of $4,000 is made on February 1. This makes the total Loan Amount be updated to $8,900 and Interest Remaining is updated to, say, $150.
In the SOD schedules, to calculate interest for the February 15 schedule, the system normally calculates it in the following way:
Interest calculated for February 15 schedule, from February 1 to February 15 (for 14 days) = Interest Remaining + Interest on (4900 + 4000).
However, in the case of EOD loans, when disbursal is done on February 1, the Interest Posting Date, then the Interest Remaining gets added to the Interest Posted as Interest Posting job runs at the end of the day for Accrual Through Date type of accrual. Thus Interest Posted now becomes 200 + 150 =$350, and Interest Remaining becomes 0.
This means that in the case of EOD schedules, the interest calculated for February 15 schedule from February 1 to February 15 (for 14 days) = Interest on (4900 + 4000).
If the payment amount remains the same due to disabling the Keep Same Maturity Date on the FIT Disbursal flag, then interest for the February 15 bill is calculated as follows:
Interest for February 15 schedule = Interest on $4,900 from January 16 to January 31 (16 days) + interest on $4,000 from Febraury 1 to February 14 (14 days).