@mbanq/core-sdk-js / commands / CreateAndActivateAccount
Function: CreateAndActivateAccount()
CreateAndActivateAccount(
params):Command<{params: {allowOverdraft?:boolean;charges?:object[];clientId:number;dateFormat:string;enforceMinRequiredBalance?:boolean;externalId?:string;interestCalculationDaysInYearType?:number;interestCalculationType?:number;interestCompoundingPeriodType?:number;interestPostingPeriodType?:number;locale:string;lockinPeriodFrequency?:number;lockinPeriodFrequencyType?:number;minOverdraftForInterestCalculation?:number;minRequiredBalance?:number;minRequiredOpeningBalance?:string;monthDayFormat:string;nickname?:string;nominalAnnualInterestRate?:number;nominalAnnualInterestRateOverdraft?:number;overdraftLimit?:number;productId:number;submittedOnDate:string;withdrawalFeeForTransfers?:boolean;withHoldTax?:boolean; }; }, {changes: {activatedOnDate:string;dateFormat:string;locale:string;status:string; };clientId:number;officeId:number;resourceId:number;savingsId:number; }>
Defined in: src/commands/rest/account.ts:208
Creates a new savings account and immediately activates it in a single operation. This combines the submit, approve, and activate commands.
Parameters
params
The account creation parameters (see CreateAndActivateAccountRequest)
allowOverdraft?
boolean = ...
charges?
object[] = ...
clientId
number = ...
The ID of the client who will own the account
dateFormat
string = ...
The date format string (e.g., "dd MMMM yyyy")
enforceMinRequiredBalance?
boolean = ...
externalId?
string = ...
interestCalculationDaysInYearType?
number = ...
interestCalculationType?
number = ...
interestCompoundingPeriodType?
number = ...
interestPostingPeriodType?
number = ...
locale
string = ...
The locale for date formatting (e.g., "en")
lockinPeriodFrequency?
number = ...
lockinPeriodFrequencyType?
number = ...
minOverdraftForInterestCalculation?
number = ...
minRequiredBalance?
number = ...
minRequiredOpeningBalance?
string = ...
monthDayFormat
string = ...
nickname?
string = ...
nominalAnnualInterestRate?
number = ...
nominalAnnualInterestRateOverdraft?
number = ...
overdraftLimit?
number = ...
productId
number = ...
The ID of the savings product to use
submittedOnDate
string = ...
The date the account is submitted (format: "dd MMMM yyyy")
withdrawalFeeForTransfers?
boolean = ...
withHoldTax?
boolean = ...
Returns
Command<{ params: { allowOverdraft?: boolean; charges?: object[]; clientId: number; dateFormat: string; enforceMinRequiredBalance?: boolean; externalId?: string; interestCalculationDaysInYearType?: number; interestCalculationType?: number; interestCompoundingPeriodType?: number; interestPostingPeriodType?: number; locale: string; lockinPeriodFrequency?: number; lockinPeriodFrequencyType?: number; minOverdraftForInterestCalculation?: number; minRequiredBalance?: number; minRequiredOpeningBalance?: string; monthDayFormat: string; nickname?: string; nominalAnnualInterestRate?: number; nominalAnnualInterestRateOverdraft?: number; overdraftLimit?: number; productId: number; submittedOnDate: string; withdrawalFeeForTransfers?: boolean; withHoldTax?: boolean; }; }, { changes: { activatedOnDate: string; dateFormat: string; locale: string; status: string; }; clientId: number; officeId: number; resourceId: number; savingsId: number; }>
A Command that when executed returns the created and activated account details
Example
const createCmd = CreateAndActivateAccount(
{
clientId: 1,
productId: 2,
locale: "en",
dateFormat: "dd MMMM yyyy",
submittedOnDate: "01 December 2025",
monthDayFormat: "dd MMM",
nominalAnnualInterestRate: 5.0
}
);
const result = await createCmd.execute(config);
console.log(result.savingsId);