diff --git a/mifosng-provider/src/main/java/org/mifosplatform/portfolio/loanaccount/loanschedule/domain/AbstractLoanScheduleGenerator.java b/mifosng-provider/src/main/java/org/mifosplatform/portfolio/loanaccount/loanschedule/domain/AbstractLoanScheduleGenerator.java index 068dca803..543701648 100644 --- a/mifosng-provider/src/main/java/org/mifosplatform/portfolio/loanaccount/loanschedule/domain/AbstractLoanScheduleGenerator.java +++ b/mifosng-provider/src/main/java/org/mifosplatform/portfolio/loanaccount/loanschedule/domain/AbstractLoanScheduleGenerator.java @@ -1233,7 +1233,11 @@ public abstract class AbstractLoanScheduleGenerator implements LoanScheduleGener final LocalDate idealDisbursementDate, LocalDate periodStartDateApplicableForInterest) { if (periodStartDate.isBefore(idealDisbursementDate)) { if (loanApplicationTerms.getInterestChargedFromLocalDate() != null) { - periodStartDateApplicableForInterest = loanApplicationTerms.getInterestChargedFromLocalDate(); + if (periodStartDate.isEqual(loanApplicationTerms.getExpectedDisbursementDate()) + || loanApplicationTerms.getCalculatedRepaymentsStartingFromLocalDate().isBefore( + loanApplicationTerms.getInterestChargedFromLocalDate())) { + periodStartDateApplicableForInterest = loanApplicationTerms.getInterestChargedFromLocalDate(); + } } else { periodStartDateApplicableForInterest = idealDisbursementDate; }