Payroll inputs that verify each other before the run
Payroll is calculated in one system, but fed by dozens of documents from everywhere - contracts and annexes from HR, timesheets from the sites, sick-leave records from NOI, leave and overtime orders, business trips, bailiff notices. Kognify reads every one, links it to the right employee and period, and cross-checks it against all the others - then audits the payroll run back against what it verified. Every figure on the payslip traces to the document behind it.
contracts, timesheets, sick-leave, orders, garnishments, declarations - each checked against every other source for the same day
~80%
Less payroll prep time
the collecting, re-keying and comparing before each run - done by Kognify as documents arrive
100%
Of payroll figures traced
every figure links back to the document that produced it - ready for any audit
The Problem
Payroll isn't hard to calculate. It's hard to feed.
The payroll engine does the arithmetic. What it can't know is that an annex changed the salary mid-month, that a sick day was also clocked as worked, or that a bailiff notice arrived on the 18th. Someone collects, reads and reconciles every input by hand - and a single miss means recalculated payslips and corrected declarations.
✕Inputs arrive from six directions. HR, site managers, NOI, employees, enforcement agents and finance - by email, portal, paper and system exports.
✕Nothing links them. An annex, a timesheet and a sick-leave record describe the same days - but live in different systems and nobody compares them.
✕Checks happen after the payslips. Errors surface when an employee complains or an inspector asks - then it's recalculations and corrected Form 1 declarations.
✕Deadlines don't wait. Art. 62 notifications to NRA, monthly declarations by the 25th, expiring leave - tracked in calendars and memory.
✕Rules live in one person's head. Overtime approvals, garnishment limits, minimum insurable income by occupation - applied by hand, by whoever knows them.
6+
sources feed every run - HR, sites, NOI, employees, enforcement agents and finance, each in its own format.
25th
every month - Form 1 and Form 6 are due to NRA, whatever state the inputs are in.
1 miss
is enough for recalculated payslips, corrected declarations and an employee who stops trusting payroll.
The Inputs
Everything that lands on payroll - read, understood, linked.
Kognify handles each document type with its own configuration: what to extract, what to check it against, and which other documents it must agree with. New types and rules are added in plain language, not through an IT project.
Checked againstApproval authority, trip days on the timesheet, receipts and your policy limits.
⚖️
From enforcement agents & courts
Garnishments & deductions
Garnishment noticesCourt orders & alimonySalary advancesVoluntary pension & insuranceUnion dues
Checked againstThe employee's personal ID, protected-income limits, priority of claims and outstanding balances.
🧾
From employees & other employers
Declarations & certificates
Tax relief declarationsIncome certificatesDisability decisionsInsurance status
Checked againstSupporting documents, validity periods and minimum insurable income by activity and occupation.
How It Works
Kognify doesn't just read the documents. It makes them agree.
Extraction alone moves the typing somewhere else. The value is in what happens next - every document tied to a person and a day, then checked against every other document that describes the same day. Here is the path each input takes:
Your rulesCompany-specific checks, written in plain language
Outcome for every employee-month
✓ Ready for the run
Linked, checked, explained
Every input tied to the employee and the day, every cross-check passed. The month flows into payroll with a source link on each figure - no one re-keys or re-reads anything.
! Held item - not a held payroll
Only the conflict waits
A disputed day, unapproved hours, an unmatched garnishment - only that item stops, marked yellow (your rule) or red (stops), with both sources side by side and the reason in plain language.
Across The Month
Documents arrive all month. Each one is checked the day it lands.
Payroll inputs don't wait for month-end - they come from HR, managers, employees, NOI and enforcement agents whenever things happen. Kognify picks up each document on arrival and links it to everything already there, so by the time the month closes, the checking is already done.
DocumentPeriodChecked on arrivalAgreesYour ruleStops
Illustrative example · M. Ivanova · March 2026
Hover or tap any document to see what it connects to. Swipe sideways for the whole month.
How It Comes Together
One employee, one month, nine documents - one verified record.
This is what linking and cross-checking look like for a single employee in March 2026. Nine documents from six sources become one verified employee-month, and every figure payroll receives is proven by the documents behind it.
MI
Maria IvanovaWarehouse operator · Plovdiv site · contract TD-0417
March 202621 working days · 3 Mar holidayIllustrative example
Hover or tap a check to see which documents it links and which payroll figures it proves.
Documents in 9 from 6 sources
📑
Employment contract TD-0417HR archive · signed 2019
✍️
Annex №2 to TD-0417HR · signed 5 Mar · €1,480 from 16 Mar
🏛️
Art. 62 notificationNRA register · filed 6 Mar
🕒
Timesheet - MarchSite attendance system export
🩺
Sick-leave recordNOI e-register · 9-12 Mar
⏱️
Overtime order OT-09Site manager · Sat 21 Mar · 4h
🌴
Leave request & orderHR portal · 25-27 Mar
🧳
Trip order K-112 & reportManager · Sofia · 18-19 Mar
⚖️
Garnishment noticeEnforcement agent · received 18 Mar
Verified record what payroll receives
Employee-monthM. Ivanova · 03/2026
€1,380 · 9 days to 13 Mar €1,480 · 12 days from 16 Mar
21 → 14 worked · 4 sick · 3 leave
4 days · 9-12 Mar✕ 12 Mar held
4h approved · Sat 21 Mar! 2h to manager
3 days · balance 14 → 11
2 days · 2 per diems
Garnishment · within protected income
611Ready · 1 day held
Cross-checks 8 run · 2 raised
Verified - passed to payrollYour rule - approved part passed, rest routedStops - only this item held for a person
The shift: from a payroll team that collects, re-keys and compares documents - to one that resolves the one held day with both sources already on screen.
Closing The Loop
Then it checks the payroll run against what it verified.
Kognify works around your payroll engine, not instead of it. It feeds the run with verified inputs, then matches every output back to them - so nothing leaves payroll unexplained.
📦
Before the run
The verified input pack
One file per period for your payroll system - every employee-month linked, checked and explained, delivered via direct integration, CSV or JSON.
Days, hours, absences and leave per employee, per day
Salary changes split on their effective dates
Variable pay, trips and allowances with their approvals
Deductions and garnishments with limits applied
A source link on every figure, held items clearly marked
🔁
After the run
Every output matched back
The calculated payroll is checked against the verified inputs and against itself - before payslips, payments or declarations go out.
Payroll register ⇔ verified inputsPer employee, per pay component
✓ Match
Net pay ⇔ bank payment fileTotals and IBAN per employee
✓ Match
Register ⇔ Form 1 & Form 6 dataInsurable days, income, contributions
✓ Match
Change vs February, per employeeEvery material change traced to a document
! 1 unexplained
Payroll journal ⇔ register totalsGL posting before period close
✓ Match
Owned by HR & Payroll, Not IT
Configured the way you'd brief a new payroll specialist.
Business users describe document types, checks, tolerances and who gets which held item - in plain language, and live immediately.
📝
Plain-language rules
"Pay approved overtime only, route the rest to the manager" - written as an instruction, not code. New regulation? Update the rule the same day.
📅
Deadline watch
Art. 62 notifications (3 days for new contracts, 7 for changes and terminations), Form 1 and Form 6 by the 25th, leave nearing expiry - flagged before they bite.
🗂️
Nomenclatures built in
NKPD occupation codes, KID activities, minimum insurable income, ICD codes on sick leave, and your own position and cost-center catalogs.
🪪
Employee register sync
Identity by personal ID, duplicate names resolved, contract history kept - so every document lands on the right person and version.
🔌
Works with your payroll system
Feeds and audits whichever payroll engine you run - direct integration, scheduled CSV or JSON, webhook hand-off to your HRIS and ERP.
🔍
Inspection-ready trail
For every figure: which document, when it arrived, which checks it passed, who resolved what - ready for Labor Inspectorate and NRA audits.
Security & Data Management
Personal and special-category data, under EU controls.
Payroll touches salaries, personal IDs and health data. Built on Kognify Universal Content Handling, with a dedicated tenant per client and processing strictly per your signed DPA.
☁️ Microsoft Azure · EU data centers🔒 Dedicated tenant per client · SSO📋 GDPR Art. 9 for sick-leave and medical data🔍 Full audit trail on every document & figure🚫 No client data trains public models
Proven in Production
Not built from scratch - composed from capabilities already live.
Labor & Wages brings together three Kognify capabilities that already run in production for enterprise clients - backed by structured onboarding and support, not optimism.
🩺
Live · Medical Note Handling
Sick-leave straight into payroll
Sick-leave notes, outpatient records and medical board decisions read, validated and matched to the employee - already feeding payroll at Speedy AD.
📑
Live · Content Understanding
Contracts, understood
Contracts and annexes rebuilt into their logic - parties, terms, dates, amounts - each value traced to its source paragraph.
🧮
Live · Autonomous Accounting
Recalculate & match core
The engine that recalculates bottom-up and matches line by line - here pointed at timesheets, approvals and the payroll register.
98%+
Production success rate on document understanding across live clients.
measured · live
99%
Validation correctness measured in production on contracts and medical notes.
autonomous
<1 mo
From signed contract to a pilot running on your real payroll documents.
to production pilot
50%
Of clients expand into additional processes within 2 months.
within 2 months
Client Voice
Serving some of the largest companies in Bulgaria.
The same understanding engine, already in production across finance, banking, logistics and other regulated industries.
“
As one of Bulgaria's leading courier companies, we process thousands of documents every month. With Kognify, in the very first month of deployment we achieved over 98% successfully processed documents - even while the system was still being tuned. It independently identifies discrepancies and escalates only genuine exceptions. That gives us confidence without losing control.
TL
Tsvetelina Lazarova
Manager, Projects & Relationships, Finance Group · Speedy AD
Speedy AD uses Kognify for invoice processing and sick-leave note processing - the sick-leave flow is a live building block of this operator.
Send us one month of inputs for a sample team - contracts and annexes, timesheets, sick-leave, leave, trips and deductions - and we'll show you the linked employee-months and every conflict Kognify finds, each traced to its source. Free POC on your real documents; first pilot in production in under a month.