
HR data to BI
Deel to Power BI integration: global headcount and pay costs per country and type of employer
With an integration between Deel and Power BI, employees, contractors and employer-of-record employments from Deel sit in a fixed Power BI model, per country, entity and type of employment. Pay costs from Deel payroll come along per payroll run in one currency, so finance sees global people costs next to the budget in Power BI.
What the integration does
Organisations that work through Deel with own entities, employer of record and contractors want to see people costs per country and per type in Power BI. Today those figures come from separate Deel exports in different currencies.
- Deel administration creates an API token with read access only to people, contracts and reports.
- Every day KoppelHet fetches all people with their employments, country, entity and type of employment.
- After a payroll run KoppelHet fetches the gross-to-net report of that run, converted to euros.
- The columns of each country are translated to fixed cost types in the model.
- KoppelHet refreshes the Power BI model; country managers see only their own country.
What to watch for with Deel and Power BI
- In Deel each employment has its own type, such as own entity, employer of record or contractor. If Power BI counts all people together, contractors end up in headcount. KoppelHet makes the type of employment a fixed dimension, so headcount, contractors and EOR can be shown separately.
- Deel allows five requests per second for the whole organisation, across all tokens. If integrations to identity or finance systems are also running, they share the same capacity. KoppelHet spreads the daily run and handles a refusal properly, so other integrations do not stall.
- Deel's gross-to-net report has columns per payroll run that differ per country. KoppelHet translates those columns into fixed cost types such as gross pay, employer costs and allowances, so Power BI can add up and compare countries.
- Deel can convert the gross-to-net report to a chosen currency when it is retrieved. KoppelHet fetches each run in euros and stores that amount, so the pay costs of a closed run in Power BI no longer move with the exchange rate.
- Deel records on departure whether someone left voluntarily. KoppelHet includes that, so Power BI shows voluntary and involuntary turnover per country and per type of employment.
- Deel versions its API with a date in every request. KoppelHet pins the version, so a new Deel version does not silently change field names in the Power BI model. Switching happens deliberately and tested.
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 this also work without Deel payroll?
Yes. Then people, contracts and agreed pay come along, but no gross-to-net per run. Pay costs from another payroll package can be put in the same model.
Do contractors count in headcount?
You decide. The type of employment is a filter in the model, so headcount with and without contractors sits side by side.
What about the GDPR?
You are the controller and KoppelHet is the processor, under a data processing agreement. Bank details and identity documents from Deel are not included.
Technical details for IT
For those who want to know how it works under the hood: APIs, fields and sources used.
- Deel REST API (api.letsdeel.com/rest) with API token or OAuth2 app and version header X-Version (stable version 2026-01-01). People through GET /people with fields, hiring_types, limit and offset; per employment including hiring_type, country, client_legal_entity, payment (rate, scale, currency), termination_last_day and voluntarily_left. Cost centres per legal entity.
- Pay costs through GET /gp/reports/{id}/gross_to_net with currency, limit and offset; rows with dynamic columns, summary rows filtered out. Limit of five requests per second per organisation, 429 above that. Power BI semantic model in import mode, refreshed through the Power BI REST API, with row-level security on country.
Which fields are transferred
The key fields. The full mapping is agreed per customer.
| Field in Deel | Field in Power BI | Notes |
|---|---|---|
id (person) | Persoonsleutel | |
employments[].hiring_type | Dimensie soort dienstverband | Own entity, EOR or contractor |
employments[].country en client_legal_entity | Dimensie land en entiteit | |
employments[].payment (rate, scale, currency) | Tabel afgesproken beloning | |
termination_last_day en voluntarily_left | Tabel verloop | |
Gross-to-net-rapport per salarisrun (currency) | Tabel loonkosten per run | Country columns translated to fixed cost types |
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