Skip to main content

Tenants

First-time workspace setup

Open Tenants as setup step 15 after Bookings (step 14) and Listings (step 13) — complete Getting Started — Recommended Setup Sequence steps 1–12 first. Requires Tenants module permission (tenants.module). After go-live, pair With Debt triage with Finance and Handling a Late Payment. Workflow pairing: Modules — Setup sequence after go-live.

The Tenants module gives your team a tenant-first workspace for day-to-day follow-up. Instead of starting from a booking, you can search and segment your full tenant base, open a tenant profile, and review bookings, payment plans, and transaction history from one place.

Pair with other modules

Jump to reservations in Bookings; triage With Debt in Finance Contract Values. During month-end With Debt triage alongside Portfolio KPI review — Step 7, poll AI usage API (landlord_chat) when teams leaned on AI Chat for debtor lookups — there is no in-app ledger screen yet. Section-to-doc pairing: Tenants section cross-reference. Hub tab matrix: Modules — Module cross-reference.

Access Path

In the current product navigation, the Tenants sidebar entry is grouped with Listings and Bookings in the Portfolio section. See Deep Links for all management frontend routes.

Opening a tenant by URL

Append the tenant UUID to open the profile sidebar directly, for example /tenants/<tenantId>. If the id does not exist or is outside your account scope, the app shows Tenant not found., clears the bad segment, and returns you to /tenants — see Deep Links — Broken entity deep links.

What You Can Do in the Tenants Module

The module opens on a list/grid of tenant records with fast filtering and search:

  • Search by tenant name, email, phone, fiscal ID (NIF / VAT), or identification ID — the directory haystack matches any of these fields server-side (accent-insensitive substring match). A query that spans first and last name (for example Tim Trompa) matches the concatenated full name, not only each column separately.
  • Segment by status: All, Active, Inactive, With Debt, No Bookings
  • Sort in table view via column headers (Name, Phone, Total, Balance, Status)
  • Export the current directory slice as Tenants CSV or Bookings CSV (same filters, search, sort, and status segment as the on-screen list)

Directory loading (infinite scroll)

The tenant directory is server-paged in both grid and table views. The first request loads a batch of rows; as you scroll near the bottom of the page, the app loads the next batch automatically (skeleton placeholders appear while fetching). When every tenant matching your current search, status segment, and sort is loaded, an End of list line appears. Changing any of those controls resets the list and starts from the first batch again — exports always reflect the full filtered result set, not only the rows currently on screen.

Load failures — When the first directory request fails, the page shows a red inline alert cardFailed to load tenants. Please try again. — with optional server detail and Retry instead of an empty grid or table. A successful fetch with no matching tenants is the normal empty state. See Glossary — Directory list load failures.

While the next batch loads, compact skeleton cards (grid) or table skeleton rows (table view) appear at the bottom of the directory:

Tenants — grid directory loading the next page with skeleton placeholder cards at the bottom

Tenants — directory scrolled to the end with the End of list marker (search narrowed to a clean example tenant)

Selecting a tenant opens a detail sidebar with dedicated tabs:

  • Tenant Info — personal details, billing details, bank details, and Category (when tenant categories exist)
  • Bookings — all bookings linked to that tenant
  • Payments — payment plan context from the tenant's bookings
  • Transactions — received payments and allocation history

Core Workflows

Pair with other Tenants sections

With Debt triage pairs with Finance module and Handling a Late Payment — create profiles via Create New menu — Tenant. Full pairing matrix: Tenants section cross-reference.

1) Prioritize Collections and Follow-up

Use the With Debt filter to quickly identify tenants whose net balance is negative (they still owe money across linked bookings). Open each tenant to validate booking context, then coordinate with the Finance module for payment reconciliation.

2) Review Tenant Activity Across Multiple Bookings

Use a single tenant profile to review active and historical bookings without opening each reservation from the bookings table.

3) Maintain Tenant Master Data

Open Tenant Info to update personal/contact details, assign a tenant category (portal and field rules), and maintain billing information used by downstream finance workflows. Saving a new Category back-syncs booking.tenantCategoryId on linked reservations and force-refreshes Finance caches (#2088) — Contract Values, Overview, and Deposits Tenant category filters typically reflect the segment within seconds; see Glossary — Finance tenant category cache refresh.

Use + Create New → Tenant when you need a tenant record before a booking exists (for example a direct enquiry). The modal collects required identity fields and an optional tenant category:

Tenants — Add tenant modal from Create New with sample identity fields (not submitted)

On Tenant Info, click the pencil icon on Personal Information to enter edit mode — category, contact fields, and email-change rules appear inline:

Tenants — Tenant Info edit mode with personal fields and category selector (example tenant Luisa Köster)

See also Create New menu — People.

4) Investigate Payment Status with Context

