# Deel

<figure><img src="/files/8fr3gTgYT7QU1lvFLN5F" alt=""><figcaption></figcaption></figure>

### What you get

* **Unified global directory** — Deel employees (EOR), direct employees, and contractors all appear in Siit, each with the right worker type.
* **Lifecycle triggers** — Start date, End date, Probation end, and Birthday flow into Siit as workflow triggers.
* **Contract and entity context** — country, legal entity, and contract type are synced so you can route and approve by location or contract.
* **Manager resolution** — Deel's manager assignments power auto‑selected approvals.
* **Contractor‑aware workflows** — differentiate between employees and contractors in every automation (e.g., skip laptop shipping for contractors).

### What syncs from Deel

| Category        | Fields                                                                                            |
| --------------- | ------------------------------------------------------------------------------------------------- |
| Identity        | Full name, preferred name, work email, Deel Worker ID                                             |
| Role            | Job title, seniority                                                                              |
| Org structure   | Manager, team, country, legal entity / Deel entity                                                |
| Employment      | Worker type (EOR Employee, Direct Employee, Contractor), contract status (active, pending, ended) |
| Lifecycle dates | Start date, end date, probation end, date of birth                                                |
| Custom          | Selected custom Deel fields                                                                       |

Work email is the canonical identifier.

### Before you connect

* You'll need a **Deel admin** (Organization Admin or IT Admin) account.
* Make sure work email is set on every worker record in Deel. For EOR employees, this is the corporate email you issue them — not their Deel login.
* Decide whether Deel or your IdP is the source of truth for overlapping fields.

### Connect Deel

1. In Deel, generate an API token:
   * Go to **Organization Settings → Developer → API Keys**.
   * Click **Generate new token**, name it "Siit", and grant the scopes `people:read`, `contracts:read`, `organizations:read`.
   * Copy the token — it's shown only once.
2. In Siit, go to **Settings → Integrations**.
3. Find **Deel** in the HRIS section and click **Connect**.
4. Paste the Deel API token and click **Authorize**.
5. Siit runs an initial import and shows a preview.
6. Review field mapping (including the worker type mapping — confirm how you want EOR vs Direct Employee vs Contractor reflected in Siit's Employment Type field).
7. Click **Finish setup**.

> **Tip** — If you only want employees (not contractors) synced into Siit, apply a filter on Worker Type in the mapping step.

### After the connection

* **Check your People list** — confirm the counts by worker type match Deel's "People" view.
* **Set source of truth** — in **Settings → People → Fields**, pick Deel for country, contract type, and legal entity.
* **Map custom fields** — add any custom Deel fields you want in Siit.
* **Build workflows** — Deel customers often start with offboarding automation driven by contract end date.

### Sync frequency

Deel data refreshes every few hours. Force an immediate refresh from **Settings → Integrations → Deel → Sync now**.

### Common workflows

**Global Day‑1 onboarding.** *Trigger: Start date. Actions: create IdP account, assign apps by team, ship equipment if Worker Type = Employee, send country‑specific welcome.*

**Contractor offboarding.** *Trigger: End date, Condition: Worker Type = Contractor. Actions: revoke app access, notify manager, close Slack access.*

**Entity‑specific approval.** *Condition: Requester's entity = "Siit SAS" → Approver = French HR lead.*

**Pre‑boarding email 2 weeks before start.** *Trigger: Start date − 14 days. Action: email manager with a pre‑boarding checklist specific to the hire's country.*

### Troubleshooting

**Workers missing.** Check the worker's contract status in Deel — only active and upcoming contracts are synced by default. Also confirm work email is set.

**Contractor vs employee mis‑labeled.** Open **Settings → Integrations → Deel → Mapping** and confirm the Worker Type → Employment Type mapping.

**Manager field empty.** In Deel, confirm the worker has a reporting manager under their profile. Siit reads from that field.

**"Unauthorized" error.** The API token was revoked or is missing a scope. Generate a new one with the three scopes listed above and update Siit.

>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.siit.io/integrations/hris/deel.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
