Bank Accounts
The SDK.finance platform offers comprehensive functionality for managing bank accounts, empowering both business and service users to securely handle financial operations.
Bank Account Management for Business Users
Business users—including Individual, Merchant, and Corporate roles—can easily manage their bank accounts within the system. A bank account must be created and linked to an in-system account to perform the following operations:
- Top-Up: Transfer funds from a bank account to an in-system account.
- Withdrawal: Transfer funds from an in-system account to a bank account.
Approval Process:
If a business user creates a bank account, it must be approved by the compliance team before it can be used for transactions.
Pool Bank Accounts:
For users without personal bank accounts, a service user can create a pool bank account that can be used for top-up operations, providing flexibility for various business scenarios.
Bank Account Management for Service Users
Service users have broader capabilities, including managing bank accounts on behalf of business users. Their responsibilities include:
- Creating Pool Bank Accounts for users without personal bank accounts.
- Approving or Rejecting bank accounts created by business users to ensure compliance.
- Modifying or Deleting bank accounts when required.
Bank Account Management APIs
- View Bank Accounts:
POST /v1/my/bank-accounts/view – Retrieve a list of bank accounts linked to the user’s wallets. - Create Bank Account:
POST /v1/my/bank-accounts/coin/{coinSerial}/with-bank – Add a bank account and link it to an in-system account. - Delete Bank Account:
DELETE /v1/my/bank-accounts/{bankAccountId} – Remove a previously added bank account.
- View Bank Accounts (With Filters):
POST /v1/bank-accounts/view – View bank accounts with filtering and pagination. - Create Bank Account for Users:
POST /v1/bank-accounts/coin/{coinSerial}/with-bank – Create and link a bank account to a user’s wallet. - Create Pool Bank Account:
POST /v1/bank-accounts – Add a pool bank account for top-up operations. - Approve/Reject Bank Account:
- POST /v1/bank-accounts/{bankAccountId}/approve – Approve a bank account.
- POST /v1/bank-accounts/{bankAccountId}/reject – Reject a bank account.
- Delete Bank Account:
DELETE /v1/bank-accounts/{bankAccountId} – Delete an existing bank account. - Update Bank Account:
PATCH /v1/bank-accounts/{bankAccountId}/with-bank – Modify bank account details.
Before linking bank accounts, banks must be added to the system. The SDK.finance system provides robust tools for managing the bank catalog:
- Add Bank:
POST /v1/bank-catalog – Add a bank to the system. - View Banks:
GET /v1/bank-catalog – Retrieve a list of banks. - Import Banks:
POST /v1/bank-catalog/import – Bulk upload banks in a predefined format. - View Bank Details:
GET /v1/bank-catalog/{bankId} – Retrieve details for a specific bank. - Delete Bank:
DELETE /v1/bank-catalog/{bankId} – Remove a bank from the system. - Update Bank Details:
PATCH /v1/bank-catalog/{bankId} – Edit bank information.
The system supports IBAN validation and IBAN generation for secure and accurate bank account creation. An internal library is used for these operations, but specific banks can also be integrated for IBAN services.
- Validate IBAN:
POST /v1/iban/validate – Verify the correctness of a provided IBAN. - Generate IBAN:
POST /v1/iban/{bankId}/generate – Generate an IBAN for a specified bank.
Check Back Office Manual for bank accounts and pool bank accounts management.