Use Payments and Transactions tabs to understand what is scheduled versus what has been paid, then jump into Bookings for contract-level actions when needed.

Permissions and Access

Tenant visibility and editability depend on role permissions:

  • Accessing the Tenants module (sidebar entry + /tenants route) requires Tenants module permission (tenants.module).
  • Creating or updating tenant records requires tenants.create permission (in addition to tenants.module).
  • The Bookings tab depends on Bookings module permission (bookings.module).
  • The Payments tab depends on Bookings module permission (bookings.module).
  • The Transactions tab depends on Finance module permission (finance.module).

Review and adjust role access in Settings > Users.

Interface overview

Pair with other Tenants sections

Tenant category filter pairs with Bookings — Other filters tenant category and Finance — Tenant category filter — bookmark searches with Deep Links — Tenants ?q=. Full pairing matrix: Tenants section cross-reference.

The Tenants screen combines a toolbar (search, tenant category filter, status filters, sort, view toggle between grid and table, export) with a tenant directory. Status pills (All, Active, Inactive, With Debt, No Bookings) show live counts from the server; pick a segment before you sort or export so the file matches the slice you reviewed.

Tenants — grid directory with status pills (All, Active, Inactive, With Debt, No Bookings) and toolbar

Tenant category filter

When your account has at least one tenant category configured, the toolbar includes an All categories dropdown (desktop). Pick one or more segments to narrow the directory to tenants assigned that category on Tenant Info, or choose No category for profiles with no segment. The menu stays open while you add selections (same compact pattern as Bookings — Select categories). Search, status pills, sort, grid vs table, and Export all respect the filter server-side — downloads reflect the full filtered population, not only rows already loaded by infinite scroll.

Tenants — toolbar tenant category filter with one segment active and narrowed directory

