# Personio

<figure><img src="/files/o4vi8rXxNDnAHX26VfhZ" alt=""><figcaption></figcaption></figure>

### What you get

* **Live People directory** — Personio employees appear in Siit with role, manager, department, office, and lifecycle dates.
* **Lifecycle triggers** — Hire date, Termination date, Probation end, Work anniversary, and Birthday flow into Siit as workflow triggers.
* **Manager resolution** — Personio's reporting structure powers auto‑selected approvers in workflows.
* **Pre‑hires** — future employees with a hire date in Personio appear in Siit ahead of Day 1.

### What syncs from Personio

| Category        | Fields                                                     |
| --------------- | ---------------------------------------------------------- |
| Identity        | First name, last name, work email, employee ID             |
| Role            | Position, department, sub‑company                          |
| Org structure   | Supervisor, office, legal entity                           |
| Employment      | Status, employment type                                    |
| Lifecycle dates | Hire date, contract end date, probation end, date of birth |

Work email is the canonical identifier across systems.

### Before you connect

* A Personio admin to create API credentials.
* Work email populated for every active employee in Personio.

### Connect Personio

1. In Personio, go to **Settings → Integrations → API credentials** and generate a new credential pair for Siit. Grant read access to the attributes you want available in Siit (at minimum: name, email, position, department, office, supervisor, hire date, contract ends, status).
2. Copy the **Client ID** and **Client Secret** (the secret is shown only once).
3. In Siit, go to **Settings → Integrations**, find **Personio** in the HRIS section, and click **Connect**.
4. Paste the Client ID and Client Secret, then click **Authorize**.
5. Review the imported people and field mapping, then click **Finish setup**.

Need a more detailed walkthrough? Reach out to support via the in‑app chat.

> **Tip** — Personio API credentials are scoped at creation. Be intentional about which attributes you grant — adding new attributes later means creating a new credential pair.

### After the connection

* Confirm your **People list** in Siit matches your active + upcoming Personio employees.
* In **Settings → People → Fields**, set Personio as the source of truth for HR‑owned fields if you're also connected to an IdP.
* Build a Day‑1 onboarding workflow using the Hire date trigger.

### Sync frequency

Personio data refreshes automatically every few hours. Trigger an immediate refresh from **Settings → Integrations → Personio → Sync now**.

### Common workflows

**Day‑1 onboarding.** *Trigger: Hire date. Actions: create IdP account, assign apps by department, ship equipment, DM supervisor.*

**Offboarding on contract end.** *Trigger: Contract end date. Actions: revoke sessions, remove app access, equipment pickup, notify supervisor.*

**Probation review.** *Trigger: Probation end. Action: send review checklist to supervisor.*

### Troubleshooting

**Employees missing.** Confirm their status in Personio — by default only active and onboarding employees sync. Also confirm work email is populated.

**Supervisor field empty.** In Personio, check the employee has a supervisor assigned. Siit reads from that field.

**Custom attribute missing.** The API credential needs explicit access to each attribute. Generate a new credential pair with the broader scope.

**"Invalid credentials" on connect.** The Client Secret was regenerated or revoked. Create a new credential in Personio 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/personio.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.
