{{ 'labels.inputs.products.loan.Amortization' | translate }} & {{ 'labels.inputs.Interest Method' | translate }}

{{ 'labels.inputs.products.loan.Amortization' | translate }} @for (amortizationType of amortizationTypeData; track amortizationType) { {{ 'labels.inputs.products.loan.amortizationType.' + amortizationType.value | translate }} } {{ 'labels.inputs.products.loan.Amortization' | translate }} {{ 'labels.commons.is' | translate }} {{ 'labels.commons.required' | translate }} {{ 'labels.inputs.Interest Method' | translate }} @for (interestType of interestTypeData; track interestType) { {{ interestType.value | translateKey: 'catalogs' }} } {{ 'labels.inputs.Interest Method' | translate }} {{ 'labels.commons.is' | translate }} {{ 'labels.commons.required' | translate }} {{ 'labels.inputs.Interest calculation period' | translate }} @for (interestCalculationPeriodType of interestCalculationPeriodTypeData; track interestCalculationPeriodType) { {{ interestCalculationPeriodType.value | translateKey: 'catalogs' }} } {{ 'labels.inputs.Interest calculation period' | translate }} {{ 'labels.commons.is' | translate }} {{ 'labels.commons.required' | translate }}
{{ 'labels.inputs.products.loan.Is Equal Amortization?' | translate }}
@if (loanProductSettingsForm.value.interestCalculationPeriodType === 1) {
{{ 'labels.inputs.Calculate interest for exact days in partial period' | translate }}
}

{{ 'labels.inputs.Loan Schedule' | translate }}

{{ 'labels.inputs.Loan Schedule Type' | translate }} @for (loanScheduleType of loanScheduleTypeData; track loanScheduleType) { {{ loanScheduleType.value | translateKey: 'catalogs' }} } {{ 'labels.inputs.Repayment strategy' | translate }} @for (transactionProcessingStrategy of transactionProcessingStrategyData; track transactionProcessingStrategy) { {{ transactionProcessingStrategy.name | translateKey: 'catalogs' }} } {{ 'labels.inputs.Repayment strategy' | translate }} {{ 'labels.commons.is' | translate }} {{ 'labels.commons.required' | translate }} @if (isAdvancedTransactionProcessingStrategy) { {{ 'labels.inputs.Loan Schedule Processing Type' | translate }} @for (loanScheduleProcessingType of loanScheduleProcessingTypeData; track loanScheduleProcessingType) { {{ loanScheduleProcessingType.value | translateKey: 'catalogs' }} } } {{ 'labels.inputs.Interest free period' | translate }} {{ 'labels.inputs.Arrears tolerance' | translate }} {{ 'labels.inputs.Days in year' | translate }} @for (daysInYearType of daysInYearTypeData; track daysInYearType) { {{ daysInYearType.value | translateKey: 'catalogs' }} } {{ 'labels.inputs.Days in year' | translate }} {{ 'labels.commons.is' | translate }} {{ 'labels.commons.required' | translate }} @if (useDaysInYearCustomStrategy) { {{ 'labels.inputs.Days in year custom strategy' | translate }} @for (daysInYearCustomStrategy of daysInYearCustomStrategyOptions; track daysInYearCustomStrategy) { {{ daysInYearCustomStrategy.value | translateKey: 'catalogs' }} } } {{ 'labels.inputs.Days in month' | translate }} @for (daysInMonthType of daysInMonthTypeData; track daysInMonthType) { {{ daysInMonthType.value | translateKey: 'catalogs' }} } {{ 'labels.inputs.Days in month' | translate }} {{ 'labels.commons.is' | translate }} {{ 'labels.commons.required' | translate }}
{{ 'labels.inputs.Allow fixing of the installment amount' | translate }}

{{ 'labels.inputs.Loan Tranche Details' | translate }}

{{ 'labels.inputs.Enable Multiple Disbursals' | translate }}
@if (loanProductSettingsForm.value.multiDisburseLoan) { {{ 'labels.inputs.Maximum Tranche count' | translate }} @if (loanProductSettingsForm.controls.maxTrancheCount.hasError('required')) { {{ 'labels.inputs.Maximum Tranche count' | translate }} {{ 'labels.commons.is' | translate }} {{ 'labels.commons.required' | translate }} } {{ 'labels.inputs.Maximum allowed outstanding balance' | translate }}
{{ 'labels.inputs.Disallow Expected Disbursements' | translate }}
@if (loanProductSettingsForm.value.loanScheduleType === 'PROGRESSIVE') {
{{ 'labels.inputs.Allow full term for each tranche' | translate }}
} }

{{ 'labels.heading.Down Payment' | translate }}

