HR Document Processing

Extract data from timesheets and time cards

Unstract reads weekly timesheets and punch time cards, typed, handwritten, scanned or photographed, and sends checked hours, overtime and approvals to your HRIS or payroll system.

reyes-timesheet-we-11-01.pdf · faxed from the client sitestructured data
{  "employee": "Marisol Reyes",  "employee_id": "BW-20417",  "week_ending": "11/01/2026",  "client": "Kestrel Foods",  "department": "Packaging",  "cost_code": "KF-4410",  "regular_hours": 40,  "overtime_hours": 10,  "total_hours": 50,  "approved_by": "D. Okafor"}

Trusted by HR and payroll teams around the globe

G2 Leader, Fall 2026G2 Best Usability, Summer 2026
Moody'sEndpointMedaxionPinpointConvrSmart ClerkCyberSoftThoughtFocusZluriIOA
What arrives

Hours come in on paper, in pen and from a dozen client sites

A typed timesheet from your own template is the easy one. Payday week usually brings a pile like this.

Faxed from the client site, signature half lost in the grey

AGENCYCLIENTPUNCH CARD

Your agency's form, the client's form and a punch card, one week

TIME INTIME OUT5:30MEAL BREAKOT OK'DNO

Times written in pen, a clock-out crossed out and rewritten

WK 44CARDOTSIGN1 SITE · 38 TIMESHEETS

A whole crew's timesheets scanned into one PDF

PUNCH EXPORT · 1,260 PUNCHES

Time clock exports next to contractors' own timesheets

Payroll keys each sheet by hand against the cut-off, and a missed signature or a misread 7 becomes a pay correction on someone's check.

Unstract reads every timesheet and time card, checks the hours and the sign-off, and posts approved time to your HRIS or payroll system.

Book a consultationFree consultation worth $1,000. Bring one pay period's timesheets and we read them with you.
How it works

Read the timesheet, total the hours, run the pay period

LLMWhisperer reads the sheet, Document Studio returns the hours as fields, and Flow carries them through checks into payroll. Use the timesheet parser alone first, and add the pay-period run when payroll is ready.

Timesheet OCR

Read every timesheet with each day's hours kept on its own row

A timesheet is a grid: days down the side, regular, overtime and total across the top. If a reader loses the grid, Tuesday's overtime lands on Wednesday. LLMWhisperer keeps every row and column where it sits, reads pen-written times beside the printed ones, and straightens faxes and phone photos taken on a break-room table.

Send the text to your own LLM, or make it the first step of the pay-period run.

Learn more about LLMWhisperer
EMPLOYEEMarisol ReyesEMPLOYEE IDBW-20417WEEK ENDING11/01/2026CLIENTKestrel FoodsFRI 10/308.00 reg + 2.50 OTSAT 10/314.00 OT, in penSUPERVISORD. Okafor, 11/02
AI data extraction

Turn each timesheet and time card into one payroll-ready record

Name the fields payroll needs, such as employee ID, week ending, cost code, hours per day, regular and overtime totals and the approver, and every timesheet returns the same JSON, whichever client or agency form it came on. As a timesheet data extractor, Document Studio also adds up the days and compares the result with the printed total, and it flags hours that fall outside the posted schedule.

Run it as an API behind your timesheet upload page, as an ETL pipeline over the folder where sites drop their scans, or as one step in the pay-period run.

Learn more about Document Studio
employee_idBW-20417✓week_ending11/01/2026✓overtime_hours10.00✓sat_hours4.00⚑approved_byD. Okafor✓⚑ not on the schedule
Agentic process automation

Run every pay period from timesheet pile to approved hours

Tell Flow in plain English how your payroll team handles timesheets each period, and its agents build the workflow; you approve it before the first run. Paper timesheets, punch cards, scans and spreadsheets are read, each day is checked against the schedule and your overtime rules, and approved hours go to your HRIS or payroll system against the right employee and cost code. Every period runs the same way.

You choose what waits for a person: a timesheet with no supervisor signature, overtime above the approved amount, a day total that disagrees with the times written beside it. Payroll sees the flag next to the scanned sheet; clean timesheets go through on their own.

Learn more about Flow
1
Timesheet intakePaper timesheets, scans, punch cards and spreadsheets, every pay period
2
Read and extractParseDay rows, pen-written times and signatures kept in placeExtractEmployee, dates, hours by day and project, overtime, approver
3
CheckHours against the schedule and overtime rules, missing approvals flagged
4
To payrollApproved hours into your HRIS or payroll system

Read your own timesheets today. Plan the pay-period run with us.

