Linking Deel as a source

Let AI connect your sources for you

Skip the manual setup — run this in your project and the wizard auto-detects your databases and APIs and connects them to PostHog.

Learn more
PostHog Wizard hedgehog

Contents

Alpha release

This source is currently in alpha. The interface and available tables may change.

The Deel connector automatically pulls your Deel workforce and payroll data into the PostHog data warehouse.

Adding a data source

  1. Go to the sources tab of the data pipeline section in PostHog.
  2. Click + New source and then click Link next to Deel.
  3. You need a Deel API token. In your Deel admin console, go to Settings and create an organization API token. Enable the read scope for each dataset you want to sync (see required scopes below).
  4. Back in PostHog, enter the token in the API token field and click Next.
  5. Select the tables you want to sync, set the sync method and frequency, then click Import.

Once the syncs are complete, you can start using Deel data in PostHog.

Use organization tokens

Use an organization API token rather than a personal API token. Personal tokens expire when the user leaves the organization, which causes syncs to fail.

Available tables

TableDescriptionSync method
peopleEmployee and contractor recordsFull refresh
contractsContract details for workersFull refresh
invoicesInvoice recordsFull refresh
invoice_adjustmentsAdjustments made to invoicesFull refresh
it_seatsIT seat assignments for workersFull refresh
it_clearance_requestsDevice clearance request recordsFull refresh
time_off_policiesTime-off policy configurationsFull refresh
equity_awardsEquity award recordsFull refresh

Full refresh tables sync all records on each run. Deel's API doesn't expose updated-since filters for these resources.

Required scopes

Deel API tokens are scoped per dataset. Your token needs the read permission for each table you want to sync. If a scope is missing, that specific table fails with a permissions error while other tables continue to sync normally.

TableRequired scope
peoplepeople:read
contractscontracts:read
invoicesinvoices:read
invoice_adjustmentsinvoice_adjustments:read
it_seatsit-seats:read
it_clearance_requestsit-service-requests:read
time_off_policiestime-off:read
equity_awardsequities:read

Configuration

OptionTypeRequired
API tokenpasswordYes

Supported tables

TableDescriptionSync methodIncremental fieldPrimary key
people

A worker in the organization — an employee or contractor managed in Deel.

Full refresh——
contracts

A work agreement between the organization and a worker in Deel.

Full refresh——
invoices

An invoice issued for a contract or payroll cycle in Deel.

Full refresh——
invoice_adjustments

An adjustment (bonus, deduction, expense, etc.) applied to a Deel invoice.

Full refresh——
timesheets

A time entry submitted against a Deel contract, used to bill hourly and pay-as-you-go work.

Full refresh——
payments

A payment made to Deel, covering the invoices settled in one transaction.

Full refresh——
payment_breakdowns

One contract's share of a payment, split into work, bonuses, expenses and fees.

Full refresh——
legal_entities

A legal entity in the organization that contracts and invoices are issued under.

Full refresh——
cost_centers

A cost center defined on a legal entity, used to book worker costs.

Full refresh——
time_offs

A time-off request made by a worker, with the days it covers.

Full refresh——
time_off_events

A lifecycle event on a worker's time-off policy, such as a birth or adoption that triggers leave.

Full refresh——
departments

A department in the organization's structure, used to group workers on people rows.

Full refresh——
teams

A team within the organization, used to group workers on people rows.

Full refresh——
groups

A group in the organization, used to organize workers and assign managers.

Full refresh——
onboarding_tracker

The onboarding state of a worker joining the organization.

Full refresh——
offboarding_tracker

The offboarding state of a worker leaving the organization.

Full refresh——
payroll_cycles

A payroll cycle run for a legal entity, and whether a gross-to-net report exists for it.

Full refresh——
payroll_reports

A global payroll event for a legal entity, with the period it covers and its status.

Full refresh——
payroll_gross_to_net

The gross-to-net cost breakdown for one contract in a payroll cycle.

Full refresh——
countries

A country Deel supports, and what it supports there — the lookup behind country codes on contracts and people.

Full refresh——
currencies

A currency Deel supports — the lookup behind currency codes on contracts, invoices and payments.

Full refresh——
job_titles

A job title Deel recognizes — the lookup behind job title ids on contracts and people.

Full refresh——
seniorities

A seniority level Deel recognizes — the lookup behind seniority ids on contracts.

Full refresh——
it_seats

A seat in the organization's Deel IT seat subscription, and the worker holding it.

Full refresh——
it_clearance_requests

A request the organization raised to retire a device for resale value or certified data erasure.

Full refresh——
time_off_policies

A time-off policy configured for the organization, with its allowances and tracking rules.

Full refresh——
equity_awards

An equity award granted by the organization, as ingested from Shareworks.

Full refresh——

Still have questions?

Was this page useful?