Inbox
Configure Chatbot and Emails (setup steps 11–12) and complete core setup steps 13–15 before portfolio WhatsApp triage here — pair with Notification triage. Requires Bookings module permission and a connected Status Bot line.
Confirm Prerequisites and Interface Overview, then triage Dashboard bell — Inbox sub-tab vs the full /inbox route. When several tabs are open, the browser tab reads VIVIN | Inbox. Booking-scoped threads: Relationship to Bookings Communication. Guide subsection map: Inbox guide subsection index (triage surfaces + Related subsections). Habit-specific shortcuts live under Related below.
The Inbox module (/inbox) is a portfolio-wide WhatsApp workspace: every tenant conversation on your connected business line appears in one two-pane view styled like WhatsApp Web inside Vivin (light theme, cream thread background, green outgoing bubbles). Use it when you triage messages without opening each booking’s Communication tab first.
Not sure which Tools item holds portfolio WhatsApp? Ask AI Chat “Where do I open the Inbox to reply to tenant WhatsApp messages across my portfolio?” — then open Tools → Inbox (ai-chat-product-context-inbox-reply.png, ai-chat-product-context-inbox-flow.mp4). The assistant may say left menu without naming Tools. Per-reservation threads stay on Bookings → Communication; chatbot connection is under Settings → ChatBot. Habit: Notification triage.
Need the portfolio-wide WhatsApp thread list (not per-booking Communication, and not landlord AI Chat)? Ask AI Chat “Where do I open the Inbox to reply to tenant WhatsApp messages across my portfolio?” — then open Tools → Inbox (ai-chat-product-context-inbox-reply.png, ai-chat-product-context-inbox-flow.mp4). The assistant typically says Inbox in the left menu (may omit the Tools group name). Canonical route: /inbox.

Tools → Inbox in the sidebar and the Dashboard bell Inbox sub-tab ship with the WhatsApp global inbox release on the management frontend develop line (June 2026). If your environment does not yet show Inbox under Tools, use Bookings → Communication per reservation until your workspace is updated.
Clear alert noise via Notifications and Dashboard bell Inbox; open the same thread from Bookings → Communication per reservation. Tenant threads here are separate from landlord AI Chat — see Automation & AI — Choosing surfaces and AI usage API (landlord_chat only). General bell rows include payment overdue — row-click into the booking, then Handling a Late Payment — Step 1 before you chase the tenant on WhatsApp. When overdue threads cluster on one tenant category, scope Bookings — Tenant categories or Finance — Tenant category filter first — see Glossary — Tenant category.
User Roles and Access
| Role | Access |
|---|---|
| Property Manager | Full access when the role includes Bookings module permission |
| Admin | Full access |
| Viewer | Read-only where Bookings access allows opening conversations |
| Owner-linked user | Portfolio-scoped threads only — see Owner-linked access |
The Tools → Inbox link uses the same Bookings module gate (bookings.module) as the Bookings workspace. Inbox is desktop-only in the sidebar (mobileVisible: false) — on narrow viewports, open /inbox from a bookmark or a Dashboard bell notification deep link.
Owner-linked access
When a management login is linked to an owner (same email as an Owners record):
- Conversations are limited to tenants with a non-archived booking on that owner’s properties.
- The Unknown (no-booking) section is hidden.
- Labels and Pause bot are hidden — account-wide WhatsApp label tools stay with full-portfolio managers.
- If the owner has no properties yet, Tools → Inbox and the Dashboard bell Inbox sub-tab stay unavailable until you assign inventory in Listings.

