← All integrations
Factorial → DATEV

Factorial DATEV integration

In short

A Factorial to DATEV integration feeds your monthly payroll run from your HR system: it turns new hires, terminations, salary and bank changes, and each period's absences, overtime, and one-off payments into the master data (Stammdaten) and movement data (Bewegungsdaten) that DATEV LODAS or DATEV Lohn und Gehalt imports. Done properly it is not a spreadsheet export - it is a recurring, idempotent pipeline that maps Factorial employees to DATEV Personalnummern and Factorial pay elements to the right Lohnarten, respects the payroll cut-off, and keeps your Lohnbüro from re-keying figures every month.

What a Factorial to DATEV integration actually does

Factorial is where your people data lives - who joined, who left, who changed roles or salary, who was sick which days, who worked overtime, who is owed a bonus or an expense reimbursement this month. DATEV, and the payroll office (Lohnbüro or Steuerberater) working inside DATEV LODAS or DATEV Lohn und Gehalt, needs a subset of that expressed precisely: master data for the employee record and movement data for the variable elements of this period’s run.

The gap between an HR system that tracks everything and a payroll system that only wants this month’s payroll-relevant deltas is where the manual work lives. A Factorial to DATEV integration closes it: it reads the relevant changes and period data from Factorial, maps them to your payroll office’s Personalnummern, wage types, and absence keys, and hands DATEV a clean import your Lohnbüro can load without re-keying a single figure.

What data moves

Factorial object / eventBecomes in DATEVNotes
New hire / onboardingNew employee master record (Personalstammdaten)Personalnummer assigned or matched; start date, tax and social-security fields
Termination / offboardingLeaver record with end dateDrives final pay and de-registration on the payroll side
Salary or contract changeUpdated master dataEffective date must land in the right Abrechnungszeitraum
Bank details / address changeUpdated master dataSensitive fields; validated before they reach a live payroll run
Absence (vacation, sick, unpaid, parental)Absence key / wage type in movement dataMapped per continued-pay and top-up rules, dated to the period
Overtime & time-tracking totalsVariable wage type (Bewegungsdaten)Aggregated per employee per period, not raw punches
Supplements, bonuses, one-off paymentsMapped LohnartEach Factorial pay element mapped to a specific DATEV wage-type number
Expense reimbursementsNon-taxable / taxable wage type as applicableCoded to the treatment your payroll office defines

The Personalnummer mapping, the wage-type (Lohnart) catalogue, and the absence keys are agreed once with your payroll office and encoded in the pipeline. After that, nobody re-maps them by hand each month.

The details that break naive exports

A generic export or a one-off script gets you most of the fields and leaves the expensive, error-prone part on your desk:

How we build and run it

We treat this as a recurring pipeline, not a monthly manual chore. Employee changes and period data are pulled from Factorial on a schedule (or by webhook where it helps), validated, transformed into your payroll office’s Personalnummern, Lohnarten, and absence keys, and written out as the DATEV master-data and movement-data import - in the LODAS or Lohn und Gehalt structure your Lohnbüro loads.

The pipeline is idempotent: every employee and every period carries a stable identifier, so a retry or a re-run never double-books absences or payments. It runs on cloud-native, fully EU-hosted AWS infrastructure, so salary, bank, and health-related absence data never leaves the EU - which keeps the AVV with your payroll office and your GDPR obligations clean for a genuinely sensitive dataset.

And then we keep it running. Monitoring, alerting, incident response, and - critically - watching for Factorial and DATEV interface changes are our responsibility under contract, with a named owner and an SLA. Payroll day stops depending on someone remembering to run an export and clean it up.

When this integration is worth building

If you run a small, stable team where a handful of fields change each month, Factorial’s export plus a few minutes of manual tidy-up is genuinely fine, and we will tell you so. The integration earns its place when headcount and turnover grow, when variable pay, allowances, and mixed absence types make each run a manual mapping exercise, when new hires and terminations arrive mid-period, or when your payroll office is charging you to fix exports that a pipeline should have delivered correctly the first time.

Frequently asked questions

Can I not just use Factorial's built-in DATEV export?
You can, and for a small, stable headcount it may be enough. Factorial's export produces a generic file; it does not know your payroll office's Lohnarten numbers, your absence rules, or whether your Kanzlei runs DATEV LODAS or DATEV Lohn und Gehalt, which use different import formats. Everything the export cannot encode becomes manual clean-up before payroll can run. The integration moves that mapping logic into a pipeline that produces an import your Lohnbüro can load without touching.
Does this work with DATEV LODAS or DATEV Lohn und Gehalt?
Both. We target whichever product your payroll office actually uses. LODAS and Lohn und Gehalt (LuG) accept different import structures for Stammdaten and Bewegungsdaten, so the pipeline is configured to your Lohnbüro's setup, including their client and consultant numbers (Berater- und Mandantennummer). We agree the target format with them up front so the import posts cleanly on their side.
How are absences and sick leave handled?
Each Factorial absence type is mapped to the payroll treatment it actually triggers. Paid vacation, sick leave inside the six-week continued-pay window (Entgeltfortzahlung), sick leave beyond it with an employer top-up (Krankengeldzuschuss), unpaid leave, and parental leave (Elternzeit) each become the correct wage type or absence key in DATEV, dated to the right period. Getting the continued-pay window and the absence keys right is exactly what a raw export cannot do.
What happens to changes made after the payroll cut-off?
Payroll runs on a monthly cut-off, and Factorial keeps changing after it. The pipeline is aligned to your Abrechnungszeitraum: everything up to the cut-off flows into the current run, and a salary change, new hire, or corrected absence entered afterwards is carried into the next period as a retroactive correction (Rückrechnung) rather than silently altering a closed month.
Who operates it, and how is sensitive employee data protected?
We do. Payroll data - salaries, bank details, sick days - is among the most sensitive data you hold, so the pipeline runs on cloud-native, fully EU-hosted infrastructure that we monitor, under an AVV (DPA) that covers this processing. You get a named owner, alerting, and an SLA. If Factorial or DATEV changes an interface, fixing it is our responsibility, not a surprise your HR team meets on payroll day.

Need this integration built and permanently operated? Tell us which systems connect and what data has to move. Fixed-price scoping quote within 48 hours.

Request a scoping call