
Payroll integration
Deel to Zenegy integration: own employees of the Danish entity from Deel as an employee in Zenegy
An integration between Deel and Zenegy creates an own employee of the Danish legal entity in Deel as an employee in Zenegy, with CPR number, address, start date and pay, and reports the last working day as a resignation in Zenegy. EOR employees and contractors in Deel do not go to Zenegy, because Deel pays them itself.
What the integration does
Organisations that use Deel as the HR system for all countries and pay their own Danish ApS in Zenegy record a Danish starter twice. The CPR number then often goes to payroll by email, and a leaver in Deel only reaches Zenegy at the next run.
- HR creates an own employee at the Danish legal entity in Deel.
- KoppelHet receives the Employee Created Direct webhook and checks whether legal_entity_id is the Danish entity.
- KoppelHet fetches name, address and CPR number and creates the employee in Zenegy.
- A changed salary or address goes to Zenegy as a PATCH with only the changed fields.
- A last working day in Deel becomes a resignation in Zenegy; anything Zenegy rejects goes on a list for payroll.
What to watch for with Deel and Zenegy
- Deel describes creating a direct employee as the route for employees of your own legal entity who are paid through your own payroll provider. That is exactly the group for Zenegy. KoppelHet reacts to the Employee Created Direct webhook and ignores EOR and contractor events.
- Zenegy does not create an employee without a CPR number. Deel only returns national numbers in additional_details if the feature flag is switched on for the organisation and the request does not redact personal data. If it is off, KoppelHet reads the CPR from a custom field in Deel that HR fills in, and otherwise the starter waits on a list.
- Zenegy asks for a seniorityDate for every new employee. The seniority field in Deel is a job level such as Senior, not a date. KoppelHet therefore fills the seniority date with the start date from Deel, unless HR puts an earlier date in a custom field for a returning employee.
- The Deel webhook gives pay as a whole annual amount with currency, and the profile has a scale such as ANNUAL, MONTHLY or HOURLY. Zenegy pays monthly in advance, monthly in arrears or every fourteen days. KoppelHet only converts amounts in DKK to the employee's pay period and holds back other currencies.
- Many fields in Zenegy depend on the company's global values and sets. A PATCH on such a field does not change the profile and returns no error either. KoppelHet therefore only sets those fields at creation through the right set, and reads the employee back after each change to see whether Zenegy really took it over.
- Deleting an employee in Zenegy is only possible while they have not been in any payroll run, and it cannot be undone. If HR withdraws an offer in Deel before the first run, KoppelHet deletes the employee after payroll approves; after that it becomes a resignation.
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 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.
Frequently asked questions
Does time off from Deel also go to Zenegy?
Not in the first version. Absence only counts in Zenegy as an approved registration; that can be added later as an extension.
Technical details for IT
For those who want to know how it works under the hood: APIs, fields and sources used.
- Deel through the HRIS API with a bearer token: Employee Created Direct and Employee Updated Direct webhooks (profile id, legal_entity_id, contract_oid, start_date, gross_annual_salary with currency), then GET /rest/people for addresses, employments and direct_employee_termination_last_day; additional_details only with feature flag.
- Zenegy Payroll API with OAuth 2.0: Post employee (cpr, name, address, postalNumber, city, employmentDate, seniorityDate), PATCH employee with only changed fields, Get employee details to read back and Resign employee on leaving.
Which fields are transferred
The key fields. The full mapping is agreed per customer.
| Field in Deel | Field in Zenegy | Notes |
|---|---|---|
Webhook Employee Created Direct (legal_entity_id) | Filter: alleen de Deense rechtspersoon | EOR and contractors are excluded |
additional_details (CPR) | cpr | Only with feature flag in Deel; required in Zenegy |
first_name, last_name | name | |
addresses | address, postalNumber, city | All three required |
employments.start_date | employmentDate en seniorityDate | Deel seniority is a level, not a date |
compensation_details (salary, currency, scale) | Loon in Salary Data | Only for DKK; converted per scale |
direct_employee_termination_last_day | Resign employee |
Related
Ashby → Deel
Ashby to Deel integration: hires at the own entity as direct employee in Deel
Bullhorn → Deel
Bullhorn to Deel integration: first placement as a direct employee with a contract in Deel
Carerix → Deel
Carerix to Deel integration: successful placement as a person or contract in Deel
Deel → 4PS Construct
Deel to 4PS Construct integration: own employees of the construction entity in 4PS, with department and cost centre as dimensions