> ## 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.

# Treatwell mit anny verbinden

> Importiere Treatwell-Buchungen per E-Mail in anny und zeige anny-Termine per Kalenderlink in Treatwell.

[Treatwell](https://www.treatwell.de/) ist eine Buchungsplattform für Beauty- und Wellness-Anbieter, über die Endkund:innen Termine bei Salons und Studios buchen. Mit der Integration hält anny Buchungen aus beiden Systemen weitgehend synchron: Treatwell-Buchungen kommen per E-Mail-Weiterleitung in anny, anny-Buchungen werden per Kalenderlink in Treatwell sichtbar.

Mit Treatwell kannst du in anny:

* Treatwell-Buchungen automatisch per E-Mail-Weiterleitung importieren, inklusive Stornierungen und Verschiebungen
* Mehrere Behandlungen aus einer Mail als zusammenhängende Terminfolge anlegen
* Doppelte Einträge vermeiden und Prepaid-Zahlungen aus Treatwell berücksichtigen
* anny-Buchungen per Kalenderlink (ICS) in Treatwell als belegte Zeiten sichtbar machen

Besonders praktisch ist die Integration, wenn du Treatwell und anny parallel nutzt und deine Buchungen zentral in anny verwalten möchtest, ohne Termine doppelt zu pflegen.

## Typische Anwendungsfälle

| Anwendungsfall | Beschreibung |
| :- | :- |
| Salon mit Treatwell-Buchungen | **Treatwell-Buchungen landen automatisch in anny.** Die Buchungs-E-Mail wird an die anny Inbox weitergeleitet, anny legt den Termin an. Eine weitergeleitete Storno-Mail storniert ihn. |
| Studio mit Direktbuchungen | **anny-Buchungen werden in Treatwell sichtbar.** Termine, die du direkt in anny anlegst, etwa per Telefon oder Walk-in, erscheinen über den Kalenderlink in Treatwell als belegte Zeiten. |
| Prepaid-Termine | **Vorauszahlungen werden übernommen.** Meldet Treatwell eine Vorauszahlung, berücksichtigt anny die Prepaid-Information bei der Buchung. |

## Wie die Treatwell-Verbindung funktioniert

Die Integration nutzt zwei getrennte Wege, je nach Synchronisationsrichtung:

* **Treatwell → anny** läuft über E-Mail-Weiterleitung. Du leitest die Treatwell-Mails deines Salons an eine dedizierte anny Inbox weiter. anny liest keine Kundenpostfächer. anny AI liest die Inhalte aus und legt Buchungen an, verschiebt sie oder storniert sie, auch wenn Treatwell das E-Mail-Layout ändert.
* **anny → Treatwell** läuft über einen Kalenderlink. anny stellt einen ICS-Kalenderfeed bereit (ICS ist ein standardisiertes Kalenderformat), den du in Treatwell importierst. Treatwell zeigt anny-Buchungen darüber als belegte Zeiten an.

Weil beide Richtungen über unterschiedliche Wege laufen, ist die Synchronisation nicht in Echtzeit. Rechne mit einer typischen Verzögerung von etwa 30 bis 60 Sekunden.

| Daten | Richtung | Häufigkeit |
| - | - | - |
| Neue Buchungen, Verschiebungen und Stornierungen | Treatwell → anny | Per E-Mail-Weiterleitung, ca. 30 bis 60 Sekunden Verzögerung |
| Buchungen als belegte Zeiten | anny → Treatwell | Per ICS-Kalenderlink, ca. 30 bis 60 Sekunden Verzögerung |

anny verarbeitet nur Mails, die in der Inbox ankommen. Leitest du neue Buchungen, Verschiebungen und Stornos weiter, legt anny den Termin an, verschiebt den bestehenden Termin oder storniert ihn. Enthält die Mail mehrere Behandlungen, legt anny sie als zusammenhängende Terminfolge auf derselben Ressource an. Nach jedem Import sendet anny eine Mail an den Salon: übernommen, übersprungen oder fehlgeschlagen. Im **Aktivierungsverlauf** der Integration siehst du dieselben Ereignisse.

Steht in der Mail eine Kund:innen-E-Mail, legt anny eine:n Kund:in an oder ordnet die Buchung einer bestehenden Person zu (per E-Mail oder Telefon). Ausgelesen werden Vorname, Nachname, E-Mail, Telefon, Termin, Service, Preis, Prepaid-Status und die Mitarbeiter:in unter „bei" bzw. „with". Ohne E-Mail entsteht keine neue Kundenakte. Kontakte unter Kundenbetreuung gehören zum Salon und werden nicht übernommen.

Der Termin erscheint im anny-Kalender als akzeptierte Buchung auf genau einer Ressource. Das ist in der Regel die Mitarbeiter:in aus der Mail. Ein in Treatwell hinterlegter Raum wird nicht automatisch als zweite Ressource gebucht. Anders als bei [Urban Sports Club](/urban-sports-club) bleiben Treatwell-Buchungen in anny bearbeitbar.

## Treatwell verbinden

### Voraussetzungen

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

* Ein aktives **Treatwell-Konto** mit Zugriff auf die Treatwell-Mails an deinen Salon (neue Buchungen und Stornos)
* Die Möglichkeit, in deinem E-Mail-Postfach eine **Weiterleitungsregel** für diese Treatwell-Mails einzurichten
* Zugriff auf den anny **Adminbereich**, um die Integration einzurichten

### Verbindung einrichten

<Steps>
  <Step title="Treatwell-Integration öffnen">
    Öffne im Adminbereich die **Integrationen** und wähle **Treatwell**.
  </Step>

  <Step title="Weiterleitung im Postfach einrichten">
    Unter **Postfach für Treatwell-Mails** zeigt anny dir eine dedizierte **E-Mail-Adresse** (z. B. `tw-…@calendar.anny.co`). Richte in deinem E-Mail-Postfach eine Weiterleitung ein, die Treatwell-Mails zu neuen Buchungen, Verschiebungen und Stornos automatisch an diese Adresse sendet.
  </Step>

  <Step title="Weitere Absender ergänzen (optional)">
    Mails von Treatwell werden immer angenommen. Kommen Buchungen unter einem anderen Namen an, etwa von einem Treatwell-Partner oder über deine eigene Weiterleitung, trage die Adresse oder Domain unter **Weitere Absender** als **Akzeptierte Absender** ein (z. B. `@partner.de`).
  </Step>

  <Step title="Abweichende Namen zuordnen (optional)">
    Heißt eine Ressource oder ein Service in Treatwell anders als in anny, lege unter **Abweichende Namen** über **Hinzufügen** eine Zuordnung an. Mappe vor allem Mitarbeiter:innen (z. B. „Mara E." auf die anny-Ressource). Ohne Regel wählt anny den Eintrag, dessen Name zur Mail passt.
  </Step>

  <Step title="Kalenderlink in Treatwell importieren">
    Importiere den von anny bereitgestellten **ICS-Kalenderlink** in Treatwell, damit anny-Buchungen dort als belegte Zeiten erscheinen.
  </Step>

  <Step title="Integration aktivieren">
    Aktiviere die Integration über den **Toggle** oben rechts. Solange sie inaktiv ist, zeigt anny den Hinweis „Die Integration ist derzeit nicht aktiv.". Löse anschließend eine Testbuchung in Treatwell aus und prüfe, ob sie nach kurzer Zeit in anny erscheint.
  </Step>
</Steps>

Sobald die Integration aktiv ist, werden weitergeleitete Treatwell-Buchungen automatisch in anny angelegt, Verschiebungen nachgezogen und Stornos übernommen. anny-Buchungen werden in Treatwell sichtbar.

<Tip>
  Behandle die weitergeleitete E-Mail-Adresse wie ein Passwort: Wer sie kennt, kann Buchungen in deinen Kalender schreiben. Die Weiterleitungsregel muss neue Buchungen, Verschiebungen und Stornos erfassen und darf nicht durch Spam- oder Filterregeln blockiert werden.
</Tip>

### Einstellungen & Optionen

| Einstellung | Beschreibung |
| - | - |
| E-Mail-Adresse (Postfach für Treatwell-Mails) | Dedizierte anny Inbox, an die du Treatwell-Buchungsmails und Stornos weiterleitest |
| Akzeptierte Absender (Weitere Absender) | Zusätzliche Adressen oder Domains, deren weitergeleitete Mails anny ebenfalls akzeptiert |
| Abweichende Namen | Zuordnung, wenn eine Ressource oder ein Service in Treatwell anders heißt als in anny |
| Aktivierungsverlauf | Verlauf der Aktivierungen und Deaktivierungen sowie der Treatwell-Mail-Importe (angelegt, verschoben, storniert, übersprungen, fehlgeschlagen) |

## Einschränkungen

Die Treatwell-Integration unterstützt nicht:

* Echtzeit-Synchronisation: Buchungen werden mit einer typischen Verzögerung von etwa 30 bis 60 Sekunden übertragen
* Eine direkte API-Verbindung: Treatwell-Buchungen kommen per E-Mail, anny-Buchungen gehen per Kalenderlink
* Import ohne aktive Weiterleitung: Ohne korrekt eingerichtete Weiterleitungsregel werden keine Treatwell-Buchungen importiert
* Zwei Ressourcen aus einer Mail: Mitarbeiter:in und Raum werden nicht gleichzeitig als zwei anny-Ressourcen gebucht
* Kundenanlage ohne E-Mail: Fehlt die Kund:innen-E-Mail in der Mail, legt anny keine neue Kundenakte an

## Verbindung trennen

<Warning>
  Wenn du die Integration deaktivierst oder löschst, werden keine Termine mehr synchronisiert. Weitergeleitete Treatwell-Mails werden dann nicht mehr als Buchungen übernommen und anny-Buchungen nicht mehr nach Treatwell übertragen. Bereits importierte Buchungen bleiben in anny erhalten.
</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 schnell erscheinen Treatwell-Buchungen in anny?">
    In der Regel innerhalb von etwa 30 bis 60 Sekunden. Die Synchronisation ist nicht in Echtzeit, da Buchungen per E-Mail-Weiterleitung übertragen werden.
  </Accordion>

  <Accordion title="Werden Stornierungen aus Treatwell automatisch übernommen?">
    Ja. Wird eine Buchung in Treatwell storniert, storniert anny die zugehörige Buchung, sofern die Storno-E-Mail an die anny Inbox weitergeleitet wird. anny schreibt dem:der Kund:in dazu keine eigene Mail.
  </Accordion>

  <Accordion title="Werden Verschiebungen aus Treatwell in anny übernommen?">
    Ja. Wird eine Buchung in Treatwell verschoben und die Update-Mail an die anny Inbox weitergeleitet, verschiebt anny den bestehenden Termin (und eine dazugehörige Terminfolge) auf die neue Uhrzeit. Bleibt die Startzeit gleich, ändert anny nichts.
  </Accordion>

  <Accordion title="Welche Kundendaten werden übernommen, und wird immer ein:e Kund:in angelegt?">
    anny kann Vorname, Nachname, E-Mail und Telefon aus der Treatwell-Mail übernehmen, wenn die Felder dort stehen. Eine neue Kundenakte entsteht nur, wenn eine E-Mail-Adresse enthalten ist. Bestehende Kund:innen werden per E-Mail oder Telefon zugeordnet. Ohne E-Mail entsteht keine neue Akte, anders als bei [Urban Sports Club](/urban-sports-club). Marker wie „Neu" am Namen werden entfernt.
  </Accordion>

  <Accordion title="Wie erscheint der Termin im anny-Kalender, wenn Treatwell Mitarbeiter:innen und Räume kennt?">
    Der Termin erscheint als akzeptierte Buchung auf genau einer Ressource, in der Regel der Mitarbeiter:in aus „bei" bzw. „with". Mappe diesen Namen unter **Abweichende Namen** auf die anny-Ressource. Ein Treatwell-Raum wird nicht automatisch als zweite Ressource gebucht. Treatwell-Buchungen bleiben in anny bearbeitbar, anders als Buchungen über [Urban Sports Club](/urban-sports-club).
  </Accordion>
</AccordionGroup>

## Troubleshooting

<AccordionGroup>
  <Accordion title="Treatwell-Buchungen erscheinen nicht in anny">
    Meist ist die E-Mail-Weiterleitung nicht korrekt eingerichtet. Prüfe der Reihe nach: 1. Ist die Integration aktiv (Toggle oben rechts)? 2. Ist die Weiterleitungsregel aktiv und erfasst neue Buchungen, Verschiebungen sowie Stornos? 3. Stimmt die Zieladresse mit der dedizierten anny Inbox überein? 4. Kommen die Mails unter einem anderen Absender an und müssen unter **Weitere Absender** ergänzt werden? 5. Landen die Treatwell-Mails eventuell im Spam oder in einem Filter? 6. Steht im **Aktivierungsverlauf** ein übersprungener oder fehlgeschlagener Import?
  </Accordion>

  <Accordion title="anny-Buchungen erscheinen nicht in Treatwell">
    Prüfe, ob der ICS-Kalenderlink korrekt in Treatwell importiert wurde. Beachte außerdem die typische Verzögerung von etwa 30 bis 60 Sekunden, bevor neue anny-Buchungen sichtbar werden.
  </Accordion>

  <Accordion title="Die Buchung wird der falschen Ressource oder dem falschen Service zugeordnet">
    Ohne Zuordnungsregel wählt anny den Eintrag, dessen Name zur Mail passt. Die Ressource kommt typischerweise aus dem Feld „bei" in der Treatwell-Mail. Heißt die Mitarbeiter:in oder der Service in Treatwell anders als in anny, lege unter **Abweichende Namen** eine passende Zuordnung an.
  </Accordion>
</AccordionGroup>

> Wichtige Informationen für Agenten:
>
> **Abgrenzung:** Treatwell ist ein Partner-/Buchungskanal, KEINE klassische Kalender-Integration (wie Google/Microsoft) und KEINE API-Integration. Treatwell → anny per E-Mail-Weiterleitung der Salon-Mails an `tw-…@calendar.anny.co` (kein Kundenpostfach). anny → Treatwell per generischem ICS-Kalenderfeed (`cal.ics`), der NICHT in der Treatwell-Settings-UI liegt. Deshalb keine Echtzeit, typische Verzögerung ca. 30 bis 60 Sekunden.
>
> **UI-Pfad:** Adminbereich → **Integrationen** → **Treatwell**. Sektionen: **Postfach für Treatwell-Mails** (Feld **E-Mail-Adresse**), **Weitere Absender** (Feld **Akzeptierte Absender**), **Abweichende Namen** (Button **Hinzufügen**, Felder **Name in Treatwell**, **Zuordnen auf** Ressource/Service, optional **Produktoption**), **Aktivierungsverlauf** auf der Integrations-Detailseite (Aktivierung/Deaktivierung plus Treatwell-Mail-Events; ActivityRow zeigt aufklappbare `properties`). Toggle oben rechts. Löschen: **drei Punkte** → **Löschen**. Prepaid-Strategie existiert im Backend, hat aber kein Panel in Treatwell.vue.
>
> **Kein Gating:** Kein Plan-Gating, nur Aktivierungs-Toggle, daher kein Info-Plan-Hinweis.
>
> **Quirks:** Storno (`event_type` cancelled) storniert alle Buchungen derselben Bestellreferenz, `notifyCustomer: false`. `event_type` updated verschiebt den bestehenden Model-Sync (gleiche Startzeit → skipped already\_imported; Kinder einer Sequenz rücken um dasselbe Delta). Mehrere Behandlungen in einer Mail → `createBookingSequence: true` auf derselben Ressource. Jedes Import-Ergebnis (created/updated/cancelled/skipped/failed/empty/senderRejected) erzeugt eine Venue-Mail und einen Activity-Log-Eintrag auf der Integration. Importierte Bestellungen erhalten `utm_source=treatwell`. CustomerMatcher: Anlage nur mit E-Mail; Match per E-Mail oder Telefon; nur Telefon ohne E-Mail erzeugt keinen neuen Kunden; anonym ohne Kontakt = Buchung ohne customer\_id. Genau eine Resource pro Import (`bei`/`with` = Mitarbeiter:in). `checkAvailability: false` hängt keine verbundenen Räume an. Kanal `treatwell` ist NICHT in `isViaProtectedChannel` (bearbeitbar, anders als USC/ClassPass/GYG). Katalog-Limit 150 Ressourcen/Services. Erinnerungen/Reviews: `is_booking_mail` false. Absender: Treatwell-Länderdomains plus **Akzeptierte Absender**, sonst Text muss „treatwell" erwähnen.
>
> **Beziehungen:** Urban Sports Club (immer Kunde mit Platzhalter-Mail, read-only, Anonymisierung bei Storno). ICS-Kalender-Artikel für den Export-Link nach Treatwell. ClassPass: anderer geschützter Kanal.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.