Customer Profile and Bank Account Creation

Overview

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

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 integration model. Depending on the type of products you would like to offer to your users, we require varying amount of customer profile information.

Customer profile typeRequirements for SGD railRequirements for USD rail
BusinesscustomerName
registrationType (business)
registrationId (UEN)
customerName
registrationType (business)
registrationId (UEN)
registrationIdType
registrationIdCountry
address
placeofBiz
placeofBizCountry
countryOfIncorporation
dateOfIncorporation
PersonalcustomerName
registrationType (personal)
registrationId (NRIC/Passport No.)
customerName
registrationType (personal)
registrationId (NRIC/Passport No.)
registrationIdType
registrationIdCountry
address
countryOfResidence
dateOfBirth
nationality

Customer Profile Bank Account Creation

Aside from providing personal information, your user will also need to have the ability to add a bank account on your platform. For Singapore banks, you can obtain the list of supported banks via our get 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 HSBCand 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. Name matching will be performed on incoming payments against customer profile name to ascertain the first party relationship and to verify the bank account automatically. 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.


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.