{{ 'labels.inputs.Enable Down Payment' | translate }}
@if (loanProductSettingsForm.value.enableDownPayment) { {{ 'labels.inputs.Disbursed Amount Percentage Down Payment' | translate }} (%) @if (loanProductSettingsForm.controls.disbursedAmountPercentageForDownPayment.hasError('required')) { {{ 'labels.inputs.Disbursed Amount Percentage Down Payment' | translate }} {{ 'labels.commons.is' | translate }} {{ 'labels.commons.required' | translate }} } @if (loanProductSettingsForm.controls.disbursedAmountPercentageForDownPayment.errors?.range) { {{ 'labels.inputs.Disbursed Amount Percentage Down Payment' | translate }} {{ 'labels.commons.is' | translate }} {{ 'labels.text.out' | translate }} {{ 'labels.text.percentage range' | translate }} }
{{ 'labels.inputs.Enable Auto Repayment for Down Payment' | translate }}
}
@if (isAdvancedTransactionProcessingStrategy) {

{{ 'labels.inputs.Loan Charge-off behaviour' | translate }}

{{ 'labels.inputs.Loan Charge-off behaviour' | translate }} @for (chargeOffBehaviour of chargeOffBehaviourData; track chargeOffBehaviour) { {{ chargeOffBehaviour.value | translateKey: 'catalogs' }} }
}

{{ 'labels.inputs.Moratorium' | translate }}

{{ 'labels.inputs.Grace on principal payment' | translate }} {{ 'labels.inputs.Grace on interest payment' | translate }} {{ 'labels.inputs.Delinquency Bucket' | translate }} @for (delinquencyBucket of delinquencyBucketData; track delinquencyBucket) { {{ delinquencyBucket.name }} } @if (loanProductSettingsForm.controls.delinquencyBucketId) { } @if (loanProductSettingsForm.value.delinquencyBucketId) {
{{ 'labels.inputs.Enable installment level Delinquency' | translate }}
}

{{ 'labels.inputs.Number of days a loan may be overdue before moving into arrears' | translate }}

{{ 'labels.inputs.On arrears ageing' | translate }} {{ 'labels.inputs.Overdue days for NPA' | translate }}
{{ 'labels.inputs.Account moves out of NPA only after all arrears have been cleared' | translate }}
{{ 'labels.inputs.Principal Threshold (%) for Last Instalment' | translate }}

{{ 'labels.inputs.Variable Installments' | translate }}

{{ 'labels.inputs.Are Variable Installments allowed?' | translate }}
@if (loanProductSettingsForm.value.allowVariableInstallments) { {{ 'labels.inputs.Minimum gap between Installments' | translate }} {{ 'labels.inputs.Minimum gap between Installments' | translate }} {{ 'labels.commons.is' | translate }} {{ 'labels.commons.required' | translate }} {{ 'labels.inputs.Maximum gap between Installments' | translate }} {{ 'labels.inputs.Maximum gap between Installments' | translate }} {{ 'labels.commons.is' | translate }} {{ 'labels.commons.required' | translate }} }
{{ 'labels.inputs.Allowed to be used for providing Topup Loans' | translate }}

{{ 'labels.heading.Interest Recalculation' | translate }}

