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.