Finance reports
ProProfit and loss by month from invoices, bills and expenses, who owes what by how late, cash by entity over a quarter, and the matching rules that teach reconciliation, each showing what it would match now.
pnpm dlx shadcn@latest add @caliper/finance-reportsReports
Halden Ltd · in GBP
Profit and loss
| Line | May 26 | Jun 26 | Jul 26 | Aug 26 | Sept 26 | Oct 26 | Total |
|---|---|---|---|---|---|---|---|
| Revenue | – | £3,600 | £17,785 | £7,660 | £16,123 | £5,299 | £50,466 |
| Audit and legal | – | – | – | – | – | (£12,500) | (£12,500) |
| Equipment | – | – | – | – | (£1,349) | – | (£1,349) |
| Hosting | – | – | – | (£2,105) | (£2,318) | – | (£4,423) |
| Rent | – | – | – | (£4,200) | (£4,200) | (£4,200) | (£12,600) |
| Software | – | – | – | (£864) | (£540) | (£755) | (£2,159) |
| Travel | – | – | – | – | (£460) | – | (£460) |
| Uncategorised | – | – | – | – | – | (£318) | (£318) |
| Net | £0 | £3,600 | £17,785 | £491 | £7,255 | (£12,474) | £16,657 |
Revenue by invoice date; costs from bills and approved expenses. Costs in brackets.
Who owes what
| Customer | Not yet due | 1–30 days | 31–60 days | Over 60 days |
|---|---|---|---|---|
| Palisade Hotels | £5,299 | – | – | – |
| Ostra Freight | – | £4,103 | – | – |
| Brightwell | – | £3,600 | – | – |
| Fieldnote | – | – | – | £1,400 |
| Kestrel Bio | £1,250 | – | – | – |
| Lumen Labs | – | £490 | – | – |
| Period | Halden Ltd | Halden Portugal | Halden BV | Total |
|---|---|---|---|---|
| 16 Jul | 205567 | 101438 | 41232 | 348237 |
| 17 Jul | 205806 | 101523 | 41647 | 348976 |
| 18 Jul | 205832 | 101736 | 42038 | 349606 |
| 19 Jul | 205671 | 102062 | 42393 | 350126 |
| 20 Jul | 205364 | 102479 | 42704 | 350547 |
| 21 Jul | 204956 | 102958 | 42965 | 350879 |
| 22 Jul | 204501 | 103471 | 43171 | 351143 |
| 23 Jul | 204051 | 103984 | 43322 | 351357 |
| 24 Jul | 203663 | 104465 | 43420 | 351548 |
| 25 Jul | 203387 | 104884 | 43471 | 351742 |
| 26 Jul | 203269 | 105214 | 43481 | 351964 |
| 27 Jul | 203345 | 105432 | 43460 | 352237 |
| 28 Jul | 203640 | 105521 | 43420 | 352581 |
| 29 Jul | 204169 | 105473 | 43373 | 353015 |
| 30 Jul | 204935 | 105285 | 43333 | 353553 |
| 31 Jul | 205925 | 104963 | 43311 | 354199 |
| 1 Aug | 207117 | 104519 | 43319 | 354955 |
| 2 Aug | 208477 | 103972 | 43367 | 355816 |
| 3 Aug | 209962 | 103348 | 43462 | 356772 |
| 4 Aug | 211522 | 102676 | 43611 | 357809 |
| 5 Aug | 213102 | 101986 | 43814 | 358902 |
| 6 Aug | 214650 | 101312 | 44072 | 360034 |
| 7 Aug | 216111 | 100685 | 44380 | 361176 |
| 8 Aug | 217437 | 100134 | 41453 | 359024 |
| 9 Aug | 218585 | 91364 | 41842 | 351791 |
| 10 Aug | 217465 | 91034 | 42256 | 350755 |
| 11 Aug | 204139 | 90839 | 45964 | 340942 |
| 12 Aug | 204613 | 99103 | 46391 | 350107 |
| 13 Aug | 206918 | 99186 | 46807 | 352911 |
| 14 Aug | 220987 | 99397 | 47198 | 367582 |
| 15 Aug | 220830 | 99721 | 47554 | 368105 |
| 16 Aug | 220524 | 100136 | 47866 | 368526 |
| 17 Aug | 220118 | 100615 | 48127 | 368860 |
| 18 Aug | 219663 | 101127 | 48335 | 369125 |
| 19 Aug | 219214 | 101641 | 48487 | 369342 |
| 20 Aug | 218824 | 102123 | 48586 | 369533 |
| 21 Aug | 218546 | 102543 | 48637 | 369726 |
| 22 Aug | 218424 | 102875 | 48647 | 369946 |
| 23 Aug | 218496 | 103095 | 48627 | 370218 |
| 24 Aug | 218787 | 103186 | 48588 | 370561 |
| 25 Aug | 219312 | 103141 | 48541 | 370994 |
| 26 Aug | 220074 | 102955 | 48500 | 371529 |
| 27 Aug | 221060 | 102635 | 48478 | 372173 |
| 28 Aug | 222249 | 102193 | 48485 | 372927 |
| 29 Aug | 223606 | 101648 | 48532 | 373786 |
| 30 Aug | 225090 | 101026 | 48627 | 374743 |
| 31 Aug | 226647 | 100354 | 48774 | 375775 |
| 1 Sept | 228229 | 99664 | 48977 | 376870 |
| 2 Sept | 229777 | 98989 | 49234 | 378000 |
| 3 Sept | 231241 | 98361 | 49541 | 379143 |
| 4 Sept | 232568 | 97808 | 49894 | 380270 |
| 5 Sept | 233721 | 97356 | 50282 | 381359 |
| 6 Sept | 234666 | 97025 | 50696 | 382387 |
| 7 Sept | 235382 | 96827 | 47843 | 380052 |
| 8 Sept | 235862 | 88449 | 48271 | 372582 |
| 9 Sept | 234049 | 88529 | 48686 | 371264 |
| 10 Sept | 220042 | 88738 | 52358 | 361138 |
| 11 Sept | 219887 | 97380 | 52715 | 369982 |
| 12 Sept | 221645 | 97794 | 53027 | 372466 |
| 13 Sept | 235280 | 98272 | 53290 | 386842 |
| 14 Sept | 234825 | 98784 | 53498 | 387107 |
| 15 Sept | 234374 | 99297 | 53651 | 387322 |
| 16 Sept | 233984 | 99780 | 53751 | 387515 |
| 17 Sept | 233703 | 100202 | 53803 | 387708 |
| 18 Sept | 233579 | 100535 | 53814 | 387928 |
| 19 Sept | 233646 | 100757 | 53795 | 388198 |
| 20 Sept | 233933 | 100852 | 53755 | 388540 |
| 21 Sept | 234455 | 100808 | 53709 | 388972 |
| 22 Sept | 235211 | 100625 | 53668 | 389504 |
| 23 Sept | 236195 | 100307 | 53645 | 390147 |
| 24 Sept | 237381 | 99867 | 53652 | 390900 |
| 25 Sept | 238735 | 99324 | 53698 | 391757 |
| 26 Sept | 240216 | 98703 | 53792 | 392711 |
| 27 Sept | 241774 | 98031 | 53938 | 393743 |
| 28 Sept | 243354 | 97342 | 54139 | 394835 |
| 29 Sept | 244905 | 96666 | 54395 | 395966 |
| 30 Sept | 246369 | 96037 | 54702 | 397108 |
| 1 Oct | 247700 | 95483 | 55054 | 398237 |
| 2 Oct | 248855 | 95029 | 55442 | 399326 |
| 3 Oct | 249805 | 94695 | 55855 | 400355 |
| 4 Oct | 250526 | 94495 | 56282 | 401303 |
| 5 Oct | 251010 | 94434 | 56710 | 402154 |
| 6 Oct | 251261 | 94512 | 57126 | 402899 |
| 7 Oct | 251297 | 94719 | 54238 | 400254 |
| 8 Oct | 251146 | 86719 | 54595 | 392460 |
| 9 Oct | 248784 | 87131 | 54909 | 390824 |
| 10 Oct | 234341 | 87608 | 58452 | 380401 |
| 11 Oct | 233887 | 96440 | 58662 | 388989 |
| 12 Oct | 235497 | 96954 | 58816 | 391267 |
| 13 Oct | 249144 | 97438 | 58917 | 405499 |
When to use #
Use it for
- The reports area of an accounting product.
Skip it when
- Exploring arbitrary data; use the pivot table.
Installation #
pnpm dlx shadcn@latest add @caliper/finance-reports
Adds its 14 files to components/ui/, each with its own stylesheet, and installs their packages. Pro installs with your access token, set up once per project. See Pro access. The first part also adds Caliper UI’s tokens; import them once as in Installation.
Usage #
Import it from your copy of the source. The example behind the preview comes with the source. It is built from FinanceReports and FinanceRules.
import { FinanceReports, FinanceRules } from "@/components/ui/finance-reports"
The worked example comes with Pro
The 150-line example behind the preview opens here with a Pro or Team licence.
API reference #
FinanceReports
component
FinanceRules
component
Accessibility #
It exposes status semantics, with aria-label, aria-invalid, aria-describedby, aria-hidden and aria-live kept in step with state. Changes that matter are announced through a live region.
No custom key handling; Tab and the native activation keys do the work.
Motion #
It declares no animation in its component source. Any transition comes from its stylesheet, which uses the duration tokens that collapse to instant under prefers-reduced-motion.