1In one sentence#
The Client module is the heart of LumosCRM: a single, secure, 360-degree profile for every individual or organization your agency serves — capturing who they are, what they like and avoid, how they pay, who manages them, and every privacy consent and identity document you hold on them — with a complete, tamper-proof history of every change.
It is purpose-built for high-touch, relationship-led businesses — private concierge agencies, family offices, wealth and lifestyle managers, and premium service firms — where knowing the client deeply, serving them flawlessly, and proving compliance are all equally important.
2Who it's for#
| Role | What they get from the module |
|---|---|
| Relationship / account managers | A living profile of every client they own — preferences, history, and the context to deliver personal service. |
| Concierge & lifestyle staff | Instant access to what a client loves, avoids, and absolutely will not tolerate, before booking anything. |
| Operations & onboarding | A guided way to bring a new client into the business correctly and completely. |
| Compliance & legal | KYC tracking, GDPR consent records, PEP flags, and an immutable audit trail — built in, not bolted on. |
| Finance | Per-client billing profiles, currencies, tax details, and a live view of spend. |
| Leadership | Portfolio KPIs: client mix, growth, spend, and accounts that need attention. |
3The core idea: a true client 360#
Most CRMs store a name, an email, and a pile of notes. LumosCRM treats a client as a structured, multi-dimensional record. Each client links to a person (or organization) and then layers on ten specialized profiles around them:
┌─────────────────────┐
│ CLIENT PROFILE │
│ (identity, tier, │
│ status, contacts) │
└──────────┬──────────┘
│
┌──────────────┬──────────────┬──┴───────────┬──────────────┬──────────────┐
│ │ │ │ │ │
Preferences Affinities Financial Relationships Staff Identities
(dining, (loves / (currency, (spouse, PA, assignments & KYC docs
travel, avoids, net worth, family office, (who manages (passport,
lifestyle) hard blocks) billing, tax) emergency) this client) ID, visa)
│ │ │ │ │ │
└──────────────┴──────────────┴──────┬───────┴──────────────┴──────────────┘
│
┌──────────────┬───────┴──────┬──────────────┐
│ │ │ │
Consents Tags Competitors Flags
(GDPR, (segments, (rivals you (alerts,
immutable) campaigns) compete with) holds)
│
Audit Trail
(every change, forever)
This structure is the product's biggest differentiator: everything a team needs to serve a client brilliantly and stay compliant lives in one place, organized, searchable, and access-controlled.
4Capabilities at a glance#
| Capability | What it means for the user |
|---|---|
| Rich client profiles | Personal details, multiple contact methods, addresses, salutations, languages, and contact-hour rules. |
| Service tiers | Classify clients as Standard, Premium, Elite, or Founding — and protect the ladder with a one-way upgrade rule. |
| Lifecycle status | Track each client from Prospect → Active → Inactive → Suspended → Churned. |
| Preferences & affinities | Capture likes, dislikes, and absolute "never do this" blocks — with AI-assisted search and conflict detection. |
| Financial profiles | Per-client currency, accepted currencies, net-worth band, spending tier, billing entity, tax residency, and payment terms. |
| KYC & identity documents | Store and verify passports, IDs, visas; track expiry; secure file vault. |
| GDPR consent ledger | Immutable, append-only consent records with legal basis, capture channel, and evidence files. |
| Relationships | Map spouses, children, assistants, family offices, proxies, and emergency contacts — with system-access levels. |
| Staff assignment | Assign primary managers, advisors, and specialists; reassign cleanly without losing history. |
| Competitor intelligence | Record which rivals a client also uses and your estimated share of wallet. |
| Flags & alerts | Raise and resolve action items: payment overdue, KYC expiring, legal hold, do-not-contact. |
| Segmentation tags | Group clients for campaigns and internal workflows. |
| Audit trail | Every change, by whom, when, and from where — permanent and unchangeable. |
| Global search & pickers | Find any client in two keystrokes; reuse client context across invoices, requests, and events. |
| Portfolio KPIs | At-a-glance metrics on the client list: spend, growth, accounts needing review. |
5The client lifecycle#
Status — where the client is in their journey#
| Status | Meaning |
|---|---|
| Prospect | Pre-sale; not yet an active client. (Default for new records.) |
| Active | Engaged, paying, served. |
| Inactive | Dormant — no recent activity. |
| Suspended | Temporarily on hold. |
| Churned | Relationship ended / lost. |
Tier — the service level#
Clients sit on a four-rung ladder: Standard → Premium → Elite → Founding.
A built-in business rule makes tier promotion one-way through the dedicated upgrade action — a client can be moved up the ladder, but never quietly demoted by accident. (Deliberate downgrades remain possible through a full edit, but they are an explicit, audited decision rather than a slip.) This protects the integrity of your most valuable segments.
Note for marketing: Tier and status values are configurable in Settings → Clients. The labels above are the out-of-the-box defaults; an agency can rename or extend them to match its own commercial language.
6Screen-by-screen walkthrough#
6.1The Client List (index)#
The landing screen for the module. It combines a portfolio dashboard with a working list.
At the top — KPI cards:
- Total clients (with active, prospect, and Founding-tier breakdowns)
- New clients this quarter
- Clients needing review (KYC pending, flagged, or expired)
- Inactive clients
- Year-to-date spend, with year-over-year growth %
- Open requests and SLA breaches
- New prospects this month
The list itself:
- Quick tabs: All · Active · Prospects · Founding · Needs Review · Inactive
- Live search by client code, internal codename, or the person's name
- Filters for tier, status, and a "needs review" toggle
- A currency selector that scopes all monetary figures (so multi-currency portfolios stay meaningful)
- Sortable columns showing avatar, client code, tier badge, status badge, primary manager, location, YTD spend, and open-request count
- Color-coded badges — Founding (purple), Elite (blue), Premium (teal), Standard (gray); Active (green), Prospect (blue), and so on
- A prominent "New client" button
- Row selection with a bulk action bar (tagging, reassignment, and export are staged here)
Pagination: 20 clients per page.
6.2Creating a client#
Creation is a guided, multi-section form designed so nothing important is missed. A left-hand navigator lists every section; a live preview card and a completion ring (percentage complete) sit alongside, and an avatar can be uploaded with instant preview.
The form is organized into sections covering the client's full picture:
- Identity — name, preferred name, salutation, date of birth, nationality, language, timezone
- Contact — a repeater for multiple email / phone / messaging entries, with one marked primary
- Addresses — residential, billing, and other addresses
- Relationships — link family, assistants, and key contacts
- Tier & Status — set the starting tier and lifecycle status
- Staff Assignment — assign the managing team member(s)
- Preferences — likes and service preferences
- Affinities — favorites, avoids, and hard blocks
- Competitors — rivals the client also uses
- Financial — currency, net-worth band, billing, invoicing rules
- Compliance & KYC — risk profile, KYC status, PEP and NDA flags
- Consents — GDPR consents, with optional evidence-file upload
- Review & Create — final confirmation
What's required to create a client: a first name (or a link to an existing person record) and at least one contact method marked primary. Everything else can be filled in now or added later. The form validates in real time against the server, so users see issues as they type rather than after submitting.
The Create button stays disabled until the minimum (name + primary contact) is satisfied. A draft badge signals work in progress.
Each client is automatically given a unique, human-readable client code (e.g.
CLT-00291) on creation — no manual numbering required.
6.3The Client Profile (show page)#
The profile is the day-to-day workspace for a client. A rich header shows the avatar, full name with salutation, client code, primary manager, member-since date, and status/tier badges plus VIP, NDA, and PEP indicators where they apply.
Below the header, information is organized into tabbed sections (each shown only to users with permission to see it):
| Tab | What's on it |
|---|---|
| Overview | Contact methods, addresses, a financial summary, and KYC status — the at-a-glance snapshot. |
| Preferences | Lifestyle and service preferences, grouped by category. |
| Affinities | What the client loves, avoids, and absolutely blocks. |
| Relationships | Family, assistants, proxies, and emergency contacts. |
| Staff | Who manages this client, in what role, and since when. |
| Financial | Full, sortable, paginated invoice history plus the billing profile. |
| Requests | Linked service requests from across the CRM. |
| Events | Linked events. |
| KYC & Docs | Identity documents with expiry alerts (a warning appears as documents approach expiry). |
| Consents | GDPR consents — granted/withdrawn state, legal basis, and downloadable evidence, marked clearly as "Immutable · Append-only." |
| Competitors | Rival services the client uses and estimated share of wallet. |
| Audit Trail | A paginated timeline of every change made to the client. |
Crucially, almost everything on the profile is editable in place via slide-in drawers — update a contact method, add a preference, record a consent, or assign staff without leaving the page. Expensive tabs load on demand for speed.
6.4Editing a client#
The edit screen mirrors the create form's layout, pre-filled with current data. It adds smart change-tracking:
- The header badge reads "Unsaved changes," "No changes," or "Required fields missing" as appropriate.
- Save is disabled until something actually changes — no accidental empty saves.
- Two fields are permanently locked after creation — the linked person and the original onboarder — to preserve data integrity and accurate history.
7Feature deep-dives#
7.1Identity & contact#
Each client is anchored to a person record holding name, preferred name, date of birth, nationality (one or more), language, gender, and timezone. Around it you can store:
- Multiple contact methods — email, phone, mobile, WhatsApp, Telegram, etc. — with one designated primary. Emails are normalized and kept unique per person.
- Multiple addresses — residential, billing, and more, with one primary.
- Service preferences at the client level — salutation, preferred communication channel, preferred language, and a free-text contact-hours note (e.g. "Never call before 10am — reach via PA only").
- An optional internal codename for ultra-sensitive clients, so a profile can be referenced without exposing a recognizable name.
7.2Preferences & affinities — the personalization engine#
This is where LumosCRM turns service from generic to genuinely personal.
Preferences capture lifestyle detail across categories — dining, travel, accommodation, lifestyle, gifting, wellness, communication, entertainment, sport, and fashion. Each preference records its source (stated by the client, noted by staff, observed, or inferred), can be marked private (hidden from junior staff), and can be time-bounded (e.g. a dietary rule that applies only during Ramadan).
Affinities go a step further, recording the client's relationship to specific things — vendors, hotel brands, airlines, destinations, cuisines, dishes, activities, people, products, and more. Each affinity has a type: favourite · avoid · blacklisted · on probation · tried & liked · tried & disliked · neutral — and an intensity from 1 to 5.
The standout capability: an affinity at intensity 5 marked avoid or blacklisted becomes an absolute block. Combined with AI-assisted semantic search, the system can take a proposed booking — say, "omakase dinner at a Japanese restaurant" — and automatically surface any conflicting blocks (e.g. a shellfish allergy or a blacklisted venue) before the booking is made. This conflict-detection feeds directly into the Requests workflow, helping prevent the kind of mistake that damages a premium relationship.
7.3Financial profile#
A dedicated billing profile per client:
- Preferred currency and a list of other accepted currencies (defaults to EUR)
- Net-worth band and spending tier for prioritization
- Billing entity and billing address (often a company or trust, not the individual)
- Tax residency and tax ID / VAT number (encrypted)
- Default payment method (bank transfer, card, crypto, cheque)
- Invoice required flag, invoice currency, and credit terms (e.g. Net-30)
The profile feeds invoicing across the CRM and keeps multi-currency portfolios coherent.
7.4Relationships & access#
Map the people around a client: spouse, child, parent, sibling, personal/executive assistant, family office, proxy, guardian, or trusted contact. For each you can record an emergency-contact priority and, where relevant, a system-access level — read-only, request-only, or full proxy — so an assistant can be granted exactly the right amount of access.
7.5Staff assignment#
Assign team members to a client as primary manager, secondary manager, concierge, lifestyle advisor, or travel specialist. Assignments carry start dates and notes, and reassignment is handled cleanly — the previous assignment is closed (never deleted), preserving an accurate record of who managed the relationship and when.
7.6KYC & identity documents#
Store identity documents — passport, national ID, residence permit, driving licence, visa, or other — with issuing country, issue and expiry dates, and a verification status (verified by whom, and when). Documents are held in a secure private vault; sensitive numbers are stored in masked/hashed form so the full value is never exposed. The system flags documents approaching expiry so KYC never silently lapses.
7.7GDPR consent ledger#
A compliance-grade consent system. Each consent records its type (marketing email/SMS, data sharing, profiling, third-party transfer, sensitive-data processing), the legal basis, how it was captured (onboarding form, email link, verbal, portal, paper), the capturing staff member, and optional evidence files — plus IP address, country, and timestamp.
Consent records are append-only and immutable. You never edit or delete a consent; withdrawing consent creates a new record. This gives you a complete, defensible history of exactly what a client agreed to and when — essential for GDPR audits.
7.8Competitor intelligence#
Track rivals a client also uses — concierge agencies, travel agencies, wealth managers, lifestyle services — along with whether the client also uses, previously used, is considering, or was lost to them, and an estimated share of wallet (0–100%). A ready-made foundation for win-back campaigns and competitive analysis.
7.9Flags & alerts#
Raise time-sensitive action items against a client — VIP upgrade pending, payment overdue, sensitive-comms-only, legal hold, KYC expiring, PEP review required, NDA pending, or do-not-contact — each with a severity (info, warning, critical). Flags are resolved, not deleted: closing a flag records who resolved it, when, and how, leaving a clean accountability trail.
7.10Audit trail#
Every meaningful action — create, update, delete, view, export, anonymise, consent-recorded — is logged against the client with the actor, their role, the affected record, before/after values, the exact fields that changed, timestamp, IP address, and session. The log is permanent and unchangeable, and it survives even if a client is deleted — the backbone of compliance reporting and forensics.
8Security, privacy & compliance#
LumosCRM was designed for businesses that handle sensitive, high-net-worth client data. Compliance is built into the foundation:
- Encryption of sensitive fields — private staff notes, tax IDs, and identity document references are encrypted; identity numbers are masked so only the last few characters are ever shown.
- PEP handling — Politically Exposed Person status is a first-class, indexed flag supporting anti-money-laundering workflows.
- Immutable consent & audit records — GDPR consents and the audit trail can never be altered or erased, giving you a defensible compliance position.
- KYC lifecycle — verification status, risk profiles, and automatic expiry warnings keep due diligence current.
- Privacy controls — preferences, affinities, and relationships can be marked private to hide them from junior staff.
- Granular, role-based access — every section (overview, preferences, affinities, relationships, staff, KYC & documents, consents, competitors) has its own view/create/update/delete permissions.
- Per-user record scoping — self-scoped users see only the clients they own (assigned to them, or onboarded by them). This applies to everyone by policy — even top-level roles do not silently bypass it — so data exposure is contained by design.
9Search & integration#
- Global search (⌘K) — find any client instantly by client code, internal codename, or the person's name; results show the tier as a badge and link straight to the profile.
- Client pickers everywhere — when creating an invoice, request, or event, a smart picker lets you find and attach a client, pre-filling useful context (primary email, preferred currency) and surfacing VIP clients first.
- Cross-module visibility — the profile pulls in linked invoices, requests, and events, so the client 360 stays whole across the entire CRM.
10Use cases & scenarios#
Use case A — Onboarding a new VIP client#
A relationship manager meets a prospective high-net-worth client. From the list they click New client, work down the guided form — capturing the client's name, preferred WhatsApp contact, dietary restrictions (gluten-free; shellfish = intensity-5 block), preferred airlines, EUR billing with Net-30 terms, and a marketing consent collected verbally during the meeting — upload a passport for KYC, set the tier to Premium, and assign themselves as primary manager. The system issues a client code and logs the creation. The client is live in minutes, fully profiled.
Use case B — Preventing a service mistake#
Concierge staff are about to book a seafood tasting menu. A request-time conflict check reads the client's affinities, spots the intensity-5 shellfish avoid, and surfaces a warning before the booking goes out — turning a potential relationship-damaging error into a non-event.
Use case C — Passing a GDPR audit#
A regulator asks the agency to prove it had marketing consent for a given client on a given date. Compliance opens the client's Consents tab, sees the immutable record — legal basis, capture channel, timestamp, IP, and the original signed evidence file — and exports it. Because consents can never be edited or deleted, the record is trusted on its face.
Use case D — A manager leaves#
When an account manager departs, operations reassigns their clients to colleagues. Each reassignment closes the old assignment and opens a new one, so the question "who managed this client in March?" always has an accurate answer. Nothing is lost.
Use case E — A targeted campaign#
Marketing wants to reach all art-collecting clients in the Mediterranean segment. They filter and tag clients (art_collector, summer_med), then build the campaign against that segment — tags act as the bridge between rich client data and outbound activity.
Use case F — Win-back#
Leadership reviews clients marked lost to a named competitor, with estimated share of wallet, to prioritize a win-back program — competitor intelligence captured during everyday work becomes strategic input.
Use case G — Keeping KYC current#
The compliance dashboard's Needs review count surfaces clients with pending, flagged, or expiring KYC. Staff work the list, and expiry warnings on identity documents ensure no client's due diligence quietly lapses.
11Permissions reference (simplified)#
Access is controlled per section and per action. The main permission families:
| Area | View | Create | Update | Delete |
|---|---|---|---|---|
| Client record | clients.record.view | clients.record.create | clients.record.update | clients.record.delete |
| Overview (contacts, addresses, details, financial) | — | clients.overview.create | clients.overview.update | clients.overview.delete |
| Preferences | — | clients.preferences.create | clients.preferences.update | clients.preferences.delete |
| Affinities | — | clients.affinities.create | clients.affinities.update | clients.affinities.delete |
| Relationships | — | clients.relationships.create | clients.relationships.update | clients.relationships.delete |
| Staff assignment | — | clients.staff.create | clients.staff.update | clients.staff.delete |
| KYC & documents | clients.kyc and documents.view | clients.kyc and documents.create | clients.kyc and documents.update | clients.kyc and documents.delete |
| Consents | clients.consents.view | clients.consents.create | (append-only) | (append-only) |
| Competitors | — | clients.competitors.create | clients.competitors.update | clients.competitors.delete |
Roles are assembled from these permissions in the RBAC module, so each agency can shape exactly what each team member can see and do.
12Glossary#
| Term | Meaning |
|---|---|
| Tier | The client's service level: Standard, Premium, Elite, or Founding. |
| Status | Where the client is in their lifecycle: Prospect, Active, Inactive, Suspended, Churned. |
| KYC | "Know Your Customer" — identity verification and due diligence. |
| PEP | "Politically Exposed Person" — an AML compliance flag. |
| Affinity | A recorded like, dislike, or block against a specific thing (vendor, cuisine, destination…). |
| Absolute block | An intensity-5 avoid/blacklist that the system treats as a hard "never." |
| Consent ledger | The immutable, append-only record of a client's privacy permissions. |
| Self-scoping | The rule that limits a user to seeing only the clients they own. |
| Client code | The auto-generated, human-readable reference for each client (e.g. CLT-00291). |
This document describes the Client module as currently built. Tier and status values, and the labels on configurable option-sets, can be tailored per deployment in Settings → Clients.