Pair with Owners — Owner-linked management users and Glossary — Owner-linked user.
Open the Inbox at platform.vivin.app/inbox. Deep-link a conversation with ?contact=<phoneDigits> — for example after clicking an Inbox row on the Dashboard bell. The browser tab stays VIVIN | Inbox on both URLs. See Deep Links — Inbox.
Browser tab title
Tab titles pair with Interface Overview (the in-app Inbox header) and Dashboard bell — Inbox sub-tab (alert entry that does not rename the tab until you land on /inbox). Symptom: FAQ — Why does my browser tab say VIVIN | Inbox?. Term: Glossary — Inbox browser tab.
When you open Tools → Inbox, the browser tab reads VIVIN | Inbox. Use it to find this workspace among other management tabs (VIVIN | Bookings, VIVIN | Notifications, and so on).
A Dashboard bell Inbox row that opens /inbox?contact=… keeps VIVIN | Inbox — the tab does not switch to the tenant’s name. Opening the bell Inbox slide-over while you are still on Dashboard, Bookings, or another module does not change the tab until you follow a link to /inbox.
Nearby titles that look similar:
| Screen | Browser tab |
|---|---|
Tools → Inbox (/inbox, including ?contact=) | VIVIN | Inbox |
| Tools → AI Assistant | VIVIN | AI Assistant |
Help & Support (/settings/support) | VIVIN | Support |
| Sign-in | VIVIN |

/inbox?contact=…). The Dashboard bell Inbox slide-over does not rename the tab until you land on that route.
See FAQ — Why does my browser tab say VIVIN | Inbox? and Glossary — Inbox browser tab.
Prerequisites
- Tenant chatbot enabled on the account (
isTenantChatBotEnabled) — Vivin turns this on when your workspace is provisioned for WhatsApp/email tenant messaging. When it is off, the Tools → Inbox link and Dashboard bell Inbox sub-tab are greyed out with a short tooltip; use Bookings → Communication only after enablement. See Chatbot gating and ChatBot settings. - Status Bot connected under Settings → ChatBot → Bot Status (tenant WhatsApp connection card)
- At least one inbound or outbound WhatsApp message on the account (empty state otherwise)
- Bookings module permission on your role
Interface Overview
Two-pane triage pairs with Bookings — Communication for full reservation context and Dashboard bell — Inbox sub-tab for alert-driven entry.
Conversation list (left)
The list column is intentionally narrow (about 280–360px on desktop) so the thread pane keeps most of the width — similar to WhatsApp Web’s contact rail. A 52px grey header strip shows the Inbox title; Search sits in a compact row directly below.
- Header + search — grey strip with the Inbox title and a pill-shaped Search field (debounced server search by tenant name or phone).
- Known contacts — rows linked to a tenant/booking show a 40px avatar, tenant display name (14px), listing internal name on a green line with a home icon (11px —
+Nwhen the contact has multiple units), last message preview (12px, prefixed with You: when you sent the last message), and relative time on the right (11px). Row padding is tight so more conversations fit without scrolling. - Unknown section — numbers with WhatsApp history but no matching booking appear under an Unknown heading with an amber No booking badge on the row; you can still read and reply.
- Select a row to load the thread on the right. The URL clears
?contact=after you pick a different conversation manually.
When nothing is selected yet, the right pane prompts you to pick a contact — the list on the left still loads normally:

Use Search to narrow the list by tenant name or phone. Matching is server-side with a short debounce; only rows that match stay visible:

Thread and composer (right)
- Conversation header — grey bar with avatar, tenant name (clickable to open the Tenant sidebar on known contacts), phone number, and current booking context for that contact: listing internal name, stay dates, and the shared booking status badge (one chip per linked reservation).
- WhatsApp-style bubbles — cream thread background with day separators; white incoming and green outgoing bubbles (same shared renderer as Bookings → Communication → WhatsApp).
- Labels bar — add/remove WhatsApp labels and use Pause bot when your account configures a pause label (
chatBotPauseLabelId). The bar is the same shared component as Bookings → Communication → WhatsApp — label and pause-bot changes on either surface mirror instantly.

- Reply composer — send operator messages from the account business line; state mirrors the per-booking Communication tab (changes on either surface stay in sync).
- Contact header — click the tenant name in the grey header bar to open the Tenant sidebar without leaving Inbox.

When no conversation is selected, the right pane shows a neutral empty state prompting you to pick a contact.

Numbers with WhatsApp history but no matching booking land under an Unknown heading. Each unknown row shows an amber No booking badge — you can still open the thread, reply, pause the bot, and add labels; only booking context (listing line, stay dates, status chip) is missing.

