Create Business Customer

Empower your commercial users by establishing a comprehensive business profile within the banking ecosystem. This endpoint serves as the primary entry point for entities—from startups to established enterprises—capturing critical organizational data to kickstart the onboarding process. Upon registration, entities are placed in a Pending status, ready for the rigorous compliance and verification workflows required for modern business banking.

The Onboarding Journey:

  1. Registration: Establish the business entity's digital record as a precursor to all corporate banking services.
  2. Verification: Following creation, ensure that at least one primary address, an identity document, a mobile number, and an email are added. Then, utilize the Verify Customer API to validate these credentials. A successful verification transitions the record to a Verified state.
  3. Activation: Successful verification transitions the business to an active state, enabling downstream operations like account opening and fund transfers.

Real-time Lifecycle Visibility

To maintain precise synchronization with the asynchronous onboarding process, we strongly recommend subscribing to our real-time webhooks. These provide immediate notifications for creation events, verification results, and state transitions, serving as the most efficient way to monitor progress.

FunctionWebhook Reference
Create CustomerRegister Customer Webhook

For a complete overview of the end-to-end integration sequence, please refer to the Customer Onboarding Guide.

Using Template Option IDs

Several fields in this request payload require IDs that are obtained from the Get Business Customer Template API. You must call the Business Customer Template API first to retrieve the valid option IDs for your tenant before creating a customer.

The following fields require template option IDs:

Field in Request BodySource from Business Customer Template Response
officeIdofficeOptions[].id
legalFormIdclientLegalFormOptions[].id
clientTypes[]clientTypeOptions[].id
clientClassificationIdclientClassificationOptions[].id
countryOfIncorporationIdcountryOptions[].id
constitutionIdclientNonPersonConstitutionOptions[].id
mainBusinessLineIdclientNonPersonMainBusinessLineOptions[].id

Example: If the template returns clientNonPersonConstitutionOptions: [{ "id": 8680, "name": "Sole Proprietorship" }, { "id": 8681, "name": "Partnership" }]. To create a sole proprietorship, pass "constitutionId": 8680 in this request body.

Click to View Business Customer Request Payload Fields
Field nameData typeMandatory / optionalLength constraintsValidation pattern (regex)
officeIdIntegerMandatory (Default 1)-^\d+$
legalFormIdIntegerMandatory-^(2)$
fullnameStringMandatoryMax 100^[a-zA-Z'-\u00C0-\u017F\s]*$
localeStringMandatory--
mobileCountryCodeStringMandatory--
mobileNoStringMandatory-^\d+$
emailAddressStringMandatory-^\S+@\S+\.\S+$
dateFormatStringMandatory if submittedOnDate is passed--
externalIdStringOptional-^\d+$
clientNonPersonDetailsObjectOptional--
countryOfIncorporationIdIntegerOptional--
incorpNumberStringOptional--
constitutionIdIntegerOptional--
entityTypeIdIntegerOptional--
remarksStringOptional--
mainBusinessLineIdIntegerOptional--
websiteStringOptional-Valid URI
incorpValidityTillDateStringOptional--
clientTypesArray (Integer)Optional--
clientClassificationIdIntegerOptional-^\d+$
submittedOnDateStringOptional--
Click to View Address Fields (nested in address array)
Field nameData typeMandatory / optionalLength constraintsValidation pattern (regex)
addressTypeIdIntegerMandatory-^(31|32|33|34)$
addressLine1StringOptionalMax 255-
addressLine2StringOptionalMax 255-
addressLine3StringOptionalMax 255-
cityStringOptional-[a-zA-Z- ]+
stateProvinceIdIntegerOptional-^\d+$
countryIdIntegerOptional-^\d+$
postalCodeStringOptionalMax 255^\d+$
isActiveBooleanOptional--
Body Params
string
required
length ≤ 100
Defaults to Tech Innovations LLC

Full Name of the customer.
Example: 'Tech Innovations LLC'

string
required
Defaults to +1

The mobile country code. Validation is enforced.
Pattern: 'XXX'
Example: '+1'

string
required
Defaults to 5550198822

The mobile number of the customer. Validation is enforced.
Pattern: '^\d+$'
Example: '5550198822'

string
required
Defaults to [email protected]

The email address of the customer. Email Format Validation is enforced.
Example: '[email protected]'

integer
required
Defaults to 1

The associated office Id. '1' will be passed as default.
Example: 1

integer
required
Defaults to 2

The associated legal form Id. It's used to create either a Retail or a Corporate Customer. Accepted Values are :

  1. 1 - Person
  2. 2 - Entity

Example: 2

string
required
Defaults to en

The locale of the customer. 'en' will be passed as default.
Example: 'en'

clientNonPersonDetails
object

Additional details required when creating an Entity Customer (legalFormId = 2).

string

A unique identifier that links the customer created by the third-party system to the customer generated within our system.
Example: 'EXT-CORP-90210'

clientTypes
array of integers

A list of customer type identifiers associated with the customer.
Each ID represents a specific customer classification.
The value is fetched from the API Get Code Value with code name ClientType.

clientTypes
integer

The customer classification Id. If the customer needs to be associated to any existing classification, then the classification id needs to be passed.
The value is fetched from the API Get Code Value with code name ClientClassification-ENTITY.
Pattern: '^\d+$'
Example: 12345

string

If the fields 'submittedOnDate' or 'activationDate' is passed, then this parameter is mandatory. It specifies the dataformat, that's being used.
Pattern: 'XXX'
Example: 'dd MMMM yyyy'

string

The submitted on date. The date format should be as per the format mentioned in the dateFormat parameter.
Pattern: 'XXX'
Example: '14 February 2024'

Headers
string
required

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

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