Bank Master
The Bank Master is used to define and manage bank details that are referenced across payroll, salary transfer, and employee banking configurations.
Module URL
- Bank Master Page
/masters/bank-master
1. Bank List Page
Purpose
Displays all configured banks and allows users to search, edit, or delete bank records.
Page Elements
Table Columns
- S No
- Bank Name
- IFSC Series
- Account Number Length
- Transfer Salary
- Status
- Actions
Available Features
- Global search across bank records
- Column-level filtering
- Checkbox selection for rows
- Edit and Delete actions for each record
2. Add Bank
Purpose
Allows users to add a new bank to the system.
Form Fields
-
Bank Name
- Text input
- Placeholder: Enter Bank Name
- Mandatory field
-
Account Number
- Text input
- Placeholder: Enter Account Number
- Mandatory field
-
MICR Code
- Text input
- Placeholder: Enter MICR Code
- Optional field
-
IFSC Series
- Text input
- Placeholder: Enter IFSC Series
- Mandatory field
-
First Contact Person
- Text input
- Placeholder: Enter First Contact Person
- Mandatory field
-
First Contact Number
- Numeric input
- Placeholder: Enter First Contact Number
- Mandatory field
-
Second Contact Person
- Text input
- Placeholder: Enter Second Contact Person
- Optional field
-
Second Contact Number
- Numeric input
- Placeholder: Enter Second Contact Number
- Optional field
-
Transfer Salary
- Radio / Select option
- Default: By Bank
- Mandatory field
-
NEFT Bank Name
- Dropdown
- Placeholder: -- Select Bank --
- Optional field
-
Bank Account Length
- Numeric input
- Placeholder: Enter Bank Account Length
- Mandatory field
-
Address
- Text area
- Placeholder: Enter Address
- Optional field
-
Remark
- Text area
- Placeholder: Enter Remark
- Optional field
Actions
- Save
- Validates mandatory fields
- Saves the bank details
- Reset
- Clears all entered data
Validation Rules
- Bank Name cannot be empty
- IFSC Series is mandatory
- Account Number Length must be numeric
- First Contact Number must be valid
- Duplicate Bank Names are not allowed
3. Edit Bank
/masters/bank-master/edit/:id
Purpose
Allows modification of an existing bank record.
Behavior
- Clicking the Edit icon opens the bank details in editable mode
- All fields are pre-filled with existing data
Editable Fields
- Bank Name
- Account Number
- MICR Code
- IFSC Series
- Contact details
- Transfer Salary
- Bank Account Length
- Address
- Remark
Actions
- Save
- Updates the bank information
- Reset
- Restores original values
4. Delete Bank
Purpose
Allows removal of a bank record.
Delete Flow
-
Click the Delete icon from the Actions column
-
A confirmation popup appears:
Are you sure you want to delete this Bank?
-
User options:
- Yes – Permanently deletes the bank record
- Cancel – Cancels the deletion
Field Definitions, Usage, and Calculation Logic
This section provides a technical analysis of the Bank Master's data structure and its role in automated salary transfers.
1. Field Definitions
| Field Name | Data Type | Description | Example Value |
|---|---|---|---|
bankName | String | Official name of the financial institution. | HDFC Bank |
ifscCode | String | 11-char code for branch identification (Validated). | HDFC0001234 |
micrCode | String | Magnetic Ink Character Recognition code. | 400240001 |
accountNumber | String | Company/Employee account number. | 501001234567 |
bankAccoutnLength | String | Enforced numeric length for account numbers. | 12 |
transferSalary | String | Selection for payment mode (e.g., "By Bank"). | By Bank |
2. Field Usage & System Impact
| Category | Validation / Rule | System Behavior |
|---|---|---|
| Integrity | ifscCode Regex | /^[A-Za-z]{4}0[A-Za-z0-9]{6}$/. Ensures valid NEFT/RTGS routing. |
| Automation | bankAccoutnLength | Used in employee profile validation to prevent digit entry errors. |
| Payroll | transferSalary | Flags the record for inclusion in the "Bank Statement" export file generation. |
3. Business & Calculation Logic
The Bank Master is the primary configuration for the financial output of the payroll module.
A. IFSC Validation Logic
The backend implements a strict regex helper validateIFSC to prevent incorrect data entry:
- Banks: First 4 characters must be alphabetic.
- Separator: The 5th character is strictly enforced as
0per RBI standards. - Branch: The final 6 characters can be alphanumeric. Failure to meet this pattern results in a validation error, preventing the record from being saved.
B. Salary Transfer Mode
The transferSalary field determines how the "Salary Disbursement" step treats an employee:
- By Bank: The employee is included in the
.csvor.xlsxfile generated for the corporate banking portal. - Cash/Cheque: The employee is excluded from the bank transfer file but included in the overall cash disbursement report.
C. Multi-Tenant Bank Storage
Banks are partitioned by companyId. This allows different branches or entities within the same tenant to maintain separate corporate accounts even if they use the same physical bank (e.g., two different HDFC accounts for two different units).
API Endpoints
The Bank Master module interacts with the following API endpoints:
Base URL
export const BANKMASTER_URL = '/api/salaryBankMaster'
Endpoints
| Endpoint | Method | Description | Parameters/Body |
|---|---|---|---|
${BANKMASTER_URL} | POST | Create a new bank | Body: data |
${BANKMASTER_URL} | GET | Get all banks | Query: page, limit |
${BANKMASTER_URL}/:bankId | GET | Get bank by ID | Path: bankId |
${BANKMASTER_URL}/search | GET | Search bank masters | Query: bankName, page, limit |
${BANKMASTER_URL}/:bankId | PATCH | Update an existing bank | Path: bankId, Body: body |
${BANKMASTER_URL}/delete/:bankId | PATCH | Delete a bank | Path: bankId |
RTK Query Hooks
The following hooks are available for frontend integration:
useCreateBankMutationuseGetAllBanksQueryuseGetBankByIdQueryuseSearchBankMastersQueryuseUpdateBankMutationuseDeleteBankMutation
End of Documentation
The Bank Master ensures centralized and standardized management of banking details required for accurate salary processing and financial operations.