Tutorial
Clockify oder Toggl mit Zuuna verbinden
Erfasste Stunden aus Clockify oder Toggl Track landen automatisch auf der richtigen Karte: Webhook einrichten, Kartenschlüssel in die Beschreibung, fertig.
Zuletzt aktualisiert:
Wer Zeiten in Clockify oder Toggl Track erfasst, soll sie nicht noch einmal in Zuuna buchen müssen. Ein Webhook je Ereignis genügt: Jede erfasste Zeit landet automatisch auf der richtigen Karte — Korrekturen und Löschungen inklusive. Die Verbindung gehört zum Business-Pro-Plan; einen Developer-Plan brauchst du dafür nicht.
Was du brauchst
- Den Business-Pro-Plan oder höher — siehe Preise. Der Import hängt an der Zeiterfassung, nicht am API-Zugriff.
- Die Berechtigung developer.manageIntegrations, um die Verbindung anzulegen.
- Einen Clockify-Workspace oder ein Toggl-Track-Konto.
1. Integration anlegen und die Webhook-URL holen
Öffne in Zuuna Developers → Integrations und lege eine Verbindung für Clockify oder Toggl an. Du bekommst eine eigene Webhook-URL für genau diese Verbindung und ein Feld für das Signatur-Geheimnis, mit dem Zuuna jede Lieferung prüft. Woher das Geheimnis kommt, unterscheidet die beiden Anbieter: Clockify zeigt es dir beim Anlegen des Webhooks, Toggl liefert es beim Erstellen des Abonnements zurück.
2. In Clockify eintragen
In Clockify legst du den Webhook unter Workspace settings → Webhooks an und trägst die URL aus Zuuna ein. Clockify arbeitet mit einem Webhook pro Ereignis — für Löschungen legst du also einen zweiten an, mit ?event=deleted am Ende der URL. Beim Anlegen zeigt Clockify ein Signatur-Geheimnis; das kopierst du zurück in die Integration in Zuuna.
3. In Toggl eintragen
Toggl hat keinen Webhook-Bildschirm: Du legst ein Abonnement über die Webhooks-API von Toggl an, für das Modell time_entry. Das Geheimnis bekommst du beim Erstellen zurück und hinterlegst es in Zuuna. Direkt danach schickt Toggl einen Bestätigungs-Ping — den beantwortet Zuuna automatisch, du musst nichts weiter tun. Anlegen, Ändern und Löschen kommen anschließend über dieses eine Abonnement herein; ein noch laufender Timer wird ignoriert, bis er gestoppt ist.
4. Wie eine Zeit ihre Karte findet
Schreib den Kartenschlüssel — etwa PROJ-123 — in die Beschreibung des Zeiteintrags. Zuuna liest ihn heraus und bucht die Zeit auf genau diese Karte. Das übersteht auch Umbauten: Wurde die Karte inzwischen in eine andere Gruppe verschoben oder das Kürzel umbenannt, findet der alte Schlüssel weiterhin dieselbe Karte. Und steht gar kein Schlüssel in der Beschreibung, wird der Eintrag übersprungen — nie geraten, nie falsch zugeordnet.
5. Wie eine Zeit ihre Person findet
Zugeordnet wird über die E-Mail-Adresse: Stimmt sie mit einem Mitglied deines Workspace überein, steht die Zeit bei dieser Person — achte also darauf, dass dein Team beim Anbieter dieselben Adressen nutzt wie in Zuuna (siehe Team einladen und Rollen vergeben). Clockify schickt die Adresse mit, hier läuft das von allein. Toggl schickt keine E-Mail-Adresse. Toggl-Einträge kommen deshalb ohne Zuordnung an: Die Zeit steht auf der Karte, aber bei keiner Person — und fehlt damit in jeder Auswertung, die nach Personen rechnet. Das ist kein Konfigurationsfehler, sondern eine Grenze der Toggl-Webhooks. Rechne damit, bevor du dich in einem Report wunderst.
6. Pausieren oder trennen
Beides passiert auf demselben Bildschirm, auf dem du die Verbindung angelegt hast: Pausieren behält URL, Geheimnis und alles bereits Gebuchte und lässt nur nichts Neues herein; Trennen entfernt die Verbindung. Beides geht in jedem Plan. Enthält dein Plan keine Zeiterfassung mehr, stoppt der Import ohnehin sofort — Zuuna lehnt die Lieferungen mit einer klaren Fehlermeldung ab, und der Anbieter hört auf, es erneut zu versuchen.
Wenn es nicht klappt
- Toggl-Stunden tauchen bei keiner Person auf. Das ist erwartetes Verhalten, keine Fehlkonfiguration: Toggl schickt keine E-Mail-Adresse, also bleiben die Einträge ohne Zuordnung. Die Zeit steht auf der Karte, fehlt aber in Auswertungen pro Person.
- Ein Eintrag kommt gar nicht an. Vermutlich fehlt der Kartenschlüssel in der Beschreibung — solche Einträge werden bewusst übersprungen statt irgendwo falsch gebucht.
- Löschungen aus Clockify wirken nicht. Löschungen sind bei Clockify ein eigener, zweiter Webhook — mit
?event=deletedan der URL. - Ein laufender Toggl-Timer erscheint nicht. Absicht: Importiert wird erst, wenn der Timer gestoppt ist.
- Der Import hat von einem Tag auf den anderen aufgehört. Prüfe den Plan: Ohne Zeiterfassung im Plan werden Lieferungen sofort abgelehnt. Die Verbindung bleibt bestehen; nach einem Upgrade nimmt Zuuna Lieferungen sofort wieder an. Prüfe beim Anbieter, ob der Webhook nach den abgelehnten Zustellungen noch aktiv ist.
Nächste Schritte
- Einen API-Token erstellen — wenn du Zeiten aus Harvest oder eigenem Tooling schicken willst (Developer-Plan).
- Board-Automatisierungen einrichten — Regeln, die auf Ereignisse am Board reagieren.
- Preise — was im Business-Pro-Plan sonst noch steckt.
Häufige Fragen
Was passiert, wenn kein Kartenschlüssel in der Beschreibung steht?
Der Eintrag wird übersprungen — nicht irgendeiner Karte zugeordnet. Sobald der Schlüssel drinsteht und der Anbieter den Eintrag erneut schickt (etwa nach einer Bearbeitung), landet er richtig.
Werden Einträge doppelt gezählt, wenn der Anbieter erneut sendet?
Nein. Jeder Eintrag trägt die ID des Anbieters; ein erneutes Senden aktualisiert den bestehenden Eintrag an Ort und Stelle, statt einen zweiten anzulegen. Auch Löschungen kommen so sauber an.
Warum tauchen meine Toggl-Stunden nicht bei der Person auf?
Toggl schickt in seinen Webhooks keine E-Mail-Adresse, und die Zuordnung läuft über die E-Mail. Toggl-Einträge kommen deshalb ohne Person an: Die Zeit steht auf der Karte, fehlt aber in Auswertungen pro Person. Bei Clockify passiert das nicht.
Geht auch Harvest oder ein eigenes Skript?
Ja — über die normalisierte Zeit-Schnittstelle (POST /api/v1/time/entries) kannst du Zeiten aus jedem Werkzeug schicken, inklusive E-Mail zur Zuordnung. Sie braucht allerdings einen API-Token, und API-Zugriff gehört zum Developer-Plan.
Welchen Plan brauche ich?
Business Pro oder höher. Die Verbindung hängt an der Zeiterfassung — ein Developer-Plan ist nicht nötig, enthält sie aber ebenfalls.