Catch an edited payslip before it becomes a bad loan
Payslip Checker redoes the maths, checks PF, PT and TDS, and matches net pay with the bank credit.
Sample Traders Pvt Ltd
Pune, Maharashtra
PAYSLIP
SEP 2026
EARNINGS
- Basic30,000
- HRA12,000
- Special allowance16,500
- Conveyance1,600
- Gross60,100
DEDUCTIONS
- Provident fund3,600
- Professional tax200
- TDS0
- Total3,800
Risk score
High · refer to credit
- Gross = sum of earnings₹60,100 matchesPass
- Net = gross − deductions₹56,300 matchesPass
- PF ≈ 12% of basicExpected ₹3,600Pass
- Professional tax (MH)₹200 slabPass
- TDS plausibilityWithin expected rangePass
- Employer name match“SAMPLE TRADERS PVT” in bankPass
- Font consistency2 fields use a different fontWarn
- Net pay vs bank credit₹48,300 credited · gap ₹8,000Fail
The checks a sharp credit officer would do
Arithmetic checks
Gross must equal earnings. Net must equal gross minus deductions.
Tamper detection
Font changes, edited regions and PDF metadata from editing tools.
- PF checkEmployee PF compared with 12% of basic.
- Professional tax by statePT checked against the state slab.
- Bank credit cross-checkWith BSA, net pay is matched with salary credits.
- Risk score with reasonsOne score for triage, with the checks behind it.
From upload to verdict in four steps
- 01
Upload the slip
PDF or image, from the dashboard or your LOS.
- 02
Read and recompute
Every total is recalculated.
- 03
Check
Statutory, tamper and bank credit checks run.
- 04
Review
Warnings go to a person, with the reason shown.
Send a slip, get every check back
- Webhooks
- PDF report
- Web dashboard
POST /v1/payslip/verify
Authorization: Bearer <your-api-key>
Content-Type: multipart/form-data
file=@payslip_sep-2026.pdf
state=MH
bsa_analysis_id=bsa_7Hk2Qm
applicant_ref=APP-2026-00418{
"verification_id": "psv_3Lr9Xa",
"employer": "Sample Traders Pvt Ltd",
"month": "2026-09",
"extracted": {
"basic": 30000,
"gross": 60100,
"deductions": 3800,
"net": 56300
},
"checks": [
{
"id": "gross_equals_components",
"result": "pass"
},
{
"id": "pf_12pct_basic",
"result": "pass",
"expected": 3600
},
{
"id": "pt_state_slab",
"result": "pass",
"state": "MH"
},
{
"id": "font_consistency",
"result": "warn",
"fields": [
"special_allowance",
"net_pay"
]
},
{
"id": "net_vs_bank_credit",
"result": "fail",
"bank_credit": 48300,
"gap": 8000
}
],
"risk": {
"score": 72,
"band": "high"
}
}Your data, under your control
- Encrypted in transit and at rest
- Role-based access
- Audit logs
- Retention you control
Specific to Payslip Checker
- Salary and identity fields are masked in logs.
- Original files can be auto-deleted once the verification report is saved.
Questions about Payslip Checker
Does it work with our applicants’ payslip formats?
Most formats, yes, with no template per employer. Send a few samples and we’ll run them in the demo.
What if the slip is a poor photo?
Unclear fields are marked instead of guessed, so your team can ask for a better copy.
Is a high risk score a rejection?
No. It’s for triage. Your credit team decides.
Do we need BSA as well?
No. Adding BSA turns on the strongest check: net pay against the salary that reached the bank.