Tenant category filter capture refreshed 2026-06-27 23:04 UTC (VIVIN_DOCS_BASE_URL=http://localhost:5173 VIVIN_DOCS_RECORD_API=$VITE_API_BASE_URL VIVIN_DOCS_TENANT_CATEGORY_SEARCH="Teste Jorge" npx tsx tools/capture-bookings-tenants-tenant-category-filter-screenshots.ts).

Screenshot freshness

Status pills, Add tenant modal, and Tenant Info edit mode captures refreshed 2026-06-16 11:06 UTC (VIVIN_DOCS_BASE_URL=http://localhost:5173 VIVIN_DOCS_RECORD_API=$VITE_API_BASE_URL npx tsx tools/capture-tenants-screenshots.ts).

Use Search when you want a tight view of one tenant or a small set of matches — especially helpful in busy directories where the default sort can surface mixed or internal test labels at the top of the list. Paste a fiscal ID or ID number when collections or onboarding paperwork references the tax id instead of the tenant’s display name.

Tenants — grid directory with Search narrowed by fiscal ID (NIF)

Fiscal ID search capture refreshed 2026-06-12 00:05 UTC (npx tsx tools/capture-tenants-fiscal-id-search-screenshot.ts). The same haystack also matches identification ID — see Glossary — Directory search ranking.

Bookmarkable search (?q=)

The toolbar Search field syncs to the URL query parameter q. Share or bookmark a filtered directory view, for example platform.vivin.app/tenants?q=smith.

  • On load, back, or forward navigation, the input hydrates from ?q= so bookmarked or shared links land on the same filtered list.
  • As you type, the URL updates after a short debounce (~250ms) with replace so history does not stack one entry per keystroke.
  • Clearing the search removes q from the URL.
  • Status pills, sort, and grid vs table stay in component state only — they are not encoded in the URL today.
  • The directory API request debounces separately (~1s) so typing stays responsive while the server catches up.

Tenants — list with toolbar Search pre-filled from /tenants?q= with filtered rows visible after load

Tenants — grid view with search narrowed to one tenant

Tenants — table view with the same search filter

Grid card anatomy (dense directory view)

In grid view, each tenant card is a self-contained summary — useful for collections and multi-booking follow-up without opening the full profile first.

RegionWhat it shows
Header (clickable)Avatar, name, Active / Inactive pill, email, phone, nationality flag — opens the tenant detail sidebar (/tenants/<id>).
Balance stripRoll-up Balance (net financial position across linked bookings). Shown only when balance ≠ 0 — red when the tenant owes money, teal when credit remains.
Booking groupsReservations grouped by status — Ongoing, Upcoming, Ended, Cancelled, Refunded — with up to two rows per group before collapse.
Per-booking rent / balanceEach preview row shows rent on the right; when a booking has negative financial balance, a red amount appears under rent (same rules as Bookings).
Show all bookings / Show lessExpands the card when a tenant has more bookings than the preview limit.
Booking row clickOpens the booking sidebar in place (contract-level context) without navigating away from the directory.

When a tenant has more bookings in a status group than the preview limit (two rows per group), the card stays collapsed until you click Show all bookings. Show all bookings reveals every row in that card; Show less returns to the preview limit so dense directories stay scannable.

Click any booking row (not the tenant header) to open the booking sidebar while staying on /tenants — useful when you are triaging debt on the card and need contract or payment context without losing your filter.

Tenants — grid card expanded with Show all bookings revealing additional reservation rows

Use table view when you need column sort and dense scanning; use grid when debt and booking mix matter at a glance. Cross-module triage: Handling a Late Payment (With Debt + expand), Glossary — Tenants table expand, Deep Links — Tenants.

Table view (expandable booking rows)

In table view, each tenant occupies one summary row. Sort by Name, Phone, Total, Balance (net roll-up), or Status using the column headers. Wider breakpoints also show Nationality, a compact Bookings breakdown (coloured chips such as on / up / en / ca for ongoing, upcoming, ended, and cancelled counts), and Category.

ActionResult
Click the row (chevron area)Expand or collapse an inline sub-table of that tenant’s linked bookings.
Click the tenant nameOpen the tenant detail sidebar (/tenants/<id>) without leaving the directory.
Click a booking sub-rowOpen the booking sidebar in place (same pattern as grid cards).

When expanded, a header row labels the sub-table columns:

Column (English UI)What it shows
UnitListing internal name for the reservation.
RentContract rent for that booking.
CreatedBooking creation date (when the viewport is wide enough).
StatusBooking status badge (Ongoing, Upcoming, etc.).
PeriodContract / move-in window for the stay.
BalanceCurrent booking balance from the same rules as Bookings — red when the tenant owes money, teal when credit remains, em dash when settled.
SrcSales platform icon (channel source).
CTContract signed indicator (check vs dash icon with tooltip).

Tenants with no linked bookings show an italic No bookings line when you expand the row.

Tenants — table view with one row expanded showing Unit / Rent / Balance booking sub-table

Table expand capture refreshed 2026-06-20 19:08 UTC (VIVIN_DOCS_BASE_URL=http://localhost:5173 VIVIN_DOCS_RECORD_API=$VITE_API_BASE_URL npx tsx tools/capture-tenants-table-expanded-screenshots.ts — search Köster, expand first clean row with bookings).

Walkthrough: switch to table view, narrow with Search, expand a tenant row to the booking sub-table, open the tenant name sidebar, then collapse the row.

Export (Tenants CSV / Bookings CSV)

Use Export on the toolbar when you need a spreadsheet of the same slice you are reviewing (status pills, Search, sort, and grid vs table view all apply server-side).

Open Export, then choose:

OptionFile
Tenants CSVOne row per tenant in the current result set (directory fields).
Bookings CSVBooking rows linked to tenants in that same filtered directory view.

Downloads use dated filenames from the API. If the filtered list is empty, the export action does not produce a file.

When the export API returns an error (for example HTTP 400/500), Vivin shows a toast (Export failed.) instead of leaving the menu closed with no file — narrow filters or retry after connectivity improves. See Glossary — Export and download failures. The Bookings list uses an inline alert under the toolbar for the same class of failure.

Tenants — Export menu (Tenants CSV and Bookings CSV) with search narrowed to a single tenant

Walkthrough: status pills (All, With Debt, Active), narrow with Search, switch grid / table, then open a tenant sidebar on a clean example row.

Tenant detail sidebar

Click a tenant card header, a table row name, or use Edit flows from the directory to open the detail sidebar on the right. (In table view, clicking the row body expands bookings inline — use the name link for the profile sidebar.) The URL updates to /tenants/<tenant-id> so you can bookmark or share a profile (subject to the same Tenants module permission). The sidebar header shows the tenant name and status; close it with the X control or by navigating back to /tenants.

TabWhat you see
Tenant InfoPersonal Information, Billing Information, and Bank Details in one scrollable view (grid layout aligned with the booking sidebar). Each section has its own pencil edit control when your role includes tenants.create.
BookingsAll reservations linked to this tenant (requires Bookings module).
PaymentsPayment-plan context aggregated from those bookings (requires Bookings module).
TransactionsReceived payments and allocation history (requires Finance module).

Tenants — detail sidebar on Tenant Info with personal and billing sections

Tenants — detail sidebar Bookings tab listing linked reservations

Payments aggregates scheduled charges from every booking linked to the tenant (status pills, totals, and per-booking breakdowns when data exists):

Tenants — detail sidebar Payments tab with scheduled charges across linked bookings

Transactions lists received payments and allocation history pulled from those bookings (filters for in/out payment types when transactions exist). Manual receipts may still show as pending until someone with Approve payments confirms them on Finance → Transactions or the booking Transactions tab — the tenant-level roll-up can look settled while Pending rows still exist on the ledger (the Overview Manual Payments KPI includes approved manual receipts too). Reject payment, bulk Reject selected, and Revert payment modals warn about credit notes when Finance may already have invoiced the charge — see Payment Allocation — Correcting mistaken receipts. See Finance — Pending manual payments.

Tenants — detail sidebar Transactions tab with received payments and allocation summary

From Bookings or Transactions, use in-sidebar links to jump into the Bookings module when you need contract-level actions (including per-row Approve payment when a receipt is still pending).

Tenants guide subsection index

Pair with other Tenants module guide sections

This index pairs Tenants directory, profile, and segment sections with Related subsections — use it when With Debt rows disagree with Finance ledgers or Bookings reservation context. Full pairing matrix: Tenants section cross-reference.

SubsectionWhen to open itPair with
Access PathSidebar route and deep linksDeep Links — Tenants, Deep Links — Broken entity deep links
What You Can Do in the Tenants ModuleSearch, status pills, infinite scrollGlossary — Directory list load failures, Glossary — Directory search ranking
Core WorkflowsCollections, multi-booking review, master dataHandling a Late Payment, Processing a New Booking
Permissions and Accesstenants.module gateSettings > Users and roles
Interface overview — Tenant category filterAll categories toolbar segmentBookings guide subsection index, Finance guide subsection index, Settings > Tenant categories
Interface overview — Bookmarkable search (?q=)Shareable filtered directory URLsDeep Links — Tenants
Interface overview — Grid card anatomyDense directory without opening profileBookings module, Handling a Late Payment — Step 1
Interface overview — Table viewInline booking sub-rowsGlossary — Tenants table expand
Interface overview — ExportCSV downloads for current sliceBookings — Exporting the list, Glossary — Export and download failures
Tenant detail sidebarProfile tabs for one tenantFinance — Transactions tab, Payment Allocation
Deeper workflow readsStep-by-step procedures in this moduleCommon Workflows hub subsection index, Handling a Late Payment
Lockout catch-up after password recoverySign-in restored; module backlog accumulatedCommon Workflows — Lockout catch-up, Getting Started — Lockout catch-up, Resetting a Management User Password — Step 3
Pending manual receipt approvalRecorded bank transfers still pending until Approve paymentsCommon Workflows — Pending manual receipt approval, Finance — Pending manual payments, FAQ — Manual receipt still pending
Reject/revert mistaken receiptsDuplicate or wrong-booking receipts after ApproveCommon Workflows — Reject/revert mistaken receipts, Payment Allocation — Correcting mistaken receipts, Glossary — Credit note (payment reject/revert)
Cancel Booking vs Delete BookingDelete soft-archives reservation — not tenant profile removal (#1897)Common Workflows — Cancel Booking vs Delete Booking, Bookings — Delete Booking (soft archive), FAQ — Cancel Booking vs Delete Booking (bookings-cancel-booking-modal-refund-types.png, finance-transactions-type-summary-cards.png, workflows-cancel-booking-refund-modal-flow.mp4)
Wrong tenant on a bookingBooking linked to wrong profile — Change tenant not profile overwriteCommon Workflows — Wrong tenant on a booking, Bookings — Change tenant, FAQ — Wrong tenant on a booking (bookings-detail-change-tenant-control.png, bookings-detail-change-tenant-flow.mp4)
Notification row-click navigation/notifications row-click with tenantId opens profile sidebarCommon Workflows — Notification row-click navigation, Notifications module — Notification row-click navigation, FAQ — Notification row-click navigation (tenants-module-detail-sidebar-tenant-info.png, notifications-row-navigation-flow.mp4)
Payment alert to receivables triageWith Debt cross-check after payment overdue row-clickCommon Workflows — Payment alert to receivables triage, Handling a Late Payment — Step 1, Finance — Payment alert to receivables triage (tenants-module-status-pills-default.png, notifications-row-navigate-to-booking-detail.png)
Confirmation alert triageTenant Info / Category on confirmation-week alert clustersCommon Workflows — Confirmation alert triage, Notification triage — Confirmation alert triage, Processing a New Booking — Step 6 (tenants-module-detail-sidebar-tenant-info.png, notifications-row-navigation-flow.mp4)
Portfolio segmentation by tenant categoryReview one tenant segment across modulesCommon Workflows — Portfolio segmentation, Settings > Tenant categories, Finance — Tenant category filter, Tenants — Tenant category filter
Finance debt receivables triageWith Debt segmentation may rank differently than portfolio Top debtorsCommon Workflows — Finance debt receivables triage, Finance — Finance debt receivables triage, FAQ — Finance debt receivables triage hub, Core Workflows — Prioritize collections, Payment alert to receivables triage (finance-overview-debt-aging-expanded-bucket.png, finance-overview-debt-aging-walkthrough-flow.mp4)
Finance Income status drill-downWith Debt cross-checks single-tenant balance vs Income → In debt month modalCommon Workflows — Finance Income status drill-down, Finance — Income status drill-down, FAQ — Finance Income status drill-down hub, Core Workflows — Prioritize collections, Finance debt receivables triage (finance-overview-income-status-in-debt-modal.png, finance-overview-income-drill-down-flow.mp4)
Cash flow forecast drill-downWith Debt shows single-tenant balance — Cash flow forecast lists portfolio-wide collectionsCommon Workflows — Cash flow forecast drill-down, Finance Income status drill-down, Finance — Income chart and cash flow forecast, FAQ — Cash flow forecast drill-down hub, Core Workflows — Prioritize collections, Finance debt receivables triage (finance-overview-cash-flow-all-payments-modal.png, finance-overview-cash-flow-day-view.png, finance-overview-cash-flow-drill-down-flow.mp4)
Tenants section cross-referencePer-section pairing matrixModule cross-reference, Bookings guide subsection index

Tenants section cross-reference

Use this table when one Tenants section or control naturally leads into another module, workflow, or concept — each row links to the docs you should read before or after acting in that section.

Tenants sectionPair with these docs
Access PathDeep Links — Tenants, Deep Links — Broken entity deep links
Directory loading (infinite scroll)Glossary — Directory list load failures, FAQ — list page load failures
Core WorkflowsHandling a Late Payment, Processing a New Booking, Create New menu — Tenant, Portfolio KPI review — Step 7 (AI usage APIlandlord_chat)
Permissions and AccessSettings > Users and roles
Interface overview — Bookmarkable search (?q=)Deep Links — Tenants, Glossary — Directory search ranking
Interface overview — Tenant category filterSettings > Tenant categories, Bookings — Other filters tenant category, Finance — Tenant category filter, Portfolio KPI review — Step 6
Interface overview — Grid card anatomyBookings module, Handling a Late Payment — Step 1
Interface overview — Table viewGlossary — Tenants table expand, Bookings module
Interface overview — ExportGlossary — Export and download failures, Bookings — Exporting the list
Tenant detail sidebarFinance — Transactions tab, Payment Allocation — Correcting mistaken receipts, Bookings module, Notification row-click navigation
Notification row-click navigationCommon Workflows — Notification row-click navigation, Notifications module — Notification row-click navigation, Notification triage — Step 4, FAQ — Notification row-click navigation
Payment alert to receivables triageHandling a Late Payment — Step 1, Finance — Payment alert to receivables triage, Bookings — Payment alert to receivables triage, Core Workflows — With Debt
Confirmation alert triageProcessing a New Booking — Step 6, Notification triage — Confirmation alert triage, Wrong tenant on a booking

Pair with other Tenants module guide sections

Related below links this module to settings, concepts, workflows, and escalation paths. Pair Documentation map & escalation with Modules hub — Documentation map & escalation; pair Upstream & downstream workflows with Common Workflows — Workflow cross-reference. Topic-to-section pairing in sections above: Tenants guide subsection index · Tenants section cross-reference. Full hub matrix: Module cross-reference · Modules hub subsection index.

Documentation map & escalation

Pair with other Tenants module guide sections

Upstream & downstream workflows

Pair with other Tenants module guide sections

Deeper workflow reads

Pair with other Tenants module guide sections

Workflow reads pair with Common Workflows hub subsection index and Workflow cross-reference. Each workflow sub-guide reciprocates with [Deeper workflow reads](../modules/tenants/index.md#deeper-workflow-reads) anchors on Module documentation hubs bullets — hub parity: Modules hub — Deeper workflow reads. Full pairing matrix: Tenants section cross-reference · Module cross-reference.

Settings that shape Tenants

Pair with other Tenants module guide sections

Deeper concept reads

Pair with other Tenants module guide sections

Operator modules (pairing surfaces)

Pair with other Tenants module guide sections
Pair with other Tenants module guide sections

Lockout catch-up after password recovery

Pair with other Tenants module guide sections

Pending manual receipt approval

Pair with other Tenants module guide sections

Reject/revert mistaken receipts

Check-out ledger cleanup before refund

Pair with other Tenants module guide sections

Utility overage collections

Pair with other Tenants module guide sections

With Debt tenant segmentation includes utility overage In Debt after bill posting — open booking Payment Plan before outreach. Hub parity: Common Workflows — Utility overage collections. Full pairing matrix: Tenants section cross-reference · Module cross-reference.

Cancellation collections before void

Pair with other Tenants module guide sections

Check-out collections before refund

Pair with other Tenants module guide sections

Handling a Late Payment collections

Pair with other Tenants module guide sections

With Debt tenant segmentation pairs with Handling a Late Payment after confirming per-booking Payment Plan — not portfolio rank alone. Hub parity: Common Workflows — Handling a Late Payment collections hub. Full pairing matrix: Tenants section cross-reference · Module cross-reference.

Check-out vs cancellation

Pair with other Tenants module guide sections

Tenant directory rows stay linked after both Ended and Canceled exits — route lifecycle questions to Managing a Check-out vs Cancelling a Booking before deposit or collections outreach. Hub parity: Common Workflows — Check-out vs cancellation. Full pairing matrix: Tenants section cross-reference · Module cross-reference.

Deposit missing on Finance Deposits

Pair with other Tenants module guide sections

Tenant directory rows stay linked after deposit collection — open the booking Deposit tab, then clear Finance → Deposits toolbar date range when portfolio triage cannot find the stay. Hub parity: Common Workflows — Deposit missing on Finance Deposits. Full pairing matrix: Tenants section cross-reference · Module cross-reference.

Cancel Booking vs Delete Booking

Pair with other Tenants module guide sections

The tenant directory shows master profiles — Delete Booking soft-archives a reservation and hides Manual Transactions on Finance → Transactions (#1897); it does not remove the tenant profile. Wrong profile on valid stay → Change tenant on Contract Info. Hub parity: Common Workflows — Cancel Booking vs Delete Booking. Full pairing matrix: Tenants section cross-reference · Module cross-reference.

Wrong tenant on a booking

Pair with other Tenants module guide sections

The tenant directory shows master profiles — when a booking points at the wrong existing tenant, fix the reservation with Change tenant on Contract Info, not by overwriting another tenant's NIF or email in the profile sidebar. Hub parity: Common Workflows — Wrong tenant on a booking. Full pairing matrix: Tenants section cross-reference · Module cross-reference.

Notification row-click navigation

Pair with other Tenants module guide sections

/notifications row-click with tenantId opens the tenant detail sidebar on this module — review linked Bookings and Transactions tabs before bulk Mark all as read. Most payment overdue alerts carry bookingId and land on Bookings instead; use With Debt here when you need tenant-first collections without a fresh alert. Hub parity: Common Workflows — Notification row-click navigation. Full pairing matrix: Tenants section cross-reference · Module cross-reference.

Tenants — detail sidebar Tenant Info tab opened from directory

Payment alert to receivables triage

Pair with other Tenants module guide sections

Ongoing/Ended payment overdue alerts on /notifications usually row-click into Bookings — cross-check the tenant's net balance on With Debt and Transactions here before you trust portfolio Debt Aging or Dashboard Total Debt. Hub parity: Common Workflows — Payment alert to receivables triage. Full pairing matrix: Tenants section cross-reference · Module cross-reference.

Finance debt receivables triage

Pair with other Tenants module guide sections

Cross-check With Debt segmentation and tenant Transactions after alert triage — portfolio Top debtors may rank bookings differently than profile net balance. Hub parity: Common Workflows — Finance debt receivables triage. Full pairing matrix: Tenants section cross-reference · Module cross-reference.

Finance Income status drill-down

Pair with other Tenants module guide sections

With Debt on tenant profiles cross-checks single-tenant balance — use Debt Aging Top debtors when you need portfolio rank beyond Income → In debt modal. Hub parity: Common Workflows — Finance Income status drill-down. Full pairing matrix: Tenants section cross-reference · Module cross-reference.

Cash flow forecast drill-down

Pair with other Tenants module guide sections

With Debt on tenant profiles shows single-tenant balance — Cash flow forecast lists portfolio-wide confirmed collections for a month. Hub parity: Common Workflows — Cash flow forecast drill-down. Full pairing matrix: Tenants section cross-reference · Module cross-reference.

Confirmation alert triage

Pair with other Tenants module guide sections

Upcoming Booking created / Payment received rows on /notifications usually row-click into Bookings — verify Tenant Info Category and master data on this module when confirmation-week alerts cluster on one segment. Finish Processing a New Booking — Step 5b / Step 6 before bulk-clear on post-login bell backlog. Hub parity: Common Workflows — Confirmation alert triage. Full pairing matrix: Tenants section cross-reference · Module cross-reference.

New inventory to first booking handoff

Pair with other Tenants module guide sections

Tenant Info Category on first go-live reservations must match Onboarding a New Property — Step 4 before Processing a New Booking — Step 2 or channel import portal gates on Step 6. Hub parity: Common Workflows — New inventory to first booking handoff. Full pairing matrix: Tenants section cross-reference · Module cross-reference.

Property setup to first arrival handoff

Pair with other Tenants module guide sections

Tenant Info Category on first go-live reservations must match Onboarding a New Property — Step 4 before Managing a Check-in — Step 1 re-verifies portal gates. Hub parity: Common Workflows — Property setup to first arrival handoff. Full pairing matrix: Tenants section cross-reference · Module cross-reference.

Confirmation to check-in handoff

Pair with other Tenants module guide sections

Tenant Info Category and portal rules on Upcoming reservations must be correct before Managing a Check-in — Step 1. Hub parity: Common Workflows — Confirmation to check-in handoff. Full pairing matrix: Tenants section cross-reference · Module cross-reference.

Check-in to check-out handoff

Pair with other Tenants module guide sections

Ongoing tenant profiles entering departure week pair with Managing a Check-out — Step 1 on linked bookings — distinct from Confirmation to check-in handoff on Upcoming reservations. Hub parity: Common Workflows — Check-in to check-out handoff. Full pairing matrix: tenants-section-cross-reference · Module cross-reference.

Check-out final utilities handoff

Pair with other Tenants module guide sections

Departing tenant profiles with utility overage In Debt on linked bookings pair with Entering Monthly Utility Bills — Step 4 before Managing a Check-out — Step 6. Hub parity: Common Workflows — Check-out final utilities handoff. Distinct from Check-out collections before refund (rent/fee arrears). Full pairing matrix: tenants-section-cross-reference · Module cross-reference.

Same-day turnover coordination

Pair with other Tenants module guide sections

Outgoing and incoming tenant profiles on the same unit the same calendar day pair with hub Common Workflows — Same-day turnover coordination — check With Debt on the departing stay before incoming key handover. Distinct from Check-out collections before refund (rent/fee arrears only). Full pairing matrix: tenants-section-cross-reference · Module cross-reference.

WhatsApp per-booking messaging

Pair with other Tenants module guide sections

Tenant profile threads opened from Inbox row-click pair with Bookings → Communication when the operator needs reservation-level Payment Plan context. Hub parity: Glossary — WhatsApp per-booking messaging hub · Common Workflows — WhatsApp per-booking messaging. Full pairing matrix: Tenants section cross-reference · Module cross-reference.

Bot reasoning (audit)

Pair with other Tenants module guide sections

Tenant profile after Inbox name click on bot thread. Hub parity: Glossary — Bot reasoning (audit) hub · Common Workflows — Bot reasoning (audit). Full pairing matrix: Tenants section cross-reference · Module cross-reference.

ChatBot settings

Pair with other Tenants module guide sections

Account Settings → ChatBot pairs with Communication thread review — tenant profile after inbox name click on bot thread. Hub parity: Glossary — ChatBot settings hub · Common Workflows — ChatBot settings. Full pairing matrix: Tenants section cross-reference · Module cross-reference.

Rent reduction after invoicing

Pair with other Tenants module guide sections

Tenant profile Linked bookings may need Change monthly rent on months already invoiced — open the reservation sidebar before goodwill repricing. Pair Bulk Hostkit invoicing when external relief surfaces Not issued credit note rows. Hub parity: Common Workflows — Rent reduction after invoicing. Full pairing matrix: Tenants section cross-reference · Module cross-reference.

Month-end invoicing (fixed date)

Pair with other Tenants module guide sections

Tenant profile Linked bookings may carry month-end Pending receipts — save fixed Invoice date before Finance → Transactions bulk Issue allocation after clearing confirmation meshes on opened reservations. Hub parity: Common Workflows — Month-end invoicing (fixed date). Full pairing matrix: Tenants section cross-reference · Module cross-reference.

Bulk Hostkit invoicing

Pair with other Tenants module guide sections

Tenant profile Linked bookings may carry month-end Pending receipts — clear before Finance → Transactions bulk Issue allocation. Hub parity: Common Workflows — Bulk Hostkit invoicing. Full pairing matrix: Tenants section cross-reference · Module cross-reference.

Directory list load failures

Pair with other Tenants module guide sections

The tenant directory first-fetch failure shows Failed to load tenants. Please try again. + Retry — distinct from With Debt / No Bookings filters that genuinely match zero profiles. Pair Directory loading (infinite scroll) with Handling a Late Payment — Step 1 when receivables triage needs the directory. Hub parity: Common Workflows — Directory list load failures. Full pairing matrix: Tenants section cross-reference · Module cross-reference.

Occupancy KPI to block hygiene handoff

Pair with other Tenants module guide sections

With Debt tenant counts that diverge from Analytics → Occupancy for the same range may reflect stale manual holds on otherwise vacant units — pair hub Common Workflows — Occupancy KPI to block hygiene handoff before blaming tenant segment rules. Hub parity: Common Workflows — Occupancy KPI to block hygiene handoff. Full pairing matrix: Tenants section cross-reference · Module cross-reference.

Partly collected security deposit

Pair with other Tenants module guide sections

Portfolio segmentation by tenant category

Pair with other Tenants module guide sections

Key glossary terms

Pair with other Tenants module guide sections

API & companion guides

Pair with other Tenants module guide sections

API bullets pair with API Reference hub. Full pairing matrix: Tenants section cross-reference · Module cross-reference.

Module documentation hubs

Pair with other Tenants module guide sections
  • Tenants module — Tenant directory, profile sidebars, With Debt segmentation, and table expand for linked bookings (this page)
  • Utilities module — Bills Included ceiling model, Connections, AI bill upload, and tenant overage charges on payment plans (hub)
  • Operations module — Maintenance tickets, cash flows, check-in/out coordination, Draft ticket queues, and linked cash flows (hub)
  • Dashboard module — Post-login Today, Total debt, Vacant Units, and forecast KPI snapshot with bell notification triage (hub)
  • Analytics module — Month-range portfolio KPI charts (Overview, Revenue, Occupancy, ADR, RevPAR, Maintenance) with rankings and heatmaps (hub)
  • Listings module — Property wizard, Channels tab, Archived inventory, and unit management (hub)
  • Properties workspace — Legacy /properties URL redirects into Listings (hub)
  • Booking engine details — Rich marketplace payload editor via the Full integration pill (hub)
  • Finance module — Portfolio ledgers (Overview, Income, Contract Values, Transactions, Payouts, Deposits) with payment approval and deposit settlement (hub)
  • Sales module — Portfolio availability, monthly rent editing, and channel manager connections (hub)
  • Inbox module — Portfolio-wide WhatsApp workspace with Dashboard bell Inbox sub-tab deep links (hub)
  • Notifications module — Full /notifications history with search, filters, and row-click navigation (hub)
  • AI Chat module — Vivin-internal AI Assistant using Landlord MCP tools for portfolio Q&A (hub)
  • Audit module — Portfolio-wide Manual Blocks and Discounts contract-value review (hub)
  • Account Settings — Workspace-wide financial policies, templates, integrations, and operational defaults (hub)
  • API Reference hub — Partner HTTP contracts, Swagger onboarding, and partial vs full feeds (hub)