Customer Profile+ and Bank Account Creation

Overview

Under the first party transfer (CP+) integration model, you must create a CP+ account for each of your user. Each CP+ account must have a verified customer profile bank account attached to it to enable first party withdrawals.

CP+ requires extensive KYC/KYB information and goes through a verification process before the account is fully activated.

Sequence Diagram

Customer Profile+ Creation

Once your user has created an account and provided their personal information on your platform, you need to create what we call a customer profile+. A customer profile+ is a profile in the StraitsX system representing your user. This is a pre-requisite for accessing payment and payout APIs under the First Party Transfer (CP+) integration model.

CP+ supports both Personal and Business account types. The mandatory fields differ based on the type.

Mandatory Fields — Business CP+

FieldDescription
customerNameBusiness legal name (50 alphanumeric with spaces)
registrationTypebusiness
registrationIdTypebusiness_reg_no
registrationIdBusiness Registration Number (UEN)
entityLegalFormPRIVATE_COMPANY or PUBLIC_COMPANY
businessContactContact phone number
countryOfIncorporation2-digit ISO country code
dateOfIncorporationyyyy-MM-dd format
addressRegistered address (street, city, state, country required)
operatingAddressOperating address (street, city, state, country required)
natureOfBusinessBusiness activity type
usOwnershiptrue / false
intermediariestrue / false
monthlyTransactionVolumeExpected monthly volume range
sourceOfFundsArray of fund sources
directorsArray of director details
beneficialOwnersArray of beneficial owner details
traderTrader/authorized person details
documentsKYB documents
purposeOfAccountPurpose of the account
📘

For the full list of accepted values and field formats, refer to the Create a business customer profile+ API reference.

Mandatory Fields — Personal CP+

FieldDescription
customerFirstNameFirst name
customerLastNameLast name
registrationTypepersonal
registrationIdNRIC/Passport number
registrationIdTypeidentity_card, passport, etc.
registrationIdCountry2-digit ISO country code
addressResidential address (street, city, state, country required)
countryOfResidence2-digit ISO country code
dateOfBirthyyyy-MM-dd format
emailEmail address
genderMALE or FEMALE
nationality2-digit ISO country code
businessIndustryIndustry classification
occupationOccupation type
expectedAnnualTransactionAmountExpected annual volume range
expectedTransactionSizeExpected per-transaction size range
expectedTransactionFrequencyExpected frequency
annualIncomeAnnual income range
totalWealthTotal wealth range
identityDocumentsKYC identity documents
ipAddressesArray of IP addresses
purposeOfAccountPurpose of the account
📘

For the full list of accepted values and field formats, refer to the Create a personal customer profile+ API reference.


Customer Profile+ Bank Account Creation

Your user will also need to add a bank account on your platform. For Singapore banks, you can obtain the list of supported banks via our endpoint.

🚧

Ensure that the correct bank code is submitted

Some banks may have multiple bank codes - you should ensure the correct one is being submitted to avoid any subsequent payment/payout failures. For instance, HSBC Business Account uses HSBC and HSBC Personal Account uses HBSC2; Malayan Banking Berhad uses MBB and Maybank Singapore uses MBB2.

StraitsX will expect to receive funds from this bank account and will only allow withdrawals to the same bank account after it has been verified. Upon the first successful deposit, the sender's bank account will be automatically added and verified. Alternatively, you could also request for proof of bank account from your user for manual verification of the bank account.

📘

Sandbox Testing

To test your integration, you could mock the verification status of the bank account created.


Webhooks

When a customer profile+’s verification status is updated to rejected or verified, a callback will be triggered to the URL you configure on the StraitsX Dashboard.

For sample payloads and detailed field descriptions, see Customer Profile+ Callbacks (CP+).


What’s Next

Now that you have created a customer profile and bank account for your user, learn how to create a payment method to facilitate collections.

Did this page help you?