Pay stubs

Pay stub verification and extraction software

Every line of any pay stub read, the math checked, and the figures matched to the W-2 and bank deposits. Your team sees only the stubs that don't add up.

  • 99% field-level accuracy
  • 95%+ of documents processed straight through
  • SOC 2 Type 2, HIPAA and GDPR
Pay stubPDF · 1 page · Biweekly payroll Extracted
Employer
Northfield Freight LLC99%
Pay period
Aug 17 – Aug 30, 202699%
Gross pay
$2,580.0099%
Net pay
$1,903.5199%
Year-to-date gross
$44,910.0098%
Stated monthly income
$6,200.00Stub income 10% lower
Every field carries a confidence score.

Trusted by 10,000+ mid-sized and enterprise teams, including

  • Grid Finance
  • Hitachi
  • PayU

Who uses it

  • Lending and underwriting

    Income and employment read from every stub in the loan file.

  • Property management

    Each applicant's stubs read and checked before the lease is signed.

  • Medicaid and long-term care eligibility

    Household income taken from every stub in the application packet.

What we extract

Every line of the stub, this period and year to date.

Any employer or payroll provider, printed, scanned or photographed. The same structure every time.

Who and when
FieldExtracted valueConfidence
EmployerNorthfield Freight LLC
Employer EIN••-•••3082
EmployeeAisha K. Warren
Employee ID20417
Period start2026-08-17
Period end2026-08-30
Pay date2026-09-04
Pay frequencyBiweekly

Field names and the output schema are configurable.

What we check

Every line adds up, and agrees with the file.

The stub's own math first, then the documents it should match. Only the stubs that fail a check reach your team.

Inside the stub✓ 4 of 4 pass
  1. Hours × rateEach earnings line80.00 × 30.00 = 2,400.004.00 × 45.00 = 180.00✓ Adds up
  2. Gross − deductions = netThis period2,580.00 − 676.49 = 1,903.51✓ Adds up
  3. Year to date rolls forwardLast stub's YTD gross + this period42,330.00 + 2,580.00 = 44,910.00✓ Rolls forward
  4. Pay dates and frequencyBiweekly: 14-day period, 80 hours18 pay dates by Sep 41,440.00 YTD hours = 18 × 80.00✓ On schedule
Against the file⚑ 1 exception
  1. W-2 · 2025Employer name and EIN; wages against this year's pace2025 wages 61,425.002026 pace 64,870.00✓ Matched
  2. Bank statementNet pay against the payroll depositSep 4 · NORTHFIELD FREIGHT PAYROLL+1,903.51✓ Deposit found
  3. ApplicationEmployer and stated monthly incomeStated 6,200.00Stub 5,590.00 a month⚑ Stub income 10% lower

Sent to review · 1 exceptionA question for the reviewer, not a decline: the applicant may have a second job or a bonus this stub doesn't show.

For the whole income picture across stubs, W-2s, returns and statements, see income verification. Cross-document checks are on the Enterprise plan.

In production

What changes when stubs stop waiting on people.

99%
field-level accuracy on 250+ document types
95%+
of documents processed straight through, no manual review
<5 min
per document, down from 2+ hours
$15
saved per processed document
How it works

From inbox to decision, in five steps.

  1. 01

    Collect

    By email, upload or API, alone or with the rest of the file.

    Collection agent
  2. 02

    Classify and split

    A 30-page upload becomes each stub, W-2 and statement inside it.

    Classification agent
  3. 03

    Extract

    Every earnings and deduction line, this period and year to date.

    Extraction agent
  4. 04

    Verify

    The stub's math, then the W-2, deposits and your rules.

    Verification agent
  5. 05

    Route

    Clean stubs post to your system; exceptions go to review.

    Workflow agent
Output and security

Clean data where your team already works.

Each stub arrives as JSON in the system you decide in, with the controls your security review will ask about.

  • SOC 2 Type 2Independently audited controls
  • ISO 27001Certified security management
  • HIPAAFor protected health data
  • GDPRFor EU personal data

Encrypted with TLS in transit and AES-256 at rest. Your documents are not used to train shared or third-party models.

How Docsumo protects your data →
webhook · document processedexample payload
// POST https://your-los.example.com/hooks/docsumo
{
  "meta_data": { "title": "warren-stub-2026-09-04.pdf" },
  "data": {
    "Totals": {
      "Gross Pay": { "value": 2580.00, "confidence": 0.99 },
      "Net Pay": { "value": 1903.51, "confidence": 0.99 },
      "YTD Gross Pay": { "value": 44910.00, "confidence": 0.98 }
    },
    "Deductions": [
      {
        "Type": { "value": "Medicare", "confidence": 0.99 },
        "Current": { "value": 37.41, "confidence": 0.99 },
        "YTD": { "value": 651.20, "confidence": 0.99 }
      },
      // 4 more rows
    ]
  }
}
  • Your LOS, CRM or screening system

    Documents in by email, upload or API; clean data out to the system you decide in.

  • A test environment

    Your engineers validate changes before they reach production.

  • Audit log and permissions

    By role, team and document type. Every approval recorded.

Questions

What teams ask about pay stub verification.

What is pay stub verification?

Pay stub verification is checking that a pay stub's figures hold up: the earnings, deductions and net pay add up, the year-to-date totals roll forward from the last stub, the pay dates fit the pay frequency, and the employer and pay agree with the W-2, bank deposits and application. Docsumo is an intelligent document processing (IDP) platform that reads every line of the stub, runs those checks and sends your team only the stubs that fail one.

How do lenders verify pay stubs?

Lenders read the employer, pay period, gross pay and year-to-date earnings from the most recent stubs, then compare them with the W-2, the payroll deposits on the bank statements and the income stated on the application. Docsumo does the reading and the matching across the file; the underwriter decides on the exceptions.

How do property managers verify an applicant's pay stubs?

Property managers usually ask for the two most recent stubs, check that the math holds and the pay dates follow a regular schedule, and compare the income with the rent. Docsumo reads every stub an applicant sends and flags the ones whose figures don't add up or don't match the rest of the application.

What information is on a pay stub?

A pay stub shows the employer and employee, the pay period, pay date and pay frequency, each earnings line with its hours and rate, gross pay, each tax and deduction, net pay, and year-to-date totals for most lines. Docsumo extracts all of it, with a confidence score on every field.

Can Docsumo read pay stubs from any employer or payroll provider?

Yes. Docsumo reads pay stubs from any employer or payroll provider, as PDFs, scans or phone photos, whatever the layout. Each field comes with a confidence score, and fields the model is unsure about go to a person for review.

How is a pay stub checked against a W-2 and bank statements?

The employer name and EIN on the stub are matched to the W-2, and this year's year-to-date pay is compared with last year's W-2 wages. Net pay is matched to the payroll deposit on the bank statement for the same pay date. Cross-document checks are on the Enterprise plan, and you choose which ones apply to each workflow.

Is it safe to upload pay stubs to extraction software?

Pay stubs carry pay details and often part of a Social Security number, so the vendor should be audited and control access. Docsumo is SOC 2 Type 2 audited, ISO 27001 certified, and HIPAA and GDPR compliant, and your documents are not used to train shared or third-party models. Access is set by role, team and document type, and every approval is recorded in an audit log.

Can we test it on our own pay stubs?

Yes. Book a demo and bring real stubs, and we will run them live. You can also start a free trial: 1,000 pages for 14 days, with no training data needed.

Bring a real pay stub to the demo.

Hourly or salaried, PDF or phone photo, from any payroll provider. We run it live and show every field and every check.