Browse the knowledge base

The VAT workbench: reviewing client invoices

The invoice workbench is a three-pane review screen: invoice list left, original document center, data + comments + actions right. Six issue buckets (All, No document, Check data, Duplicate?, Flagged, Done) sort problems first, and a full keyboard layer (A approve, F flag, J/K navigate, and more) lets you clear a client's month without touching the mouse.

The three-pane layout

Reviewing an invoice means comparing three things: what the client's books say, what the original document says, and what you want to do about it. The workbench puts all three side by side — the invoice list on the left, a preview of the original document in the center, and the data, comment thread, and review actions on the right. Shift+F opens the document preview fullscreen when you need to squint at a line item.

Six issue buckets

The filter pills above the list sort the period's invoices by what's wrong with them:

  • All — everything in the period.
  • No document — no usable supporting document. A generated PDF of a finalized sales invoice counts as the document; a deleted upload does not.
  • Check data — the data looks incomplete: missing invoice number, no vendor assigned, or a zero amount.
  • Duplicate? — possible duplicates. Same-number detection (dismissable per invoice) plus amount-based hints: same amount within ±0.05 in the invoice currency and ±7 days. Opposite-sign pairs are labeled as a possible credit-note pair rather than a duplicate.
  • Flagged — sent back to the client with a reason; waiting on their correction.
  • Done — reviewed or ignored.

Counts come from the server over the full period — the list caps at 100 rows per page, but the pills never read a truncated page. The default sort is needs-attention: no document → check data → duplicate → pending → flagged → reviewed (dimmed), with ignored invoices collapsed into their own group.

Keyboard-first review

Every review action has a key, so a routine month is mostly two fingers:

Key Action
A Approve
F Flag (opens the reason modal)
S Skip
I Ignore
J / N / ↓ Next invoice
K / P / ↑ Previous invoice
D Flip direction (incoming ↔ outgoing)
C Focus the category picker
V Focus the VAT-rate picker
M Open match candidates
R Request the document from the client
Shift+F Document preview fullscreen
Cmd/Ctrl+K Focus workspace search
← / → Switch workspace tabs
Cmd/Ctrl+Enter Submit the flag modal

Shortcuts are inert while a dialog is open or while you're typing in a field, and modified key combos never trigger review actions — no accidental approvals. A shortcut legend renders in the panel itself.

Flagging requires a reason: the modal offers six quick picks (Amount incorrect, Invoice number incorrect, Vendor missing, VAT issue, Payment proof missing, Document missing) plus free text, and Cmd/Ctrl+Enter submits.

Fixing data without leaving the screen

  • Split-screen invoice editor — correct the supplier's invoice number, vendor, date, and net/VAT/gross amounts in a modal that keeps the original document on the left and the fields on the right, so the numbers you're correcting stay visible.
  • VAT rate — correct via dropdown; the gross amount stays fixed while net and VAT recompute.
  • Reclassify a wrongly finalized sales invoice — behind a deliberate danger confirm ("Void RE-…?"). The invoice number is voided but its sequence slot is kept and annotated — never a missing-number gap — the generated PDF is removed, and the invoice converts to incoming so the supplier's real number can be entered. Documents locked in a cancellation chain stay locked.
  • Currency override — when a payment and an invoice disagree on currency, you can force the link: "Link anyway using your conversion?" It's an explicit advisor override, and audited like everything else.

Approve all — honest by design

"Approve all" processes the loaded page's pending invoices in sequential chunks of up to 50 (the server cap per bulk request). The confirm dialog is page-honest: if the period holds more pending invoices than the page you've loaded, it says "N of M" and never promises the server-wide count. The server decides skips — any VAT-bearing invoice without a usable document is skipped, not approved — and the result toast reports exactly what happened: "Approved N · M skipped (no document)". The button hides itself when the loaded page has no pending rows.

Nothing here is destructive: approve, flag, and ignore are all status changes you can revise later, and every action lands in the audit log.

Related

Didn't answer your question? Write to [email protected] · the AI chat in the bottom-right corner answers most common questions.