diff --git a/src/app/products/loan-products/common/loan-product-summary/loan-product-summary.component.html b/src/app/products/loan-products/common/loan-product-summary/loan-product-summary.component.html
index b712920bbc..f627c9f23e 100644
--- a/src/app/products/loan-products/common/loan-product-summary/loan-product-summary.component.html
+++ b/src/app/products/loan-products/common/loan-product-summary/loan-product-summary.component.html
@@ -914,6 +914,34 @@
{{'labels.heading.Map Penalties to Specific Income
+
+
+
{{'labels.heading.Map Charge-off reasons to Expense accounts' | translate}}
+
+
+
+
+ {{'labels.inputs.Charge-off reason' | translate}} |
+
+ {{ chargeOffReasonsToExpenseMapping.chargeOffReason.name }}
+ |
+
+
+
+ {{'labels.inputs.Expense Account' | translate}} |
+
+ {{ chargeOffReasonsToExpenseMapping.expenseGLAccount.name }}
+ |
+
+
+
+
+
+
+
+
+
diff --git a/src/app/products/loan-products/common/loan-product-summary/loan-product-summary.component.ts b/src/app/products/loan-products/common/loan-product-summary/loan-product-summary.component.ts
index 7922abb327..6cf47424c2 100644
--- a/src/app/products/loan-products/common/loan-product-summary/loan-product-summary.component.ts
+++ b/src/app/products/loan-products/common/loan-product-summary/loan-product-summary.component.ts
@@ -1,6 +1,6 @@
import { Component, Input, OnChanges, OnInit, SimpleChanges } from '@angular/core';
import { DelinquencyBucket, LoanProduct } from '../../models/loan-product.model';
-import { AccountingMapping, Charge, ChargeToIncomeAccountMapping, GLAccount, PaymentChannelToFundSourceMapping, PaymentType, PaymentTypeOption } from '../../../../shared/models/general.model';
+import {AccountingMapping, Charge, ChargeOffReasonsToExpenseMapping, ChargeToIncomeAccountMapping, GLAccount, PaymentChannelToFundSourceMapping, PaymentType, PaymentTypeOption} from '../../../../shared/models/general.model';
import { AdvancePaymentAllocationData, CreditAllocation, PaymentAllocation } from '../../loan-product-stepper/loan-product-payment-strategy-step/payment-allocation-model';
import { LoanProducts } from '../../loan-products';
import { CodeName, OptionData, StringEnumOptionData } from '../../../../shared/models/option-data.model';
@@ -25,6 +25,7 @@ export class LoanProductSummaryComponent implements OnInit, OnChanges {
chargesDisplayedColumns: string[] = ['name', 'chargeCalculationType', 'amount', 'chargeTimeType'];
paymentFundSourceDisplayedColumns: string[] = ['paymentTypeId', 'fundSourceAccountId'];
feesPenaltyIncomeDisplayedColumns: string[] = ['chargeId', 'incomeAccountId'];
+ chargeOffReasonExpenseDisplayedColumns: string[] = ['chargeOffReasonCodeValueId', 'expenseGLAccountId'];
accountingRuleData: string[] = [];
isAdvancedPaymentAllocation = false;
@@ -35,6 +36,7 @@ export class LoanProductSummaryComponent implements OnInit, OnChanges {
paymentChannelToFundSourceMappings: PaymentChannelToFundSourceMapping[] = [];
feeToIncomeAccountMappings: ChargeToIncomeAccountMapping[] = [];
penaltyToIncomeAccountMappings: ChargeToIncomeAccountMapping[] = [];
+ chargeOffReasonsToExpenseMappings: ChargeOffReasonsToExpenseMapping[] = [];
constructor(private accounting: Accounting) { }
@@ -63,6 +65,7 @@ export class LoanProductSummaryComponent implements OnInit, OnChanges {
this.paymentChannelToFundSourceMappings = this.loanProduct.paymentChannelToFundSourceMappings || [];
this.feeToIncomeAccountMappings = this.loanProduct.feeToIncomeAccountMappings || [];
this.penaltyToIncomeAccountMappings = this.loanProduct.penaltyToIncomeAccountMappings || [];
+ this.chargeOffReasonsToExpenseMappings = this.loanProduct.chargeOffReasonsToExpenseMappings || [];
} else {
this.accountingMappings = {};
@@ -128,6 +131,18 @@ export class LoanProductSummaryComponent implements OnInit, OnChanges {
});
});
}
+
+ this.chargeOffReasonsToExpenseMappings = [];
+ if (this.loanProduct.chargeOffReasonsToExpenseMappings?.length > 0) {
+ this.loanProduct.chargeOffReasonsToExpenseMappings.forEach((m: ChargeOffReasonsToExpenseMapping) => {
+ this.chargeOffReasonsToExpenseMappings.push({
+ chargeOffReasonCodeValueId: m.chargeOffReasonCodeValueId,
+ chargeOffReason: this.optionDataLookUp(m.chargeOffReasonCodeValueId, this.loanProductsTemplate.chargeOffReasonOptions),
+ expenseGLAccountId: m.expenseGLAccountId,
+ expenseGLAccount: this.glAccountLookUp(m.expenseGLAccountId, expenseAccountData)
+ });
+ });
+ }
}
if (this.loanProduct.isInterestRecalculationEnabled) {
@@ -326,7 +341,8 @@ export class LoanProductSummaryComponent implements OnInit, OnChanges {
isAdvancedAccountingEnabled(): boolean {
return (this.loanProduct.paymentChannelToFundSourceMappings?.length > 0
|| this.loanProduct.feeToIncomeAccountMappings?.length > 0
- || this.loanProduct.penaltyToIncomeAccountMappings?.length > 0);
+ || this.loanProduct.penaltyToIncomeAccountMappings?.length > 0
+ || this.loanProduct.chargeOffReasonsToExpenseMappings?.length > 0);
}
getAccountingRuleName(value: string): string {
diff --git a/src/app/products/loan-products/loan-product-stepper/loan-product-accounting-step/loan-product-accounting-step.component.html b/src/app/products/loan-products/loan-product-stepper/loan-product-accounting-step/loan-product-accounting-step.component.html
index 526f4b4c55..6b0513378a 100644
--- a/src/app/products/loan-products/loan-product-stepper/loan-product-accounting-step/loan-product-accounting-step.component.html
+++ b/src/app/products/loan-products/loan-product-stepper/loan-product-accounting-step/loan-product-accounting-step.component.html
@@ -334,6 +334,49 @@ {{'labels.heading.Map Penalties to Specific Inco
+ {{'labels.heading.Map Charge-off reasons to Expense accounts' | translate}}
+
+
+
+
+
+
+
+
+
+ {{'labels.inputs.Charge-off reason' | translate}} |
+
+ {{ chargeOffReasonsToExpenseMapping.chargeOffReasonCodeValueId | find:chargeOffReasonOptions:'id':'name' }}
+ |
+
+
+
+ {{'labels.inputs.Expense Account' | translate}} |
+
+ {{ chargeOffReasonsToExpenseMapping.expenseGLAccountId | find:expenseAccountData:'id':'name' }}
+ |
+
+
+
+ {{'labels.inputs.Actions' | translate}} |
+
+
+
+ |
+
+
+
+
+
+
+
diff --git a/src/app/products/loan-products/loan-product-stepper/loan-product-accounting-step/loan-product-accounting-step.component.ts b/src/app/products/loan-products/loan-product-stepper/loan-product-accounting-step/loan-product-accounting-step.component.ts
index 104879e6d0..b6e74f7bcc 100644
--- a/src/app/products/loan-products/loan-product-stepper/loan-product-accounting-step/loan-product-accounting-step.component.ts
+++ b/src/app/products/loan-products/loan-product-stepper/loan-product-accounting-step/loan-product-accounting-step.component.ts
@@ -8,6 +8,7 @@ import { FormDialogComponent } from 'app/shared/form-dialog/form-dialog.componen
import { TranslateService } from '@ngx-translate/core';
import { FormfieldBase } from 'app/shared/form-dialog/formfield/model/formfield-base';
import { SelectBase } from 'app/shared/form-dialog/formfield/model/select-base';
+import {ChargeOffReasonsToExpenseMapping} from '../../../../shared/models/general.model';
@Component({
selector: 'mifosx-loan-product-accounting-step',
@@ -31,9 +32,11 @@ export class LoanProductAccountingStepComponent implements OnInit {
liabilityAccountData: any;
incomeAndLiabilityAccountData: any;
assetAndLiabilityAccountData: any;
+ chargeOffReasonOptions: any;
paymentFundSourceDisplayedColumns: string[] = ['paymentTypeId', 'fundSourceAccountId', 'actions'];
feesPenaltyIncomeDisplayedColumns: string[] = ['chargeId', 'incomeAccountId', 'actions'];
+ chargeOffReasonExpenseDisplayedColumns: string[] = ['chargeOffReasonCodeValueId', 'expenseGLAccountId', 'actions'];
constructor(private formBuilder: UntypedFormBuilder,
public dialog: MatDialog,
@@ -52,6 +55,7 @@ export class LoanProductAccountingStepComponent implements OnInit {
this.liabilityAccountData = this.loanProductsTemplate.accountingMappingOptions.liabilityAccountOptions || [];
this.incomeAndLiabilityAccountData = this.incomeAccountData.concat(this.liabilityAccountData);
this.assetAndLiabilityAccountData = this.loanProductsTemplate.accountingMappingOptions.assetAndLiabilityAccountOptions || [];
+ this.chargeOffReasonOptions = this.loanProductsTemplate.chargeOffReasonOptions || [];
this.loanProductAccountingForm.patchValue({
'accountingRule': this.loanProductsTemplate.accountingRule.id
@@ -90,7 +94,7 @@ export class LoanProductAccountingStepComponent implements OnInit {
'incomeFromGoodwillCreditInterestAccountId': accountingMappings.incomeFromGoodwillCreditInterestAccount ? accountingMappings.incomeFromGoodwillCreditInterestAccount.id : '',
'incomeFromGoodwillCreditFeesAccountId': accountingMappings.incomeFromGoodwillCreditFeesAccount ? accountingMappings.incomeFromGoodwillCreditFeesAccount.id : '',
'incomeFromGoodwillCreditPenaltyAccountId': accountingMappings.incomeFromGoodwillCreditPenaltyAccount ? accountingMappings.incomeFromGoodwillCreditPenaltyAccount.id : '',
- 'advancedAccountingRules': (this.loanProductsTemplate.paymentChannelToFundSourceMappings || this.loanProductsTemplate.feeToIncomeAccountMappings || this.loanProductsTemplate.penaltyToIncomeAccountMappings) ? true : false
+ 'advancedAccountingRules': (this.loanProductsTemplate.paymentChannelToFundSourceMappings || this.loanProductsTemplate.feeToIncomeAccountMappings || this.loanProductsTemplate.penaltyToIncomeAccountMappings || this.loanProductsTemplate.chargeOffReasonsToExpenseMappings) ? true : false
});
this.loanProductAccountingForm.setControl('paymentChannelToFundSourceMappings',
@@ -102,6 +106,9 @@ export class LoanProductAccountingStepComponent implements OnInit {
this.loanProductAccountingForm.setControl('penaltyToIncomeAccountMappings',
this.formBuilder.array((this.loanProductsTemplate.penaltyToIncomeAccountMappings || []).map((penaltyIncome: any) =>
({ chargeId: penaltyIncome.charge.id, incomeAccountId: penaltyIncome.incomeAccount.id }))));
+ this.loanProductAccountingForm.setControl('chargeOffReasonsToExpenseMappings',
+ this.formBuilder.array((this.loanProductsTemplate.chargeOffReasonsToExpenseMappings || []).map((m: ChargeOffReasonsToExpenseMapping) =>
+ ({ chargeOffReasonCodeValueId: m.chargeOffReasonCodeValueId, expenseGLAccountId: m.expenseGLAccountId }))));
}
}
@@ -141,10 +148,12 @@ export class LoanProductAccountingStepComponent implements OnInit {
this.loanProductAccountingForm.addControl('paymentChannelToFundSourceMappings', this.formBuilder.array([]));
this.loanProductAccountingForm.addControl('feeToIncomeAccountMappings', this.formBuilder.array([]));
this.loanProductAccountingForm.addControl('penaltyToIncomeAccountMappings', this.formBuilder.array([]));
+ this.loanProductAccountingForm.addControl('chargeOffReasonsToExpenseMappings', this.formBuilder.array([]));
} else {
this.loanProductAccountingForm.removeControl('paymentChannelToFundSourceMappings');
this.loanProductAccountingForm.removeControl('feeToIncomeAccountMappings');
this.loanProductAccountingForm.removeControl('penaltyToIncomeAccountMappings');
+ this.loanProductAccountingForm.removeControl('chargeOffReasonsToExpenseMappings');
}
});
} else {
@@ -195,6 +204,10 @@ export class LoanProductAccountingStepComponent implements OnInit {
return this.loanProductAccountingForm.get('penaltyToIncomeAccountMappings') as UntypedFormArray;
}
+ get chargeOffReasonsToExpenseMappings(): UntypedFormArray {
+ return this.loanProductAccountingForm.get('chargeOffReasonsToExpenseMappings') as UntypedFormArray;
+ }
+
setLoanProductAccountingFormDirty() {
if (this.loanProductAccountingForm.pristine) {
this.loanProductAccountingForm.markAsDirty();
@@ -240,6 +253,7 @@ export class LoanProductAccountingStepComponent implements OnInit {
case 'PaymentFundSource': return { title: 'Configure Fund Sources for Payment Channels', formfields: this.getPaymentFundSourceFormfields(values) };
case 'FeesIncome': return { title: 'Map Fees to Income Accounts', formfields: this.getFeesIncomeFormfields(values) };
case 'PenaltyIncome': return { title: 'Map Penalties to Specific Income Accounts', formfields: this.getPenaltyIncomeFormfields(values) };
+ case 'ChargeOffReasonExpense': return { title: 'Map Charge-off reasons to Expense accounts', formfields: this.getChargeOffReasonExpenseFormfields(values) };
}
}
@@ -309,6 +323,28 @@ export class LoanProductAccountingStepComponent implements OnInit {
return formfields;
}
+ getChargeOffReasonExpenseFormfields(values?: any) {
+ const formfields: FormfieldBase[] = [
+ new SelectBase({
+ controlName: 'chargeOffReasonCodeValueId',
+ label: 'Charge-off reason',
+ value: values ? values.chargeOffReasonCodeValueId : this.chargeOffReasonOptions[0].id,
+ options: { label: 'name', value: 'id', data: this.chargeOffReasonOptions },
+ required: true,
+ order: 1
+ }),
+ new SelectBase({
+ controlName: 'expenseGLAccountId',
+ label: 'Expense Account',
+ value: values ? values.expenseGLAccountId : this.expenseAccountData[0].id,
+ options: { label: 'name', value: 'id', data: this.expenseAccountData },
+ required: true,
+ order: 2
+ })
+ ];
+ return formfields;
+ }
+
get isAccountingAccrualBased() {
const accountingRule = this.loanProductAccountingForm.value.accountingRule;
return accountingRule === 3 || accountingRule === 4;
diff --git a/src/app/products/loan-products/models/loan-product.model.ts b/src/app/products/loan-products/models/loan-product.model.ts
index 094ed0a11f..b72d8b99e8 100644
--- a/src/app/products/loan-products/models/loan-product.model.ts
+++ b/src/app/products/loan-products/models/loan-product.model.ts
@@ -1,4 +1,4 @@
-import { AccountingMapping, ChargeToIncomeAccountMapping, Currency, PaymentChannelToFundSourceMapping } from 'app/shared/models/general.model';
+import {AccountingMapping, ChargeOffReasonsToExpenseMapping, ChargeToIncomeAccountMapping, Currency, PaymentChannelToFundSourceMapping} from 'app/shared/models/general.model';
import { OptionData, StringEnumOptionData } from 'app/shared/models/option-data.model';
import { CreditAllocation, PaymentAllocation } from '../loan-product-stepper/loan-product-payment-strategy-step/payment-allocation-model';
@@ -124,6 +124,7 @@ export interface LoanProduct {
paymentChannelToFundSourceMappings?: PaymentChannelToFundSourceMapping[];
feeToIncomeAccountMappings?: ChargeToIncomeAccountMapping[];
penaltyToIncomeAccountMappings?: ChargeToIncomeAccountMapping[];
+ chargeOffReasonsToExpenseMappings?: ChargeOffReasonsToExpenseMapping[];
enableAccrualActivityPosting?: boolean;
supportedInterestRefundTypes?: StringEnumOptionData[];
}
diff --git a/src/app/shared/models/general.model.ts b/src/app/shared/models/general.model.ts
index e3052c9499..9fafcde84a 100644
--- a/src/app/shared/models/general.model.ts
+++ b/src/app/shared/models/general.model.ts
@@ -39,6 +39,13 @@ export interface PaymentChannelToFundSourceMapping {
fundSourceAccount: AccountingMapping;
}
+export interface ChargeOffReasonsToExpenseMapping {
+ chargeOffReasonCodeValueId: number;
+ expenseGLAccountId: number;
+ chargeOffReason?: OptionData;
+ expenseGLAccount?: AccountingMapping;
+}
+
export interface PaymentType {
id: number;
name: string;
diff --git a/src/assets/translations/cs-CS.json b/src/assets/translations/cs-CS.json
index 324dd62add..7666493499 100644
--- a/src/assets/translations/cs-CS.json
+++ b/src/assets/translations/cs-CS.json
@@ -1132,7 +1132,8 @@
"Working Days": "Pracovní dny",
"You have created": "Vytvořili jste",
"You can drag and drop the rows to set a Payment Allocations order": "Řádky můžete přetáhnout a nastavit tak příkaz přidělení plateb",
- "successfully select option": "úspěšně. Chcete-li pokračovat dále, vyberte si z níže uvedených možností."
+ "successfully select option": "úspěšně. Chcete-li pokračovat dále, vyberte si z níže uvedených možností.",
+ "Map Charge-off reasons to Expense accounts": "Mapujte důvody pro zúčtování na výdajové účty"
},
"inputs": {
"accounting": {
@@ -2422,7 +2423,8 @@
"valid": "platný",
"INTEREST REFUND": "VRÁCENÍ ÚROKU",
"Supported Interest Refund Types": "Unterstützte Zinsrückerstattungsarten",
- "SUPPORTED REFUND TRANSACTIONS FOR INTEREST REFUND": "Podporované typy vrácení úroků"
+ "SUPPORTED REFUND TRANSACTIONS FOR INTEREST REFUND": "Podporované typy vrácení úroků",
+ "Charge-off reason": "Důvod vyúčtování"
},
"links": {
"Community": "Společenství",
diff --git a/src/assets/translations/de-DE.json b/src/assets/translations/de-DE.json
index 14e501a7cd..a51e819ab4 100644
--- a/src/assets/translations/de-DE.json
+++ b/src/assets/translations/de-DE.json
@@ -1133,7 +1133,8 @@
"Working Days": "Arbeitstage",
"You have created": "Du hast erstellt",
"You can drag and drop the rows to set a Payment Allocations order": "Sie können die Zeilen per Drag-and-Drop verschieben, um eine Zahlungszuordnungsreihenfolge festzulegen",
- "successfully select option": "erfolgreich. Bitte wählen Sie eine der folgenden Optionen aus, um fortzufahren."
+ "successfully select option": "erfolgreich. Bitte wählen Sie eine der folgenden Optionen aus, um fortzufahren.",
+ "Map Charge-off reasons to Expense accounts": "Abschreibungsgründe Aufwandskonten zuordnen"
},
"inputs": {
"accounting": {
@@ -2422,7 +2423,8 @@
"valid": "gültig",
"INTEREST REFUND": "ZINSRÜCKERSTATTUNG",
"Supported Interest Refund Types": "Unterstützte Zinsrückerstattungsarten",
- "SUPPORTED REFUND TRANSACTIONS FOR INTEREST REFUND": "Unterstützte Zinsrückerstattungsarten"
+ "SUPPORTED REFUND TRANSACTIONS FOR INTEREST REFUND": "Unterstützte Zinsrückerstattungsarten",
+ "Charge-off reason": "Abschreibungsgrund"
},
"links": {
"Community": "Gemeinschaft",
diff --git a/src/assets/translations/en-US.json b/src/assets/translations/en-US.json
index 3f24bd0e4d..b009717aec 100644
--- a/src/assets/translations/en-US.json
+++ b/src/assets/translations/en-US.json
@@ -1134,7 +1134,8 @@
"Working Days": "Working Days",
"You have created": "You have created",
"You can drag and drop the rows to set a Payment Allocations order": "You can drag and drop the rows to set a Payment Allocations order",
- "successfully select option": "successfully. Please select from the options below to proceed furthur."
+ "successfully select option": "successfully. Please select from the options below to proceed further.",
+ "Map Charge-off reasons to Expense accounts": "Map Charge-off reasons to Expense accounts"
},
"inputs": {
"accounting": {
@@ -2423,7 +2424,8 @@
"valid": "valid",
"INTEREST REFUND": "INTEREST REFUND",
"Supported Interest Refund Types": "Supported Interest Refund Types",
- "SUPPORTED REFUND TRANSACTIONS FOR INTEREST REFUND": "Supported interest refund types"
+ "SUPPORTED REFUND TRANSACTIONS FOR INTEREST REFUND": "Supported interest refund types",
+ "Charge-off reason": "Charge-off reason"
},
"links": {
"Community": "Community",
diff --git a/src/assets/translations/es-MX.json b/src/assets/translations/es-MX.json
index 7c8b92bf63..9aad75ddde 100644
--- a/src/assets/translations/es-MX.json
+++ b/src/assets/translations/es-MX.json
@@ -1131,7 +1131,8 @@
"Working Days": "Días laborables",
"You have created": "tu has creado",
"You can drag and drop the rows to set a Payment Allocations order": "Puede arrastrar y soltar las filas para establecer un orden de asignaciones de pago",
- "successfully select option": "exitosamente. Seleccione una de las opciones siguientes para continuar."
+ "successfully select option": "exitosamente. Seleccione una de las opciones siguientes para continuar.",
+ "Map Charge-off reasons to Expense accounts": "Asignar motivos de cancelación a cuentas de gastos"
},
"inputs": {
"accounting": {
@@ -2421,7 +2422,8 @@
"valid": "válido",
"INTEREST REFUND": "REEMBOLSO DE INTERESES",
"Supported Interest Refund Types": "Tipos de reembolso de intereses admitidos",
- "SUPPORTED REFUND TRANSACTIONS FOR INTEREST REFUND": "Tipos de reembolso de intereses admitidos"
+ "SUPPORTED REFUND TRANSACTIONS FOR INTEREST REFUND": "Tipos de reembolso de intereses admitidos",
+ "Charge-off reason": "Motivo de la cancelación"
},
"links": {
"Community": "Comunidad",
diff --git a/src/assets/translations/fr-FR.json b/src/assets/translations/fr-FR.json
index 641e9cd340..7ddfd7b6ed 100644
--- a/src/assets/translations/fr-FR.json
+++ b/src/assets/translations/fr-FR.json
@@ -1133,7 +1133,8 @@
"Working Days": "Jours de travail",
"You have created": "Vous avez créé",
"You can drag and drop the rows to set a Payment Allocations order": "Vous pouvez faire glisser et déposer les lignes pour définir un ordre de répartition des paiements",
- "successfully select option": "avec succès. Veuillez sélectionner parmi les options ci-dessous pour continuer."
+ "successfully select option": "avec succès. Veuillez sélectionner parmi les options ci-dessous pour continuer.",
+ "Map Charge-off reasons to Expense accounts": "Cartographier les motifs de radiation sur les comptes de dépenses"
},
"inputs": {
"accounting": {
@@ -2422,7 +2423,8 @@
"valid": "valide",
"INTEREST REFUND": "REMBOURSEMENT DES INTÉRÊTS",
"Supported Interest Refund Types": "Types de remboursement d'intérêts pris en charge",
- "SUPPORTED REFUND TRANSACTIONS FOR INTEREST REFUND": "Types de remboursement d'intérêts pris en charge"
+ "SUPPORTED REFUND TRANSACTIONS FOR INTEREST REFUND": "Types de remboursement d'intérêts pris en charge",
+ "Charge-off reason": "Motif de la radiation"
},
"links": {
"Community": "Communauté",
diff --git a/src/assets/translations/it-IT.json b/src/assets/translations/it-IT.json
index 97b3baf78f..2d9da1f57e 100644
--- a/src/assets/translations/it-IT.json
+++ b/src/assets/translations/it-IT.json
@@ -1133,7 +1133,8 @@
"Working Days": "Giorni lavorativi",
"You have created": "Hai creato",
"You can drag and drop the rows to set a Payment Allocations order": "Vous pouvez faire glisser et déposer les lignes pour définir un ordre de répartition des paiements",
- "successfully select option": "con successo. Seleziona una delle opzioni seguenti per procedere ulteriormente."
+ "successfully select option": "con successo. Seleziona una delle opzioni seguenti per procedere ulteriormente.",
+ "Map Charge-off reasons to Expense accounts": "Associa i motivi di addebito ai conti spese"
},
"inputs": {
"accounting": {
@@ -2422,7 +2423,8 @@
"valid": "valido",
"INTEREST REFUND": "RIMBORSO DEGLI INTERESSI",
"Supported Interest Refund Types": "Tipi di rimborso degli interessi supportati",
- "SUPPORTED REFUND TRANSACTIONS FOR INTEREST REFUND": "Tipi di rimborso degli interessi supportati"
+ "SUPPORTED REFUND TRANSACTIONS FOR INTEREST REFUND": "Tipi di rimborso degli interessi supportati",
+ "Charge-off reason": "Motivo dell'addebito"
},
"links": {
"Community": "Comunità",
diff --git a/src/assets/translations/ko-KO.json b/src/assets/translations/ko-KO.json
index cc974aaace..2b35bc6931 100644
--- a/src/assets/translations/ko-KO.json
+++ b/src/assets/translations/ko-KO.json
@@ -1134,7 +1134,8 @@
"Working Days": "일하는 날",
"You have created": "당신이 창조했습니다",
"You can drag and drop the rows to set a Payment Allocations order": "행을 끌어서 놓아 지불 할당 순서를 설정할 수 있습니다.",
- "successfully select option": "성공적으로. 계속 진행하려면 아래 옵션 중에서 선택하세요."
+ "successfully select option": "성공적으로. 계속 진행하려면 아래 옵션 중에서 선택하세요.",
+ "Map Charge-off reasons to Expense accounts": "비용 계정에 대한 청구 취소 사유 매핑"
},
"inputs": {
"accounting": {
@@ -2423,7 +2424,8 @@
"valid": "유효한",
"INTEREST REFUND": "이자환급",
"Supported Interest Refund Types": "지원되는 이자 환불 유형",
- "SUPPORTED REFUND TRANSACTIONS FOR INTEREST REFUND": "지원되는 이자 환불 유형"
+ "SUPPORTED REFUND TRANSACTIONS FOR INTEREST REFUND": "지원되는 이자 환불 유형",
+ "Charge-off reason": "청구 취소 사유"
},
"links": {
"Community": "지역 사회",
diff --git a/src/assets/translations/lt-LT.json b/src/assets/translations/lt-LT.json
index 03b4ce04cd..e2915927ab 100644
--- a/src/assets/translations/lt-LT.json
+++ b/src/assets/translations/lt-LT.json
@@ -1133,7 +1133,8 @@
"Working Days": "Darbo dienos",
"You have created": "Jūs sukūrėte",
"You can drag and drop the rows to set a Payment Allocations order": "Galite nuvilkti eilutes, kad nustatytumėte mokėjimo paskirstymo tvarką",
- "successfully select option": "sėkmingai. Jei norite tęsti, pasirinkite iš toliau pateiktų parinkčių."
+ "successfully select option": "sėkmingai. Jei norite tęsti, pasirinkite iš toliau pateiktų parinkčių.",
+ "Map Charge-off reasons to Expense accounts": "Nurodykite nurašymo priežastis išlaidų sąskaitoms"
},
"inputs": {
"accounting": {
@@ -2422,7 +2423,8 @@
"valid": "galioja",
"INTEREST REFUND": "PALŪKANŲ GRĄŽINIMAS",
"Supported Interest Refund Types": "Palaikomi palūkanų grąžinimo tipai",
- "SUPPORTED REFUND TRANSACTIONS FOR INTEREST REFUND": "Palaikomi palūkanų grąžinimo tipai"
+ "SUPPORTED REFUND TRANSACTIONS FOR INTEREST REFUND": "Palaikomi palūkanų grąžinimo tipai",
+ "Charge-off reason": "Apmokestinimo priežastis"
},
"links": {
"Community": "bendruomenė",
diff --git a/src/assets/translations/lv-LV.json b/src/assets/translations/lv-LV.json
index cdf0e67783..5f677f2048 100644
--- a/src/assets/translations/lv-LV.json
+++ b/src/assets/translations/lv-LV.json
@@ -1133,7 +1133,8 @@
"Working Days": "Darba dienas",
"You have created": "Jūs esat izveidojis",
"You can drag and drop the rows to set a Payment Allocations order": "Varat vilkt un nomest rindas, lai iestatītu maksājumu piešķiršanas pasūtījumu",
- "successfully select option": "veiksmīgi. Lūdzu, atlasiet kādu no tālāk norādītajām opcijām, lai turpinātu."
+ "successfully select option": "veiksmīgi. Lūdzu, atlasiet kādu no tālāk norādītajām opcijām, lai turpinātu.",
+ "Map Charge-off reasons to Expense accounts": "Izmaksas iemeslu kartēšana izdevumu kontiem"
},
"inputs": {
"accounting": {
@@ -2422,7 +2423,8 @@
"valid": "derīgs",
"INTEREST REFUND": "PROCENTU ATMAKSĀŠANA",
"Supported Interest Refund Types": "Atbalstītie procentu atmaksas veidi",
- "SUPPORTED REFUND TRANSACTIONS FOR INTEREST REFUND": "Atbalstītie procentu atmaksas veidi"
+ "SUPPORTED REFUND TRANSACTIONS FOR INTEREST REFUND": "Atbalstītie procentu atmaksas veidi",
+ "Charge-off reason": "Izmaksas iemesls"
},
"links": {
"Community": "kopiena",
diff --git a/src/assets/translations/ne-NE.json b/src/assets/translations/ne-NE.json
index ab9ee46388..97e57f0550 100644
--- a/src/assets/translations/ne-NE.json
+++ b/src/assets/translations/ne-NE.json
@@ -1133,7 +1133,8 @@
"Working Days": "काम गर्ने दिनहरू",
"You have created": "तपाईंले सिर्जना गर्नुभयो",
"You can drag and drop the rows to set a Payment Allocations order": "तपाईंले भुक्तानी आवंटन आदेश सेट गर्न पङ्क्तिहरू तान्नुहोस् र छोड्न सक्नुहुन्छ",
- "successfully select option": "सफलतापूर्वक। अगाडि बढ्नको लागि कृपया तलका विकल्पहरूबाट चयन गर्नुहोस्।"
+ "successfully select option": "सफलतापूर्वक। अगाडि बढ्नको लागि कृपया तलका विकल्पहरूबाट चयन गर्नुहोस्।",
+ "Map Charge-off reasons to Expense accounts": "खर्च खाताहरूमा चार्ज-अफ कारणहरू नक्सा गर्नुहोस्"
},
"inputs": {
"accounting": {
@@ -2422,7 +2423,8 @@
"valid": "मान्य",
"INTEREST REFUND": "व्याज परतावा",
"Supported Interest Refund Types": "समर्थित ब्याज फिर्ता प्रकारहरू",
- "SUPPORTED REFUND TRANSACTIONS FOR INTEREST REFUND": "समर्थित व्याज परतावा प्रकार"
+ "SUPPORTED REFUND TRANSACTIONS FOR INTEREST REFUND": "समर्थित व्याज परतावा प्रकार",
+ "Charge-off reason": "चार्ज अफ कारण"
},
"links": {
"Community": "समुदाय",
diff --git a/src/assets/translations/pt-PT.json b/src/assets/translations/pt-PT.json
index b02485f4e6..5522d97b0c 100644
--- a/src/assets/translations/pt-PT.json
+++ b/src/assets/translations/pt-PT.json
@@ -1133,7 +1133,8 @@
"Working Days": "Dias úteis",
"You have created": "Você criou",
"You can drag and drop the rows to set a Payment Allocations order": "Você pode arrastar e soltar as linhas para definir um pedido de alocações de pagamento",
- "successfully select option": "com sucesso. Selecione uma das opções abaixo para prosseguir."
+ "successfully select option": "com sucesso. Selecione uma das opções abaixo para prosseguir.",
+ "Map Charge-off reasons to Expense accounts": "Mapear os motivos de baixa para as contas de despesas"
},
"inputs": {
"accounting": {
@@ -2422,7 +2423,8 @@
"valid": "válido",
"INTEREST REFUND": "REEMBOLSO DE JUROS",
"Supported Interest Refund Types": "Tipos de reembolso de juros suportados",
- "SUPPORTED REFUND TRANSACTIONS FOR INTEREST REFUND": "Tipos de reembolso de juros suportados"
+ "SUPPORTED REFUND TRANSACTIONS FOR INTEREST REFUND": "Tipos de reembolso de juros suportados",
+ "Charge-off reason": "Motivo da cobrança"
},
"links": {
"Community": "Comunidade",
diff --git a/src/assets/translations/sw-SW.json b/src/assets/translations/sw-SW.json
index e9c607ff17..a65b9e101a 100644
--- a/src/assets/translations/sw-SW.json
+++ b/src/assets/translations/sw-SW.json
@@ -1133,7 +1133,8 @@
"Working Days": "Siku za kazi",
"You have created": "Umeunda",
"You can drag and drop the rows to set a Payment Allocations order": "Unaweza kuburuta na kudondosha safu mlalo ili kuweka agizo la Ugawaji wa Malipo",
- "successfully select option": "kwa mafanikio. Tafadhali chagua kutoka kwa chaguo zilizo hapa chini ili kuendelea zaidi."
+ "successfully select option": "kwa mafanikio. Tafadhali chagua kutoka kwa chaguo zilizo hapa chini ili kuendelea zaidi.",
+ "Map Charge-off reasons to Expense accounts": "Sababu za Kutozwa kwa Ramani kwa akaunti za Gharama"
},
"inputs": {
"accounting": {
@@ -2422,7 +2423,8 @@
"valid": "halali",
"INTEREST REFUND": "MAREJESHO YA RIBA",
"Supported Interest Refund Types": "Aina za Urejeshaji wa Riba Zinazotumika",
- "SUPPORTED REFUND TRANSACTIONS FOR INTEREST REFUND": "Aina za kurejesha riba zinazotumika"
+ "SUPPORTED REFUND TRANSACTIONS FOR INTEREST REFUND": "Aina za kurejesha riba zinazotumika",
+ "Charge-off reason": "Sababu ya malipo"
},
"links": {
"Community": "Jumuiya",