Finance report
The Finance report (Report → Finance, /stats/base) is the money page: payments received, profit and loss, cash flow, income by period, and online payment-provider activity.
Who can access this: Requires the Booking payments or Bank entries permission (read), plus the Finance Reports switch in your role.
Finance report, Profit and Loss tab
| Tab | Shows | Key figures |
|---|---|---|
| Payments | Every payment received, grouped by your Group By period. | Toggle Prepayment / On Site / POS Counter to change where the money was collected. A Date dropdown switches the basis to Payment received (the default), Check-In, or Check-Out. Each period shows a card per payment method (Cash, Bank Transfer, Credit Card, and so on), then a line list — date, invoice/bill no. (links back to the booking or POS bill), reference, comment, value — with an extra subtotal row per currency when a period mixes more than one. Its own CSV download only, no Excel. |
| Profit/Loss | Revenue by category for one asset and period — see below. | Rooms, discounts, supplements, commissions, cancellation fees, and your product categories, each split into Prepayment / On Site / Total. |
| Cash Flow | Your bank balance over time, one area chart per currency you hold. | Small chips at the top show the running total per currency. Only has data when the Bank module is active, and has no export of its own. |
| Income | Revenue recognised per period, with a paid/free/on-site split. | Toggle Option / Hold to include non-confirmed bookings, and Booking to reveal a per-booking breakdown (Total / Paid / Amount due) under each period. Columns cover total revenue, income including payments already received, Free of charge, On Site, and Paid (split into Bank/Cash beneath it). Filter by asset; a totals row sums the whole range. |
| Payment Provider | The log of payments taken through a connected online payment provider (public invoice, booking widgets). | Status dot (confirmed/draft/failed) and a link back to the booking. No export here — it's for spot-checking, not bulk data. |
Reading the Profit/Loss tab
Each category row has Prepayment, On Site, and Total columns, in the currency you pick (or the whole company's base currency by default). Cancellation Fee only counts fees on bookings cancelled with an arrival date inside your range — it's not a running cancellation log. Click the list icon next to a row to drill into the actual transactions behind that number — a small table of date, reference, text, and value, split by Prepayment/On Site. The reference links to the booking when there is one; an on-site product sale with no booking behind it shows a bill number instead. Click the download icon on an open row to export just that detail as CSV. A grand Total row sits at the bottom. If your product categories are organised into groups, they appear under a group heading with their own subtotal.
Tip: The date-basis dropdown on this tab is fixed to Check-In — it can't be changed here, unlike the Payments tab. Use the Currency selector and the Download menu (CSV/Excel) at the top to change or export the view. Both the currency and the Check-In basis lock in place once you're viewing a locked month.
How to read it: treat the category rows like a P&L statement, top to bottom. If Rooms shows 8,400 Prepayment / 3,200 On Site and Discounts shows −450, your rooms actually billed 11,600 before discounts, 450 of which you gave away — the Total row at the bottom is the number that matters.
Locking a month (period close)
When you select exactly one full calendar month in the date range, a Lock control appears. Locking freezes that month's Profit/Loss numbers permanently — later edits to bookings inside a locked month never change its report again.
- Months lock in order. You can only lock the month right after the latest locked one (or any month if none are locked yet). If it's not your turn, the button is disabled with a hint.
- Locking captures the current view. The currency and Check-In basis you're looking at get frozen into the lock, and the locked report always shows in that currency from then on — the Currency selector is disabled while you're viewing a locked month.
- Locking also settles older drift. If an already-locked month's real numbers have moved since it was closed (someone edited a booking that falls inside it), locking the next month folds that difference in permanently and resets the older month's baseline, so the same drift is never counted twice.
- Only the latest lock can be undone. The Unlock button only appears on the most recently locked month.
- Both actions need the Bookings update permission — a different permission from the one that lets you view the report.
| Field on a locked month | Meaning |
|---|---|
| Locked badge | Confirms this period is frozen, with the lock date/time, the user who locked it, and the currency. |
| Locked months strip | A scrollable row of every locked month for the asset, plus the next open one waiting to be locked. Click Open on any card to view that month (read-only); Load earlier/later months fetches more into the strip. |
If a booking inside an already-locked month is edited afterwards, the difference doesn't reopen that month — it shows up as a "Takeover from previous month" block on the next open month, broken down by the same categories, with a note explaining it's a carry-over. Drill into a takeover row the same way as a normal category to see exactly which bookings changed. This block only ever appears on the month right after your latest lock — if you skip ahead to a later month without locking the one in between, the takeover is simply waiting there for when you come back to it.
Warning: Locking is meant to be a permanent record of a closed period. Only lock a month once you're confident its numbers are final.
Closing a month: step by step
- Open Report → Finance → Profit/Loss for the asset you want to close.
- Set the date range to exactly one full calendar month — the Last Month preset is the quickest way, or pick the 1st to the last day of the month yourself.
- Review the category rows and drill into anything that looks off before you commit.
- Confirm the Lock button is enabled — it only is when this is the month right after your latest lock (or your first lock ever).
- Click Lock, then confirm in the dialog. The month gets a Locked badge and joins the Locked months strip.
- Spot an error later? You can still edit the underlying booking — the locked month's own report won't move, but the difference appears as a Takeover once you open the next month.
- Changed your mind right away? Unlock is only available while this is still the latest lock.
Finance report, locked months strip