Start for free and extract a stack of timesheets and time cards. A run shaped around your cut-off and your overtime rules starts with a conversation.

Supported documents, processes & fields

Timesheets, time cards and the approvals that travel with them

Documents

  • Weekly paper timesheets
  • Punch time cards
  • Staffing agency timesheets signed by the client
  • Contractor and consultant timesheets
  • Biweekly and semi-monthly timesheets
  • Handwritten sign-in and sign-out sheets
  • Project and job cost timesheets
  • Overtime approval forms
  • Time-off and leave requests
  • Time clock punch exports
  • Shift schedules and rosters
  • Any other time record your sites send

Fields captured

Employee nameEmployee IDPay periodWeek ending dateDepartmentClient or worksiteCost codeJob or project codePosition or roleStaffing agencySupervisor nameSupervisor signatureApproval dateEmployee signature
Who it's for

For the teams that turn hours into paychecks

HR operations teams

Timesheets from every site and department filed against the right employee record, with missing signatures caught before the cut-off.

Payroll teams

Hours arrive totalled, split into regular and overtime and coded to the right cost center, so the pay run starts from checked figures.

PEOs and employers of record

Timesheets from every client company's workers read into one format, whichever template each client uses, ready for the payroll you run for them.

Staffing agencies

Client-signed timesheets turned into hours you can pay workers and bill clients from, with the supervisor's approval kept beside each week.

Outcomes

Less time keying hours, fewer pay corrections

<3 minfrom a faxed timesheet to approved hours in payroll
91%of timesheets processed with no hours corrected by hand
54%fewer hours spent keying timesheets each pay period
2×faster from the timesheet cut-off to a closed pay run
I was trying to convert pages of hand written data into a format where I could easily transfer to [Excel]. … I was saved probably hundreds of hours of manual input because of Whisperer
G2Anonymous · Reviewed on G2
1 / 3
Security

Employee time and pay data stays protected

A timesheet carries an employee's name and ID, where they work, and the hours that set their pay. A leaked stack shows who works where and what each person will be paid, and errors in it land on a paycheck.

AICPA SOC 2ISO 27001GDPRHIPAA
  • Timesheets and time cards are encrypted in transit and at rest.
  • Employee timesheets never train any model.
  • Access by role, client and site, with every corrected hour logged against the employee's record.
  • Retention you set: scans are deleted when your payroll record period ends.
  • Employers and PEOs that keep payroll data on their own servers can run Unstract self-hosted.
Read how employee data is protected in the Trust Center
Questions

What payroll teams ask about reading timesheets

Timesheet OCR reads a paper, scanned or photographed timesheet and turns it into text a system can use. Unstract goes one step further: it keeps each day's hours on the right row and returns them as fields, such as employee ID, week ending, regular hours, overtime and approver.

Yes. LLMWhisperer reads handwritten times and hours alongside the printed form, including crossed-out and rewritten entries. A figure it cannot read clearly comes back empty and flagged for payroll, not guessed.

Not a device. Unstract reads the images a time card scanner, office copier or phone camera produces. Scan or photograph the cards, upload them or drop them in a shared folder, and the hours come back as structured data.

No. Unstract works with the paper timesheets and punch cards your employees already fill in. Any employee time card scanner, copier or phone camera produces images it can read, and your time clock stays as it is.

Scan or photograph the timesheets and send them to Unstract. Each one comes back as a JSON record with the same fields, which you can export to a spreadsheet, a database or a payroll import file.

It adds up the hours and compares them with the totals on the sheet, and it checks overtime against your overtime rules and the approval the supervisor gave. Your payroll system still calculates pay.

Yes. Stamped punches, handwritten corrections and the totals column are read in their rows, so each in and out time stays with its day.

Yes. Each client's template comes back in the same format, and the supervisor's name and approval date are extracted with the hours. A timesheet with no signature is flagged before it reaches payroll or billing.

Yes, through an API or an ETL pipeline. Approved hours are posted to your HRIS or payroll system, or written to a file your payroll import already accepts.

Unstract is SOC 2, ISO 27001, GDPR and HIPAA compliant. Timesheets are encrypted, never used for training, and deleted on the schedule you set; self-hosting is available. Review the full list of controls in the Trust Center.

Start for free today with a stack of timesheets. For a run built around your cut-off and approval rules, we scope it with you in a consultation, and most teams process a live pay period within days.

Next step

Bring one pay period's timesheets

Faxed client timesheets, punch cards, handwritten sheets and the clock export. We read them in the session and you see each week's hours as your payroll system would receive them.

Start for freeOr upload a timesheet yourself and see the JSON today.