Dashboard bell — Inbox sub-tab
Bell Inbox rows deep-link here or to booking Communication — pair General payment overdue alerts with Handling a Late Payment — Step 1 before you chase on WhatsApp.
On desktop Dashboard, the header bell slide-over splits into two sub-tabs:
| Sub-tab | Contents |
|---|---|
| General | Payment received, payment overdue, tickets, bookings, and other platform alerts |
| Inbox | Inbound WhatsApp and email message notifications (one row per conversation) |
Each sub-tab shows its own unread badge on the tab label. Mark all as read clears only the active sub-tab — not the other category.
Inbox rows show a channel icon (WhatsApp or email) instead of the coloured alert glyph used on General. Clicking a row that carries a backend link marks it read, closes the panel, and navigates straight to the conversation — typically /inbox?contact=… or the booking Communication deep link. Landing on /inbox is what sets the browser tab to VIVIN | Inbox; opening the slide-over alone does not. Rows without a link still open Notification detail inside the panel (same as General).
Inbound messages are coalesced per conversation: a new message on an existing thread bumps that notification to the top and marks it unread again instead of creating duplicate rows.
Row labels on the Inbox sub-tab mirror who sent the latest message:
| Channel | Summary pattern (English UI) | Body preview |
|---|---|---|
New WhatsApp message from {tenant name} when Vivin matches the phone to a tenant record; otherwise New WhatsApp message from +{digits} (never a raw WhatsApp JID) | Last inbound message text, or New WhatsApp message when empty | |
New email from {sender} — sender name when Gmail provides it, otherwise the From address | Email snippet or subject line |
The same coalescing and summary patterns apply when those rows appear on the full /notifications page mixed with General alerts (the full page has no Inbox category pill — use the Dashboard bell Inbox sub-tab when you only want message notifications). See Notifications — Dashboard bell vs. full module.

Chatbot gating
When isTenantChatBotEnabled is off, enable the tenant chatbot via Vivin support then pair Settings → ChatBot — Status Bot before reopening Tools → Inbox.
The global Inbox depends on the same account-level tenant chatbot flag as Bookings → Communication. When isTenantChatBotEnabled is false, Vivin blocks Inbox entry points instead of showing an empty two-pane workspace:
| Surface | Behaviour when chatbot is off |
|---|---|
| Tools → Inbox | Nav item stays visible but greyed out (opacity-50, not clickable). Hover shows The tenant chatbot is not enabled for this account. |
| Dashboard bell → Inbox sub-tab | Sub-tab label is greyed out and not clickable; unread counts on that tab are hidden. Hover shows Activate the Chatbot to get tenant messages right here. General alerts still work normally. |
/inbox URL | Direct navigation is not the primary path when the integration is off — operators should contact Vivin to enable the tenant chatbot, then pair Status Bot under ChatBot settings. |

This mirrors Bookings → Communication, which shows Unlock your communication history inside the booking sidebar when the same flag is off. After Vivin enables the integration, refresh the session — Tools → Inbox, the bell Inbox sub-tab, and per-booking Communication all become active without a separate product toggle on your side.

