Bank Accounts Guide
Connect API
Learn how to add and verify a bank account for a connected user. Bank accounts can be added, updated and deleted.
Overview

Click to enlarge
Step 1 β Display supported banks
curl --location --request GET 'https://sandbox.xfers.io/api/v3/banks' \
--header 'X-XFERS-USER-API-KEY: TTMXHKWz8azyCIoswPNtrcNStc6P3rimI6nvXFRiqwY'
curl --location --request GET 'https://www.xfers.io/api/v3/banks' \
--header 'X-XFERS-USER-API-KEY: {{YOUR_USER_API_KEY}}'
- To provide options for your user to add a bank account, initiate a request to get a list of supported banks.
- This enables your user to select their bank name which would be required when adding a bank account.
Learn more about the banks supported by StraitsX β
Step 2 β Add a user's bank account
curl --location --request POST 'https://sandbox.xfers.io/api/v3/user/bank_account' \
--header 'X-XFERS-USER-API-KEY: TTMXHKWz8azyCIoswPNtrcNStc6P3rimI6nvXFRiqwY' \
--form 'account_no="0123123432"' \
--form 'bank="DBS"' \
--form 'account_holder_name="John Ng"'
curl --location --request POST 'https://www.xfers.io/api/v3/user/bank_account' \
--header 'X-XFERS-USER-API-KEY: {{USER_API_KEY}}' \
--form 'account_no="{{BANK_ACCT_NO}}"' \
--form 'bank="{{BANK_ABBV}}"' \
--form 'account_holder_name="{{USER_FULL_NAME}}"'
To make a bank transfer payment, your users will need to add their bank account first. This enables us to match the account number of the incoming transaction with the one provided by them. Once the source of payment is identified, we will process their payment automatically. A successful payment will also verify their bank account.
Step 3a β Verify a user's bank account (Sandbox)
curl --location --request PUT 'https://sandbox.xfers.io/api/v3/sandbox/user_bank_accounts/{bank_account_id}?verification_status=verified' \
--header 'X-XFERS-USER-API-KEY: TTMXHKWz8azyCIoswPNtrcNStc6P3rimI6nvXFRiqwY'
In the sandbox environment, you can update your bank account verification status via initiating a mock bank account verification. This will move the verification_status of your bank account from pending
to verified/rejected
Step 3b β Verify a user's bank account (Production)
To make a bank transfer payout, your users will need to have a verified bank account first. They may verify their bank account in one of the 2 ways below.
1. Automated verification
Direct your user to provide their bank account and make a successful bank transfer from that account. This will result in the bank account being automatically verified.
Bank Transfer Instructions Example

Bank transfer instructions UI example (Last Updated: 19 May 22)
2. Manual verification
curl --location --request PUT 'https://www.xfers.io/api/v3/user/bank_account/{bank_account_id}' \
--header 'X-XFERS-USER-API-KEY: TTMXHKWz8azyCIoswPNtrcNStc6P3rimI6nvXFRiqwY' \
--form 'account_no="1680366060"' \
--form 'bank="OCBC"' \
--form 'account_holder_name="John Ng"'
Direct your user to upload a recent bank statement with the information below clearly detailed. You will need to send this information to us to verify. You may hide or blur out any optional information but cropping the document is not allowed.
- Bank Logo
- Statement of Account
- Date
- Name and Address
- Account Number
- Footer
Summary
The flowchart below displays how a user bank account can be added and verified.

Click to enlarge
Next Step β Accepting Payments / Sending Payouts
And that's it! You're all ready to use the Payment API and Payout API to accept payments and send payouts to your users.
Try it out!
Getting started with StraitsX APIs is easy. Our business development and integration teams will be with you every step of the way. If you have any questions or would like to connect with our team, please do so via Support!
Updated about 1 year ago