Darwinbox logoDATEV logo

Payroll integration

Darwinbox to DATEV integration: German employees, pay and leavers from Darwinbox to the DATEV payroll program

An integration between Darwinbox and DATEV delivers new German employees, pay changes and approved leavers from Darwinbox to the tax adviser's DATEV payroll program, where the adviser checks and takes them over. KoppelHet builds the delivery as an ASCII import on Darwinbox's APIs.

What the integration does

Organisations that use Darwinbox as their worldwide HR system and have their German GmbH paid in DATEV by a tax adviser send an Excel list with starters, salaries and leavers every month. The adviser retypes it, and a withdrawn resignation then sometimes simply stays in payroll.

  1. Every day KoppelHet fetches the Darwinbox employees activated or changed since the previous round.
  2. KoppelHet keeps only the German group companies and fetches the pay structure per employee.
  3. Master data and changes go as an ASCII import to that GmbH's client account at the tax adviser.
  4. The tax adviser takes the data over in DATEV and completes German tax and insurance details.
  5. A separation only goes through once Darwinbox has approved it.
Darwinbox → KoppelHet → DATEVSOURCEDarwinboxTARGETDATEVKoppelHetmapping · logging · monitoringDarwinbox → KoppelHet → DATEVSOURCEDarwinboxTARGETDATEVKoppelHetmapping · logging · monitoring
Out: Master data of a new employee · Fixed salary as master data with effective date · Leaving date after approved separation

What to watch for with Darwinbox and DATEV

  • DATEV's Lohnimportdatenservice only works with selected third-party systems. KoppelHet delivers as partner software through that service once onboarding with DATEV is complete, and otherwise as an ASCII file the adviser imports.
  • Darwinbox can filter pay by group company. With several German companies, each GmbH has its own client account at the tax adviser; KoppelHet requests pay per German group company and only delivers it to the matching client account.
  • Darwinbox pay data also contains earlier versions, with an is_latest flag and per component an effective date, frequency and currency. KoppelHet only takes the latest version of the basic component in euro as fixed pay, with the effective date as valid-from; a component in another currency is held back.
  • In DATEV master data and monthly movements are two kinds of delivery. A fixed salary from Darwinbox goes as master data, a one-off component with a one-off frequency as a movement in the month of payment, on the wage type the tax adviser designates.
  • Darwinbox only returns separations for the employees you ask about, with status Approved, Pending or Revoked. KoppelHet requests the Approved separations for every German employee and only passes those on as leaving; one that later becomes Revoked goes to the adviser as a notice.
  • KoppelHet finds new employees by activation date in Darwinbox, separately from other changes. That way someone who is only activated on their first working day still ends up in that month's delivery to the tax adviser.
  • Tax ID, tax class, health insurer and social security number are German payroll concepts that are usually not fully held in a worldwide Darwinbox. The tax adviser records them in DATEV, and the integration does not overwrite them.

How we build and run it

  • The integration runs on the KoppelHet platform, hosted in a data centre in the EU.
  • Every sync and every error is visible in the functional log; on an error your administrator is notified.
  • A change that cannot go through is not half-applied but queued for another attempt.
  • KoppelHet is ISO 27001 certified. Data travels encrypted and stays on the platform no longer than needed.
  • After go-live we manage the integration and adjust it when your process changes.
  • The integration fits next to your existing integration layer. Only the fields in the design are transferred; the platform keeps no register of its own.

Implementation, architecture and compliance

Implementation and price

This is not an app you switch on. We build the integration for your organisation on our platform, with building blocks we reuse on every project. So it is custom work that does not start from scratch.

A consultant prepares the intake and analyses both systems. We then record the mapping and exceptions field by field, test in the test or acceptance environment and go live at a moment you choose. Costs are a one-off amount for the setup and a monthly amount for platform, monitoring and support.

Price indication · Complex

Leave your work email and you see the price indication right away.

We only use your address to follow up on your question about this integration.

Frequently asked questions

Who switches on the import service?

The tax adviser, in DATEV Arbeitsplatz. Without that step nothing arrives through the data centre.

Do German payslips go back to Darwinbox?

Not in the first version. Darwinbox can receive payslips from an external payroll; that can be added later as an extension, if the adviser supplies the PDFs.

Technical details for IT

For those who want to know how it works under the hood: APIs, fields and sources used.

  • Darwinbox through the REST API with api_key and datasetKey (access on request only): masterapi/employee with last_modified or date_of_activation, orgmasterapi/groupcompanylist, payrollapi/componentctcbreakup with from_date, to_date and group_company, and UpdateEmployeeDetails/separationDetails with employee_ids and separation_status. Dates as dd-mm-yyyy.
  • To DATEV through the Lohnimportdatenservice (master and movement data as ASCII import through the DATEV data centre, takeover at the press of a button, status for source and user, activation in DATEV Arbeitsplatz, € 0.05 per paid employee per month) or as an ASCII file the adviser imports.

Which fields are transferred

The key fields. The full mapping is agreed per customer.

Field in DarwinboxField in DATEVNotes
employee_idPersonalnummerOr a number from the adviser, stored per employee_id
first_name, last_nameVorname, Familienname
date_of_joiningEintrittsdatum
ctc_break_up (Basic, value, effective_date)Festbezug met geldig vanafOnly in EUR
group_companyMandantLookup table per GmbH
separationDetails (Approved, last day)Austrittsdatum

Related

Which systems do you want to connect?

Tell us which systems you use and what should happen automatically. Together we define the smallest working solution, with a clear design and a quote before building.