{{ 'labels.inputs.Recalculate Interest' | translate }}
@if (loanProductSettingsForm.value.isInterestRecalculationEnabled) { {{ 'labels.inputs.Pre-closure interest calculation rule' | translate }} @for ( preClosureInterestCalculationStrategy of preClosureInterestCalculationStrategyData; track preClosureInterestCalculationStrategy ) { {{ preClosureInterestCalculationStrategy.value | translateKey: 'catalogs' }} } {{ 'labels.inputs.Pre-closure interest calculation rule' | translate }} {{ 'labels.commons.is' | translate }} {{ 'labels.commons.required' | translate }} {{ 'labels.inputs.Advance payments adjustment type' | translate }} @for (rescheduleStrategyType of rescheduleStrategyTypeData; track rescheduleStrategyType) { {{ rescheduleStrategyType.value | translateKey: 'catalogs' }} } {{ 'labels.inputs.Advance payments adjustment type' | translate }} {{ 'labels.commons.is' | translate }} {{ 'labels.commons.required' | translate }} {{ 'labels.inputs.Interest recalculation compounding on' | translate }} @for ( interestRecalculationCompoundingType of interestRecalculationCompoundingTypeData; track interestRecalculationCompoundingType ) { {{ interestRecalculationCompoundingType.value | translateKey: 'catalogs' }} } {{ 'labels.inputs.Interest recalculation compounding on' | translate }} {{ 'labels.commons.is' | translate }} {{ 'labels.commons.required' | translate }} @if ( loanProductSettingsForm.value.interestRecalculationCompoundingMethod !== 0 && loanProductSettingsForm.value.recalculationCompoundingFrequencyType !== 1 ) { {{ 'labels.inputs.Frequency Interval for compounding' | translate }} {{ 'labels.inputs.Frequency Interval for compounding' | translate }} {{ 'labels.commons.is' | translate }} {{ 'labels.commons.required' | translate }} } @if (loanProductSettingsForm.value.recalculationRestFrequencyType !== 1) { {{ 'labels.inputs.Frequency Interval for recalculation' | translate }} {{ 'labels.inputs.Frequency Interval for recalculation' | translate }} {{ 'labels.commons.is' | translate }} {{ 'labels.commons.required' | translate }} } @if (loanProductSettingsForm.value.interestRecalculationCompoundingMethod !== 0) { {{ 'labels.inputs.Frequency for compounding' | translate }} @for ( interestRecalculationFrequencyType of interestRecalculationFrequencyTypeData; track interestRecalculationFrequencyType ) { {{ interestRecalculationFrequencyType.value }} } @if (loanProductSettingsForm.value.recalculationCompoundingFrequencyType === 4) { @for ( interestRecalculationNthDayType of interestRecalculationNthDayTypeData; track interestRecalculationNthDayType ) { {{ interestRecalculationNthDayType.value | translateKey: 'catalogs' }} } } @if ( (loanProductSettingsForm.value.recalculationCompoundingFrequencyType === 4 && loanProductSettingsForm.value.recalculationCompoundingFrequencyNthDayType !== -2) || loanProductSettingsForm.value.recalculationCompoundingFrequencyType === 3 ) { @for ( interestRecalculationDayOfWeekType of interestRecalculationDayOfWeekTypeData; track interestRecalculationDayOfWeekType ) { {{ interestRecalculationDayOfWeekType.value | translateKey: 'catalogs' }} } } @if ( loanProductSettingsForm.value.recalculationCompoundingFrequencyType === 4 && loanProductSettingsForm.value.recalculationCompoundingFrequencyNthDayType === -2 ) { @for ( interestRecalculationOnDayType of interestRecalculationOnDayTypeData; track interestRecalculationOnDayType ) { {{ interestRecalculationOnDayType }} } } } {{ 'labels.inputs.Frequency for recalculate Outstanding Principal' | translate }} @for ( interestRecalculationFrequencyType of interestRecalculationFrequencyTypeData; track interestRecalculationFrequencyType ) { {{ interestRecalculationFrequencyType.value | translateKey: 'catalogs' }} } {{ 'labels.inputs.Frequency for recalculate Outstanding Principal' | translate }} {{ 'labels.commons.is' | translate }} {{ 'labels.commons.required' | translate }} @if (loanProductSettingsForm.value.recalculationRestFrequencyType === 4) { @for ( interestRecalculationNthDayType of interestRecalculationNthDayTypeData; track interestRecalculationNthDayType ) { {{ interestRecalculationNthDayType.value | translateKey: 'catalogs' }} } } @if ( (loanProductSettingsForm.value.recalculationRestFrequencyType === 4 && loanProductSettingsForm.value.recalculationRestFrequencyNthDayType !== -2) || loanProductSettingsForm.value.recalculationRestFrequencyType === 3 ) { @for ( interestRecalculationDayOfWeekType of interestRecalculationDayOfWeekTypeData; track interestRecalculationDayOfWeekType ) { {{ interestRecalculationDayOfWeekType.value | translateKey: 'catalogs' }} } } @if ( loanProductSettingsForm.value.recalculationRestFrequencyType === 4 && loanProductSettingsForm.value.recalculationRestFrequencyNthDayType === -2 ) { @for ( interestRecalculationOnDayType of interestRecalculationOnDayTypeData; track interestRecalculationOnDayType ) { {{ interestRecalculationOnDayType }} } }
{{ 'labels.inputs.Is Arrears recognization based on original schedule' | translate }}?
@if (loanProductSettingsForm.value.loanScheduleType === 'PROGRESSIVE') {
{{ 'labels.inputs.Do not calculate interest on past due principal balances' | translate }}
} }

{{ 'labels.heading.Guarantee Requirements' | translate }}

{{ 'labels.inputs.Place Guarantee Funds On-Hold' | translate }}
@if (loanProductSettingsForm.value.holdGuaranteeFunds) { {{ 'labels.inputs.Mandatory Guarantee(%)' | translate }} {{ 'labels.inputs.Mandatory Guarantee(%)' | translate }} {{ 'labels.commons.is' | translate }} {{ 'labels.commons.required' | translate }} {{ 'labels.inputs.Minimum Guarantee from Own Funds(%)' | translate }} {{ 'labels.inputs.Minimum Guarantee from Guarantor Funds(%)' | translate }} }

{{ 'labels.heading.Event Settings' | translate }}

{{ 'labels.inputs.Use the Global Configurations values to the Repayment Event (notifications)' | translate }}
@if (!loanProductSettingsForm.value.useDueForRepaymentsConfigurations) { {{ 'labels.inputs.Due days for repayment event' | translate }} {{ 'labels.inputs.OverDue days for repayment event' | translate }} }

{{ 'labels.inputs.Configurable Terms and Settings' | translate }}

{{ 'labels.inputs.Allow overriding select terms and settings in loan accounts' | translate }}
@if (loanProductSettingsForm.value.allowAttributeConfiguration) {
{{ 'labels.inputs.Amortization' | translate }}
{{ 'labels.inputs.Interest method' | translate }}
{{ 'labels.inputs.Repayment strategy' | translate }}
{{ 'labels.inputs.Interest calculation period' | translate }}
{{ 'labels.inputs.Arrears tolerance' | translate }}
{{ 'labels.inputs.Repaid every' | translate }}
{{ 'labels.inputs.Moratorium' | translate }}
{{ 'labels.inputs.Number of days a loan may be overdue before moving into arrears' | translate }}
}