Create Account

Empower your customers with robust digital banking accounts using our comprehensive Accounts API. This section facilitates the entire lifecycle of a savings account—from initial submission and product association to rigorous institutional approval and final activation.

Built to support flexible interest structures, overdraft capabilities, and dynamic fee configurations, these accounts form the bedrock of a scalable financial ecosystem.

Standard Onboarding Workflow

Successful account creation follows a mandatory three-stage institutional lifecycle:

  1. Stage 1: Submission: Call this API with the command=submit parameter to link a client to a specific product blueprint. The account is created in a Submitted and Pending Approval state.
  2. Stage 2: Institutional Approval: The submitted account must be reviewed and authorized (typically by an institutional officer). This transitions the account to Approved status.
  3. Stage 3: Activation: Finalize the process by activating the account. It is only at this stage that the account is assigned its final account number and becomes eligible for financial transactions.

Operational Prerequisites

To ensure a successful account opening, verify the following:

  • Active Client Profile: Accounts can only be opened for clients who have completed KYC and are in Active status.
  • Product Blueprint: You must reference a valid productId representing a pre-configured savings product that governs interest rates, lock-in periods, and operational limits.

Professional Best Practices

  • Automated Fee Collection: Utilize the charges array during the submission stage to automate the application of account opening fees or initial service charges.
  • External Synchronization: Use the externalId field to map these accounts back to your internal CRM or legacy systems for real-time data consistency.
  • Monitoring: Leverage webhooks to track movement through the lifecycle and trigger downstream events (e.g., sending a "Welcome" email upon account activation).

Document References

Query Params
string
Defaults to submit

The value which is supported for account creation is: 'submit'.

Body Params
string
required
Defaults to 12

The associated client Id. Example: 12

string
required
Defaults to 1

The associated product Id. It will be configured for production.

Example : 1

string
required
Defaults to en

The locale of the client. 'en' will be passed as default. Pattern: 'XX' Example: 'en'

string
required
Defaults to dd MMMM yyyy

The date format for the submitted on date. Pattern: 'XXX' Example: 'dd MMMM yyyy'

string
required
Defaults to 22 June 2023

The date of submission. Pattern: '^\d+$' Example: '14 February 2024'

number

The nominal annual purchase interest rate. Note: If the field isn't specified, it will be fetched from the savings product setup. You must explicitly specify if you wish to override it with a configuration from the savings product. Example: 22.49

string

The minimum required opening balance for the account. Example : "1000"

string

The lock-in period frequency for the account. If we pass lockinPeriodFrequency ,then lockinPeriodFrequencyType also need to pass. Example: 0

boolean

Indicates if there is a withdrawal fee for transfers. Example : true

boolean

Indicates if overdraft is allowed for the account. Example : true

string

The limit for overdraft, if allowOverdraft parameter is passed as true Example : "2"

number

The nominal annual interest overdraft rate,if allowOverdraft parameter is passed as true If the field isn't specified, it will be fetched from the savings product setup. Example : 22.49

string

The minimum overdraft for interest calculation. Example : "2"

boolean

Indicates if there is enforcement for the minimum required balance.

int32

The minimum required balance for the account. Example: 0

boolean

Indicates if tax withholding is applicable. Example : false

int32

The type of interest compounding period. Possible values of interest compunding type are. 0 - INVALID: Represents an invalid compounding period type. 1 - DAILY: Interest is compounded daily. 2 - WEEKLY: Interest is compounded weekly. 3 - BIWEEKLY: Interest is compounded every two weeks. 4 - MONTHLY: Interest is compounded monthly. 5 - QUARTERLY: Interest is compounded every quarter. 6 - BI_ANNUAL: Interest is compounded every six months. 7 - ANNUAL: Interest is compounded annually. 8 - NO_COMPOUNDING_SIMPLE_INTEREST: No compounding; simple interest is applied.

int32

The type of interest posting period. 0 - INVALID: Represents an invalid posting period type. 4 - MONTHLY: Interest is posted monthly. 5 - QUARTERLY: Interest is posted every quarter. 6 - BIANNUAL: Interest is posted every six months. 7 - ANNUAL: Interest is posted annually. 8 - DAILY: Interest is posted daily.

int32

The type of interest calculation. The following are the values for interest calculation type. 0 - INVALID: Represents an invalid interest calculation type. 1 - DAILY_BALANCE: Interest is calculated based on the daily balance. 2 - AVERAGE_DAILY_BALANCE: Interest is calculated based on the average daily balance.

int32

The number of days in a year for interest calculation. the values supported for interest calculation days in a year are. 0 - INVALID 1 - DAYS_360 2 - DAYS_365

string

The external ID associated with the account. Example: 63478

int32

The type of lock-in period frequency. If we pass lockinPeriodFrequencyType ,then lockinPeriodFrequency also need to pass. Following are the enum values that can be passed - 0 - DAYS - 1 - WEEKS - 2 - MONTHS - 3 - YEARS - 4 - INVALID

string
Defaults to dd MMMM yyyy

The date format for the month and day. Pattern: 'XXX' Example: 'dd MMMM yyyy'

string

The NickName for the account Example : 123123

Headers
string
required
Defaults to z01j3e71zd6zkq908vyf5861a8

The ID of your banking instance visible in the MBANQ Console.

string
enum
Defaults to application/json

Generated from available response content types

Allowed:
Responses

Language
Credentials
Bearer
JWT
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json