Skip to content

@mbanq/core-sdk-js v0.50.0


@mbanq/core-sdk-js / commands / CreateLoan

Function: CreateLoan()

CreateLoan(data): Command<{ data: { allowPartialPeriodInterestCalculation?: boolean; amortizationType: number; charges?: object[]; clientId: number; createStandingInstructionAtDisbursement?: string; dateFormat: string; disbursementData?: object[]; expectedDisbursementDate: string; fixedEmiAmount?: number; graceOnArrearsAgeing?: number; interestCalculationPeriodType: number; interestRatePerPeriod: number; interestType: number; linkAccountId?: number; loanTermFrequency: number; loanTermFrequencyType: number; loanType: string; locale: string; maxOutstandingLoanBalance?: string; numberOfRepayments: number; prepayLoanOnDeposits?: boolean; principal: number; productId: number; repaymentEvery: number; repaymentFrequencyType: number; submittedOnDate: string; transactionProcessingStrategyId: number; }; }, { clientId: number; loanId: number; officeId: number; resourceId: number; }>

Defined in: src/commands/rest/loan.ts:93

Creates a new loan application with specified loan amount, term, interest rate, and repayment frequency.

Parameters

data

allowPartialPeriodInterestCalculation?

boolean = ...

amortizationType

number = ...

charges?

object[] = ...

clientId

number = ...

createStandingInstructionAtDisbursement?

string = ...

dateFormat

string = ...

disbursementData?

object[] = ...

expectedDisbursementDate

string = ...

fixedEmiAmount?

number = ...

graceOnArrearsAgeing?

number = ...

interestCalculationPeriodType

number = ...

interestRatePerPeriod

number = ...

interestType

number = ...

linkAccountId?

number = ...

loanTermFrequency

number = ...

loanTermFrequencyType

number = ...

loanType

string = ...

locale

string = ...

maxOutstandingLoanBalance?

string = ...

numberOfRepayments

number = ...

prepayLoanOnDeposits?

boolean = ...

principal

number = ...

productId

number = ...

repaymentEvery

number = ...

repaymentFrequencyType

number = ...

submittedOnDate

string = ...

transactionProcessingStrategyId

number = ...

Returns

Command<{ data: { allowPartialPeriodInterestCalculation?: boolean; amortizationType: number; charges?: object[]; clientId: number; createStandingInstructionAtDisbursement?: string; dateFormat: string; disbursementData?: object[]; expectedDisbursementDate: string; fixedEmiAmount?: number; graceOnArrearsAgeing?: number; interestCalculationPeriodType: number; interestRatePerPeriod: number; interestType: number; linkAccountId?: number; loanTermFrequency: number; loanTermFrequencyType: number; loanType: string; locale: string; maxOutstandingLoanBalance?: string; numberOfRepayments: number; prepayLoanOnDeposits?: boolean; principal: number; productId: number; repaymentEvery: number; repaymentFrequencyType: number; submittedOnDate: string; transactionProcessingStrategyId: number; }; }, { clientId: number; loanId: number; officeId: number; resourceId: number; }>

A Command that when executed returns the created loan response with officeId, clientId, loanId, and resourceId

Example

typescript
const createLoanCmd = CreateLoan({
  clientId: 38,
  productId: 1,
  principal: 1500,
  loanTermFrequency: 12,
  loanTermFrequencyType: 0,
  loanType: "individual",
  numberOfRepayments: 12,
  repaymentEvery: 1,
  repaymentFrequencyType: 0,
  interestRatePerPeriod: 9,
  amortizationType: 0,
  interestType: 1,
  interestCalculationPeriodType: 1,
  transactionProcessingStrategyId: 1,
  expectedDisbursementDate: "07 July 2025",
  submittedOnDate: "28 July 2024",
  locale: "en",
  dateFormat: "dd MMMM yyyy"
});
const result = await createLoanCmd.execute(config);
console.log(result.loanId); // 13

Released under the MIT License.