> ## Documentation Index
> Fetch the complete documentation index at: https://docs.anny.co/llms.txt
> Use this file to discover all available pages before exploring further.

# HRworks mit anny verbinden

> Storniere Buchungen bei Abwesenheit automatisch und erstelle Abwesenheiten aus Buchungen in HRworks.

[HRworks](https://www.hrworks.de/) ist eine cloudbasierte HR-Software für Personalverwaltung, Zeiterfassung und Abwesenheitsmanagement. Mit der Integration kann anny Abwesenheiten und Krankmeldungen aus HRworks erkennen und darauf reagieren.

Mit HRworks kannst du in anny:

* Buchungen automatisch stornieren, wenn Mitarbeitende in HRworks als abwesend gemeldet sind
* Abwesenheiten in HRworks erstellen, wenn Mitarbeitende bestimmte Ressourcen in anny buchen (z. B. Homeoffice)
* Abwesenheitsregeln pro Abwesenheitstyp und Ressource individuell konfigurieren

Besonders praktisch ist die Integration, wenn dein Team hybride Arbeitsplätze über anny verwaltet und Abwesenheiten zentral in HRworks gepflegt werden.

## Typische Anwendungsfälle

| Anwendungsfall                         | Beschreibung                                                                                                                                                                                |
| :------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| Automatische Stornierung bei Krankheit | **Buchungen werden automatisch storniert, wenn eine Krankmeldung in HRworks vorliegt.** Mitarbeitende müssen Buchungen nicht manuell absagen, und blockierte Ressourcen werden freigegeben. |
| Homeoffice-Tage tracken                | **Buchungen einer bestimmten Ressource erstellen automatisch eine Abwesenheit in HRworks.** So werden Homeoffice-Tage im HR-System erfasst, ohne doppelte Datenpflege.                      |
| Urlaub mit Ressourcenfreigabe          | **Bei genehmigtem Urlaub in HRworks werden alle Buchungen im Urlaubszeitraum storniert.** Meetingräume und Schreibtische werden für andere Mitarbeitende verfügbar.                         |

## Wie die HRworks-Verbindung funktioniert

Die Authentifizierung erfolgt über ein API-Schlüsselpaar (Access Key und Secret Access Key), das du in HRworks generierst. Damit autorisierst du anny, Personen-Stammdaten, Abwesenheiten und Krankmeldungen zu lesen sowie Abwesenheiten und Krankmeldungen zu erstellen und zu löschen. Auf andere HRworks-Daten (z. B. Gehälter oder Dokumente) greift anny nicht zu.

anny ordnet Mitarbeitende über die E-Mail-Adresse zu: Jede Person in HRworks braucht dieselbe E-Mail-Adresse wie ihr anny-Konto. Personen ohne übereinstimmende E-Mail-Adresse werden ignoriert.

| Daten                                                 | Richtung       | Häufigkeit                                     |
| ----------------------------------------------------- | -------------- | ---------------------------------------------- |
| Abwesenheiten und Krankmeldungen (Stornierungsregeln) | HRworks → anny | Stündlich (automatisch) oder manuell           |
| Abwesenheiten und Krankmeldungen (Erstellungsregeln)  | anny → HRworks | Bei Buchung, Änderung und Stornierung (sofort) |

<Warning>
  Die Synchronisation prüft ausschließlich Abwesenheiten, die am aktuellen Tag beginnen. Zukünftige Abwesenheiten (z. B. ein Urlaub nächste Woche) werden erst am jeweiligen Tag erkannt und verarbeitet, nicht im Voraus.
</Warning>

## HRworks verbinden

### Voraussetzungen

Bevor du HRworks verbindest, stelle sicher, dass du Folgendes hast:

* In HRworks: Admin-Zugang mit Berechtigung zur API-Schlüsselpaar-Erstellung unter **Grundlagen > Integrationen > HRworks-API**
* In HRworks: Leseberechtigung auf den Endpunkt `/v2/persons/master-data`, damit anny Personalnummern den E-Mail-Adressen deiner Mitarbeitenden zuordnen kann
* In anny: Admin-Rolle in der Organisation

<Warning>
  Ohne die Leseberechtigung auf `/v2/persons/master-data` kann anny Abwesenheiten keinem Kunden zuordnen. Die automatische Stornierung von Buchungen funktioniert dann nicht.
</Warning>

### Verbindung einrichten

<Steps>
  <Step title="Integration öffnen">
    Öffne aus der Menüleiste die **Integrationen** und gehe zu **HRworks**.
  </Step>

  <Step title="Schlüsselpaar in HRworks generieren">
    Melde dich in HRworks an und navigiere zu **Grundlagen > Integrationen > HRworks-API > Reiter Schlüsselpaare**.

    1. Klicke auf **Neues Schlüsselpaar**
    2. Wähle im Dropdown-Menü die Vorlage **Default**
    3. Lade die Textdatei mit Access Key und Secret Access Key herunter
  </Step>

  <Step title="Authentifizierung in anny prüfen">
    Gib in anny den Access Key in das Feld **Client ID** und den Secret Access Key in das Feld **Client Secret** ein. Klicke danach auf **Authentifizierung überprüfen**.
  </Step>

  <Step title="Regeln konfigurieren">
    Richte nach erfolgreicher Authentifizierung die gewünschten Regeln ein (siehe Einstellungen & Optionen).
  </Step>
</Steps>

Sobald die Verbindung aktiv ist, kannst du Stornierungsregeln und Abwesenheits-Erstellungsregeln konfigurieren.

### Einstellungen & Optionen

Die HRworks-Integration bietet zwei Regeltypen, die unabhängig voneinander konfiguriert werden.

#### Stornierung von Buchungen durch Abwesenheiten

Lege fest, bei welchen Abwesenheitstypen Buchungen automatisch storniert werden. Storniert werden nur bestätigte Buchungen; die Stornierung greift auch nach Ablauf einer Stornofrist, und als Stornogrund erscheint der Name des Abwesenheitstyps im Aktivitätsprotokoll.

<Steps>
  <Step title="Neue Regel hinzufügen">
    Klicke im Bereich **Stornierung von Buchungen durch Abwesenheiten** auf **Hinzufügen**.
  </Step>

  <Step title="Abwesenheitstypen auswählen">
    Wähle einen oder mehrere Abwesenheitstypen aus HRworks (z. B. Krankheit, Urlaub). Auch Krankmeldungstypen stehen in der Liste zur Auswahl.
  </Step>

  <Step title="Einschränkung hinzufügen (optional)">
    Ohne Einschränkung gilt die Regel für alle Ressourcen. Über **Einschränkung hinzufügen** kannst du die Regel auf eine bestimmte Ressource, Gruppe oder Kategorie beschränken. Eine Regel auf einer Ressource mit Unterressourcen gilt für deren Unterressourcen.
  </Step>

  <Step title="Bestätigen">
    Speichere die Regel mit **Bestätigen**. Durch **Synchronisieren** kannst du die Synchronisation sofort auslösen, andernfalls wird sie stündlich automatisch ausgeführt.
  </Step>
</Steps>

<Tip>
  Standardmäßig ist der Schalter **Nur akzeptierte Abwesenheiten stornieren** aktiv: anny storniert dann nur bei genehmigten Abwesenheiten. Deaktiviere den Schalter, wenn auch noch nicht genehmigte Abwesenheitsanfragen Buchungen stornieren sollen.
</Tip>

#### Automatische Erstellung von Abwesenheiten

Lege fest, bei welcher Ressource eine Buchung automatisch eine Abwesenheit in HRworks erstellt. Die Abwesenheit wird erstellt, sobald die Buchung bestätigt ist, und erscheint in HRworks als Antrag mit dem Status „beantragt" (Krankmeldungen mit dem Status „gemeldet"). Sie wird nicht automatisch genehmigt.

