Required Parameters
The following details the required parameters for the Customer Onboarding v5 request, along with validation rules and sample requests.
Use this request to create customers to onboard in Australia. The endpoint accepts both individual and corporate customer.
For a breakdown of the request and parameters, see Onboard Corporate Customer.
Path Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
clientHashId | string | Yes | Unique client identifier, generated and shared before the API handshake. |
Body Parameters
| Parameter | Type | Required | Accepted Values / Notes |
|---|---|---|---|
type | string | Yes | individual or corporate. |
kycType | string | Yes | minimum or full. Use full when onboarding for payouts. |
region | string | Yes | Use AU. |
externalId | string | Optional | Client-defined unique ID (max 36). Returned in webhooks and GET APIs. |
Individual Customers
Personal Information
| Field | Type | Required | Notes |
|---|---|---|---|
firstName | string | Yes | Max 40. |
middleName | string | Optional | Max 40. |
lastName | string | Yes | Max 40. |
email | string | Yes | Max 60; must match the valid email regex. |
nationality | enum | Yes | Category: countryName. |
mobile | numeric | Yes | Without country code; max 15 digits. |
mobileCountryCode | numeric | Yes | Max 6 digits. |
dateOfBirth | date | Yes | YYYY-MM-DD; age ≥ 18. |
isPep | boolean | Yes | true if PEP. |
birthCountry | enum | Yes | Category: countryName. |
Tax Details
Provide at least one entry.
| Field | Type | Required | Notes |
|---|---|---|---|
taxCountry | enum | Yes | Category: countryName. |
taxNumber | string | Yes | Max 64. |
Billing Address
| Field | Type | Required | Notes |
|---|---|---|---|
addressLine1 | string | Yes | Max 100. |
addressLine2 | string | Optional | Max 100. |
city | string | Yes | Max 50. |
state | enum/string | Conditional | Category: state. Optional if unavailable for country. |
postcode | string | Yes | Max 10. |
country | enum | Yes | Category: countryName. |
Expected Account Usage
| Field | Required | Notes |
|---|---|---|
credit.monthlyTransactionVolume | Yes | Category: monthlyTransactionVolume. |
credit.topTransactionCountries | Yes | Category: countryName. |
debit.monthlyTransactionVolume | Yes | Category: monthlyTransactionVolume. |
debit.topTransactionCountries | Yes | Destination countries for payouts. |
intendedUses | Yes | Category: intendedUseOfAccount. |
intendedUsesDescription | Conditional | Required if Other is selected. Max 300 chars. |
Bank Account Details (for refunds/returns)
| Field | Type | Required | Notes |
|---|---|---|---|
accountName | string | Yes | Registered bank name; max 140. |
accountNumber | string | Yes | Max 35. |
bankCountry | string | Yes | ISO 3166-1 alpha-2. |
bankAccountType | string | Conditional | For example, savings, checking, current. |
bankName | string | Conditional | Max 255. |
currency | string | Yes | ISO 4217 (for example, USD, AUD). |
routingCodes.type | string | Yes | For example, SWIFT, ABA, BRANCH_CODE. |
routingCodes.value | string | Yes | Matches the selected type. |
Corporate Customers (Full KYC)
Business Information
| Field | Type | Required | Notes |
|---|---|---|---|
businessType | enum | Yes | Category: businessType. |
businessName | string | Yes | Max 80. |
tradeName | string | Optional | If not available, set equal to businessName. |
businessRegistrationNumber | string | Yes | Max 30. |
registeredDate | date | Yes | YYYY-MM-DD; past date. |
registeredCountry | enum | Yes | Category: countryName. |
website | string | Optional | URL or verified social profile; else upload PROOF_OF_BUSINESS. |
isMultiLayeredCompany | boolean | Yes | true/false. See the multi-layered structure guide. |
Applicant Details
| Field | Type | Required | Notes |
|---|---|---|---|
firstName / lastName | string | Yes | Max 40 each. |
dateOfBirth | date | Yes | Past date; age ≥ 18. |
email | string | Yes | Max 60; valid email. |
mobile / mobileCountryCode | string | Yes | 15/6 digit limits. |
isPep | boolean | Yes | true if PEP. |
positions | array | Yes | Include DIRECTOR, REPRESENTATIVE, UBO as applicable. |
documents | array | Conditional | POWER_OF_ATTORNEY required if applicant is not a director. |
Stakeholders
Stakeholders can be individuals or corporates with roles such as UBO, Director, Partner, Trustee, Shareholder.
Individual Stakeholders
| Field | Required | Notes |
|---|---|---|
firstName, lastName, dateOfBirth, nationality | Yes | Personal details. |
isPep | Yes | true if PEP. |
positions | Optional | For example, UBO, Partner, Director. |
sharePercentage | Conditional | Required when ownership ≥ 25%. |
address | Yes | Full residential address. |
Corporate Stakeholders
| Field | Required | Notes |
|---|---|---|
businessName | Yes | Registered name. |
businessRegistrationNumber | Yes | Max 30. |
registeredCountry | Yes | Category: countryName. |
positions.title | Yes | For example, UBO, Shareholder, Trustee. |
sharePercentage | Conditional | Required for UBO/Shareholder. |
Nature of Business
| Field | Required | Notes |
|---|---|---|
operatingCountries | Yes | All countries where the business operates. |
industryCodes | Yes | Category: industrySector. Multiple allowed. |
industryDescription | Conditional | 2–3 sentences if “Other” is selected or requested by Compliance. |
Expected Account Usage (Corporate)
| Field | Required | Notes |
|---|---|---|
credit.monthlyTransactionVolume | Yes | Estimated total payins (AUD). |
credit.monthlyTransactions | Yes | Estimated count of monthly payins. |
credit.averageTransactionValue | Yes | Average payin value (AUD). |
credit.topTransactionCountries | Yes | Origin countries. |
credit.topRemitters | Yes | Up to 20 primary remitters (company names or entity types). |
debit.monthlyTransactionVolume | Yes | Estimated total payouts (AUD). |
debit.monthlyTransactions | Yes | Estimated count of monthly payouts. |
debit.averageTransactionValue | Yes | Average payout value (AUD). |
debit.topTransactionCountries | Yes | Destination countries. |
debit.topBeneficiaries | Yes | Up to 20 primary beneficiaries. |
intendedUses | Yes | Category: intendedUseOfAccount. |
intendedUsesDescription | Conditional | Required if Other. |
Size of business
| Field | Required | Notes |
|---|---|---|
totalEmployees | Yes | Category: totalEmployees. |
annualTurnover | Yes | Category: annualTurnover. If < 1 year old, provide expected turnover. |
Device details
| Field | Type | Required | Notes |
|---|---|---|---|
ipCountryCode | enum | Yes | Country of origin of the IP; category: countryName. |
deviceInfo | string | Yes | OS of the device initiating the request. |
ipAddress | string | Yes | Valid IPv4 address. |
sessionId | string | Yes | Session identifier for the request. |
Tags
| Field | Type | Required | Notes |
|---|---|---|---|
tags | object | Optional | Up to 15 client-defined key/value pairs. |
tags.key | string | Optional | Max 128; keys must be unique. |
tags.value | string | Optional | Max 255. |
Examples
Corporate customer — request
{
"type": "corporate",
"kycType": "full",
"region": "AU",
"businessName": "ABC corporation",
"businessRegistrationNumber": "ABC26_127",
"registeredDate": "2024-05-21",
"registeredCountry": "SG",
"website": "www.idfc348.com",
"isMultiLayeredCompany": false,
"businessType": "private_company",
"bankAccountDetails": {
"accountName": "Name",
"bankName": "Bank of Shanghai (Hong Kong) Limited",
"accountNumber": "GB29NWBK6016133926820",
"currency": "AUD",
"bankAccountType": "saving",
"bankCountry": "AU",
"routingCodes": [
{
"type": "BSB CODE",
"value": "BSBCODE"
}
]
},
"applicantDeclaration": true,
"applicantDeclarationTimeStamp": "2025-08-20 15:49:30",
"addresses": {
"isBusinessAddressSameAsRegisteredAddress": false,
"registeredAddress": {
"addressLine1": "addressLine1",
"addressLine2": "addressLine2",
"city": "city",
"state": "FR-20R",
"postcode": "4857832",
"country": "FR"
},
"businessAddress": {
"addressLine1": "busaddressLine1",
"addressLine2": "addressLine2",
"city": "city",
"state": "FR-20R",
"postcode": "387593",
"country": "FR"
}
},
"applicant": {
"firstName": "applicantFirst",
"middleName": "applicantMiddle",
"lastName": "applicantLast",
"dateOfBirth": "1990-04-21",
"nationality": "SG",
"trustBeneficiaryClass":"A",
"email": "pasumarthi.shank@trin.com",
"mobile": "7337223608",
"mobileCountryCode": "65",
"sharePercentage": 98,
"address": {
"addressLine1": "applicantLine1",
"addressLine2": "applicantLine2",
"city": "applicantCity",
"state": "FR-20R",
"postcode": "478547",
"country": "FR"
},
"documents": [
{
"type": "power_of_attorney",
"fileIds": [
"087244f3-b4f9-4c54-92df-b472123a6166"
]
}
],
"positions": [
{
"title": "ubo",
"startDate": "2025-04-21"
}
]
},
"stakeholders": {
"individual": [
{
"externalId": "10ab1818-ef2d-44ee-96c0-7d367842d861",
"firstName": "stake1",
"middleName": "stake1Mid",
"lastName": "stake1Last",
"dateOfBirth": "1990-04-21",
"nationality": "LT",
"email": "pasumarthi.sashank@nium.com",
"mobile": "8106869840",
"mobileCountryCode": "65",
"sharePercentage": 80,
"trustBeneficiaryClass":"A",
"address": {
"addressLine1": "indiviAdd1",
"addressLine2": "indiviAdd2",
"city": "indiviCity",
"state": "FR-20R",
"postcode": "63535",
"country": "FR"
},
"positions": [
{
"title": "DIRECTOR",
"startDate": "2025-04-21"
}
]
},
"corporate": [
{
"externalId": "90ab1818-ef2d-44ee-96c0-7d367842d869",
"businessName": "ABC Pvt Ltd",
"businessRegistrationNumber": "BRN123456",
"registeredCountry": "AU",
"positions": [
{
"title": "UBO"
}
]
}
]
},
"natureOfBusiness": {
"operatingCountries": [
"SG"
],
"industryCodes": [
"IS134"
],
"industryDescription": "industryDescription_864de5f58049"
},
"expectedAccountUsage": {
"intendedUses": [
"IU001"
],
"intendedUsesDescription": "intendedUsesDescription_78d7fdff1d03",
"credit": {
"monthlyTransactionVolume": "MVAU01",
"monthlyTransactions": "ATC01",
"averageTransactionValue": "ATVAU01",
"topTransactionCountries": [
"SG"
],
"topRemitters": [
"TEST"
]
},
"debit": {
"monthlyTransactionVolume": "MVAU01",
"monthlyTransactions": "ATC01",
"averageTransactionValue": "ATVAU01",
"topTransactionCountries": [
"SG"
],
"topBeneficiaries": [
"topBeneficiaries_7aaf5e207bab"
]
}
},
"sizeOfBusiness": {
"totalEmployees": "EM006",
"annualTurnover": "AU012"
},
"deviceDetails": {
"ipCountryCode": "eu",
"deviceInfo": "MAC",
"ipAddress": "192.168.1.1",
"sessionId": "40531ac01a6f11edafc28dba55d51275"
},
"tags": [
{
"key": "key_67cef24340df",
"value": "value_56606dcf8aa4"
}
],
"tradeName": "tradeName_f57f429a7dfb",
"documents": [
{
"type": "business_registration_doc",
"fileIds": [
"787244f3-b4f9-4c54-02af-b472123a6067"
]
}
]
}
Corporate customer - response
{
"wallets": [
{
"walletHashId": "d2b709b2-be2b-46ac-aade-3132da8d534e",
"walletType": "base"
}
],
"customerHashId": "14235ce5-a979-4d22-9692-2bdaf486f2d1",
"status": "pending",
"subStatus": null,
"type": "corporate",
"kycType": "full",
"region": "AU",
"externalId": null,
"tags": [
{
"key": "key_67cef24340df",
"value": "value_56606dcf8aa4"
}
],
"segment": null,
"businessName": "ABC Pvt Ltd",
"businessRegistrationNumber": "ABC26_127",
"registeredDate": "2024-05-21",
"registeredCountry": "AU",
"website": "www.idfc348.com",
"businessType": "private_company",
"applicantDeclaration": true,
"applicantDeclarationTimeStamp": "2025-08-20 15:49:30",
"tradeName": "tradeName_f57f429a7dfb",
"isMultiLayeredCompany": false,
"addresses": {
"registeredAddress": {
"addressLine1": "addressLine1",
"addressLine2": "addressLine2",
"city": "city",
"postcode": "4857832",
"country": "FR",
"state": "FR-20R"
},
"isBusinessAddressSameAsRegisteredAddress": false,
"businessAddress": {
"addressLine1": "busaddressLine1",
"addressLine2": "addressLine2",
"city": "city",
"postcode": "387593",
"country": "FR",
"state": "FR-20R"
}
},
"natureOfBusiness": {
"operatingCountries": [
"SG"
],
"industryCodes": [
"IS134"
],
"industryDescription": "industryDescription_864de5f58049"
},
"expectedAccountUsage": {
"intendedUses": [
"IU001"
],
"intendedUsesDescription": "intendedUsesDescription_78d7fdff1d03",
"credit": {
"averageTransactionValue": "ATVAU01",
"monthlyTransactionVolume": "MVAU01",
"monthlyTransactions": "ATC01",
"topTransactionCountries": [
"SG"
],
"topRemitters": [
"TEST"
]
},
"debit": {
"averageTransactionValue": "ATVAU01",
"monthlyTransactionVolume": "MVAU01",
"monthlyTransactions": "ATC01",
"topTransactionCountries": [
"SG"
],
"topBeneficiaries": [
"topBeneficiaries_7aaf5e207bab"
]
}
},
"sizeOfBusiness": {
"totalEmployees": "EM006",
"annualTurnover": "AU012"
},
"deviceDetails": {
"ipCountryCode": "au",
"deviceInfo": "MAC",
"ipAddress": "192.168.1.1",
"sessionId": "40531ac01a6f11edafc28dba55d51275"
},
"bankAccountDetails": {
"accountName": "Name",
"accountNumber": "xxxxxxxxxxxxxxxxxxxxx",
"bankAccountType": "saving",
"bankName": "Bank of Shanghai (Hong Kong) Limited",
"bankCountry": "AU",
"currency": "AUD",
"routingCodes": [
{
"type": "BSB CODE",
"value": "xxxxxxxx"
}
]
},
"applicant": {
"externalId": null,
"firstName": "applicantFirst",
"middleName": "applicantMiddle",
"lastName": "applicantLast",
"dateOfBirth": "1990-04-21",
"nationality": "SG",
"email": "pasumarthi.sashank@nium.com",
"mobile": "7337223608",
"mobileCountryCode": "65",
"sharePercentage": 98,
"address": {
"addressLine1": "applicantLine1",
"addressLine2": "applicantLine2",
"city": "applicantCity",
"postcode": "478547",
"country": "FR",
"state": "FR-20R"
},
"positions": [
{
"title": "ubo",
"startDate": "2025-04-21"
}
],
"documents": [
{
"type": "power_of_attorney",
"fileIds": [
"087244f3-b4f9-4c54-92df-b472123a6166"
],
"identificationNumber": null,
"issuanceCountry": null,
"expiryDate": null
}
],
"referenceId": "b4b42891-29c3-4cbb-a6eb-236e2a491598"
},
"stakeholders": {
"individual": [
{
"externalId": "10ab1818-ef2d-44ee-96c0-7d367842d861",
"firstName": "stake1",
"middleName": "stake1Mid",
"lastName": "stake1Last",
"dateOfBirth": "1990-04-21",
"nationality": "LT",
"email": "pasumarthi.sashank@nium.com",
"mobile": "8106869840",
"mobileCountryCode": "65",
"sharePercentage": 80,
"address": {
"addressLine1": "indiviAdd1",
"addressLine2": "indiviAdd2",
"city": "indiviCity",
"postcode": "63535",
"country": "FR",
"state": "FR-20R"
},
"positions": [
{
"title": "DIRECTOR",
"startDate": "2025-04-21"
}
],
"kycMode": null,
"documents": null,
"referenceId": "8d8a36d9-0909-43e9-88a4-7907454afccc"
}
],
"corporate": [
{
"externalId": "90ab1818-ef2d-44ee-96c0-7d367842d869",
"businessName": "ABC Pvt Ltd",
"businessRegistrationNumber": "BRN123456",
"registeredCountry": "SG",
"sharePercentage": null,
"positions": [
{
"title": "UBO",
"startDate": null
}
],
"referenceId": "5d866918-06d6-44fb-bf34-0041ecfb6f3b"
},
]
},
"documents": [
{
"type": "business_registration_doc",
"fileIds": [
"787244f3-b4f9-4c54-02af-b472123a6067"
]
}
]
}
Individual customer — request
{
"type": "individual",
"kycType": "full",
"region": "AU",
"externalId": "C2ZfvtLAek9FKMmSHY",
"firstName": "Sharma",
"middleName": "",
"lastName": "Test",
"email": "pasumarthi.sashank+480@nium.com",
"nationality": "FR",
"dateOfBirth": "2000-08-01",
"mobile": "2000000467",
"mobileCountryCode": "31",
"website": "www.test4.com",
"tags": [
{
"key": "testing",
"value": "Automation"
},
{
"key": "key1",
"value": "value1"
}
],
"deviceDetails": {
"ipCountryCode": "eu",
"deviceInfo": "MAC",
"ipAddress": "192.168.1.16",
"sessionId": "hello-world"
},
"expectedAccountUsage": {
"intendedUsesDescription": "",
"credit": {
"monthlyTransactionVolume": "MVAU01",
"averageTransactionValue": "",
"topTransactionCountries": [
"GB"
]
},
"intendedUses": [
"IU104"
],
"debit": {
"monthlyTransactionVolume": "MVAU01",
"averageTransactionValue": "ATVAU01",
"topTransactionCountries": [
"GB"
]
}
},
"bankAccountDetails": {
"accountName": "Shane Sahrma",
"bankName": "Bank of Shanghai (Hong Kong) Limited",
"accountNumber": "77802",
"bankCountry": "HK",
"currency": "HKD",
"bankAccountType": "saving",
"routingCodes": [
{
"type": "swift",
"value": "BOSHHKHH"
}
]
},
"billingAddress": {
"addressLine1": "Test Add 123, Building 1, Block 2, Area 3",
"addressLine2": "Test Add 123, Building 1, Block 2, Area 3",
"city": "Lorem ipsum dolor sit amet, consectetuer.",
"state": "ddfd",
"postcode": "SW1W",
"country": "LT"
}
}
Individual customer - response
{
"wallets": [
{
"walletHashId": "a2f984d9-c978-4ec7-9dff-7281644efd65",
"walletType": "base"
}
],
"customerHashId": "bec92c44-de95-4f09-8b54-3004548b6643",
"status": "pending",
"subStatus": null,
"type": "individual",
"kycType": "full",
"region": "AU",
"externalId": "C2ZfvtLAek9FKMmSHY",
"tags": [
{
"key": "testing",
"value": "Automation"
},
{
"key": "key1",
"value": "value1"
}
],
"segment": null,
"firstName": "Sharma",
"middleName": "",
"lastName": "Test",
"email": "pasumarthi.sashank+480@nium.com",
"nationality": "FR",
"dateOfBirth": "2000-08-01",
"mobile": "2000000467",
"mobileCountryCode": "31",
"deviceDetails": {
"ipCountryCode": "eu",
"deviceInfo": "MAC",
"ipAddress": "192.168.1.16",
"sessionId": "hello-world"
},
"expectedAccountUsage": {
"intendedUses": [
"IU104"
],
"intendedUsesDescription": "",
"credit": {
"averageTransactionValue": "",
"monthlyTransactionVolume": "MVAU01",
"topTransactionCountries": [
"GB"
]
},
"debit": {
"averageTransactionValue": "ATVAU01",
"monthlyTransactionVolume": "MVAU01",
"topTransactionCountries": [
"GB"
]
}
},
"bankAccountDetails": {
"accountName": "Shane Sahrma",
"accountNumber": "xxxxx",
"bankAccountType": "saving",
"bankName": "Bank of Shanghai (Hong Kong) Limited",
"bankCountry": "AU",
"currency": "AUD",
"routingCodes": [
{
"type": "BSB CODE",
"value": "xxxxxxxx"
}
]
},
"billingAddress": {
"addressLine1": "Test Add 123, Building 1, Block 2, Area 3",
"addressLine2": "Test Add 123, Building 1, Block 2, Area 3",
"city": "Lorem ipsum dolor sit amet, consectetuer.",
"postcode": "SW1W",
"country": "LT",
"state": "ddfd"
},
"kycMode": null,
"documents": null
}
Error handling
| Scenario | Error Code | HTTP Code | Description | Comments |
|---|---|---|---|---|
| Missing mandatory fields | missing_required_fields | 400 | Position title is invalid for stakeholder AAAA BBB. Value: DIRECTORRRRR | — |
| External ID should be unique for stakeholders and applicants | duplicate_externalId | 400 | External ID is duplicate for stakeholder AAAA BBB. Value: XXXX-YYY | Additional "field" will be available with the entire relative position, e.g. "field":"stakeholders.individual[0].positions[1].title". Multiple error objects will be returned for each externalId. Field will be available in the response as "applicant.externalId". |
| Client as a customer is not available | incomplete_client_setup | 422 | Request cannot be accepted as compliance is not completed for the auto-sweep customer who is also the client. | Before creating MinKYC, ensure a customer record exists. |
| KYC is not complete for client as customer | incomplete_client_setup | 422 | Request cannot be accepted as auto-sweep customer is not found. | — |
| Field value is not accepted | invalid_input | 400 | Field A is invalid for stakeholder AAAA BBBB. Value: XXXXXX | — |
| Customer already exists | customer_exists | 400 | Customer already exists for given %fieldName. | Additional "field" will be available, such as "externalId", "businessName". |
Adding Positions
- Directors: Add all management directors as stakeholders.
- UBOs: Tag anyone owning ≥ 25% (direct or indirect). If none, the most senior director becomes the UBO.
- Representatives/Signatories: Add individuals authorized to transact or manage users (applicant is a Representative by default).
- Partners/Trustees/Settlors: Include when applicable by entity type.
- Multi-layered companies: Include all corporate stakeholders with ≥ 25% ownership and upload a Corporate Structure document (
documentType: CORPORATE_STRUCTURE).
See Position Mapping for the stakeholders required per business type.