[Firm name] practice dashboard spec
Replace everything in [square brackets].
Spec details
| Item | Detail |
|---|---|
| Firm | [Firm name] |
| Dashboard owner | [Name, role] |
| Signed off by | [Partner name, date] |
| Spec version | [Date] |
1. The three numbers
| Number | Starting definition | Source | Our definition |
|---|---|---|---|
| WIP | Time and costs recorded on jobs but not yet invoiced, in dollars and by job. | Xero Practice Manager | [Definition] |
| Lockup days | WIP days plus debtor days. WIP days: month-end WIP divided by trailing twelve months of revenue, times 365. Debtor days: month-end receivables over the same revenue, times 365. | WIP from Xero Practice Manager; receivables from the firm’s Xero ledger | [Definition] |
| Jobs overdue | Open jobs past their due date, by staff member and client. | Xero Practice Manager | [Definition] |
2. What counts
| Question | Our answer |
|---|---|
| Draft invoices | [Billed or not] |
| Disbursements | [In or out of WIP] |
| Write-offs | [How they are treated] |
| Jobs with no due date | [Shown or excluded] |
| Breakdowns | [By partner, manager, client, job type] |
3. Access
| Item | Our answer |
|---|---|
| Route | [Read-only connector service, developer build against the XPM API, or exports uploaded to a Claude project] |
| Connector service (if used) and where we read its documentation | [Name, link, date read] |
| What it reads | [Records it can read, from its documentation] |
| Writes off by default, and confirmed off | [Yes or no, date confirmed] |
| Claude account | [Firm-managed account on business terms] |
| Login used for the connection | [A login with only the access the dashboard needs] |
| How to disconnect it | [Steps; done when the person who set it up leaves] |
As at November 2026 we found no Xero-built Claude connector for Xero Practice Manager (Xero’s own connector reads accounting data), so live practice data reaches Claude through a third-party service or through exports. Whichever service you use, check which records it reads, whether writes are off by default, which Claude plans it needs and how you disconnect it.
4. Reconciliation
| Number | Check against | Tolerance | Result at [month-end date] |
|---|---|---|---|
| WIP | Xero Practice Manager WIP report | [Amount or %] | [Matches, or why not] |
| Lockup days | XPM WIP report and Xero aged receivables | [Amount or %] | [Matches, or why not] |
| Jobs overdue | Xero Practice Manager jobs list | [Number] | [Matches, or why not] |
Differences usually come from definitions, not arithmetic: write-offs, draft invoices, disbursements, jobs with no due date, or a date-range limit on the connector. Fix the definition, rebuild and check again. If a number will not reconcile, take it from the XPM report by export and keep the rest live.
5. Refresh and who sees it
| Item | Our answer |
|---|---|
| Refresh day | [Day of month] |
| Run by | [Name] |
| Where the saved prompt lives | [Claude project instruction or skill] |
| Who may see the dashboard | [Names or roles] |
Do not assume the dashboard updates itself. Most connector services fetch only when you ask, so the refresh is a routine: open the project, run the saved prompt, compare the headline numbers with last month’s.
6. Data-safety checks
- It runs on a firm-managed Claude account under business terms, as our AI policy requires.
- Staff time and productivity figures are personal information about the team; we have decided who may see them.
- We have read the connector service’s data terms and recorded where and when.
- We can disconnect the connector in under a minute, and we do when the person who set it up leaves.
7. Starter prompt
You are building an internal practice dashboard for [firm name] from our Xero Practice Manager data. Using only read tools, pull open jobs, time entries, job costs and invoices for [date range], and receivables from our Xero organisation. Calculate three numbers as at [month-end date]: WIP, defined as [definition]; lockup days, defined as WIP days plus debtor days using trailing twelve months of revenue; and jobs overdue, defined as open jobs past their due date. Show each number with the calculation and any records you excluded. If a figure is not available from the data, say so instead of estimating. Then build a single-page interactive dashboard with the three numbers at the top, a breakdown by [partner or manager] below, and the data pull date in the header. Do not create, update or delete anything.
Naming a product is not an endorsement. This is general information, not security or legal advice.