The financial reports
Last updated
Nine reports covering the money, all behind the finance capability. Takings use succeeded payments, with refunds as negatives. Other sections show balances still owed or stored value you still owe the patient.
Sales
Gross takings, refunds and net for the period, cut by payment type, method, VAT category, practitioner and day, with the discounts given beside them. A staff filter narrows it to one practitioner.
- Gross takings is every succeeded payment in the period that is not a refund. Pending and failed payments never count.
- Refunds and corrections is every succeeded payment recorded as a refund. They are stored as negative amounts, so net takings is simply gross plus refunds.
- A payment counts on the day it was taken, on the clinic's own clock.
- Practitioner comes from the appointment the payment is attached to. Money without an appointment, such as unlinked retail, account top-ups and gift vouchers, is unattributed rather than spread across the team. Retail linked to a visit can be attributed through that appointment.
- Discounts given is money never asked for, so it sits beside the takings rather than being subtracted from them. It covers visits in the period that were not cancelled, and matches the discounts tile on the Finance page.
Service sales
Money taken against appointments, by category and treatment, with visits and the average per visit. Staff and appointment location filters both apply.
- This is money taken, not the list price of what was booked, for the reason set out in the overview article.
- A treatment's figure is every succeeded payment attached to an appointment for it, including reservation fees, balances, refunds and other linked payments.
- Visits counts a grouped booking once within each treatment row. A visit with several treatments can count once for each treatment, so category and headline totals are not distinct patient-visit counts. Payments are counted individually.
- A visit booked as an appointment type with no treatment on it gets its own row. Money with no appointment also gets its own row when no staff or appointment location filter is applied. Either filter excludes that unattached money.
Product sales
Retail by product: units, revenue, cost and margin, with counter sales and online shop orders together.
- Counter sales and shop orders are the same sale here, separated only by how the goods left the clinic. Anything still to be collected or posted counts as awaiting fulfilment.
- Cost and margin are at current cost price. The cost on a product record is a single figure rather than a price captured on each sale, so a unit sold earlier in the period is costed at whatever the record says today. Treat the margin as an indication of which products earn, not as a year-end figure.
- Refunds are not attributed to a product in this report. Net takings with refunds included are on Sales.
- A postage or handling line earns revenue, moves no stock and has no cost, so it appears marked as not a stocked product.
Takings by day
One row per day, split by cash, card terminal, online, bank transfer, account credit and other, with a running total.
This is what should be in the till and in each account for the day. It is not a cash-up: nothing here counts a float, a drawer or a banking, and a cash-up with only an expected side always balances. Compare these figures against what you count.
- Each column is net of refunds, so the columns add across to the day's total and a cash refund comes out of the cash figure.
- A payment counts on the day it was taken, on the clinic's own clock.
- Every day in the period has a row, including the ones that took nothing, so the running total never jumps without explanation.
- Click a day to open its receipts in the finance ledger.
Refunds and corrections
Money already recorded is not voided. Undoing a payment writes a new negative payment, so the original receipt stays exactly as it was issued and the change is on the record. The report groups those negatives by what happened:
- Corrections: a mis-keyed payment was reversed without money moving. The original receipt number appears in the Reverses column.
- Refunds: the row carries a Stripe refund reference. That money went back through Stripe. It can also carry a link to the receipt it reverses.
- Recorded by hand: money returned outside Stripe, either as a linked desk refund or as a negative payment recorded on its own.
A Retail refunds lane appears when the period contains matching retail refund rows.
Total refunded and corrected includes all refund-kind rows, not just card refunds. It is summed in the database over the whole period, so it is right even when the table below is showing only part of it.
Deposits
Three figures that are often confused, kept apart on purpose:
- Taken is a flow: every succeeded deposit dated inside the period, whether the visit has happened yet or not.
- Held right now is a balance, not a period figure. It adds succeeded deposits linked to appointments starting now or later, regardless of appointment status, and does not net refund rows. It does not change when you change the period.
- Kept as a missed-appointment fee is money charged to a saved card in this period for a missed visit, under the old no-show fee. Clinics can no longer take that charge, so this reads £0 for periods from now on. A booking reservation fee you keep after a missed visit is already counted under Taken. The executive summary shows missed appointment value using the agreed final price where present, otherwise the current treatment price.
A deposit refunded later still shows here, and its refund is on the Refunds and corrections report.
Invoices
Invoices issued in the period with what is still owed on each. Four tabs: All, Unpaid, Overdue and Void.
- An invoice is in this period when it was issued in it. Drafts are not documents and are never listed; a voided invoice keeps the date it was issued.
- Balance is the invoice total less succeeded or refunded payments carrying that invoice, worked out in the database rather than added up on the page. Pending and failed payments do not count. A refunded part-payment reopens the balance rather than hiding it.
- Overdue is worked out from the due date every time the page loads and is never stored: an invoice becomes overdue because the date passed, with nothing having to run. Overdue is a subset of unpaid.
- Void has its own tab and is deliberately not counted as unpaid. A void invoice is not paid, and it is not owed either.
- The unpaid and overdue totals cover the whole period, whichever tab is showing.
Stored value
The three things the clinic has already been paid for and still owes in treatment: gift vouchers, account credit and package sessions. Each section shows what was sold or topped up in the period, what was redeemed or spent, and the balance still outstanding as at today.
- A voucher is redeemed either against a booking, where its balance is drawn down, or by being converted in full to account credit. Both are counted. The converted ones also appear as an account top-up, because the value moved from one liability to the other rather than leaving.
- Account credit separates opening balances brought across from another system, membership credit and expired credit. Opening balances are not included in new top-ups.
- Only owners see full voucher codes; other team members with finance access see masked codes.
- Package sessions outstanding are valued at what that patient paid per session, so a package sold at a discount is owed back at the discounted rate.
- All three are one question at year end, which is why they are one page rather than three.
VAT split
Takings split by the saved VAT category on each payment: VAT-exempt medical care, standard-rated cosmetic treatment and uncategorised payments. Refunds reduce the figures. Gift voucher and account-credit purchases are stored value until spent; voucher postage is standard-rated revenue.
The report is reached from Reports, uses the shared period picker and has a CSV for your accountant. The article on the VAT split report covers how the categories are set and what the stored value section means.
Wallet details and the CSV cover every wallet included in the headline totals. If the complete information cannot be read, the report fails rather than showing a partial list as complete.