ChatBot (tenant support)
The ChatBot tab under Account Settings → System configures how Vivin’s tenant-facing automated assistant behaves on channels such as WhatsApp and email. It does not control the operator AI Assistant (/ai-chat) or external Tenant MCP tools — those are separate surfaces documented under Automation & AI.
Configure ChatBot during or after the core Getting Started — Recommended Setup Sequence steps 1–12 (optional section) — pair IF/THEN rules with step 11 Emails before tenants message you on WhatsApp. Full tab map: Recommended setup order. Finish steps 13–15 and Onboarding a New Property — Step 7. Workflow pairing after go-live: Account Settings — Setup sequence after go-live.
Set Persona tone first, then author IF/THEN rules. Operator triage: Inbox and Dashboard bell gating and Booking detail — Communication tab. Non-linear operator habits (Lockout catch-up, Pending manual receipt approval, Reject/revert mistaken receipts, Portfolio segmentation by tenant category, Notification row-click navigation, Payment alert to receivables triage, Confirmation alert triage, Finance debt receivables triage, Finance Income status drill-down, Cash flow forecast drill-down) have matching Related subsections below. Full pairing matrix: ChatBot section cross-reference · Account Settings — Tab cross-reference.
Open ChatBot at platform.vivin.app/settings/chatbot. Route reference: Deep Links — Account Settings.
Pair IF/THEN rules with Emails lifecycle and Communication Rules (email channel parity) and triage escalations in Inbox alongside booking Communication tabs. Contrast tenant-facing chatbot channels with landlord AI Chat and poll AI usage API for landlord_chat / utility_bill_extraction spend during month-end review. Section-to-doc pairing: ChatBot section cross-reference. Hub tab matrix: Account Settings — Tab cross-reference.
Who can edit ChatBot settings
The ChatBot tab appears only when your role includes the Chatbot permission. Grant or review it in Users and roles. On some accounts, chatbot configuration may be restricted to Super Admin only (the product shows a read-only message when rules are managed centrally).
The Tenant Portal does not include an in-portal chat UI today; tenants interact with this assistant through WhatsApp, email, and related workflows — not through a chat widget inside the portal.
Layout
The ChatBot settings screen uses three subtabs:
| Subtab | Purpose |
|---|---|
| Bot Status | WhatsApp (UAZAPI) connection status, QR pairing, and reconnect when the business line drops. |
| Persona | Short instructions that shape tone and scope for automated replies. |
| Special Rules | Up to 20 IF/THEN rows pairing a specific If condition with a Then response directive. |
Persona and Special Rules subtabs
- Persona — Short instructions that shape tone and scope for automated replies (max 500 characters). See Persona.
- Special Rules — IF/THEN rule editors with Save / Cancel in edit mode. See IF/THEN rules.

Bot Status subtab (WhatsApp connection)
Bot Status pairs with Inbox module and booking Communication — both surfaces stay greyed until isTenantChatBotEnabled and a live session exist. Full pairing matrix: ChatBot section cross-reference.
Open Bot Status to see whether your tenant-support WhatsApp line is paired with Vivin’s UAZAPI integration:
| Badge state | Meaning |
|---|---|
| Connected | Session is live; outbound WhatsApp (composer on booking Communication) can send. Connect WhatsApp stays visible but disabled until you disconnect elsewhere. |
| Disconnected | Line is configured but not paired — click Connect WhatsApp, read the pairing warning, then confirm Connect anyway (unlocks after a short countdown) to fetch a QR code (and optional numeric pair code). Scan with WhatsApp on the business phone; the UI polls every few seconds until the session connects, then clears the QR. |
| Awaiting scan | Pairing in progress after you confirmed the warning — QR is on screen until the phone scans or you Refresh QR code. |
| Not configured | UAZAPI is not provisioned for the account — contact Vivin support. |
Use Refresh QR code while a code is on screen if the first scan expired. After Connected, tenant threads and the booking Communication composer use this session.


