Payslip OCR API
4.8/5
(30+ reviews)
Pay stub/Payslip OCR API that reads every pay stub, in any format
Turn payslips and pay stubs, PDF, scan or phone photo, into structured JSON in seconds. Employee, employer, pay period, gross and net pay, every tax and deduction, with a confidence score on each value.
No credit card required
SOC 2 Type II & GDPR

Trusted by finance and product teams at




Why income checks stall on pay stubs
Every employer and payroll provider prints its own layout, with gross, net and deductions in different places. Underwriters key the figures by hand, then add them up again to check them.
Pay stubs received
Three months of pay stubs, uploaded as photos.
Manual keying
Gross, net and pay dates typed into the file.
Friction
Each payroll provider lays it out differently.
Recalculation
Taxes and deductions summed to check net pay.
Friction
One missed line and the income looks wrong.
Income review
Averages computed across several months.
Friction
Weekly, biweekly and monthly periods don't line up.
Decision made
Finally approved, one applicant at a time.
Every pay stub field you need, as structured JSON
Hover a group to see where it lands in the response. Every value comes back typed, normalised and located on the page.
See fields list
Employee
first_name, last_name, employee_id, social_security_number
Employer
employer_name, employer_address
Pay period
pay_period_start_date, pay_period_end_date
Gross & net
gross_pay, net_pay
Taxes
taxes[].name, taxes[].amount
Deductions
deductions[].name, deductions[].amount
{
"first_name": { "value": "Daniel" }, "last_name": { "value": "Reyes" }, "employee_id": { "value": "E-20417" },
"employer_name": { "value": "Brightline Logistics Inc." }, "employer_address": { "value": "200 Harbor Blvd, Oakland, CA 94607" },
"pay_period_start_date": { "value": "2026-09-01" }, "pay_period_end_date": { "value": "2026-09-30" },
"gross_pay": { "value": 5400.00 }, "net_pay": { "value": 3818.50 },
"taxes": [ { "name": { "value": "Federal income tax" }, "amount": { "value": 612.40 } }, { "name": { "value": "Social Security" }, "amount": { "value": 334.80 } } ],
"deductions": [ { "name": { "value": "401(k)" }, "amount": { "value": 270.00 } }, { "name": { "value": "Health insurance" }, "amount": { "value": 145.50 } } ],
}
Ready to post, not just to read.
Dates come back in ISO 8601, amounts as numbers, and taxes and deductions as lists, each value with a confidence score and position.
Built for real pay stubs, not payroll templates
Phone photos of a printed stub, PDF exports from any payroll provider, French payslips with forty contribution lines. The model reads them all into the same fields.

Any employer, any payroll
Payroll software exports, hand-made stubs, pay stubs from other countries: one schema returns the same pay fields every time.

Every tax and deduction itemised
Federal and state taxes, Social Security, 401(k), health insurance: each line comes back as a name and an amount you can sum.

Net pay you can check
Gross pay minus taxes and deductions should equal net pay. With every amount typed, that check is one line of your code.

Several months in one upload
Applicants often send three months of pay stubs in a single PDF. Each pay stub is split out and extracted as its own record.
PDF / JPEG / PNG / WEBP / TIFF / HEIC, Multi-page payslips, +50 languages / any currency, Phone photos & scans, Taxes & deductions tables
Pay stub OCR accuracy you can measure, field by field
Measured on real customer pay stubs, not curated samples. Run the same benchmark on your own pay stubs during the free trial.
97.2%
Field-level accuracy on pay fields
Gross, net, pay period
92.0%
Accuracy on taxes and deductions
Name and amount per line
0.9s
Median time per payslip
Single page, synchronous call
A confidence score on every field
Send only real exceptions to a human

Document AI features, better than OCR
Prepare, classify and extract. Mindee delivers high-accuracy extraction for every document format, so you can automate workflows with speed and high reliability.
Data extractor
Classifier
Splitter
Edge detector
Pull the exact fields you need from any document
Pick a ready-made model or describe your own data schema. Every value comes back typed, normalised, located on the page and scored.
- Prebuilt models or your own custom schema
- Tables and line items, across pages
Know what each document is before you read it
The classifier labels every upload with your own classes, so an ID card goes to onboarding and an invoice goes to accounts payable.
- Your own document classes
- Route each type to the right model
One scanned batch in, separate documents out
Send a long PDF from the office scanner. Mindee finds where each document starts and ends, and returns them one by one.
- Page ranges for every detected document
- Up to 200 pages and 100 MB per file
Several documents on one photo? Each gets its own crop
Users photograph three receipts on a desk, or both sides of an ID. Mindee detects each border, returns its coordinates and reads them separately.
- Coordinates for every detected document
- Built for mobile capture flows
Prototype in minutes, go live with the API
Step 1 : Prototype
Run a proof of concept in Make, Zapier or n8n
No code, no IT ticket. Point a mailbox at Mindee and watch the data arrive in a spreadsheet.
Pay stub uploaded
Loan, rental or HR portal
Mindee extracts the pay stub
Employee, pay period, gross, net
Income check updated
Your LOS, CRM or Google Sheets
Low-confidence fields sent for review
Slack or email alert to your team
Step 2 : Production
Integrate the API into your platform
Official SDKs, typed responses and webhooks for async processing. Most teams ship the integration in a day.
mindee docs
$ pip install mindee
Your app
Mindee API
Your ERP/CRM
.webp)
Integrate Mindee into your workflow in minutes with SDKs & no-code tools
Go live in minutes using our verified Zapier & Make.com app with zero coding, or integrate seamlessly via our well-documented REST API built for developers. SDKs available for Python, .NET, Node.JS, Java, Ruby, PHP.
Integrations

