Zum Hauptinhalt springen

CRM-Übersicht

Zweck

Die Seite /crm ist die zentrale Vertriebssicht: Sie listet alle Datensätze, für die das CRM-Tracking aktiv ist, mit Status, zuständigem Mitarbeiter, Branche, ICP-Einstufung, letztem Kontakt und Reaktionszeit. Die eigentliche Pflege passiert im CRM-Tab eines Kunden, Kontakts oder Standorts. Die Mechanik beschreibt das Konzept CRM & ICP.

Voraussetzungen

- Berechtigung `view:FE_Crm` + `view:CrmProfile`. - Für die Pflege: `create`/`update`/`delete:CrmProfile`, `create:CrmActivity`, `create:CrmOpportunity`. - Mindestens ein [Kunde](/customers), [Kontakt](/contacts) oder [Standort](/locations) mit aktiviertem CRM-Tracking.

Berechtigungen (CASL)

ActionSubjectWirkung
viewFE_CrmCRM-Seite und CRM-Tab sichtbar
view/create/update/deleteCrmProfileProfil lesen, Tracking aktivieren/deaktivieren, Felder pflegen
view/createCrmActivityTimeline lesen, Ereignisse/Wiedervorlagen protokollieren
view/createCrmOpportunityOpportunities lesen/anlegen
viewIndustryBranchen-Auswahl
viewSocialLinkSocial-Links am Profil

CRM-Tracking aktivieren

Ein CRM-Profil entsteht pro Datensatz über einen Schalter:

  1. Öffnen Sie einen Kunden, Kontakt oder Standort.
  2. Im Bereich „Allgemeine Daten" den CRM-Tracking-Schalter einschalten → SpeamCore legt das CrmProfile an (POST /crm-profiles) und blendet den Tab CRM ein.
  3. Ausschalten löscht das Profil wieder (DELETE /crm-profiles/:id, Soft-Delete) und der Tab verschwindet.

Die Übersichtsseite (/crm)

Die Tabelle (GET /crm-overview) zeigt pro Profil:

SpalteBedeutung
DatensatzName + Typ (Kunde / Kontakt / Standort)
Statuslead / prospect / customer / inactive (farbcodiert)
VerantwortlichVertriebs-Owner (salesEmployeeId)
Brancheaus den Branchen-Stammdaten
ICPJa/Nein bzw. ICP-Score
Letzter Kontaktjüngstes Timeline-Ereignis
Offene WiedervorlagenAnzahl fälliger Reminder
ReaktionszeitØ/letzte — grün/rot gegen die SLA-Schwelle (crmResponseSlaHours)

Mit Suche (Datensatz/Owner/Branche), Status-Filter und Sortierung (letzter Kontakt, offene Wiedervorlagen, Reaktionszeit). Ein Klick auf eine Zeile öffnet den CRM-Tab des Datensatzes.

Der CRM-Tab (Kunde / Kontakt / Standort)

Der Tab (/customers/:id/crm, /contacts/:id/crm, /locations/:id/crm) ist die Arbeitsfläche pro Datensatz und bündelt:

Profil-Felder

FeldnamePflichtDatentypWirkung beim AusfüllenVoraussetzung
crmStatusjalead/prospect/customer/inactiveVertriebs-Status; steuert Filter/Farbe in der Übersicht
salesEmployeeIdneinUUID (Mitarbeiter)zuständiger Vertriebs-Ownerview:Employee
websiteUrlneinStringWebsite; Basis der KI-Bewertung (aus E-Mail-Domain vorbelegt)
industryIdneinUUID (Branche)Branche; treibt das automatische ICPview:Industry
employeeSizeBandneinGrößenklasseMitarbeitergröße (Dropdown)
isIcp / icpReasonBoolean / TextIdeal-Customer-Kennzeichen + Begründung (auto oder manuell)
icpScore / icpRationale— (read-only)0–100 / TextKI-Fit-Score + KI-BegründungKI-Bewertung gelaufen

Dazu Social-Links (LinkedIn/Xing/…) und der Button KI-Bewertung (nur bei gesetzter Website) → startet POST /crm-profiles/:id/ai-assessment und zeigt das Ergebnis (Risiko, Trust-Score, Warnsignale, Positives, Empfehlungen, Quellen).

Opportunities

Pro Profil lassen sich Leistungen als Opportunity mit Priorität (low/medium/high) hinterlegen. Es gibt bewusst keine Phasen/Forecast — siehe Konzept.

Aktivitäts-Timeline

Der Verlauf führt automatische Ereignisse (Anlage, Angebote, Briefe, Audit) und manuelle Einträge zusammen. Über + Ereignis protokollieren Sie call / note / meeting / email / reminder — mit Zeitpunkt (rückdatierbar), Text, optionaler Wiedervorlage und Compliance-Markierung (POST /crm-activities).

Eine **Wiedervorlage** (`reminder`) wird aktuell als Timeline-Ereignis mit `remindAt` gespeichert und in der Übersicht als „offene Wiedervorlage" gezählt. Eine echte Aufgabe oder Push-Benachrichtigung daraus ist **noch nicht** angebunden.

Verknüpfungen zu anderen Modulen

Wiederverwendbare Konzepte

API/Schnittstellen

MethodeEndpointZweckCASL
GET/api/crm-overviewzentrale Analyse aller Profileview CrmProfile
GET/api/crm-profilesProfil-Listeview CrmProfile
POST/api/crm-profilesTracking aktivierencreate CrmProfile
PATCH/api/crm-profiles/:idFelder ändernupdate CrmProfile
DELETE/api/crm-profiles/:idTracking deaktivierendelete CrmProfile
POST/api/crm-profiles/:id/ai-assessmentKI-Website-Bewertung startenupdate CrmProfile
GET/api/crm-timelineaggregierte Timeline (parentType+parentId)view CrmActivity
GET/POST/api/crm-activitiesEreignisse lesen/protokollierenview/create CrmActivity
GET/POST/api/crm-opportunitiesOpportunities lesen/anlegenview/create CrmOpportunity

Versionshinweise

  • 2026-06-24: Initiale Veröffentlichung — CRM-Übersicht (/crm) und CRM-Tab (Profil-Felder, Opportunities, Timeline, KI-Website-Bewertung, Tracking-Toggle). Verifiziert an crmProfile.model.ts, crmOpportunity.model.ts, crmActivity.model.ts, crmProfile.router.ts, crmActivity.router.ts, CrmOverviewPage.tsx.