Skip to main content

Audit

First-time workspace setup

Use Manual Blocks and Discounts after Listings (step 13) and Bookings (step 14) inventory exists — month-end hygiene: Manual block hygiene. Requires Listings permission. Workflow pairing: Modules — Setup sequence after go-live.

The Audit workspace (/audit, sidebar Tools → Audit) gives operators two portfolio-wide review surfaces:

  1. Manual Blocksmanual availability blocks (unavailabilities) that can quietly reduce occupancy and revenue without producing income.
  2. Discounts — every contract value with a discount applied, so teams can verify reasons, spot unusual patterns, and quantify revenue impact.

Manual blocks are created and edited from a unit’s Calendar in Listings via Add unavailability. Discounts are applied on booking Contract Values (Bookings — Discounts and payment adjustments) with permission bookings.add_discounts. Audit does not replace those day-to-day surfaces — it centralises cross-portfolio triage in one workspace. Audit is also not the in-sidebar Change history on Listings setup (listings-property-edit-change-history.png) or the booking Changelog on Contract Info → Check-in & Check-out (operator-initiated edits only — FAQ — Booking Changelog scope, #2093; bookings-detail-contract-info-timeline.png), and it does not control which Finance → Transactions rows remain visible after Delete Booking (#1897) — that ledger gate is separate from Cancel booking; see FAQ — Cancel Booking vs Delete Booking and Glossary — Archived booking ledger visibility. Month-end habit: Manual block hygiene.

Direct access

Open Audit at platform.vivin.app/audit (defaults to Manual Blocks), platform.vivin.app/audit/manual-blocks, or platform.vivin.app/audit/discounts. Bookmarkable routes are in Deep Links — Audit.

Pair with other modules

Edit manual blocks from Listings unit calendars; reconcile occupancy with Sales Multicalendar and Bookings → Timeline. Month-end Discounts review can surface receivables that pair with payment overdue rows — row-click opens the booking for Handling a Late Payment — Step 1. When goodwill discounts cluster on one tenant category, add Finance — Tenant category filter or Tenants — Tenant category filter — see Glossary — Tenant category. During Manual block hygiene, poll AI usage API (landlord_chat) when AI Chat or Landlord MCP assists vacancy reconciliation — internal USD cost only. Section-to-doc pairing: Audit section cross-reference. Hub tab matrix: Modules — Module cross-reference.

Who can use it

The Audit nav item and /audit routes use the same guard as Listings: your role needs Listings module permission. Without it, the sidebar entry is hidden and direct URLs show the standard permission state. Administrators adjust access in Users and roles.

Legacy Listings URLs that pointed at a manual-blocks tab now redirect to Audit (/audit/manual-blocks) so bookmarks keep working.

Layout

  • Page header — Title Audit and a short subtitle about validating portfolio data to prevent errors and revenue loss.
  • Tabs — Pill-style Manual Blocks and Discounts tabs. The URL updates to /audit/manual-blocks or /audit/discounts when selected.
  • Info banner — Collapsible guidance panel per tab (Why audit manual blocks? or Why audit discounts?). Expand it when onboarding new operators or running a seasonal hygiene pass.

Manual Blocks tab

Pair with other Audit sections

Manual Blocks pairs with Listings — unit calendar for edits and Manual block hygiene when occupancy looks suppressed — reconcile with Sales — Multicalendar. Full pairing matrix: Audit section cross-reference.

  • Blocked nights chart + table — When your filters match at least one manual block, a Blocked nights per month bar chart appears in a fixed left column (~288px) beside the Manual Blocks table on the right. The chart is computed on the full filtered set server-side (not only the table rows already loaded), so you can spot seasonal hold patterns while scanning rows. On narrow viewports the table still scrolls horizontally inside its card; the chart stays readable in the left column when space allows.
  • Manual Blocks table — Shared with the listings manual-blocks implementation: unified header and body in one table (search, date range, Created by filter, clickable column headers for server-side sort, infinite scroll, Export CSV or Excel, and — for users with Listings edit permission — row checkboxes plus inline and bulk Delete (#2136)).

Audit — Manual Blocks tab with portfolio-wide table, filters, and management shell

When filters match blocks, the Blocked nights per month chart sits in the left column beside the table (server aggregate over the full filtered set):

Audit — Blocked nights per month chart beside the Manual Blocks table (side-by-side layout)

Expanded Why audit manual blocks? checklist (same tab; banner open):

Audit — expanded “Why audit manual blocks?” guidance above the Manual Blocks table

Toolbar and filters

Pair with other Audit sections

Created by and date filters pair with Sales — Multicalendar export habits — see Glossary — Export and download failures when Export toasts an error. Full pairing matrix: Audit section cross-reference.

ControlPurpose
SearchMatches property name, unit name, or reason text (debounced).
Date rangeLimits blocks whose start/end overlap the selected from–to window (calendar pill, same pattern as Sales multicalendar).
Created byMulti-select of property managers who created the block. Applied server-side together with search and date range so the table total, chart, and Export all reflect the same filtered population.
Clear allAppears when any filter is active; removes search, dates, and creator filters.
ExportDownloads the currently filtered rows as CSV or Excel (vivin-manual-blocks-YYYY-MM-DD.*). Disabled when the filtered list is empty.
DeleteUsers with Listings edit permission see a checkbox column, a per-row trash icon, and Delete selected when rows are ticked (#2136). Confirmation states how many holds will be removed and that dates become available again. Large batches show a progress counter while deletes run; partial failures keep failed rows selected so you can retry. Booking and channel blocks are not deletable here — only operator-created manual holds. Read-only roles see the same table without delete controls.
Column sortClick Unit, Start, End, Nights, Reason, Created by, or Created headers to sort server-side (↕ / ↑ / ↓). Default is Created descending (newest first). Date and night columns default to descending on first click; Unit and Reason default to ascending. Changing sort resets infinite scroll to page 1; Export and the Blocked nights per month chart use the same sort and filters.

Created by is a multi-select: open the control, tick one or more property managers, and remove individual selections with the chip × or use Clear all to reset every filter at once. The table total, Blocked nights per month chart, and Export all use the same server-side filter set.

Audit — Manual Blocks Created by multi-select open with property-manager options

Audit — Manual Blocks with Created by chip active and Clear all in the filter row

Open Export, then choose CSV or Excel (.xlsx). Downloads use dated filenames: vivin-manual-blocks-YYYY-MM-DD.csv or vivin-manual-blocks-YYYY-MM-DD.xlsx. If nothing matches the current filters, Export stays disabled.

When the export request fails, Vivin shows a toast instead of silently closing the menu — see Glossary — Export and download failures.

Audit — Manual Blocks Export menu (CSV / Excel); download reflects current filters and sort

Blocked nights per month

When your account has manual blocks that match the current filters, a Blocked nights per month bar chart appears in a left column next to the table. Each bar is the sum of calendar nights blocked in that month across the entire filtered set — not only the rows already loaded in the table.

Use the chart to spot months with unusually high hold volume before you scroll the full table. Narrowing Search, Date range, or Created by refreshes both the chart and the table from the server with the same query.

Hover a bar to read the exact night count for that month. The chart hides when no blocks match the active filters.

Screenshot freshness

Blocked nights per month chart re-captured 2026-06-21 00:12 UTC (VIVIN_DOCS_BASE_URL=http://localhost:5173 VIVIN_DOCS_RECORD_API=$VITE_API_BASE_URL npx tsx tools/capture-audit-bookings-enrichment-screenshots.ts). Created by filter open + chip re-captured 2026-06-21 00:12 UTC (tools/capture-audit-created-by-filter-screenshot.ts). Unit sidebar row-open capture re-captured 2026-06-21 00:12 UTC (tools/capture-audit-row-sidebar.ts). Column sort (Unit ascending) re-captured 2026-06-21 00:12 UTC (tools/capture-audit-manual-blocks-column-sort-screenshot.ts). Load-more skeleton remains from 2026-06-16 12:05 UTC (capture-audit-manual-blocks-pagination-screenshots.ts). Load-failure alert remains from 2026-06-17 07:12 UTC (tools/capture-audit-manual-blocks-load-failure.ts).

Manual Blocks table loading

Pair with other Audit sections

Pagination and load failures pair with Glossary — Directory list load failuresExport still downloads the full filtered set without scrolling every page. Full pairing matrix: Audit section cross-reference.

The Manual Blocks table is server-paged from GET /listings/manual-unavailabilities — it does not download your entire portfolio in one request.

PhaseBehaviour
First paintUp to 20 rows for the active Search, Date range, and Created by filters (newest created first).
ScrollWhen you scroll near the bottom of the main workspace, the next page (20 rows) loads automatically. A short skeleton strip may appear under the table while fetching.
FiltersChanging search, dates, or creator chips resets the table and starts again from the first page.
DoneA footer line shows the server total (for example 42 manual blocks). When every matching row has been fetched, End of list appears beside the count.
ExportCSV / Excel downloads the full filtered set from the server — you do not need to scroll through every page first.

The Blocked nights per month chart always reflects all blocks that match the current filters, even when the table has only loaded the first pages.

Load failures — When the first manual-blocks request fails, a red alert card shows Failed to load manual blocks. with optional server detail and a Retry button (the chart and table stay empty until the fetch succeeds). This is distinct from filters that match zero blocks. See Glossary — Directory list load failures.

Audit — Manual Blocks tab load failure with Retry after simulated API error

Screenshot freshness

Load-failure capture refreshed 2026-06-17 07:12 UTC (VIVIN_DOCS_BASE_URL=http://localhost:5173 VIVIN_DOCS_RECORD_API=$VITE_API_BASE_URL npx tsx tools/capture-audit-manual-blocks-load-failure.ts). Load-more skeleton and pagination footer remain from 2026-06-16 (capture-audit-manual-blocks-pagination-screenshots.ts).

Audit — Manual Blocks table loading the next page (skeleton rows under the table)

After you scroll through every page, the footer shows the server total and End of list (for example 42 manual blocks · End of list):

Audit — Manual Blocks table footer with server total and End of list after infinite scroll

Column headers sort server-side across the full filtered set (not only the rows already loaded). The default is Created descending (newest first). Click a header again to reverse direction; click another column to change the primary sort. The same convention as Finance Transactions and Payouts infinite-scroll tables.

Audit — Manual Blocks table with Unit sorted ascending (server-side sort indicator on the header)

Screenshot freshness

Column sort (Unit ascending) captured 2026-06-21 00:12 UTC (VIVIN_DOCS_BASE_URL=http://localhost:5173 VIVIN_DOCS_RECORD_API=$VITE_API_BASE_URL npx tsx tools/capture-audit-manual-blocks-column-sort-screenshot.ts).

Table columns

ColumnDescription
UnitProperty and unit labels (Property · Unit).
Start / EndBlock boundaries (day-level).
NightsCalendar nights between start and end (desktop/tablet).
ReasonOperator-entered description from Add unavailability.
Created byTeam member who created the block, when recorded.
CreatedTimestamp when the block was added (widest breakpoints).

Click a row to open the unit listing sidebar in context (same sidebar used in Listings) so you can jump to the unit Calendar or adjust the block if your role includes edit permission.

Audit — Manual Blocks row opens the unit listing sidebar (same drawer as Listings) for calendar and block edits

Typical workflows

Pair with other Audit sections

Hygiene passes pair with Portfolio KPI review — Step 6 and Dashboard — Vacant Units after you clear holds that suppressed Today counts. Full pairing matrix: Audit section cross-reference.

Hygiene pass before high season

  1. Open Tools → Audit (or /audit).
  2. Expand Why audit manual blocks? if your team needs the checklist.
  3. Sort by Created (newest first, default) or click End / Nights to surface long holds; narrow with a date range covering the upcoming season when needed.
  4. Scan Reason and End columns for vague text or blocks that should have ended.
  5. Open suspicious rows → unit sidebar → Calendar to edit or remove the hold.
Walkthrough: search the Manual Blocks table → scroll the filtered list → open a row to the unit listing sidebar.

Export for owner or ops review

  1. Apply filters (for example a date range or Created by).
  2. Click ExportCSV or Excel (see the toolbar screenshot for the menu).
  3. Share the file outside VIVIN for offline sign-off.

Exported rows include property and unit labels, block Start / End, computed Period and Nights, Reason, Created by, and Created timestamp — column headers follow your interface language.

After staff changes

Filter Created by to a departed operator’s account, then clear blocks they left with unclear reasons — see also Modules — Audit on the overview page and Glossary — Manual unavailability.

Discounts tab

Pair with other Audit sections

The Discounts tab (/audit/discounts) lists every contract value on your account where a discount was applied. Use it for month-end revenue review, owner reporting, and spotting discounts without a reason, on the wrong payment type, or on already-ended bookings.

Audit — Discounts tab with KPI summary cards, filters, and discounted contract-value table

Expanded Why audit discounts? checklist (same tab; banner open):

Audit — expanded “Why audit discounts?” guidance above the Discounts table

KPI summary cards

Four compact cards summarise the currently filtered population (same query as the table and Export):

CardMeaning
Discounted itemsCount of contract values with a discount in scope (selected date range, or all time when no range is set).
Total discountsSum of discount amounts (€) across those lines.
Avg discount rateTotal discounts as a share of gross (pre-discount) value on discounted lines.
Avg discount / itemAverage discount € per discounted line.

Toolbar and filters

ControlPurpose
SearchMatches unit, property, or tenant name (debounced).
Date rangeOptional window on the contract-value period / due context. No range = all discounts on the account (default). Clear the range with the × on the pill or Clear all.
Payment typePill filters: All, Rent, and enabled fee types (Admin fee, Exit fee, Cleaning fee, Others) — labels follow your fee settings.
Clear allAppears when search, date range, or payment-type filter is active.
ExportDownloads the full filtered + sorted set as CSV or Excel (vivin-discounts-YYYY-MM-DD.*). Disabled when the filtered list is empty.
Column sortClick Unit, Tenant, Item, Status, Period, Discount, or Net Amount for server-side sort. Default is Discount descending (largest reductions first).

Audit — Discounts Export menu (CSV / Excel); download reflects current filters and sort

When the export request fails, Vivin shows a toast instead of silently closing the menu — see Glossary — Export and download failures.

Discounts table loading

Pair with other Audit sections

Discounts pagination pairs with Bookings — Other filters → Discounts and Finance — Tenant category filter when goodwill reductions cluster on one segment. Full pairing matrix: Audit section cross-reference.

The Discounts table is server-paged — it does not download your entire portfolio in one request.

PhaseBehaviour
First paintUp to 20 rows for the active filters (default sort: Discount descending).
ScrollNear the bottom, the next page loads automatically (5 rows per follow-up). A Loading more… line may appear under the table.
FiltersChanging search, dates, or payment type resets pagination to page 1.
DoneFooter shows N of M discounted items; when every row is loaded, End of list appears under the table.
ExportCSV / Excel downloads the full filtered set from the server — you do not need to scroll through every page first.

Load failures — When the first discounts request fails, the empty state shows Could not load discounts with the server message. Filtered empty states offer Clear all. This is distinct from an account with zero discounts (No discounts applied).

Table columns

ColumnDescription
UnitUnit label; property internal name as secondary line when different.
TenantTenant name with avatar; booking status chip (Upcoming, Ongoing, Ended, Cancelled).
ItemPayment type (Rent, Admin fee, Cleaning fee, etc.).
StatusContract-value status (same badges as Finance Contract Values).
PeriodScheduled period / due context for the line.
AmountGross (pre-discount) scheduled amount.
DiscountDiscount € (amber) and % of gross when applicable.
Net AmountAmount after discount — what allocations compare against.
ReasonOperator-entered discount reason (truncated in-cell; full text in Export).

Click a row (when your role can open bookings) to open the booking detail sidebar on the Contract Values tab with the discounted line highlighted — same sidebar as Bookings.

Audit — Discounts row opens booking detail sidebar on Contract Values with the discounted line highlighted

Typical Discounts workflows

Pair with other Audit sections

Month-end Discounts review pairs with Handling a Late Payment — Step 1 when receivables follow repricing, not pricing errors — see Glossary — Discount (booking). Full pairing matrix: Audit section cross-reference.

Month-end discount review

  1. Open Tools → AuditDiscounts (or /audit/discounts).
  2. Expand Why audit discounts? if your team needs the checklist.
  3. Optionally set a date range for the closing month; leave it empty for all-time triage.
  4. Scan Reason for blank or vague entries; sort by Discount to surface the largest reductions.
  5. Click a row → booking sidebar → Contract Values to verify or adjust the line (requires bookings.add_discounts).

Export for owner or finance review

  1. Apply filters (for example Rent only, or a date range).
  2. Click ExportCSV or Excel.
  3. Share the file outside VIVIN for offline sign-off. Exported columns include unit, property, tenant, payment type, period, amounts, discount, net, reason, and statuses.

Cross-check with Bookings and Finance filters

Portfolio triage on the Bookings list and Finance Other filters → Booking → Discounts (With / Without) uses the same underlying data. Add Finance → Other filters → Tenant → Tenant category or Tenants — Tenant category filter when goodwill discounts cluster on one segment — see Finance — Tenant category filter. Audit is the dedicated table + KPI + export view for discounted lines only.

Walkthrough: open Discounts → filter Rent → preview Export → open a row to the booking Contract Values sidebar.
Screenshot freshness

Discounts workspace, info banner, export menu, and booking-sidebar captures re-captured 2026-06-23 19:15 UTC (VIVIN_DOCS_BASE_URL=http://localhost:5173 VIVIN_DOCS_RECORD_API=$VITE_API_BASE_URL npx tsx tools/capture-audit-discounts-screenshots.ts).

Audit guide subsection index

Pair with other Audit module guide sections

This index pairs Audit tab sections with Related subsections — use it when manual-block hygiene disagrees with Sales Multicalendar or Discounts receivables need Finance triage. Full pairing matrix: Audit section cross-reference.

SubsectionWhen to open itPair with
Who can use itListings permission guard for /auditSettings > Users and roles, Listings module
Manual Blocks tabPortfolio-wide unavailability reviewListings — unit calendar, Manual block hygiene, Sales — Multicalendar
Toolbar and filtersSearch, date range, Created by, ExportGlossary — Export and download failures, Sales — Multicalendar toolbar
Blocked nights per monthSeasonal hold volume chartDashboard — Vacant Units, Portfolio KPI review — Step 6
Manual Blocks table loadingInfinite scroll and load failuresGlossary — Directory list load failures
Typical workflowsHygiene pass and owner exportPortfolio KPI review, Bookings — Timeline
Discounts tabPortfolio-wide discounted contract valuesBookings — Discounts and payment adjustments, Finance — Contract Values tab
Discounts table loadingDiscounts pagination and empty statesBookings — Other filters → Discounts, Finance — Tenant category filter
Typical Discounts workflowsMonth-end discount review and exportHandling a Late Payment — Step 1, Notifications — Payment overdue alerts
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)
Notification row-click navigation/notifications row-click before Discounts month-end exportCommon Workflows — Notification row-click navigation, Notification triage — Step 4, Discounts tab
Payment alert to receivables triagepayment overdue on discounted or blocked-unit bookingsCommon Workflows — Payment alert to receivables triage, Handling a Late Payment — Step 1, Notifications — Payment overdue alerts
Confirmation alert triageUpcoming alerts before month-end Discounts sign-offCommon Workflows — Confirmation alert triage, Processing a New Booking — Step 5b, Manual block hygiene
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 triageDiscounts review when receivables lag behind Top debtors rankCommon Workflows — Finance debt receivables triage, Finance — Finance debt receivables triage, FAQ — Finance debt receivables triage hub, Discounts tab, Handling a Late Payment collections (finance-overview-debt-aging-expanded-bucket.png, finance-overview-debt-aging-walkthrough-flow.mp4)
Finance Income status drill-downDiscounts review may explain inflated Scheduled segments — reconcile Income chart firstCommon Workflows — Finance Income status drill-down, Finance — Income status drill-down, FAQ — Finance Income status drill-down hub, Discounts tab, Finance debt receivables triage (finance-overview-income-status-in-debt-modal.png, finance-overview-income-drill-down-flow.mp4)
Cash flow forecast drill-downDiscounts adjustments may lag Cash flow forecast collections until receipts are approvedCommon 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, Discounts tab, Manual Blocks tab (finance-overview-cash-flow-all-payments-modal.png, finance-overview-cash-flow-day-view.png, finance-overview-cash-flow-drill-down-flow.mp4)
Audit section cross-referencePer-tab pairing matrixModule cross-reference, Listings guide subsection index

Audit section cross-reference

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

Audit tab / sectionPair with these docs
Who can use itSettings > Users and roles, Listings module
Manual Blocks tabListings — Viewing unit availability and unavailability, Manual block hygiene (workflow), Tenant MCP — Booking and contract data (get-listing-calendar, list-bookings-by-email, request-booking-data), Tenant MCP — Maintenance and escalation (notify-landlord), Landlord MCP — Read-only and intelligence (get-vacant-units-next-month, get-booking-summary — portfolio signal before Audit)
Toolbar and filtersGlossary — Export and download failures, Sales — Multicalendar date range
Manual Blocks table loadingGlossary — Directory list load failures
Typical workflowsPortfolio KPI review, Portfolio KPI review — Step 6, Sales — Multicalendar, Bookings — Other filters tenant category, Glossary — Tenant category, Landlord MCP — Read-only and intelligence (get-vacant-units-next-month, get-listing-calendar during Step 5 reconciliation), Tenant MCP — Booking and contract data (get-listing-calendar when tenants report blocked dates)
Discounts tabBookings — Discounts and payment adjustments, Finance — Contract Values tab, Notifications — Payment overdue alerts, Handling a Late Payment — Step 1, Finance — Tenant category filter, Tenants — Tenant category filter, Bookings — Other filters tenant category, Glossary — Tenant category
Discounts table loadingGlossary — Directory list load failures
Typical Discounts workflowsGlossary — Discount (booking), Bookings — Other filters → Discounts, Finance — Tenant category filter, Tenants — Tenant category filter, Settings > Tenant categories

Pair with other Audit 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: Audit guide subsection index · Audit section cross-reference. Full hub matrix: Module cross-reference · Modules hub subsection index.

Documentation map & escalation

Pair with other Audit module guide sections

Upstream & downstream workflows

Pair with other Audit module guide sections

Deeper workflow reads

Pair with other Audit 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/audit/index.md#deeper-workflow-reads) anchors on Module documentation hubs bullets — hub parity: Modules hub — Deeper workflow reads. Full pairing matrix: Audit section cross-reference · Module cross-reference.

Settings that shape Audit

Pair with other Audit module guide sections

Deeper concept reads

Pair with other Audit module guide sections

Operator modules (pairing surfaces)

Pair with other Audit module guide sections

Module hub bullets pair with Modules — Module cross-reference. Full pairing matrix: Audit section cross-reference · Module cross-reference.

Lockout catch-up after password recovery

Pair with other Audit module guide sections

Pending manual receipt approval

Pair with other Audit module guide sections

Reject/revert mistaken receipts

Check-out ledger cleanup before refund

Pair with other Audit module guide sections

Utility overage collections

Pair with other Audit module guide sections

Utility overage In Debt skews month-end Discounts and receivables exports — triage after bill posting before outreach. Hub parity: Common Workflows — Utility overage collections. Full pairing matrix: Audit section cross-reference · Module cross-reference.

Cancellation collections before void

Pair with other Audit module guide sections

Pre-cancel arrears pair with Portfolio KPI review month-end sign-off before void queue. Hub parity: Common Workflows — Cancellation collections before void. Full pairing matrix: Audit section cross-reference · Module cross-reference.

Check-out collections before refund

Pair with other Audit module guide sections

Departure-week arrears pair with Portfolio KPI review month-end sign-off before refund queue. Hub parity: Common Workflows — Check-out collections before refund. Full pairing matrix: Audit section cross-reference · Module cross-reference.

Handling a Late Payment collections

Pair with other Audit module guide sections

Month-end Discounts / receivables exports pair with Finance debt receivables triage before Handling a Late Payment collections sign-off. Hub parity: Common Workflows — Handling a Late Payment collections hub. Full pairing matrix: Audit section cross-reference · Module cross-reference.

Check-out vs cancellation

Pair with other Audit module guide sections

Month-end Export rows include both Ended and Canceled bookings — confirm lifecycle filter before you reconcile departure KPIs with Managing a Check-out vs Cancelling a Booking. Hub parity: Common Workflows — Check-out vs cancellation. Full pairing matrix: Audit section cross-reference · Module cross-reference.

Deposit missing on Finance Deposits

Pair with other Audit module guide sections

Month-end export sign-off should clear Finance → Deposits toolbar date range when lifecycle card counts look too low for the reporting period — not only manual block reconciliation. Hub parity: Common Workflows — Deposit missing on Finance Deposits. Full pairing matrix: Audit section cross-reference · Module cross-reference.

Notification row-click navigation

Pair with other Audit module guide sections

Month-end Discounts export and Manual Blocks hygiene can disagree with receivables until /notifications row-click opens the booking for Notification triage — Step 4 — finish Transactions / Payment Plan triage before you trust discount KPIs or release holds. Hub parity: Common Workflows — Notification row-click navigation. Full pairing matrix: Audit section cross-reference · Module cross-reference.

Payment alert to receivables triage

Pair with other Audit module guide sections

When Discounts review surfaces payment overdue rows on goodwill-adjusted bookings, row-click into Bookings and finish Handling a Late Payment — Step 1 before you export discount CSVs for owner sign-off. Hub parity: Common Workflows — Payment alert to receivables triage. Full pairing matrix: Audit section cross-reference · Module cross-reference.

Finance debt receivables triage

Pair with other Audit module guide sections

Discounts export and goodwill lines may explain receivables that lag behind Top debtors rank — pair ledger cleanup before collections sign-off. Hub parity: Common Workflows — Finance debt receivables triage. Full pairing matrix: Audit section cross-reference · Module cross-reference.

Finance Income status drill-down

Pair with other Audit module guide sections

Discounts review may explain inflated Scheduled segments — reconcile Income chart before Debt Aging collections. Hub parity: Common Workflows — Finance Income status drill-down. Full pairing matrix: Audit section cross-reference · Module cross-reference.

Cash flow forecast drill-down

Pair with other Audit module guide sections

Discounts review may explain Cash flow forecast vs bank mismatch — reconcile All payments modal before collections escalation. Hub parity: Common Workflows — Cash flow forecast drill-down. Full pairing matrix: Audit section cross-reference · Module cross-reference.

Confirmation alert triage

Pair with other Audit module guide sections

Upcoming Booking created / Payment received alerts during month-end Discounts or Manual Blocks review row-click into Bookings — finish Processing a New Booking — Step 5b / Step 6 before you bulk-clear /notifications and sign off audit exports. Hub parity: Common Workflows — Confirmation alert triage. Full pairing matrix: Audit section cross-reference · Module cross-reference.

New inventory to first booking handoff

Pair with other Audit module guide sections

Month-end export after go-live should confirm stale Manual Blocks cleared before first channel import — pair Onboarding — Step 7 with Processing a New Booking — Step 1. Hub parity: Common Workflows — New inventory to first booking handoff. Full pairing matrix: Audit section cross-reference · Module cross-reference.

Property setup to first arrival handoff

Pair with other Audit module guide sections

Month-end export after go-live should confirm first-arrival Upcoming backlog cleared on Operations → Check-in & Check-out — pair Onboarding — Step 7 with Managing a Check-in — Step 1. Hub parity: Common Workflows — Property setup to first arrival handoff. Full pairing matrix: Audit section cross-reference · Module cross-reference.

Confirmation to check-in handoff

Pair with other Audit module guide sections

Month-end export sign-off should confirm Upcoming confirmation backlog cleared before arrival-week Operations planning. Hub parity: Common Workflows — Confirmation to check-in handoff. Full pairing matrix: Audit section cross-reference · Module cross-reference.

Check-in to check-out handoff

Pair with other Audit module guide sections

Month-end export review should confirm Ongoing stays entering departure week were triaged on Operations → Check-in & Check-out — not left in arrival-week backlog. Hub parity: Common Workflows — Check-in to check-out handoff. Full pairing matrix: audit-section-cross-reference · Module cross-reference.

Check-out final utilities handoff

Pair with other Audit module guide sections

Month-end export should run after departure-week utility overage backlog clears on Finance → Transactions — utility Missing bills skew receivables until Entering Monthly Utility Bills — Step 5 closes. Hub parity: Common Workflows — Check-out final utilities handoff. Full pairing matrix: Audit section cross-reference · Module cross-reference.

Same-day turnover coordination

Pair with other Audit module guide sections

Month-end export should run after turnover ticket backlog clears on Operations → Check-in & Check-out — hub parity: Common Workflows — Same-day turnover coordination. Full pairing matrix: Audit section cross-reference · Module cross-reference.

WhatsApp per-booking messaging

Pair with other Audit module guide sections

Month-end communication review pairs with Bookings → Communication when Discounts or manual-block audits surface tenant message disputes — cross-booking Inbox lacks booking ledger context. Hub parity: Glossary — WhatsApp per-booking messaging hub · Common Workflows — WhatsApp per-booking messaging. Full pairing matrix: Audit section cross-reference · Module cross-reference.

Bot reasoning (audit)

Pair with other Audit module guide sections

Month-end communication review after Discounts audit. Hub parity: Glossary — Bot reasoning (audit) hub · Common Workflows — Bot reasoning (audit). Full pairing matrix: Audit section cross-reference · Module cross-reference.

ChatBot settings

Pair with other Audit module guide sections

Account Settings → ChatBot pairs with Communication thread review — month-end communication review after discounts audit. Hub parity: Glossary — ChatBot settings hub · Common Workflows — ChatBot settings. Full pairing matrix: Audit section cross-reference · Module cross-reference.

Rent reduction after invoicing

Pair with other Audit module guide sections

Month-end Discounts review may surface bookings where schedule edits are blocked below exported invoice totals — pair Bookings → Contract Values → Edit amount with Bulk Hostkit invoicing for Issue credit notes (N). Hub parity: Common Workflows — Rent reduction after invoicing. Full pairing matrix: Audit section cross-reference · Module cross-reference.

Occupancy KPI to block hygiene handoff

Pair with other Audit module guide sections

Manual Blocks tab is the portfolio entry point for hub Common Workflows — Occupancy KPI to block hygiene handoff when Analytics → Occupancy Ranking looks hold-suppressed. Full pairing matrix: Audit section cross-reference · Module cross-reference.

Month-end invoicing (fixed date)

Pair with other Audit module guide sections

Discounts review may surface invoiced rows needing month-end fixed-date batch ordering — save Invoice date in Settings → Invoicing before Finance → Transactions bulk Issue allocation. Hub parity: Common Workflows — Month-end invoicing (fixed date). Full pairing matrix: Audit section cross-reference · Module cross-reference.

Bulk Hostkit invoicing

Pair with other Audit module guide sections

Discounts review may surface bookings needing month-end bulk Issue allocation — clear Manual Blocks holds before unmasking receivables on Finance → Transactions. Hub parity: Common Workflows — Bulk Hostkit invoicing. Full pairing matrix: Audit section cross-reference · Module cross-reference.

Directory list load failures

Pair with other Audit module guide sections

Manual Blocks first-fetch failures pair with Manual block hygiene — Step 1Failed to load manual blocks. + Retry before you assume the portfolio has zero holds. Hub parity: Common Workflows — Directory list load failures. Full pairing matrix: Audit section cross-reference · Module cross-reference.

Partly collected security deposit

Pair with other Audit module guide sections

Portfolio segmentation by tenant category

Pair with other Audit module guide sections

Key glossary terms

Pair with other Audit module guide sections

API & companion guides

Pair with other Audit module guide sections

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

Module documentation hubs

Pair with other Audit module guide sections

Module hub bullets pair with Modules — Module cross-reference. Full pairing matrix: Audit section cross-reference · Module cross-reference.

  • Audit module — Portfolio-wide Manual Blocks and Discounts contract-value review (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)
  • Tenants module — Tenant directory, profile sidebars, With Debt segmentation, and table expand for linked bookings (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)
  • 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)