Connect WhatsApp opens a warning that pairing a brand-new or rarely-used number can trigger Meta blocks. Read the recommendation, wait for Connect anyway to unlock (~5 seconds), then scan the QR.
Bot Status — Connected capture re-verified 2026-06-17 05:10 UTC; QR pairing capture refreshed 2026-07-27 00:05 UTC (VIVIN_DOCS_BASE_URL=http://localhost:5173 VIVIN_DOCS_RECORD_API=$VITE_API_BASE_URL npx tsx tools/capture-settings-chatbot-status-bot-screenshots.ts). Connected still skipped — docs account state=disconnected until UAZAPI session reconnects (probe 2026-07-27 00:05 UTC). Pairing walkthrough MP4 added 2026-07-26 01:06 UTC (npx tsx tools/record-settings-chatbot-status-bot-pairing-flow-mp4.ts — ends on Awaiting scan QR; live scan to Connected not recorded on docs account).
Persona
Persona shapes tone across WhatsApp and email — keep copy aligned with Emails — Communication Rules and lifecycle templates. External clients read the same block via Tenant MCP. Full pairing matrix: ChatBot section cross-reference.
The persona block (max 500 characters) describes how the assistant should sound and what it should prioritise — for example professional tone, languages, or topics to avoid. An empty persona shows a placeholder until you add text.
In edit mode, an amber hint explains that the persona applies across tenant-facing channels. A character counter appears while you type.
IF/THEN rules
Prefer specific If phrases — broad rules fire on almost every message. Escalation paths pair with Operations — Tickets and Automation & AI. Full pairing matrix: ChatBot section cross-reference.
Rules follow an If → Then pattern:
| Field | Limit | Guidance |
|---|---|---|
| If | 200 characters | Describe a specific tenant situation (for example “tenant asks about bedbugs” or “tenant reports a broken lock”), not broad catch-alls like “tenant has a question”. |
| Then | 200 characters | Tell the bot what to do when that situation matches — answer with a policy, escalate, or create a ticket. |
You can add rows with + Add rule (until 20 rules) and remove a row with the trash control. The section title shows the current count (for example 3/20).

Broad If phrases cause the bot to fire on almost every message and produce generic replies. Prefer many specific rules over one vague rule. The in-app amber hints repeat this guidance in edit mode.
Save and cancel
- Click the pencil in the card header.
- Edit persona and/or rules.
- Click Save — a success toast confirms persistence; the card returns to read-only view.
- Click Cancel to abandon changes and restore the last saved server values.
External automation can read the same persona and rules through Tenant MCP after authenticating with tenant context.
Inbox and Dashboard bell gating
isTenantChatBotEnabled gates Tools → Inbox, Dashboard bell Inbox sub-tab, and booking Communication together — pair with Preferences — In-app notifications before bulk-clearing message alerts. Full pairing matrix: ChatBot section cross-reference.
The account flag isTenantChatBotEnabled controls more than the per-booking Communication tab. When it is false, Vivin blocks portfolio-wide messaging surfaces so operators are not sent to empty Inbox pages:
| Surface | Disabled behaviour |
|---|---|
Tools → Inbox (/inbox) | Greyed-out nav item with tooltip The tenant chatbot is not enabled for this account. |

Sidebar Inbox chatbot-disabled capture refreshed 2026-06-17 20:15 UTC (npx tsx tools/capture-inbox-sidebar-chatbot-disabled-screenshot.ts).
| Dashboard bell → Inbox sub-tab | Greyed-out tab with tooltip Activate the Chatbot to get tenant messages right here. General alerts are unaffected. |
| Bookings → Communication | Tab opens with Unlock your communication history (see below). |
After Vivin enables the integration and you pair Status Bot, refresh the session — all three surfaces activate together. Full UI detail: Inbox module — Chatbot gating.
Booking detail — Communication tab
Live WhatsApp/email threads live here — Persona and IF/THEN rules shape future bot replies only. Pause bot per booking complements global rules — see Bookings — Communication tab. Full pairing matrix: ChatBot section cross-reference.
When the account-level tenant chatbot integration is off, Bookings → booking detail → Communication still opens, but the panel shows an unlock empty state until Vivin enables isTenantChatBotEnabled on your workspace. After enablement, the tab loads WhatsApp and email matched to the tenant’s email or phone on the reservation — including WhatsApp labels, the composer (when outbound WhatsApp is provisioned), and read-only email — see Bookings module — Communication tab.
Pause bot on one booking
For accounts where Vivin configured a dedicated pause label on the WhatsApp business line (chatBotPauseLabelId in internal admin), operators can stop automated bot replies for one reservation without changing global persona or IF/THEN rules:
- Open Bookings → booking detail → Communication.
- Select the WhatsApp filter.
- In the Labels row, turn Pause bot on — Vivin applies the pause label to that tenant’s conversation until you turn it off or remove the label.
The toggle appears only when the pause label exists for the account. It complements manual Add label chips for other tags. Step-by-step UI and thread behaviour are in Bookings — Communication tab and the global Inbox workspace (same Labels row and Pause bot control). If the switch shows a raw translation key instead of Pause bot in English, the pause behaviour still works — see the note under Pause bot toggle.
What the chatbot does in the product
For channel behaviour, escalation, ticket creation, and multilingual replies, see Automation & AI — AI Tenant Support Chatbot. In short:
- Answers common questions using live booking, payment, and contract data.
- Escalates or creates Operations tickets when the issue needs a human.
- Supports WhatsApp and email; use a dedicated WhatsApp number for tenant support if the same line also receives supplier messages.
Where operators read WhatsApp on a booking
Persona and IF/THEN rules on this tab shape future automated replies. They do not show live channel traffic.
When Vivin has enabled the tenant chatbot on your account (isTenantChatBotEnabled), each booking exposes a Communication tab in the detail sidebar (Bookings → open booking → Communication). Use the WhatsApp / Email pills to switch layouts: chat bubbles (tenant left; Bot mint / human outbound blue on the right — labelled You or the operator’s stored display name when Vivin recorded agent attribution on the message) with Labels, optional Reasoning expanders on Bot replies (audit why the bot sent that message), and a reply composer, or Gmail-style email rows you can expand for the full body (read-only). Use Refresh in the sidebar header while Communication is active after new traffic.
| Situation | What operators see |
|---|---|
| Chatbot off on the account | Communication opens with Unlock your communication history — enablement is account-level (contact Vivin). |
| Chatbot on, WhatsApp send not provisioned | Thread and Labels may load, but the bottom area shows WhatsApp replies aren't available yet instead of a composer — contact Vivin to wire outbound WhatsApp. |

WhatsApp-not-provisioned capture refreshed 2026-06-18 08:15 UTC (tools/capture-bookings-communication-tab-whatsapp-not-configured-screenshot.ts — same account patch as Bookings — Communication tab).
| Chatbot on, tenant has no phone or email | No messages yet — matching requires at least one contact field on the tenant profile. |
| Chatbot on, no history yet | No messages yet until the tenant has exchanged WhatsApp or email on your configured channels. |
Step-by-step UI states, channel filters, and distinction from Comments are documented in Bookings — Communication tab. FAQ: Where do I read WhatsApp and email for one booking? (also under AI & Automation).
When Vivin stored reasoning with an automated Bot reply, operators can expand Reasoning under that bubble on the WhatsApp filter to audit what the bot considered before sending — see Bookings — Bot reasoning and Glossary — Bot reasoning (audit) hub.
Bot reasoning (audit)
Thread Reasoning is read-only — edit Persona and IF/THEN on this tab after you audit a specific Bot reply on Communication. Hub parity: Glossary — Bot reasoning (audit) hub · Common Workflows — Bot reasoning (audit). Full pairing matrix: ChatBot section cross-reference.
- Glossary — Bot reasoning (audit) hub — Surface table + per-guide/module mesh reciprocal hub
- FAQ — Bot reasoning (audit) hub — Symptom table for Reasoning vs settings edits
- Common Workflows — Bot reasoning (audit) — Hub matrix (
bookings-detail-communication-tab-bot-reasoning-expanded.png,bot-reasoning-audit-expand-flow.mp4) - Bookings — Communication tab — Reasoning control on mint Bot bubbles
- Glossary — ChatBot settings hub — Persona, IF/THEN, Status Bot pairing
ChatBot settings hub mesh
This settings page is the configure surface — pair with Bot reasoning (audit) on live threads after rule edits. Hub parity: Glossary — ChatBot settings hub · Common Workflows — ChatBot settings. Full pairing matrix: ChatBot section cross-reference.
- Glossary — ChatBot settings hub — Surface table + per-guide/module mesh reciprocal hub
- FAQ — ChatBot settings hub — Symptom table for pairing, persona, and IF/THEN tuning
- Common Workflows — ChatBot settings — Hub matrix (
settings-chatbot-tab-overview.png,settings-chatbot-save-rule-flow.mp4) - Onboarding a New Property — ChatBot settings — Step 4 / Step 7 go-live pairing
- Inbox module — Chatbot gating —
isTenantChatBotEnabledgates Inbox with Status Bot
ChatBot section cross-reference
Use this table when one ChatBot topic naturally leads into another Account Settings tab, operator module, workflow, or concept — each row links to the docs you should read before or after saving persona or IF/THEN rules.
| ChatBot topic / section | Pair with these docs |
| --------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| Who can edit ChatBot settings | Users and roles, Account Settings hub |
| ChatBot subtab (persona and rules) | Automation & AI — AI Tenant Support Chatbot, Tenant MCP, AI Chat module, AI usage API (landlord_chat contrast) |
| Bot Status subtab (WhatsApp connection) | Inbox module, FAQ — AI & Automation |
| IF/THEN rules | Emails — Communication Rules, Operations — Tickets |
| Inbox and Dashboard bell gating | Notifications — Dashboard bell Inbox sub-tab, Preferences — In-app notifications |
| Booking detail — Communication tab | Bookings — Communication tab, Tenant categories |
| Lockout catch-up after password recovery | Resetting a Management User Password, Getting Started — Lockout catch-up, Common Workflows — Lockout catch-up |
| Pending manual receipt approval | Inbox module, Users and roles — Role permissions (Approve payments), Finance — Pending manual payments |
| Reject/revert mistaken receipts | Payment Allocation — Correcting mistaken receipts, Bookings — Communication tab (payment hand-offs) |
| Notification row-click navigation | /notifications vs WhatsApp bot status | Account Settings — Notification row-click navigation, Common Workflows — Notification row-click navigation, Notifications module — Notification row-click navigation |
| Payment alert to receivables triage | payment overdue when bot is disconnected | Account Settings — Payment alert to receivables triage, Common Workflows — Payment alert to receivables triage, Handling a Late Payment — Step 1 |
| Confirmation alert triage | Upcoming alerts during bot pairing | Account Settings — Confirmation alert triage, Common Workflows — Confirmation alert triage, Processing a New Booking — Step 5b |
| Finance debt receivables triage | Portfolio Top debtors / Debt Aging after settings on this tab | Account Settings — Finance debt receivables triage, Common Workflows — Finance debt receivables triage, Finance module — Finance debt receivables triage |
| Finance Income status drill-down | Income → In debt vs Debt Aging after settings on this tab | Account Settings — Finance Income status drill-down, Common Workflows — Finance Income status drill-down, FAQ — Finance Income status drill-down hub |
| Cash flow forecast drill-down | Cash flow forecast month bars vs Income segments | Account Settings — Cash flow forecast drill-down, Common Workflows — Cash flow forecast drill-down, FAQ — Cash flow forecast drill-down hub |
| Portfolio segmentation by tenant category | Tenant categories, Bookings — Other filters, Common Workflows — Portfolio segmentation |
Related
Related below links this Account Settings tab to modules, workflows, concepts, and escalation paths. Pair Documentation map & escalation with Account Settings hub — Documentation map & escalation; pair Upstream & downstream workflows with Account Settings — Tab cross-reference. Topic-to-section pairing in sections above: ChatBot section cross-reference. Full hub matrix: Account Settings — Section cross-reference.
Documentation map & escalation
Documentation-map bullets pair with Introduction — Section cross-reference and FAQ — Section cross-reference. Hub parity: Account Settings hub — Documentation map & escalation. Full pairing matrix: ChatBot section cross-reference · Account Settings — Section cross-reference.
- Account Settings hub — Tab pairing matrix across workspace configuration
- Account Settings — System section — Where ChatBot sits beside Integrations and Emails
- FAQ — AI & Automation — Bot pairing, WhatsApp provisioning, and Communication tab states when chatbot is off
- Glossary — Term definitions used across settings and module docs
- Get Help & Support — Escalation when Status Bot pairing or outbound WhatsApp fails
Upstream & downstream workflows
Workflow bullets pair with Common Workflows — Workflow cross-reference for inter-guide step pairing. Full pairing matrix: ChatBot section cross-reference · Account Settings — Section cross-reference.
- Processing a New Booking (section cross-reference; Deeper workflow reads; hub) — WhatsApp enquiries the bot may answer before a reservation exists
- Notification triage (section cross-reference; Deeper workflow reads; hub) — Inbox bell sub-tab vs full
/notificationswhen chatbot escalations create alerts - Handling a Late Payment — Step 1 (section cross-reference; Deeper workflow reads; hub) — Identify overdue charges when bot hand-offs surface unpaid confirmation or move-in charges and a payment overdue alert row-click brought you here
- Managing a Check-out & Deposit Refund (section cross-reference; Deeper workflow reads; hub) — WhatsApp context when tenants dispute deductions during departure week
- Portfolio KPI review (section cross-reference; Deeper workflow reads; hub) — Month-end pass when chatbot escalations correlate with debt or occupancy KPIs
Deeper workflow reads
Workflow reads pair with Common Workflows hub subsection index and Workflow cross-reference. Each workflow sub-guide reciprocates with [Deeper workflow reads](./chatbot.md#deeper-workflow-reads) anchors on Account Settings bullets — hub parity: Account Settings hub — Deeper workflow reads. Full pairing matrix: ChatBot (tenant support) section cross-reference · Account Settings — Section cross-reference.
- Processing a New Booking — WhatsApp enquiries the bot may answer before a reservation exists (section cross-reference; Deeper API reads; hub)
- Notification triage — Inbox bell sub-tab vs full
/notificationswhen chatbot escalations create alerts (section cross-reference; Deeper API reads; hub) - Handling a Late Payment — Step 1 — Identify overdue charges when bot hand-offs surface unpaid confirmation or move-in charges and a payment overdue alert row-click brought you here (section cross-reference; Deeper API reads; hub)
- Managing a Check-out & Deposit Refund — WhatsApp context when tenants dispute deductions during departure week (section cross-reference; Deeper API reads; hub)
- Portfolio KPI review — Month-end pass when chatbot escalations correlate with debt or occupancy KPIs (section cross-reference; Deeper API reads; hub)
Related Account Settings tabs
Tab bullets pair with Account Settings — Tab cross-reference and Recommended setup order. Full pairing matrix: ChatBot section cross-reference · Account Settings — Section cross-reference.
- Emails — Communication Rules for email channel parity with WhatsApp bot IF/THEN rules
- Preferences — Tenant Portal — Portal toggles that shape what the bot may answer about payments or services
- Preferences — In-app notifications — Account-wide Inbox messages masters before bot escalation alerts deep-link into
/inbox - Tenant categories — Portal modules the bot may reference (payments, contract, utilities) per tenant segment
- Interface Language — Operator UI locale vs bot rule copy (rules may stay English)
- Users and roles — Chatbot permission
Operator modules
Module bullets pair with Modules — Module cross-reference. Full pairing matrix: ChatBot section cross-reference · Account Settings — Section cross-reference.
- Inbox module — Portfolio-wide WhatsApp triage (same UAZAPI state as booking Communication)
- Bookings — Communication tab — Per-booking WhatsApp (labels + composer) and read-only email when chatbot is enabled
- Bookings — Payment Plan tab — Charges the bot may reference during payment enquiries
- Operations — Tickets — Escalations and auto-created maintenance jobs from bot hand-offs
- Notifications — Dashboard bell Inbox sub-tab — Inbound message alerts deep-link into
/inboxor booking Communication - AI Chat module — Vivin-internal AI Assistant (distinct from tenant ChatBot on this tab)
- Audit — Discounts tab — Cross-portfolio discount context when bot hand-offs involve mid-stay repricing
- Notifications — Payment overdue alerts (in-app) — Operator Payments category rows when scheduled charges are overdue after bot payment hand-offs
Deeper concept reads
Concept reads pair with Concepts hub subsection index and Concept cross-reference. Full pairing matrix: ChatBot section cross-reference · Account Settings — Section cross-reference.
- Automation & AI — Channel map, escalation, and operator AI Assistant vs tenant chatbot (section cross-reference; hub)
- Tenant MCP — External automation that reads the same chatbot rules and WhatsApp state as operators (section cross-reference; hub)
- Landlord MCP — Portfolio automation that references chatbot configuration (section cross-reference; hub)
- Services Marketplace — Bot answers about ancillary tenant services when portal modules are enabled (section cross-reference; hub)
- Integrations & Distribution — Tenant WhatsApp chatbot is configured separately from marketplace booking-platform integrations (section cross-reference; hub)
- Tenant Portal — Status Bot pairs with portal onboarding; tenants may message on WhatsApp instead of opening the web portal (section cross-reference; hub)
- FAQ — Tenant contract signing blocked — No PDF yet, mandatory Your Details gates, category locks, or Lease purpose; portal signing vs paper upload on Contract Info
- Payment Allocation — Two-layer receipts and credit note reject/revert warnings (section cross-reference; hub)
- Booking Lifecycle — Computed status model for stays with active Communication threads (section cross-reference; hub)
Module documentation hubs
Module hub bullets pair with Modules — Module cross-reference. Full pairing matrix: ChatBot section cross-reference · Account Settings — Section cross-reference.
- Bookings — Per-booking Communication tab and pause-bot controls
- Finance — Deposit disputes the bot may escalate before Finance → Deposits
- Operations — Maintenance tickets created from bot escalations
- Dashboard — Bell notification triage with Inbox sub-tab gating
- Tenants — Contact fields the bot uses to match WhatsApp and email threads
- API Reference hub — Partner HTTP contracts (distinct from tenant WhatsApp configuration)
Lockout catch-up after password recovery
Operational backlog after sign-in recovery pairs with Resetting a Management User Password — Step 3 before you resume persona or IF/THEN rules on this tab. Hub parity: Common Workflows — Lockout catch-up after password recovery. Full pairing matrix: ChatBot section cross-reference · Account Settings — Section cross-reference.
- Common Workflows — Lockout catch-up after password recovery — Hub matrix when sign-in was restored mid-setup before Status Bot pairing or IF/THEN rules are saved
- Getting Started — Lockout catch-up after password recovery — Canonical operational backlog mesh (notification triage, Pending Steps 6b, portal gates)
- Inbox and Dashboard bell gating —
isTenantChatBotEnabledmay still be off until backlog triage completes - Pending manual receipt approval — Month-end Pending mesh when bot payment hand-offs surface unpaid confirmation charges
Pending manual receipt approval
Receipt approval pairs with Booking detail — Communication tab payment enquiries and Users and roles (Approve payments permission). Hub parity: Common Workflows — Pending manual receipt approval. Full pairing matrix: ChatBot section cross-reference · Account Settings — Section cross-reference.
- Common Workflows — Pending manual receipt approval — Hub matrix when bot hand-offs surface recorded bank transfers still showing pending until Approve payments
- Finance — Pending manual payments — Amber Pending chip after WhatsApp payment enquiries escalate to Finance
- Bookings — Payment Plan tab — Charges the bot may reference during payment enquiries
- FAQ — Manual receipt still pending — Why KPIs lag until approval clears bot-escalated receipts
Reject/revert mistaken receipts
Receipt cleanup pairs with Payment Allocation two-layer receipts when bot hand-offs involve already-invoiced charges. Hub parity: Common Workflows — Reject/revert mistaken receipts. Full pairing matrix: ChatBot section cross-reference · Account Settings — Section cross-reference.
- Common Workflows — Reject/revert mistaken receipts — Hub matrix when duplicate receipts from bot payment hand-offs need Reject / Revert
- Payment Allocation — Correcting mistaken receipts — Two-layer model and credit note accounting follow-up
- Finance — Row actions on in-payment rows — Bulk Reject selected after bot escalations
- Handling a Late Payment — Step 1 — Identify overdue charges when bot hand-offs surface unpaid move-in charges
Portfolio segmentation by tenant category
Segment filters pair with Tenant categories portal modules the bot may reference and Portfolio KPI review — Step 6. Hub parity: Common Workflows — Portfolio segmentation by tenant category. Full pairing matrix: ChatBot section cross-reference · Account Settings — Section cross-reference.
- Common Workflows — Portfolio segmentation by tenant category — Hub matrix when segment filters must align across bot threads, receivables, and tenant profiles
- Tenant categories — Portal modules the bot may reference (payments, contract, utilities) per tenant segment
- Bookings — Other filters — Tenant category when triaging escalated WhatsApp threads
- Emails — Communication Rules audience — Segment-scoped lifecycle parity with IF/THEN rules here
Notification row-click navigation
WhatsApp ChatBot pairing is separate from /notifications row-click — finish in-app alert triage before blaming bot disconnect for missed payment follow-up. Hub parity: Account Settings — Notification row-click navigation. Full pairing matrix: ChatBot section cross-reference · Account Settings — Section cross-reference.
- Account Settings — Notification row-click navigation — Hub matrix (
notifications-module-row-click-target.png,notifications-row-navigation-flow.mp4) - Common Workflows — Notification row-click navigation — Operator procedure hub
- Notifications module — Notification row-click navigation — Canonical
/notificationsinbox pairing - FAQ — Notification row-click navigation hub — Symptom table
Payment alert to receivables triage
Bot pause/resume does not clear tenant debt — row-click payment overdue alerts into Bookings / Inbox before re-pairing the bot mid-collections. Hub parity: Account Settings — Payment alert to receivables triage. Full pairing matrix: ChatBot section cross-reference · Account Settings — Section cross-reference.
- Account Settings — Payment alert to receivables triage — Hub matrix (
notifications-row-navigate-to-booking-detail.png,notifications-row-navigation-flow.mp4) - Common Workflows — Payment alert to receivables triage — Operator procedure hub
- Handling a Late Payment — Step 1 — Collections follow-through after row-click
- FAQ — Payment alert to receivables triage hub — Symptom table
Confirmation alert triage
Upcoming confirmation-week messages may overlap bot threads — approve receipts on Transactions before bulk Pause bot during alert catch-up. Hub parity: Account Settings — Confirmation alert triage. Full pairing matrix: ChatBot section cross-reference · Account Settings — Section cross-reference.
- Account Settings — Confirmation alert triage — Hub matrix (
notifications-row-navigate-to-booking-detail.png,bookings-detail-transactions-approve-payment-modal.png) - Common Workflows — Confirmation alert triage — Operator procedure hub
- Processing a New Booking — Step 5b / Step 6 — Canonical confirmation gates
- FAQ — Confirmation alert triage hub — Symptom table
Finance debt receivables triage
Chatbot get-payment-info answers do not replace Debt Aging — operators still triage Top debtors on Finance → Overview. Hub parity: Account Settings — Finance debt receivables triage. Full pairing matrix: ChatBot section cross-reference · Account Settings — Section cross-reference.
- Account Settings — Finance debt receivables triage — Hub matrix (
finance-overview-income-chart-debt-aging.png,finance-overview-debt-aging-walkthrough-flow.mp4) - Common Workflows — Finance debt receivables triage — Operator procedure hub
- Finance module — Finance debt receivables triage — Canonical Finance → Overview surface
- FAQ — Finance debt receivables triage hub — Symptom table
Handling a Late Payment collections
Chatbot get-payment-info answers do not replace Debt Aging — operators still triage Top debtors on Finance → Overview Hub parity: Account Settings — Handling a Late Payment collections. Full pairing matrix: ChatBot section cross-reference · Account Settings — Section cross-reference.
- Account Settings — Handling a Late Payment collections — Hub matrix (
finance-overview-income-chart-debt-aging.png,notifications-row-navigate-to-booking-detail.png,finance-overview-debt-aging-walkthrough-flow.mp4) - Common Workflows — Handling a Late Payment collections hub — Operator procedure hub
- Finance debt receivables triage — Debt Aging before Step 1
- Pending manual receipt approval — Clear amber Pending before collections outreach
- FAQ — Handling a Late Payment collections hub — Symptom table
- Glossary — Handling a Late Payment collections hub — Surface table + per-guide/module mesh
Finance Income status drill-down
Tenant chatbot rent questions should cite Income → In debt payment lines — open segment drill-down when tenants dispute scheduled vs overdue amounts. Hub parity: Account Settings — Finance Income status drill-down. Full pairing matrix: ChatBot section cross-reference · Account Settings — Section cross-reference.
- Account Settings — Finance Income status drill-down — Hub matrix (
finance-overview-income-chart-debt-aging.png,finance-overview-debt-aging-walkthrough-flow.mp4) - Common Workflows — Finance Income status drill-down — Operator procedure hub
- Finance module — Income status drill-down — Canonical Finance → Overview surface
- FAQ — Finance Income status drill-down hub — Symptom table
Cash flow forecast drill-down
When tenants ask what they paid this month, pair chatbot replies with Cash flow forecast All payments drill-down on Finance → Overview. Hub parity: Account Settings — Cash flow forecast drill-down. Full pairing matrix: ChatBot section cross-reference · Account Settings — Section cross-reference.
- Account Settings — Cash flow forecast drill-down — Hub matrix (
finance-overview-income-chart-debt-aging.png,finance-overview-debt-aging-walkthrough-flow.mp4) - Common Workflows — Cash flow forecast drill-down — Operator procedure hub
- Finance module — Cash flow forecast drill-down — Canonical Finance → Overview surface
- FAQ — Cash flow forecast drill-down hub — Symptom table
Key glossary terms
Glossary rows pair with Glossary cluster cross-reference. Full pairing matrix: ChatBot section cross-reference · Account Settings — Section cross-reference.
- Bot reasoning (audit) — Expand Reasoning under automated bot bubbles on WhatsApp threads
- Glossary — End-of-Booking cost split — Charge Time → End of Booking splits daily overage across every occupied unit; still-staying roommates stay in the denominator (#2111)
- Glossary — Change history — Operator-initiated edits on Listings setup and Bookings Changelog; create-time defaults excluded (#2093)
- FAQ — Booking Changelog scope — Operator-initiated edits only; create-time defaults excluded (#2093)
- Glossary — Archived booking ledger visibility — Delete Booking hides manual/provider_platform rows on Finance → Transactions; vIBAN and credit card stay visible (#1897)
- Bookings — Provider platform payment — Non-rejected provider platform in-payment blocks Delete Booking until Reject or assign (#2076)
- FAQ — Delete Booking on integration reservation — Clear pending provider platform in-payment with Reject or assign before soft-archive (#2076)
- Listings — Property edit sidebar pills — Setup / Full integration / Photos pills on property and unit edit sidebars; replaced the old Go to details shortcut (#2082)
- Glossary — Finance tenant category cache refresh — Recategorizing a tenant on Tenants → Tenant Info force-refreshes Finance caches so Contract Values, Overview, and Deposits filters match within seconds (#2088)
- FAQ — Finance tenant category filter parity — Finance Other filters drawer lists segments on cached bookings only; mirror Bookings / Tenants when a segment is missing
- FAQ — Assign tenant category for direct booking — Add booking has no category field; assign on Tenants → Tenant Info or + Create New → Tenant before contract mail
- Glossary — SIMAR water contract ID — SIMAR (Loures e Odivelas) water bills use Cód. Local in Connections — not Nº de Contador; leading zeros stripped (#2110)
- FAQ — SIMAR water bill property match — Cód. Local in Connections — not Nº de Contador; strip leading zeros (#2110)
- Glossary — Per-booking maintenance ticket opt-out — Add booking checkboxes skip automatic CI/CO tickets for one reservation only; property rule unchanged (#1140)
- FAQ — Cancel Booking vs Delete Booking — Cancel for real stays with settlement; Delete soft-archives mistaken/test rows (#1897 / #2076)
- Glossary — Archived property — Archive retires a building to Listings → Archived without deleting bookings; distinct from Delete Booking (reservation soft-archive) — Listings — Archived properties
- FAQ — Archive a property — Edit property sidebar Archive / Unarchive on Listings; building-level — not Delete Booking or Cancel booking
- FAQ — Portfolio retirement decisions — Archive property (building) vs Cancel booking vs Delete Booking (reservation soft-archive) — three-way decision table
- Deposit lifecycle status — Tenant chatbot may answer deposit amount questions; operator refund workflow remains on booking Deposit tab and Finance → Deposits
- Finance — Deposit status filter — Other filters → Deposit status multi-select on Bookings and Finance (#2090)
- Finance — Deposit lifecycle status cards — Deposit lifecycle status row on Finance → Deposits; click Partial paid for collection shortfalls (#2091)
- FAQ — Partly collected security deposit — Paid above zero but below Amount on booking Deposit; Partial paid card on Finance → Deposits (#2090 / #2091)
- Operations — Tickets toolbar search — Paste the full sequential ticket ID (for example
S259,T27) in toolbar Search (#2074) - FAQ — Find a ticket by its ID — Paste the full sequential ticket ID (for example
S259,T27) in Operations → Tickets toolbar Search (#2074) - FAQ — Skip automatic check-in/out tickets for one booking — Turn off Use unit contract rents and other contract details on Add booking to reveal CI/CO ticket checkboxes (#1140)
- FAQ — Same-day turnovers — Check-out + check-in on one unit same day: Operations → Check-in & Check-out, Timeline / Multicalendar, turnover tickets
- FAQ — Manual payments after Delete Booking — Delete Booking hides manual/provider_platform rows on Finance → Transactions; vIBAN and credit card stay visible (#1897)
- Glossary — Directory list load failures — First-fetch directory failures show Retry / Try again; distinct from filter-empty states and booking-sidebar tab errors
- Glossary — Vacant Unit Preference — Include manual blocks counts operator holds as free on Dashboard / Sales vacancy surfaces (#1427)
- FAQ — Communication or Tickets load failure — Tab-scoped Refresh (Communication) or Retry (Tickets); other booking sidebar tabs stay usable
- Operations — Property-level ticket search — Property-name matches share the top relevance tier with unit hits; building-scoped rows float first under an active Property filter (#2089)
- Notification row navigation — Row-click targets from inbound-message notifications into
/inboxor booking Communication - FAQ — Notification row-click navigation — On
/notifications, row click marks unread then openslink,bookingId,tenantId,listingId, orpropertyId(first match); Dashboard bell General rows stay in-panel unlesslinkis set - FAQ — Phone shows Operations only — Mobile phone user agent locks operators with Operations access to
/operations; iPads and narrow desktop browsers keep the full module list - Credit note (payment reject/revert) — Reject/revert warnings when bot hand-offs involve already-invoiced receipts; concept walkthrough: Payment Allocation — Correcting mistaken receipts; workflow hub: Common Workflows — Reject/revert mistaken receipts
- Deposit dispute — Check-out deposit threads the bot may escalate before Finance → Deposits
- FAQ — AI token usage — Poll GET /ai-usage / GET /ai-usage/summary with management JWT;
landlord_chat+utility_bill_extraction; no management UI screen yet - FAQ — Automatic check-in email — Trigger matrix, 15-day cutoff, paper upload vs portal signing, Nuki-only toggle, Send / Resend on Contract Info
- FAQ — Deposit missing on Finance Deposits — Default ~3 months date range; clear or widen before triaging older move-outs or dispute row actions
- FAQ — Pending manual in-payment on /notifications — Alert persists until Approve payments clears Finance or booking Transactions
- FAQ — Uncovered Debt KPI — Finance Total Debt minus deposit offsets; pair with Debt Aging and In debt drill-down
- FAQ — Dashboard Total Debt subtitle — Post-login Total Debt card headline vs >15 days subtitle; ongoing bookings only
- FAQ — Analytics (KPI workspace) — Portfolio KPIs vs Sales/Listings/Dashboard; load-failure Try again
- Invoiced floor (rent) — Rent edits blocked below exported invoice totals after Issue allocation / Invoice selected
- FAQ — Bulk Hostkit invoicing slow — Vivin paces Hostkit API calls and retries HTTP 429 during bulk Issue allocation / Invoice selected; refresh Transactions before re-issuing
- FAQ — Bulk Hostkit invoicing hub — Symptom table + per-guide mesh
- FAQ — Lower rent below invoiced — Change monthly rent clamps and Contract Values → Edit amount blocks net below exported invoice totals; use credit notes in accounting when you truly need a reduction
- Glossary — Fixed invoice date — Account-wide Invoice date before bulk Issue allocation / Invoice selected; amber banner on Finance → Transactions until you turn Use today as invoice date back on
- FAQ — Month-end invoicing (fixed date) hub — Symptom table + toggle reset after batch
- FAQ — Reject or revert an incoming payment — Reject pending rows or Revert confirmed ones; Finance → Transactions uses Reject selected bulk-only; modals warn about credit notes when Finance already invoiced
- FAQ — Finance Income status drill-down hub — Symptom table for segment vs Debt Aging
- FAQ — Finance Income status drill-down — Overview Income chart (Paid / Scheduled / In debt); click a segment for month-scoped payment-line modal; Debt Aging for booking-level receivables
- FAQ — Cash flow forecast drill-down hub — Symptom table for collections vs Income / Dashboard
- FAQ — Cash flow forecast drill-down — Month / Day bar-click habit
- FAQ — Permission denied toast — Red You do not have permission to perform this action. toast when RBAC blocks a save; fix in Users → Role Permissions
- FAQ — Bookings that owe money — Top debtors and overdue buckets on Finance → Overview; Total Debt KPI is not a table
- FAQ — Fixed rent on variable unit — Variable listing + equal rent every contract month → booking stores fixed headline Monthly rent; payment plan unchanged