FINERACT-2311: Loan product - Buy down fees accounting configuration

This commit is contained in:
adam.magyari
2025-06-26 10:02:49 +02:00
committed by Adam Saghy
parent bb46397daa
commit d88f6a2f22
9 changed files with 118 additions and 16 deletions
@@ -363,6 +363,9 @@ public class LoanProductToGLAccountMappingHelper extends ProductToGLAccountMappi
mergeLoanToIncomeAccountMappingChanges(element, LoanProductAccountingParams.INCOME_FROM_CAPITALIZATION.getValue(),
loanProductId, AccrualAccountsForLoan.INCOME_FROM_CAPITALIZATION.getValue(),
AccrualAccountsForLoan.INCOME_FROM_CAPITALIZATION.toString(), changes);
mergeLoanToIncomeAccountMappingChanges(element, LoanProductAccountingParams.INCOME_FROM_BUY_DOWN.getValue(), loanProductId,
AccrualAccountsForLoan.INCOME_FROM_BUY_DOWN.getValue(), AccrualAccountsForLoan.INCOME_FROM_BUY_DOWN.toString(),
changes);
// expenses
mergeLoanToExpenseAccountMappingChanges(element, LoanProductAccountingParams.LOSSES_WRITTEN_OFF.getValue(), loanProductId,
@@ -376,6 +379,8 @@ public class LoanProductToGLAccountMappingHelper extends ProductToGLAccountMappi
mergeLoanToExpenseAccountMappingChanges(element, LoanProductAccountingParams.CHARGE_OFF_FRAUD_EXPENSE.getValue(),
loanProductId, AccrualAccountsForLoan.CHARGE_OFF_FRAUD_EXPENSE.getValue(),
AccrualAccountsForLoan.CHARGE_OFF_FRAUD_EXPENSE.toString(), changes);
mergeLoanToExpenseAccountMappingChanges(element, LoanProductAccountingParams.BUY_DOWN_EXPENSE.getValue(), loanProductId,
AccrualAccountsForLoan.BUY_DOWN_EXPENSE.getValue(), AccrualAccountsForLoan.BUY_DOWN_EXPENSE.toString(), changes);
// liabilities
mergeLoanToLiabilityAccountMappingChanges(element, LoanProductAccountingParams.OVERPAYMENT.getValue(), loanProductId,
@@ -289,6 +289,10 @@ public final class LoanProductsApiResourceSwagger {
public Long deferredIncomeLiabilityAccountId;
@Schema(example = "37")
public Long incomeFromCapitalizationAccountId;
@Schema(example = "27")
public Long buyDownExpenseAccountId;
@Schema(example = "38")
public Long incomeFromBuyDownAccountId;
public List<GetLoanProductsProductIdResponse.GetLoanPaymentChannelToFundSourceMappings> paymentChannelToFundSourceMappings;
public List<LoanProductChargeToGLAccountMapper> feeToIncomeAccountMappings;
public List<PostChargeOffReasonToExpenseAccountMappings> chargeOffReasonToExpenseAccountMappings;
@@ -1268,6 +1272,8 @@ public final class LoanProductsApiResourceSwagger {
public GetGlAccountMapping overpaymentLiabilityAccount;
public GetGlAccountMapping deferredIncomeLiabilityAccount;
public GetGlAccountMapping incomeFromCapitalizationAccount;
public GetGlAccountMapping buyDownExpenseAccount;
public GetGlAccountMapping incomeFromBuyDownAccount;
}
static final class GetLoanPaymentChannelToFundSourceMappings {
@@ -1723,6 +1729,10 @@ public final class LoanProductsApiResourceSwagger {
public Long deferredIncomeLiabilityAccountId;
@Schema(example = "37")
public Long incomeFromCapitalizationAccountId;
@Schema(example = "27")
public Long buyDownExpenseAccountId;
@Schema(example = "38")
public Long incomeFromBuyDownAccountId;
public List<GetLoanProductsProductIdResponse.GetLoanPaymentChannelToFundSourceMappings> paymentChannelToFundSourceMappings;
public List<LoanProductChargeToGLAccountMapper> feeToIncomeAccountMappings;
public List<PostLoanProductsRequest.PostChargeOffReasonToExpenseAccountMappings> chargeOffReasonToExpenseAccountMappings;