Enterprise-grade security
Our API has a SOC 2 Type II certified infrastructure and is GDPR Compliant to ensure your file information remains protected at all times.
EU or US hosting available
GDPR, CCPA Compliant
Security center
What teams build with pay stub OCR
The same API powers very different products. Here is where it usually starts.

Real estate
Tenant screening
Check identity, income and tax documents in one rental file, and rank applicants faster.

Banking & lending
Real estate
Loan requests
Turn payslips, bank statements and tax returns into decision-ready data for underwriting.

Banking & lending
Insurance
Customer onboarding
Read and cross-check every onboarding document, from ID to bank details, in real time.
Rated 4.8/5 by developers and operations teams
4.8
4.9
Mindee is a software that helps us to convert all of our physical business data like bills, invoices, warranty cards, calendar, recipts received to us into a digital documents that can be stored in our drive and can be uploaded in different type of Excel sheets so that all the updates can be maintained and a proper analytics of transactions can be kept by the financial team
Mindee is a software that helps us to convert all of our physical business data like bills, invoices, warranty cards, calendar, recipts received to us into a digital documents that can be stored in our drive and can be uploaded in different type of Excel sheets so that all the updates can be maintained and a proper analytics of transactions can be kept by the financial team
Mindee is an integrated document processing platform backed by reliable AI technology. The service has an intuitive and user-friendly interface and provides highly accurate results extracting data from various document types, especially financial receipts and invoices, which are relatively complex for efficient data extraction and automation.
Mindee works reliably and delivers good performance. The OCR data is accurate, and the API is stable. It works like a charm.
Documents related that Mindee reads
FAQ about Mindee's pay stub OCR API
Can't find what you're looking for? Our team answers within one business day.
How do you read a paystub/payslip ?
A pay stub (also called a payslip) details an employee’s pay for a given period. It shows the employer and employee information, the pay period and pay date, gross pay (salary, hours, overtime, bonuses), deductions (income tax, social security contributions, retirement and benefits) and net pay, which is the amount actually paid. Most payslips also show year-to-date (YTD) totals. Mindee extracts all these fields from a PDF or a photo and returns them as structured JSON, ready to use for income verification in lending, rental or HR workflows.
What does YTD mean on a payslip ?
YTD stands for “year to date”: it is the total earned or deducted since the start of the year (calendar or fiscal, depending on the country), up to and including the current pay period. YTD figures are especially useful for income verification, because they show earnings over several months instead of a single pay period, including bonuses and overtime. Mindee extracts current-period amounts and YTD amounts as separate fields, so lenders and landlords can calculate an applicant’s income without manual work.
Does Mindee work with payslips from any country and payroll provider?
Yes. Payslips vary a lot between countries, employers and payroll software, and each country has its own taxes and contributions, such as OASDI (Social Security) in the US, PAYE in the UK, or LWF in India. Mindee doesn’t rely on templates: it extracts each earning and deduction line with its label and amount, along with the key totals (gross pay, total deductions, net pay). You get a consistent output structure whatever the payroll provider, which makes it easy to process payslips from international applicants or employees.
Can Mindee help detect fake or altered payslips?
Mindee is not a forensic fraud detection tool, but structured extraction makes key consistency checks easy to automate. You can check that gross pay minus total deductions equals net pay, that YTD totals are consistent with the pay date and pay frequency, and that the employer and employee details match the rest of the application, such as the bank statement where the salary is received. When a payslip has been edited or generated, these checks often reveal inconsistencies. Matching documents go through automatically, and suspicious ones are sent to manual review.
About Mindee
Is my data secured and protected during the conversion process?
Yes, your data is highly secured and protected during the entire conversion process. As an enterprise-grade OCR solution, Mindee takes data privacy very seriously. Here are the key security measures in place:
- Certified compliance: Mindee's infrastructure is SOC 2 Type II certified and fully GDPR compliant, ensuring strict industry standards for data protection.
- Encryption: All documents and extracted data are fully encrypted both in transit (during the API call) and at rest.
- Data localization: You have control over where your data is processed, with the option to host and process your data on either EU or US servers.
- Strict privacy: Mindee respects data confidentiality. Your processed documents are not shared with third parties, and your private data is not used to train global AI models.
In short, your sensitive documents are processed in a secure, isolated environment and remain completely under your control.
Is Mindee's OCR API free to use?
We provide a 14 days free trial so you can fully test any of our OCR models — no credit card required. After this, we offer different pricing tiers depending of the volume of pages processed and the features you might need. See the pricing page for more information.
What file formats are supported for JSON conversion?
The supported document formats are:
- PDF (
application/pdf) – While technically a document format rather than an image, it is natively supported for all extraction models. - JPEG / JPG (
image/jpeg) - PNG (
image/png) – Must be non-animated. - WebP (
image/webp) - TIFF / TIF (
image/tiff) – Both single-page and multi-page TIFFs are supported and processed similarly to PDFs. - HEIC (
image/heic) – Apple's High-Efficiency Image Container format.
📌 Important technical limitations to keep in mind:
To ensure the OCR pipeline runs smoothly and successfully returns your JSON, make sure your files adhere to the following constraints:
- Maximum file size: 100 MB per file.
- Maximum page count: Up to 200 pages per document.
- File state: The files cannot be encrypted, and PDFs must not be password-protected.
Ready to stop retyping pay stubs?
Send your first pay stub to the API in minutes, with a full team of engineers dedicated to document processing behind it.
14-day free trial
No credit card required