Punch Pending Report
Navigation Path
Auto Mailer → Punch Pending
Page URL
/automailer-punch-pending
Page Purpose
The Punch Pending Report page is used to identify employees whose attendance punches are missing or incomplete for a selected branch, month, and year.
This report helps HR and payroll teams:
- Detect missing IN/OUT punches
- Resolve attendance issues before salary processing
- Reduce payroll discrepancies caused by incomplete attendance data
Page Layout
Filter Section
The page provides filter options to fetch punch pending data.
| Field Name | Type | Mandatory | Description |
|---|---|---|---|
| Branch | Dropdown | Yes | Select the branch |
| Month | Dropdown | Yes | Select the attendance month |
| Year | Dropdown | Yes | Select the attendance year |
Actions
| Action | Description |
|---|---|
| Search | Fetches punch pending records based on selected filters |
| Reset | Clears all selected filters and results |
Result Section
After clicking Search, the system displays employees with:
- Missing punch-in or punch-out entries
- Incomplete attendance records for the selected period
If no records are found, the system displays:
No data found for the selected criteria
Data Visibility
The result list typically includes:
- Employee Code
- Employee Name
- Branch
- Unit (if applicable)
- Date(s) with missing punches
- Punch status
(Displayed columns depend on backend configuration)
Business Logic
- Only active employees for the selected period are considered
- Attendance records with incomplete punches are marked as Punch Pending
- Data is filtered strictly by branch + month + year
- Used prior to salary calculation to ensure accurate payroll
API Endpoints
The Punch pending module interacts with the following API endpoints:
Base URL
export const AUTOMAILER_ANALYSIS_REPORT_URL = '/api/salary-analysis-report'
Endpoints
| Endpoint | Method | Description | Parameters/Body |
|---|---|---|---|
${AUTOMAILER_ANALYSIS_REPORT_URL}/search | POST | Search salary analysis data | Body: data |
${AUTOMAILER_ANALYSIS_REPORT_URL}/types | GET | Get available report types | - |
${AUTOMAILER_ANALYSIS_REPORT_URL}/send-email | POST | Send report files via email | Body: data |
${AUTOMAILER_ANALYSIS_REPORT_URL}/export-excel | POST | Export salary analysis to Excel | Body: data |
${AUTOMAILER_ANALYSIS_REPORT_URL}/export | POST | Export salary analysis PDFs | Body: data |
RTK Query Hooks
The following hooks are available for frontend integration:
useSearchSalaryAnalysisDataMutationuseGetAvailableReportTypesQueryuseExportSalaryAnalysisPdfsMutationuseSendReportFilesEmailMutationuseExportSalaryAnalysisExcelMutation