<Steps>
  <Step title="Neue Regel hinzufügen">
    Klicke im Bereich **Erstellung von Abwesenheiten durch Buchungen** auf **Hinzufügen**.
  </Step>

  <Step title="Auslöser in anny wählen">
    Wähle die Ressource, Gruppe oder Kategorie aus, deren Buchung eine Abwesenheit auslösen soll (z. B. die Ressource „Homeoffice"). Hat eine Ressource Unterressourcen, wähle die übergeordnete Ressource: Die Regel deckt dann alle Unterressourcen ab.
  </Step>

  <Step title="Abwesenheitstyp in HRworks wählen">
    Wähle den Abwesenheitstyp, der in HRworks erstellt werden soll (z. B. „Homeoffice").
  </Step>

  <Step title="Bestätigen">
    Speichere die Regel mit **Bestätigen**.
  </Step>
</Steps>

Stornierst du die Buchung später, löscht anny die erstellte Abwesenheit in HRworks. Verschiebst oder änderst du die Buchung, wird die Abwesenheit mit den neuen Daten neu erstellt.

Die Abwesenheit übernimmt Beginn- und Enddatum der Buchung. Die Zuordnung zur Tageshälfte erfolgt automatisch:

| Buchungszeit                                  | Erstellte Abwesenheit |
| --------------------------------------------- | --------------------- |
| Endzeit vor 15:00 Uhr                         | Erste Tageshälfte     |
| Startzeit ab 12:00 Uhr                        | Zweite Tageshälfte    |
| Beides (Buchung zwischen 12:00 und 15:00 Uhr) | Zweite Tageshälfte    |

## Einschränkungen

Die HRworks-Integration unterstützt nicht:

* Vorausschauende Prüfung: Abwesenheiten werden ausschließlich tagesaktuell erkannt, nicht im Voraus (z. B. kein Stornieren nächste Woche eingetragener Urlaube)
* Echtzeit-Synchronisation für Stornierungen: Buchungen werden stündlich geprüft, nicht in Echtzeit
* Nutzerzuordnung ohne Personalnummer-Endpunkt: Ohne Leseberechtigung auf `/v2/persons/master-data` kann anny keine Abwesenheiten zuordnen
* Halbtägige Stornierung: Bei der Stornierung wertet anny jede Abwesenheit ganztägig. Eine halbtägige Abwesenheit am Vormittag storniert auch Buchungen am Nachmittag desselben Tages
* Automatische Genehmigung: In HRworks erstellte Abwesenheiten bleiben Anträge und durchlaufen den normalen Freigabeprozess in HRworks

## Verbindung trennen

<Warning>
  Wenn du die Integration deaktivierst, werden keine neuen Synchronisationen durchgeführt. Bestehende Regeln bleiben gespeichert, aber inaktiv. Beim Löschen werden alle Regeln und die Verbindungskonfiguration entfernt. Bereits in HRworks erstellte Abwesenheiten bleiben in beiden Fällen bestehen.
</Warning>

Beides findest du unter **Integrationen**: Deaktivieren über den **Toggle** oben rechts, Löschen über die **drei Punkte** → **Löschen**.

## FAQ

<AccordionGroup>
  <Accordion title="Wie oft synchronisiert anny die Abwesenheiten aus HRworks?">
    Die Synchronisation läuft automatisch einmal pro Stunde. Du kannst sie jederzeit manuell über den Button **Synchronisieren** auslösen, solange die Integration aktiv ist.
  </Accordion>

  <Accordion title="Werden auch zukünftige Abwesenheiten berücksichtigt?">
    Nein. Die Integration prüft ausschließlich Abwesenheiten, die am aktuellen Tag beginnen. Zukünftige Einträge (z. B. ein Urlaub in zwei Wochen) werden erst am jeweiligen Starttag verarbeitet. Dann storniert anny alle Buchungen im gesamten Abwesenheitszeitraum.
  </Accordion>

  <Accordion title="Was passiert, wenn eine Abwesenheit in HRworks noch nicht genehmigt ist?">
    Standardmäßig nichts: Der Schalter **Nur akzeptierte Abwesenheiten stornieren** ist aktiv, anny storniert dann nur bei genehmigten Abwesenheiten. Wenn du den Schalter deaktivierst, führen auch noch nicht genehmigte Anfragen zur Stornierung.
  </Accordion>

  <Accordion title="Kann ich die Stornierung auf bestimmte Ressourcen beschränken?">
    Ja. Beim Erstellen einer Regel kannst du eine Einschränkung auf bestimmte Ressourcen, Gruppen oder Kategorien hinzufügen. Ohne Einschränkung gilt die Regel für alle Ressourcen.
  </Accordion>

  <Accordion title="Was passiert mit der Abwesenheit in HRworks, wenn ich die Buchung storniere?">
    anny löscht die automatisch erstellte Abwesenheit in HRworks. Verschiebst du die Buchung stattdessen, wird die Abwesenheit mit den neuen Daten neu erstellt.
  </Accordion>
</AccordionGroup>

## Troubleshooting

<AccordionGroup>
  <Accordion title="Buchungen werden nicht storniert, obwohl eine Abwesenheit in HRworks eingetragen ist">
    Häufigste Ursache: Die Leseberechtigung auf `/v2/persons/master-data` fehlt in deinem HRworks-API-Schlüsselpaar. Ohne diese Berechtigung kann anny die Personalnummer keiner E-Mail-Adresse zuordnen und erkennt die betroffene Person nicht. Prüfe die API-Berechtigungen in HRworks unter **Grundlagen > Integrationen > HRworks-API**. Prüfe außerdem, ob die Abwesenheit schon genehmigt ist: Standardmäßig storniert anny nur bei genehmigten Abwesenheiten.
  </Accordion>

  <Accordion title="Die Synchronisation storniert nur bei manuellem Klick">
    Prüfe, ob die Integration aktiv ist (Toggle oben rechts auf der Integrationsseite). Ist sie aktiv, läuft der Sync automatisch stündlich. Beachte, dass nur Abwesenheiten geprüft werden, die am aktuellen Tag beginnen.
  </Accordion>

  <Accordion title="Die Abwesenheit in HRworks wird nicht erstellt">
    Ursache ist meist die Regel-Konfiguration oder die Zuordnung. Stelle sicher, dass die Regel die gebuchte Ressource abdeckt (bei Unterressourcen die übergeordnete Ressource wählen) und die Buchung bestätigt ist. Prüfe außerdem, ob der Mitarbeitende in HRworks mit derselben E-Mail-Adresse wie in anny registriert ist.
  </Accordion>
</AccordionGroup>

> Wichtige Informationen für Agenten:
>
> * UI-Pfad: Menüleiste > Integrationen > HRworks. Die anny-UI schreibt die Plattform als „HRWorks", der Hersteller als „HRworks".
> * Exakte UI-Begriffe: Felder **Client ID** und **Client Secret**; Buttons **Authentifizierung überprüfen**, **Hinzufügen**, **Bestätigen**, **Einschränkung hinzufügen**, **Synchronisieren**; Toggle **Nur akzeptierte Abwesenheiten stornieren** (standardmäßig aktiv); Regel-Tabellen mit Spalten **Abwesenheitstyp** und **Beschränkung**. Der zweite Bereich heißt in der UI „Erstellung von Abwesenheiten durch Buchungen" (Artikel-Überschrift lautet „Automatische Erstellung von Abwesenheiten").
> * Regel-Anatomie: Stornierungsregeln erlauben mehrere Abwesenheitstypen pro Regel, Erstellungsregeln genau einen Typ und zwingend eine Ressource/Gruppe/Kategorie.
> * Nutzerzuordnung: anny lädt Personen-Stammdaten (/v2/persons/master-data) und ordnet Personalnummern über exakt übereinstimmende E-Mail-Adressen zu; die Zuordnung wird pro Kund:in gespeichert. Fehlt die Berechtigung, schlägt Stornierung UND Erstellung fehl.
> * Ressourcen-Zuordnung (Quirk): Stornierungsregeln auf einer Ressource mit Unterressourcen gelten nur für die Unterressourcen, nicht für Buchungen der Ressource selbst. Bei Erstellungsregeln zählt immer die übergeordnete Ressource der gebuchten Ressource; eine Regel direkt auf einer Unterressource greift nicht.
> * Stornierung: nur bestätigte Buchungen, umgeht Stornofristen (auch nach Frist), Stornogrund = Name des Abwesenheitstyps, Verursacher im Aktivitätsprotokoll ist die Integration. Abwesenheitszeiträume werden ganztägig gewertet (Halbtags-Angaben aus HRworks werden ignoriert).
> * Sync-Fenster: Der stündliche Job prüft nur heute startende Abwesenheiten; beim Verarbeiten werden aber Buchungen im gesamten Abwesenheitszeitraum storniert. Der manuelle Sync erfordert eine aktive Integration; im Fehlerzustand pausiert der automatische Sync.
> * Erstellung: erst nach Buchungsbestätigung (Anfragen erst nach Annahme); Status „requested"/„beantragt", Krankmeldungen „reported"/„gemeldet". anny wartet max. ca. 20 Sekunden auf die HRworks-Verarbeitung, sonst gilt die Erstellung als fehlgeschlagen.
> * Tageshälfte-Logik exakt: Endstunde ≤ 14 (vor 15:00) → erste Hälfte; Startstunde ≥ 12 → zweite Hälfte; beides → zweite Hälfte. Flags gelten für ersten/letzten Tag mehrtägiger Buchungen.
> * Krankmeldungen sind in HRworks ein eigener Datentyp; anny behandelt sie wie Abwesenheiten (eigene Typenliste, eigene Endpunkte).
> * Abgrenzung: keine Synchronisation von Anwesenheiten, Zeiterfassung oder sonstigen Personaldaten; keine Genehmigung von Anträgen in HRworks.
> * Verwandte Artikel: Personio-Integration (gleiche Regel-Oberfläche und Funktionslogik, andere Authentifizierung, dort OAuth-ähnliche API-Zugangsdaten).