Relationship to Bookings Communication
Use Inbox for cross-booking triage; open Bookings → Communication when you need payment-plan, ticket, or file context on one reservation. If Communication or Tickets inside the booking sidebar fails to load, use Refresh or Retry — other tabs stay available (FAQ — Communication or Tickets won't open). FAQ: Where do I read WhatsApp and email for one booking?.
| Surface | Best for |
|---|---|
Inbox (/inbox) | Cross-booking triage, unknown numbers, quick replies without opening a reservation first |
| Bookings → Communication | Full booking context (payment plan, tickets, files) while messaging one tenant |
| Bell → General | Payment/ticket/booking alerts — not message threads; use Inbox sub-tab for WhatsApp pings |
Both Inbox and Bookings → Communication read and write the same WhatsApp conversation state. Labels, Pause bot, and sent messages stay aligned. Hub matrix: Common Workflows — WhatsApp per-booking messaging. FAQ: Where do I read WhatsApp and email for one booking?.


WhatsApp per-booking messaging
Cross-booking Inbox pairs with Bookings → Communication when operators need Payment Plan / Tickets context —
- Common Workflows — WhatsApp per-booking messaging — Hub matrix (
bookings-detail-communication-tab-whatsapp-thread.png,inbox-module-overview.png,inbox-module-triage-flow.mp4) - Glossary — WhatsApp per-booking messaging hub — Surface table + per-guide/module mesh reciprocal hub
- Relationship to Bookings Communication — When to stay in Inbox vs open one booking
- Dashboard bell — Inbox sub-tab — Alert-driven entry from Dashboard
- Common Workflows — Notification row-click navigation —
New WhatsApp message from …on/notificationsvs bell Inbox - Notification triage — Step 2 — Full
/notificationsinbox with message rows - Notification triage — WhatsApp per-booking messaging — Message pings on Step 2 bell Inbox
- Handling a Late Payment — WhatsApp per-booking messaging — Collections outreach on Step 3
- Managing a Check-in — WhatsApp per-booking messaging — Arrival-week threads before Step 4
- Managing a Check-out — WhatsApp per-booking messaging — Departure settlement on Step 6
- Processing a New Booking — WhatsApp per-booking messaging — Confirmation follow-up on Step 6
- Cancelling a Booking — WhatsApp per-booking messaging — Void outreach before Step 4
- Entering Monthly Utility Bills — WhatsApp per-booking messaging — Overage bill questions on Step 4
- Portfolio KPI review — WhatsApp per-booking messaging — Month-end message backlog on Step 7
- Manual block hygiene — WhatsApp per-booking messaging — Blocked-date questions on Step 3
- Onboarding a New Property — WhatsApp per-booking messaging — First tenant threads on Step 7 go-live
- Using in-app support — WhatsApp per-booking messaging — Self-serve Inbox / Communication before filing
- Resetting a Management User Password — WhatsApp per-booking messaging — Lockout-delayed bell Inbox after Step 3
- FAQ — WhatsApp per-booking messaging hub — Cross-booking Inbox vs Bookings → Communication symptom table
Bot reasoning (audit)
Cross-booking bot triage before booking Communication.
- Common Workflows — Bot reasoning (audit) — Hub matrix (
bookings-detail-communication-tab-bot-reasoning-expanded.png) - Glossary — Bot reasoning (audit) hub — Surface table + per-guide/module mesh reciprocal hub
- Bookings — Bot reasoning (audit) — Canonical Communication Reasoning control
- ChatBot settings — Read-only audit vs editable persona / IF/THEN
ChatBot settings
Account Settings → ChatBot pairs with Communication thread review — cross-booking bot triage before booking communication.
- Common Workflows — ChatBot settings — Hub matrix (
settings-chatbot-tab-overview.png,settings-chatbot-status-bot-disconnected.png,settings-chatbot-status-bot-connected.png,settings-chatbot-save-rule-flow.mp4) - Glossary — ChatBot settings hub — Surface table + per-guide/module mesh reciprocal hub
- ChatBot settings — Persona, IF/THEN rules, Status Bot pairing
- Glossary — Bot reasoning (audit) hub — Thread audit after rule changes
Rent reduction after invoicing
Collections threads about rent relief pair with Bookings → Contract Info → Change monthly rent when the Already invoiced months banner blocks lower nets — cross-booking Inbox lacks Payment Plan invoiced-floor context.
- Common Workflows — Rent reduction after invoicing — Hub matrix (
bookings-detail-change-monthly-rent-modal.png,bookings-rent-reduction-invoiced-floor-flow.mp4) - Bookings — Changing contract dates and rent — Contract Info repricing entry point
- Bookings — Contract Values tab — Per-line Edit amount under the same floor
- Finance — Invoiced floor and rent edits — Why edits start on the booking, not Finance → Transactions
- Relationship to Bookings Communication — Open booking for Change monthly rent
- Processing a New Booking — Rent reduction after invoicing — Confirmation month already invoiced on Step 3
- Handling a Late Payment — Rent reduction after invoicing — Collections goodwill after Step 4
- Portfolio KPI review — Rent reduction after invoicing — Month-end repricing sign-off on Step 7
- Cancelling a Booking — Rent reduction after invoicing — Settlement repricing during Step 2b
- Managing a Check-in — Rent reduction after invoicing — Pre-move-in goodwill
- Managing a Check-out — Rent reduction after invoicing — Departure-week goodwill adjustments
- Notification triage — Rent reduction after invoicing — Row-click to invoiced booking on Step 4
- Entering Monthly Utility Bills — Rent reduction after invoicing — Month-end bill cycle on Step 5
- Manual block hygiene — Rent reduction after invoicing — Hold cleanup on Step 5
- Using in-app support — Rent reduction after invoicing — Self-serve before filing tickets
- Resetting a Management User Password — Rent reduction after invoicing — Lockout-delayed repricing after Step 3
- FAQ — Rent reduction after invoicing hub — WhatsApp rent-relief threads needing invoiced-floor context on Communication symptom table
Month-end invoicing (fixed date)
Cross-booking threads citing wrong invoice document dates pair with Settings → Invoicing fixed Invoice date before Finance → Transactions bulk Issue allocation — not a messaging bug.
- Common Workflows — Month-end invoicing (fixed date) — Hub matrix (
settings-invoicing-invoice-date-toggle.png,finance-transactions-fixed-invoice-date-banner.png,finance-transactions-bulk-toolbar-fixed-invoice-date-banner.png) - Invoicing — Default invoice date — Account-wide toggle + Save
- Common Workflows — Bulk Hostkit invoicing — Issue allocation after fixed date is saved
- Relationship to Bookings Communication — Open booking for receivables context
- Finance — Month-end invoicing with a fixed date — Toggle Use today back on after batch
- Processing a New Booking — Month-end invoicing (fixed date) — First-month bulk export after confirmation (Step 6b)
- Handling a Late Payment — Month-end invoicing (fixed date) — Collections batch during Step 6b
- Portfolio KPI review — Month-end invoicing (fixed date) — Step 7 sign-off mesh
- Notification triage — Month-end invoicing (fixed date) — Alert cleanup before bulk Issue allocation (Step 5)
- Entering Monthly Utility Bills — Month-end invoicing (fixed date) — Finish Missing data + overage Pending (Steps 4b–5)
- Manual block hygiene — Month-end invoicing (fixed date) — Clear stale holds before Issue allocation (Step 5)
- Using in-app support — Month-end invoicing (fixed date) — Self-serve before filing wrong-date tickets
- Resetting a Management User Password — Month-end invoicing (fixed date) — Lockout-delayed month-end export after Step 3
- FAQ — Month-end invoicing (fixed date) hub — Cross-booking threads about wrong invoice dates needing fixed Invoice date symptom table
Bulk Hostkit invoicing
Cross-booking threads about slow invoicing or HTTP 429 errors pair with Finance → Transactions bulk toolbar — refresh before re-issue.
- Common Workflows — Bulk Hostkit invoicing — Hub matrix (
finance-transactions-bulk-selection-bar.png,settings-invoicing-hostkit-series.png) - Common Workflows — Month-end invoicing (fixed date) — Fixed Invoice date before bulk Issue allocation
- Settings > Invoicing — Hostkit invoice series — Required FR code before Issue allocation
- Finance — Invoice automation — Bulk Issue allocation / Invoice selected toolbar
- Finance — Issuing credit notes (integrated invoicing) — Issue credit notes (N) after invoiced Reject / Revert
- Relationship to Bookings Communication — Collections threads about month-end export
- Finance — Bulk Hostkit invoicing — Transactions toolbar reference
- Processing a New Booking — Bulk Hostkit invoicing — First-month Issue allocation after confirmation (Step 6b)
- Handling a Late Payment — Bulk Hostkit invoicing — Collections month-end mesh (Step 6b)
- Portfolio KPI review — Bulk Hostkit invoicing — Step 7 month-end sign-off
- Managing a Check-in — Bulk Hostkit invoicing — Move-in Pending mesh (Step 6b)
- Managing a Check-out — Bulk Hostkit invoicing — Departure-week mesh (Step 6b)
- Onboarding a New Property — Bulk Hostkit invoicing — First month-end on new inventory
- Cancelling a Booking — Bulk Hostkit invoicing — Settlement bulk export (Step 6b)
- Notification triage — Bulk Hostkit invoicing — Alert cleanup before bulk export (Step 5)
- Entering Monthly Utility Bills — Bulk Hostkit invoicing — Finish Missing data + overage Pending (Steps 4b–5)
- Manual block hygiene — Bulk Hostkit invoicing — Clear stale holds before Issue allocation (Step 5)
- Using in-app support — Bulk Hostkit invoicing — Self-serve Hostkit pacing before filing tickets
- Resetting a Management User Password — Bulk Hostkit invoicing — Lockout-delayed month-end export after Step 3
- FAQ — Bulk Hostkit invoicing slow — Hostkit HTTP 429 pacing and refresh-before-reissue habit
- FAQ — Bulk Hostkit invoicing hub — Cross-booking threads about bulk Issue allocation Hostkit pacing symptom table
Directory list refresh
When a list needs a refresh instead of showing rows, use Retry or reload the page. Zero rows after a successful load means your filters matched nothing — widen filters or clear search.
See FAQ — Directory list refresh and Glossary — Directory list refresh.
Inbox guide subsection index
This index pairs Inbox triage surfaces with Related subsections — use it when bell Inbox rows deep-link here but you need booking-level Payment plan context.
Inbox section cross-reference
Use the sections above for this module. Related pages are linked from Related below when present, or from Modules.
Related
Related below links this module to settings, concepts, workflows, and escalation paths.
Documentation map & escalation
- Modules hub — Hub pairing matrix across operator workspaces
- Deep Links — Inbox — Bookmark
/inboxand?contact=deep links; browser tab stays VIVIN | Inbox - FAQ — Why does my browser tab say VIVIN | Inbox? — Tab title vs Dashboard bell slide-over
- FAQ — Where do I read WhatsApp and email for one booking? — Inbox vs booking Communication when triaging the same tenant
- Get Help & Support — Escalate when chatbot gating or Status Bot pairing blocks Inbox access
Upstream & downstream workflows
- Notification triage — General vs Inbox bell workflow; payment overdue → Handling a Late Payment — Step 1 on General rows before you chase on WhatsApp
- Managing a Check-in — Confirm portal links and access codes before key handover on active threads
- Managing a Check-out & Deposit Refund — WhatsApp disputes about deductions during departure week
- Handling a Late Payment — Step 1 — Collections when WhatsApp threads surface overdue balances; upstream path from payment overdue row-click on Dashboard bell General
- Processing a New Booking — Confirm channel enquiries that arrive as WhatsApp threads before a reservation exists
- Cancelling a Booking — Early termination messages tenants sometimes raise over WhatsApp
- Portfolio KPI review — Month-end pass that should include WhatsApp escalations surfaced during inbox triage
Deeper workflow reads
See Upstream & downstream workflows above for the same guides.
Settings & chatbot configuration
- Settings → ChatBot — WhatsApp pairing and tenant-facing bot rules
- Settings > Preferences — In-app notifications — Account-wide Inbox messages category master and personal opt-outs that gate bell pings
- Settings > Emails — Communication Rules for email channel parity with WhatsApp bot IF/THEN rules
- Settings > Tenant categories — Segment portal and payment rules; pair with Bookings — Tenant categories and Finance — Tenant category filter when WhatsApp collections cluster on one cohort
- Settings > Interface Language — UI locale for Inbox labels and mobile Operations language control
- Settings > My Profile — Display name shown on outbound WhatsApp messages and internal
@mentionthreads
Operator modules (pairing surfaces)
- Bookings — Communication tab — Full booking context while messaging one tenant
- Notifications module — Full
/notificationshistory vs Dashboard bell - Notifications — Payment overdue alerts — Operator Payments category rows on bell General before you open the same tenant on Inbox
- Notifications — Dashboard bell vs full module — Inbound WhatsApp/email pings with deep links into
/inboxor booking Communication - Tenants module — Profile sidebar when a conversation needs fiscal-ID or debt context
- Tenants — Tenant category filter — Profile-count cross-check before you change communication rules account-wide after inbox triage
- Bookings — Tenant categories — Portfolio segment filter when overdue threads involve mixed tenant profiles
- Finance — Tenant category filter — In Debt triage by segment before you paste payment links in WhatsApp
- AI Chat module — portfolio Q&A when inbox volume suggests a cross-booking question
- Audit — Discounts tab — Cross-portfolio discount context when WhatsApp threads involve mid-stay repricing disputes
Deeper concept reads
- Automation & AI — Chatbot escalation path when threads need operator takeover
- Tenant Portal — Tenants may message on WhatsApp instead of using the web portal for payments or maintenance
- 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
- Integrations & Distribution — WhatsApp inbox is enabled separately from marketplace channel credentials in Settings
- Services Marketplace — Ancillary charge questions tenants sometimes raise over WhatsApp before Payment plan settlement
- Payment Allocation — Two-layer receipts, invoiced-floor rent edits, and credit note reject/revert warnings
- Booking Lifecycle — Computed Upcoming → Ongoing → Ended / Canceled status model behind thread header badges
- Tenant MCP — External automation that reads and writes the same WhatsApp threads as Inbox
- Landlord MCP — Account-scoped portfolio reads when inbox volume suggests a cross-booking question
Operator habit hubs
Day-to-day operator habits (lockout catch-up, pending receipts, payment triage, handoffs, and related playbooks) live on the Common Workflows habit hub.
Deep-link anchors for habit hubs
Lockout catch-up after password recovery
Pending manual receipt approval
Reject/revert mistaken receipts
Check-out ledger cleanup before refund
Utility overage collections
Cancellation collections before void
Check-out collections before refund
Handling a Late Payment collections
Check-out vs cancellation
Deposit missing on Finance Deposits
Partly collected security deposit
Notification row-click navigation
Payment alert to receivables triage
Finance debt receivables triage
Finance Income status drill-down
Cash flow forecast drill-down
Confirmation alert triage
New inventory to first booking handoff
Property setup to first arrival handoff
Confirmation to check-in handoff
Check-in to check-out handoff
Check-out final utilities handoff
Same-day turnover coordination
Occupancy KPI to block hygiene handoff
Portfolio segmentation by tenant category
Booking sidebar tab refresh
If Communication or Tickets needs a refresh inside a booking opened from this module, use header Refresh or banner Retry. Other booking tabs stay usable.
See FAQ — Communication or Tickets won't open and Bookings — Sidebar tab refresh.
Key glossary terms
- 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
- Glossary — Change history — Operator-initiated edits on Listings setup and Bookings Changelog; create-time defaults excluded
- Glossary — Archived booking ledger visibility — Delete Booking hides manual/provider_platform rows on Finance → Transactions; vIBAN and credit card stay visible
- Glossary — Finance tenant category cache refresh — Recategorizing a tenant updates
booking.tenantCategoryIdimmediately; ledger tabs reflect it on reload, while Overview can lag up to ~10 minutes - Glossary — SIMAR water contract ID — SIMAR (Loures e Odivelas) water bills use Cód. Local in Connections — not Nº de Contador; leading zeros stripped
- Glossary — Per-booking maintenance ticket opt-out — Add booking checkboxes skip automatic CI/CO tickets for one reservation only; property rule unchanged
- Glossary — Full term list
API & companion guides
- API Reference — Webhooks & Notifications — Partner HTTP callbacks (distinct from Dashboard bell Inbox pings) when channel traffic creates booking events
Module documentation hubs
- Inbox module — Portfolio-wide WhatsApp workspace with Dashboard bell Inbox sub-tab deep links (this page)
- Dashboard module — Post-login KPI snapshot and bell Inbox sub-tab (hub)
- Bookings module — Reservation lifecycle and per-booking Communication tab (hub)
- Notifications module — Full
/notificationshistory with search and filters (hub) - Tenants module — Tenant directory and profile sidebars (hub)
- Finance module — Portfolio ledgers and payment approval (hub)
- Operations module — Maintenance tickets and cash flows (hub)
- AI Chat module — AI Assistant using Landlord MCP tools (hub)
- Audit module — Manual Blocks and Discounts review (hub)
- Account Settings — Workspace-wide ChatBot and notification defaults (hub)
- API Reference hub — Partner HTTP contracts and partial vs full feeds (hub)