Integration Hub

Payroll ↔ HRMS & downstream systems · REST / Webhooks / SFTP
Integration Overview
Connection health, last sync times and data freshness across all source and destination systems
7 of 9 connections healthy · 2 warnings · Last full sync completed 14 min ago Next scheduled sync: 11:30 PM
Active Connections
9
7 inbound · 5 outbound (overlap)
Records synced today
412
Employee master · Attendance · IT decl.
Sync Warnings
2
Attendance + Variable Pay feed
Outbound Pushes
3
Bank file · Journal · Payslips
Employee Master
Source HRMS · REST API
● Live
Last sync14 min ago
Records412 employees
Direction← Inbound
ScheduleOn payroll run + webhook
Attendance & LOP
Attendance Module · REST API
⚠ Warning
Last sync2 hrs ago
Records389 / 412 complete
Issue23 employees not finalized
Direction← Inbound
Leave Balances
Leave Module · REST API
● Live
Last sync14 min ago
Records412 employees
Direction← Inbound
ScheduleDaily at 11:00 PM
Salary Structures
Compensation Module · REST API
● Live
Last sync3 days ago
Structures24 active
Direction← Inbound
ScheduleOn revision event
IT Declarations
ESS / IT Module · REST API
● Live
Last sync6 hrs ago
Declarations387 submitted
Direction← Inbound
ScheduleDaily + on submit event
Variable Pay / Incentives
Performance Module · REST API
⚠ Partial
Last syncYesterday
Records18 / 24 plans received
Issue6 plans missing payout amounts
Direction← Inbound (on-demand)
Bank Disbursement
HDFC Corporate Net Banking · SFTP
● Ready
Last push28 May 2025
FormatHDFC Bulk Payment (CSV)
Direction→ Outbound
TriggerManual after approval
Payroll Journal
SAP / Oracle ERP · REST API
● Live
Last push28 May 2025
Entries pushed14 journal lines
Direction→ Outbound
TriggerAuto after payroll approval
Payslip Push (ESS)
HRMS Employee Portal · REST API
● Live
Last push28 May 2025
Payslips pushed412
Direction→ Outbound
TriggerAuto after payroll approval
Data Flow ArchitectureHow external data enters, is processed, and leaves the payroll engine
Source Systems
👤 HRMS Employee Master
📆 Attendance Module
🌿 Leave Module
📐 Compensation Module
📊 IT Declaration Module
💰 Performance / Incentives
🏦 Loan Management
REST / Webhook
→ Validate
→ Snapshot
🚀 Payroll Engine
1. Pre-run validation
2. Gross computation
3. Statutory deductions (PF/ESIC/PT/LWF)
4. TDS computation (old/new regime)
5. Loans, perquisites, variable pay
6. Net pay derivation
7. Approval & lock
Approved
→ Push
→ Archive
Destination Systems
📄 HRMS ESS (Payslips)
🏦 Bank (NEFT/RTGS file)
📒 ERP (Journal entries)
🏛 EPFO (PF ECR)
🏥 ESIC portal
🧾 TRACES (TDS / 24Q)
📊 MIS / Analytics
🔒
Immutable snapshots
All inbound data is snapshotted at payroll run — post-run HRMS changes don't affect the locked period
🔁
Retry with idempotency
Every API call carries an idempotency key — safe to retry without double-processing
🧱
Payroll is source of truth
Only payroll writes payslips, TDS, bank files — HRMS never overwrites payroll output
🏢
Multi-entity isolation
All API calls filtered by company_id + legal_entity_id — no cross-entity data bleed
Inbound Data Feeds
Configure each API feed that brings data INTO the payroll engine
👤
Employee Master
Core employee data — identity, PAN, bank, grade, statutory flags, salary structure assignment
Connected Last: 14 min ago · 412 records
Connection
Sync Schedule
Mandatory fields check
employee_id
full_name
date_of_joining
PAN
bank_account + IFSC
UAN
grade / band
work_location (state)
salary_structure_id
regime_preference
aadhaar (optional)
ESIC_ip_number
On missing mandatory field
📆
Attendance & LOP
Working days, present/absent, LOP days, overtime hours, late marks — per employee per period
⚠ 23 pending Last: 2 hrs ago · 389/412
🌿
Leave Balances & LTA
Leave balances (earned, sick, PL), LTA journey count, encashable leave for FnF
ConnectedLast: 14 min ago · 412 records
📐
Salary Structures & Revisions
CTC components, grade-wise structures, revision history with effective dates
ConnectedLast: 3 days ago · 24 structures
📊
IT Declarations
80C/80D/HRA/Loans, regime preference, proof status — monthly for TDS projection
ConnectedLast: 6 hrs ago · 387 declarations
🏦
Loans & Advances
Outstanding loan balances, EMI, interest rate — for deduction and concessional perk computation
ConnectedLast: Daily · 31 loans
Outbound Data Feeds
Configure where payroll pushes results — payslips, bank files, journal entries, statutory returns
📄 Payslip → HRMS ESS Portal
Push payslip data to employee self-service
Active
Push endpointPOST /hrms/payslips
Payload formatJSON (structured payslip object)
TriggerAuto after payroll approval
Also generatePDF (password = DOB DDMMYYYY)
Email notificationTo employee email on push
Sample payload snippet
{
  "employee_id": "EMP001",
  "pay_period": "2025-06",
  "gross_pay": 125000,
  "net_pay": 98420,
  "deductions": { "pf": 1800, "pt": 200, "tds": 24580 },
  "earnings": { "basic": 50000, "hra": 25000, ... },
  "employer_pf": 1800,
  "ytd_tds": 98320
}
🏦 Bank Disbursement File
NEFT/RTGS bulk payment file → SFTP or bank portal
Active
BankHDFC Bank Corporate
FormatHDFC Bulk Payment CSV
DeliverySFTP push to hdfc-corp.banksftp.net
TriggerManual after dual approval
EncryptionPGP encrypted (bank public key)
⚠ Bank file is generated ONLY after Finance + HR dual approval — cannot be auto-triggered.
📒 Payroll Journal → ERP
Accounting entries — salary expense, TDS payable, PF payable
Active
ERP systemSAP S/4HANA
API endpointPOST /sap/opu/odata/journal
Cost centre mappingAuto by department code
TriggerAuto after payroll approval
Journal entry structure
DR  Salary Expense A/C     ₹62,50,000
DR  Employer PF Expense    ₹ 7,42,500
CR  Net Salary Payable     ₹53,68,450
CR  TDS Payable (ITNS 281) ₹11,24,050
CR  PF Payable (EPFO)      ₹ 4,50,000
🏛 PF ECR → EPFO Portal
Monthly ECR text file for EPFO upload
Active
FormatEPFO ECR (pipe-delimited text)
DeliveryDownload for manual EPFO portal upload
TriggerGenerated after payroll lock
Due date check15th of following month
🧾 TDS Data → TRACES / Form 24Q
Quarterly TDS return data for NSDL/TRACES upload
Active
FormatForm 24Q FVU file (NSDL format)
DeliveryDownload → upload to TRACES
ChallanITNS 281 (auto-generated data)
QuartersQ1: Apr–Jun · Q2: Jul–Sep · Q3: Oct–Dec · Q4: Jan–Mar
📊 MIS / Analytics Push
Aggregated payroll data → BI tools (Power BI, Tableau, custom)
Optional
DestinationPower BI dataset / data warehouse
FormatREST API (JSON) or CSV export
DataCost by dept, headcount, TDS summary, variance
PII handlingEmployee names/PAN masked in MIS push
Webhook Event Listeners
Real-time event notifications from the HRMS that trigger automated payroll actions
ℹ The HRMS sends webhook POSTs to this payroll module's listener URL when key HR events occur. Each webhook is HMAC-SHA256 signed — payroll verifies the signature before processing. Failed deliveries are retried up to 5 times with exponential backoff.
Webhook Listener EndpointConfigure this URL in your HRMS / source system
POST https://payroll.acmeindia.com/api/webhooks/hrms
Registered Event Handlers
EventTriggered whenPayroll actionLast receivedStatusEnable
employee.joined HR activates new employee in HRMS Create payroll record, prorate salary, PF/ESIC enroll, start TDS projection 10 Jun 2025 · 09:14 Active
employee.exit HR records last working day Trigger FnF workflow, prorate final month, compute gratuity + leave encashment, queue Form 16 30 Apr 2025 · 16:02 Active
salary.revised Compensation change with effective date Queue salary revision, compute arrears if backdated, update TDS projection, re-run affected payroll periods 01 Jun 2025 · 11:30 Active
attendance.finalized HR/TL marks attendance final for a period Pull attendance summary for that employee, remove from pre-run blockers list 28 May 2025 · 22:10 Active
it_declaration.submitted Employee submits investment declaration Pull latest declaration, re-compute TDS projection for balance months, update Form 16 estimate 05 Jun 2025 · 14:22 Active
loan.created Loan approved for employee Add to loan register, schedule EMI deduction from next payroll, compute concessional perk if applicable 15 May 2025 · 10:05 Active
esop.exercised Employee exercises ESOP options Record exercise event, trigger perquisite computation (FMV − exercise price), compute TDS, alert payroll admin 12 Apr 2025 · 09:00 Active
employee.location_change Employee work location / state changes Update PT slab (state-wise), LWF applicability, HRA city class, update TDS projection Never received Waiting
bank_details.updated Employee updates bank account in HRMS Update disbursement record for next payroll — flag for re-verification before bank file generation Never received Waiting
Recent Webhook DeliveriesLast 10 events received
TimestampEventEmployeeHTTP StatusDurationPayload
10 Jun 2025 09:14:22employee.joinedRitu Desai (EMP201)200 OK142ms
05 Jun 2025 14:22:11it_declaration.submittedParth Vora (EMP074)200 OK89ms
01 Jun 2025 11:30:05salary.revisedAnika Kapoor (EMP066)200 OK204ms
28 May 2025 22:10:44attendance.finalizedAll (batch)200 OK1.2s
15 May 2025 10:05:33loan.createdMadhuri Singh (EMP057)202 Queued67ms
Field Mapping
Map your HRMS field names to payroll module's internal fields — handles naming differences across any HRMS
ℹ Your HRMS may use different field names (e.g., emp_code instead of employee_id). Map them here. Transformations (date format, string to boolean, etc.) can be added per field.
Employee Master — Field Mapping24 fields · 22 mapped · 2 unmapped
Payroll Internal FieldTypeMandatorySource HRMS FieldTransformDefaultStatus
employee_idstring Mapped
full_namestring Mapped
date_of_joiningdate Mapped
PANstring Mapped
UANstring Mapped
pf_applicableboolean true Mapped
work_location_statestring Mapped
regime_preferenceenum new_regime Using default
bank_account_numberstring Mapped
salary_structure_idstring Unmapped ⚠
Sync Logs
Complete audit trail of all API calls, webhook events and data pushes
TimestampDirectionFeed / EventRecordsDurationStatusMessageAction
11 Jun 2025 11:18:04 ← IN Employee Master 4121.4s ✓ Success Full sync · 3 new, 2 revised, 407 unchanged
11 Jun 2025 11:18:06 ← IN Leave Balances 4120.8s ✓ Success All employees synced
11 Jun 2025 09:14:22 ← WEBHOOK employee.joined 1142ms ✓ Success EMP201 Ritu Desai · salary prorated · PF enrolled
10 Jun 2025 22:00:01 ← IN Attendance & LOP 389/4122.1s ⚠ Partial 23 employees attendance not finalized — pending HR action
10 Jun 2025 22:00:04 ← IN IT Declarations 387/4121.1s ⚠ Partial 25 employees have not submitted FY26 declaration · using New Regime default
28 May 2025 23:15:00 → OUT Payslip → HRMS ESS 4128.2s ✓ Success May 2025 payslips pushed · 412 notified by email
28 May 2025 23:15:08 → OUT Payroll Journal → SAP 14 entries0.6s ✓ Success SAP document 1400026284 created · GL balanced
28 May 2025 14:02:00 → SFTP Bank Disbursement 412 records3.4s ✓ Success File: payroll_may2025_HDFC.csv · ₹4,82,34,220 total
07 May 2025 06:59:00 → OUT TDS Challan (ITNS 281) 1 challan0.3s ✗ Error TRACES API timeout · Retried 5x · Manual deposit required
API Credentials & Auth
OAuth tokens, API keys, SFTP credentials and certificate management
⚠ Credentials are stored encrypted (AES-256). Only the last 4 characters of keys are displayed. Access to this page is restricted to System Admin role.
SystemAuth TypeCredential / TokenExpiresLast UsedStatusActions
HRMS Core API OAuth 2.0
Client ID: acme_payroll_••••3a8f
Client Secret: ••••••••••••••••••••e4b2
Never (refresh token) 11 Jun 2025 11:18 Active
Attendance Module API Key (Bearer) Bearer ••••••••••••••••••••••••••••9d4c 31 Dec 2025 11 Jun 2025 10:00 Active
HDFC Bank SFTP SSH Key Pair Key fingerprint: SHA256:••••••••••••••••••••••••••••p7KQ 28 Feb 2026 28 May 2025 Active
SAP S/4HANA ERP Basic Auth over HTTPS User: SVC_PAYROLL_•••• 90 days (auto-rotate) 28 May 2025 Active
TRACES (TDS) User/Password + OTP TAN: MUMX12345A · User: •••••••• Manual login (no API) 07 May 2025 Manual Upload
Webhook HMAC Secret HMAC-SHA256 wh_live_••••••••••••••••••••••••7f91 Never (manual rotate) 10 Jun 2025 Active
Test Console
Test API connections, validate payloads, simulate webhook events and debug integration issues
API Request Builder
Request Body (JSON)
Quick test — Simulate Webhook Event
Payload ValidatorValidate any JSON against a payroll feed schema
Response
{
  "status": "ready",
  "message": "Click Send or simulate a webhook to see response here",
  "timestamp": "2025-06-11T11:18:04Z"
}
Validation Results
Validation results will appear here after clicking Validate.
Common Integration Errors & Fixes
EMP_PAN_MISSING
PAN not present — TDS will be deducted at 20% (Sec 206AA). Push PAN via employee master API or enter manually.
ATT_NOT_FINALIZED
Attendance status is "draft" — payroll cannot process. Ask HR/TL to finalize attendance and re-sync.
SALARY_STRUCT_MISSING
No salary structure assigned to employee. Either map salary_structure_id in field mapping or assign manually.
BANK_DETAILS_MISSING
Bank account or IFSC missing — employee excluded from bank file. Update via HRMS or directly in payroll.
WEBHOOK_SIG_INVALID
HMAC signature mismatch — webhook rejected. Verify the secret key matches on both HRMS and payroll sides.
DUPLICATE_IDEMPOTENCY
Same idempotency key seen twice — second request ignored (safe replay protection). Not an error.