What we shipped.
Every change customers can see, dated from the day it went out. Written as the work shipped rather than assembled afterwards, which is why the small fixes are here alongside the big ones.
- New
Personal is now a workspace inside Financial IQ rather than a separate app. Your personal accounts, budgets, goals, net worth, take-home pay and Self Assessment sit alongside the business, and you move between them from the workspace switcher. Personal is being turned on for accounts in stages, so it appears when your account is included in the rollout.
- Improved
The dimmed backdrop behind dialogs, confirmations and side panels is now a lighter Midnight tint with a soft blur instead of near-solid black, so the page behind stays legible without competing with the panel in front.
- Improved
Matching a received payment to invoices now shows a live allocation bar, leads with any invoice whose balance exactly matches the payment, and explains part payments and leftover credit in plain English.
- Fixed
Payment matching no longer lets a payment be allocated beyond its own value, and no longer offers a zero or negative amount once the payment is fully allocated.
- Fixed
Typing an amount into a payment allocation box no longer reformats the number mid-keystroke, so part amounts such as 56.40 can be entered normally.
- New
The practice sidebar now has a Close queue link, so the cross-client close list is reachable without typing the address.
- Improved
The workspace switcher now says "Practice" rather than "Practice workspace".
- Fixed
The month-end close page header no longer shows its own progress count beside the one in the close summary. It could read "3 of 8 complete" next to a summary saying 0%, because the two counted different things.
- New
When a client does not reply, a firm can now record that the period's report is being skipped, with a written reason. This tells the connector to skip the deliverable, and deliberately does not lock or close the books — the period stays open, nothing becomes definitive, and the close can be resumed if the client comes back.
- New
Accountants have a practice-wide close queue at Practice → Close queue, showing every client company's current close ranked by what can be finished today, with the client name, cadence and period on each row and a named next action. Selecting a client opens its close workspace.
- Improved
Month-end close is now one experience rather than two stacked ones. The nine standard checks appear as a single requirement alongside the automatically detected ones, under one progress figure, one status and one clear next action. The period figures move behind a "Period figures" disclosure and close policy moves into a drawer.
- Improved
Client close questions are now a checklist that expands one question at a time while keeping overall progress visible, with one-tap answers where the question allows one and free text always available. Guidance appears once instead of being repeated as "Why this matters".
- Fixed
The client close page no longer renders in a 400px column beside the marketing panel; it now uses the full width on desktop.
- Fixed
Uploading a document to a close request now shows progress, confirms it reached the Documents library, and offers a retry when it fails instead of leaving the question looking unanswered.
- Fixed
Close participants with no profile name now show a readable name instead of an identifier.
- Improved
Every close status now carries an icon and a distinct word rather than relying on colour, and a provisional tax figure is labelled provisional in three independent ways.
- New
Every company now has maternity, paternity, adoption, shared parental and parental bereavement leave types, not only annual, sick and unpaid. Booking one of them raises the matching statutory claim in Notices and statutory, which could not happen at all before.
- New
Payroll can record the notice an employee gives that a statutory claim is coming, such as a MATB1 or an SC3, with the due date or placement date and the certificate kept alongside it. The claim then appears in Notices and statutory months before any leave is booked. Recording a notice pays nobody by itself: a person still sets the claim up.
- New
The statutory pay calculator now works out average weekly earnings from the employee's own pay history instead of starting from a made-up figure, and shows which paydays it used and why, so it can be checked and changed.
- Improved
Notices and statutory no longer carries any "what this queue cannot see yet" note. Statutory claims are now raised from the employee's own notice as well as from booked leave, and attachment orders are recorded as received, so there is no longer a case the queue has to admit it cannot detect.
- New
Payroll now keeps dated tax codes and complete opening year-to-date balances when an employer moves from another payroll system, so rebuilding an earlier month cannot silently use a later code or omit NI history.
- New
Unlocking an earlier unfiled payroll now previews every later affected period, reverses journals newest first and recalculates payroll oldest first from one guided action inside Payroll.
- Fixed
Payroll now blocks out-of-order calculation and posting and any target-net salary that misses the contractual take-home amount by a penny; unusual leaver tax refunds remain visible for review without preventing posting.
- New
Payroll now flags anyone with no bank details on record as "cannot be paid", on the people list, on their record and in the pay run, so they are spotted before the payment file is built rather than after. The check reads a derived flag and never decrypts anyone's bank details.
- New
Booked statutory leave with no claim recorded against it now appears in the Notices & statutory queue as a claim to set up, and opening it takes you straight to statutory pay with the person and the payment type already filled in. Statutory Sick Pay is payable from the first day of absence for 2026-27, so a missed claim is a real underpayment.
- Improved
The Notices & statutory queue now says plainly which cases it cannot yet detect: statutory claims are only found for leave types the company has set up, and an attachment order that has arrived but not been set up cannot yet be told apart from one already deducting.
- New
An attachment of earnings order can now be recorded the moment it arrives, with just the employee, order type, reference, issuing authority and issue date. It does not deduct anything until you set it up, and it stays in the Notices & statutory queue until you do.
- Improved
The Notices & statutory queue now lists attachment orders that have actually been recorded as received rather than guessing from orders in force with nothing taken yet. An order deliberately set up ready to deduct is no longer chased, and an order that has sat untouched for a month is no longer indistinguishable from one entered minutes before the run. An order already past its effective date says plainly that it should be in force.
- New
Setting up a received attachment order captures the deduction rate, protected earnings and balance in one step and puts it in force. An order deducted at the rate printed on it cannot be put in force without that rate, and one whose effective date has passed warns that runs already paid are not reopened and that arrears may be owed.
- New
Payroll has a new Notices & statutory queue that gathers everything arriving from outside into one list: HMRC tax-code and loan notices, auto-enrolment assessments, statutory pay not yet in a run, and attachment of earnings orders not yet deducting. Each one shows what arrived, where it came from, the evidence for it, and what it does to someone's pay.
- New
Every person on payroll now has their own record page: what they get paid this period, their recurring pay and deductions, their notices, absence, documents and employment details, and one History timeline of every change to their pay.
- Improved
The payroll overview for accountants now leads with the single next action and splits outstanding work by who is blocking it, the business or you, instead of showing a wall of figures.
- Improved
The first step of a pay run now shows where the business has got to with timesheets, time off, starters and pending changes, and says plainly which outstanding items stop the figures being calculated and which can wait.
- Improved
The payroll people list is now ordered worst first, so anyone blocking the run is at the top with the reason spelled out, and each row opens their full record.
- New
Any transaction can now be flagged from either its three-dot menu or expanded row on the Transactions page, including transactions that are already categorised or posted.
- Fixed
Documents held while automatic reading is paused now show as waiting, and authorised platform administrators can safely reconcile provider spend, restart reading within the existing cap and release recovery batches.
- New
Payrolls already approved in another system can now be finalised with an exact, audited approval record, without using Nexus or sending anything to HMRC or the pension provider.
- Fixed
Unlinked legacy payroll journals can now be voided from Payroll with a required audit reason, without deleting their original entries or leaving a stale PAYE accrual.
- New
Payroll employees can now split gross pay, employer NI and employer pension across nominal accounts and cost centres, with employee names carried into the ledger detail.
- Fixed
A category explicitly confirmed by authorised staff or a client is now final even when an automated transfer suggestion exists. Genuine duplicate bank records and invalid confirmed transfers still stop safely, while automatic categorisation continues to prioritise transfer matching.
- New
Approved historical payrolls can now post their accounting journal without sending another FPS to HMRC.
- Fixed
Payroll review now shows exact pennies and opens a real employer NI, pension and loan breakdown for each employee.
- New
Draft payroll periods and pay days can now be corrected before calculation.
- New
Recurring employee pay assignments can now be removed safely from Payroll settings.
- Fixed
Bank transaction lists on high-volume accounts now load reliably instead of timing out, while keeping exact filters and totals.
- New
Transfers between a company's own connected bank accounts are now identified with the same bank-evidence rules for every company. Clear unique pairs can be handled automatically, uncertain pairs stay visible for review, and a failed check is no longer shown as an empty queue.
- Improved
The floating Nexus button can now be moved out of the way and remembers its chosen position.
- Fixed
Confirming or correcting the category of a transaction that is already posted works again. Since 13 August such a confirmation was wrongly treated as a fresh arrival: it was pulled back into Uncategorised and failed, so a posted transaction could not be corrected at all and a repeated confirmation was not recognised as already done. Routing now checks the actual posting rather than a retired status field.
- Fixed
Choosing a category for a transaction waiting in Uncategorised Income or Expenses works again. Since 13 August every such categorisation posted correctly and was then wrongly undone with "Human holding categorisation did not produce a posted journal"; the final safety check now verifies the posting itself rather than a retired status field. Locked periods are still refused as before.
- Fixed
Opening Nexus now approves the current company automatically when authorised staff already have access; any setup failure explains that nothing was sent and records an internal action item.
- Fixed
Soldo now restores missing business transactions after a data reset, and incoming credits no longer stop the feed at the accounting safety check.
- Fixed
A bank feed that recovers automatically no longer stays falsely marked as needing an immediate consent check; its existing 90-day confirmation window is restored without extending expired provider access.
- Fixed
A newly imported transaction can now cross the accounting safety check correctly while still being protected against duplicate imports. The first rollout canary exposed this before the wider client rollout.
- Fixed
Bank balances now show the bank's spendable available figure when the bank reports a zero booked balance alongside money that is available, consistently across Banking, mobile and financial alerts.
- Fixed
Bank feeds now retain pending transactions and the bank's raw balance evidence, safely handle overlapping imports without false failures, and only report alert delivery once it has actually succeeded.
- New
The review screen now has a "History" link beside what a document is, showing every time it was changed, from what to what, by whom and when.
- New
You can now change your mind about what a document is. Answering used to make the six choices disappear, so a wrong click could only be undone from a dropdown further down the page. The answer now shows with a "Change" link that brings the choices back, and each change offers an undo.
- New
Changing what a document is now refuses, and says why, when a draft bill or expense claim is still waiting on it, or when the document is already used in your accounts. The old message was written for an engineer.
- New
Every change to what a document is now records what it was, what it became, who changed it and when.
- Fixed
Answering "What is this document?" on the review screen now sticks. The answer was only held on screen, so reloading the page threw it away and asked again. It is saved as soon as you answer. Everything else on that screen is still a proposal until you file the document.
- Fixed
Copying the email forwarding address now works. It only ever tried one method, and when the browser refused that permission it said so and copied nothing. It now falls back to a second method that works off the selection, and only asks you to press Cmd+C if both are refused.
- Fixed
The email forwarding address is reachable again. It was still on the document store but at the very foot of the page, below the whole document list, so on a busy company it could not be found. It is now an "Email forwarding" button in the store header, next to Folders and tags and Upload, and opens on top of the page.
- Fixed
The forwarding address can now actually be copied. It sits in a field that selects itself when you click it, and if the browser refuses to write to the clipboard it says so and leaves the address selected for you to copy by hand, rather than appearing to do nothing.
- Fixed
Auto-file readiness on the document store reported that it could not be worked out, for every company. The switch it reads was added without read permission, so every attempt was refused. It now shows readiness, or says plainly that no filing decisions have been recorded yet.
- Improved
Documents now has two pages rather than three. The Library and the Inbox were the same thing split in two, so they are now one Document store whose tabs cover what needs a decision, everything, and what is only being kept. Records is the second page. The folder and tag cabinet moved to a "Folders and tags" button on the store. Old Inbox links still work.
- Improved
Reviewing a document now happens on a full screen of its own instead of in a pop-up box. The queue stays on the left so you can see how much is left and jump between documents, the document itself gets a proper pane you can zoom, and the decision sits beside it. J and K move through the queue, Escape returns to the inbox.
- Improved
Document review now opens with one plain question, "Has this been paid?", instead of a document-type dropdown and a grid of accounting routes. Everything the reader already worked out is folded away behind "Everything else" and can still be edited.
- Improved
When a document cannot be filed yet, the review screen now says exactly what is missing ("Add the supplier and an expense category.") instead of only greying out the button.
- New
The document inbox now offers to run the whole queue in one go, rather than asking you to open and close documents one at a time.
- New
"File when confident" on the Auto-file readiness panel now shows as locked, with the reason, until the document reading accuracy check has been run and passed for the firm. Previously nothing explained the existing safety gate, so choosing it would have failed with a database error.
- New
An Auto-file readiness panel on the document inbox shows, per supplier, how often the suggested filing was kept, and lets a firm choose between asking about everything, shadow mode, and letting proven suppliers file themselves. The figures are counted from real filing decisions, so a company that has not reviewed anything yet is told there is no record yet rather than shown a made-up score.
- New
A missing bank statement can now be answered rather than only chased. Mark a month as "Not issued" with a reason (dormant, account closed, none issued) and it stops being counted as missing, with a record of who said so and why. It can be undone.
- New
Each bank account now has statement settings on the Records page: when the account opened, when to start expecting statements, and whether statements are needed at all. These already governed which months were chased but nothing ever showed them, so every account silently used the month its record was created. Collecting from before the account opened is refused rather than creating gaps that can never be filled.
- New
Records now leads with bank statements and flags the months that are missing, per account, so a month cannot be quietly signed off without its statement. This fills itself in from the cover FIQ already tracks, so it works from day one without anyone filing anything.
- New
A Records section under Documents for the things a company keeps rather than posts: bank statements, insurance policies, finance agreements, leases, contracts and company filings. Insurance, finance, contracts and filings are filed by hand with what they cover, what they are worth and when they renew; expiries and renewals inside the next 60 days are raised at the top of the page.
- New
The automatic filing rules already set up in the Document Library are now visible from the inbox, so it is clear why some documents never appear in the queue.
- Removed
The document review pop-up has been retired. Every route into review (the inbox, a link from an email or the practice queue, and finishing an upload) now opens the review screen.
- Fixed
The document review screen no longer offers "raise a reimbursement claim" for a personally paid cost. That option could never succeed, because the document workflow rejects it; a personally paid cost now goes to the director's loan account, which does work.
- Fixed
Correcting a single posted transaction's category works again. It had failed for every company since 12 August, so nobody could correct a category that had been posted. Two separate faults in the same change: the accounting entry recorded its origin with a value the ledger does not accept, and a director-lookup was referenced on a path that never ran it.
- Fixed
A bill created by someone who has since been removed, or brought in by an importer that recorded no real person as its author, can be worked on again. Unmatching a payment from such a bill used to fail outright with no explanation, leaving the bill stuck with a balance nobody could correct. The bill now simply shows no author instead of refusing to move.
- Fixed
Correcting all matching transaction categories now completes without timing out, and the exact group can be corrected again if needed without including unrelated manually confirmed transactions.
- Fixed
Correcting a transaction category now finds other eligible automatic transactions again, while continuing to exclude VAT, matched, manually changed and locked-period entries.
- Improved
Two companies no longer show an unused second copy of a bank account alongside the real one. The copy carrying the transactions and the live feed is untouched.
- Fixed
Yesterday's tidy-up of duplicate account names went too far in a few places, retiring accounts that merely shared a name with something quite different — a company's corporation tax charge account was retired in favour of its corporation tax creditor, and several income accounts in favour of reserves. Those 31 accounts are back, and the roles that had been pointed at the wrong one now point where they should.
- Improved
Charts of accounts across about 47 companies no longer show the same account name twice. Where a name appeared more than once, the unused copy has been retired and the one holding the history kept. Nothing was deleted, no figure moved, and where more than one copy is genuinely in use both have been left alone for review.
- Fixed
CEB Media Limited had several system roles pointing at the wrong account — share capital aimed at trade creditors, retained earnings at accruals, the corporation tax charge at an income account — while the correct account sat unused in the same chart. They now point where they should. No transaction or balance changes; this only affects where future entries are directed.
- Fixed
SJ HR Partners Ltd's corporation tax charge was reported inside administrative expenses instead of on the tax line, understating operating profit by £9,708.37. It now sits under Tax on Profit where it belongs. The underlying transactions are unchanged — only where they are reported.
- Improved
Sixteen accounts across seven companies moved to their standard code numbers, which also files them under the right heading in the notes — service income now shows as Service Sales rather than Other Income, office costs under their own lines rather than Other Operating Costs. The face of the accounts is unchanged and no figure moves.
- Improved
The revenue and profit chart now animates in: the bars grow out of the baseline left to right and the profit line follows over them, the way the rest of the dashboard now fills in. Hovering the chart no longer replays it, which is why the animation had been switched off.
- Improved
The dashboard no longer shows a notice at the top of the page when a figure could not be read. Each figure already states its own condition where it appears — "Review backlog unavailable" rather than a zero — and the notice repeated that without saying which figure it meant.
- Improved
Five accounts across four companies moved to their standard code numbers, so charts of accounts line up with the FinancialIQ numbering. Only the code changes — the account keeps its name, its history and its place in the accounts, and no figure moves.
- Improved
The "Building your dashboard" band no longer disappears the instant loading finishes. It used to be removed in a single frame, dropping the whole page by about the height of the band at the exact moment the last card was filling in. It now closes its own gap smoothly, and it no longer re-animates when the page first paints.
- Fixed
Companies that spell a control account differently — a charity's combined "Accruals and Deferred Income", or "Pension Costs" for the employer pension charge — are now recognised automatically instead of showing as unmapped. Eleven such roles across seven companies now point at the account that was there all along.
- Fixed
Saving account mappings works again. Changing which account fills a role used to fail with an error and, worse, clear the mapping it was meant to update — the save retired the old setting and then could not write the new one. Settings that were left cleared by this have been restored.
- Improved
The dashboard now fills in band by band as each figure arrives, instead of holding a full page of placeholders and then cutting to a full page of numbers. Each card fades its own figures in the moment its own read lands, and the revenue chart and working capital bars now shimmer while they are being counted rather than drawing an empty set of axes that looked like a company with no revenue.
- Fixed
Twelve companies briefly showed two accounts with the same name — an empty one added when their chart was brought up to the standard template, sitting next to the original that holds all the history. The empty duplicates have been retired and anything that referred to them now points at the account with the history. No balance or transaction changed.
- Fixed
Refined Currency Ltd now has a Trade Creditors control account, so its supplier bills and payments have somewhere correct to post and its historical ledger can be brought across. Code 3000 was occupied by an old accruals account carrying no balance; that account keeps all its history and moves to the accruals section, where it belonged.
- Fixed
Companies created before 5 August 2026 could hold a chart of accounts with no control accounts attached to it, so invoicing, bills and VAT had nowhere reliable to post and the ledger could not tell "nothing was posted here" from "I could not find the account". Chart templates now state which account fills each role, creating a company fills in both the chart and those links in one step, and every existing company has been brought up to its template. Where a company genuinely has no suitable account, it is now reported by name instead of quietly guessing one.
- New
An invoice a director collected in person, or a bill a director paid with their own money, can now be settled against that director's loan account. Use "I received this personally" on an invoice or "I paid this personally" on a bill, pick the director, confirm the date. Until now these could not be settled at all: the ledger showed the money against the director while the document stayed open forever, so the customer or supplier balance and the accounts disagreed permanently. The sale or cost, and its VAT, are unchanged — only what the company owes the director moves.
- Fixed
Document uploads and forwarded receipts now remain successful once the file is safely stored, even if automatic reading is temporarily unavailable; the reading queue repairs itself in the background without asking the user to upload the document again.
- Fixed
Receipt forwarding now accepts Resend's live attachment address, safely retries emails rejected by the former address check, and shows a connected provider once delivery has been proven.
- New
Company-wide budgets can now be compared with live posted profit and loss expenditure by category for a selected date range.
- Fixed
Two people who own a company between them no longer each see the whole company's value in their personal net worth. Each owner is now credited with their own share, taken from the issued share register or from a share set explicitly on their mapping. Where the share cannot be worked out, nothing is credited and the reason is shown, rather than quietly assuming the whole company.
- Fixed
The company valuation sent to personal accounts is now measured correctly. Net assets were being counted several times over and on both sides of the balance sheet, and a credit-note month was being added to turnover instead of deducted. A company with no accounts data now reports "not available" instead of zero.
- New
Company valuations refresh automatically overnight instead of only when someone remembers to press a button, so a linked personal account no longer shows a figure that stopped moving months ago.
- New
A Company Valuation Feed card on the Company Profile settings page shows what linked personal accounts currently see, when it was last sent, your share of the company, and anything that stopped a figure being measured. It can be refreshed on the spot.
- Improved
Merging to main now deploys the app to production automatically again. The manual approval step it replaced had been missed for five consecutive releases, leaving the live app twelve commits behind — including fixes that were already shipped and believed live.
- New
Staff can now raise a management letter point or a letter of representation point straight from the Nexus panel (the same "Nexus" button used to send a client query), for the client and job currently on screen. It is sent to Nexus for review — a partner there decides whether it goes into the letter.
- Fixed
A bank feed that is failing can no longer record a future consent date. That date is what decides whether we ask you to reconnect, so a dead feed holding one was never chased — accounts stayed dark for months with nobody told.
- Fixed
A bank feed that stops working is no longer written off for good. Feeds that were excluded from the hourly refresh are re-tested periodically and recover on their own once the underlying problem clears, instead of staying dark until someone notices by hand.
- Fixed
Alerts now cover bank feeds that have stopped syncing. Previously only feeds still marked as connected could raise an alert, so the accounts most in need of attention were the ones least able to report it.
- Fixed
Bank feed alerts that were generated but never sent are now delivered, oldest first, instead of accumulating unseen.
- Fixed
Reconnecting a bank account now clears the earlier failure against it, so a feed that has just been re-authorised is actually picked up by the scheduler rather than looking healthy while remaining excluded.
- Fixed
A bank feed sync is no longer recorded as failed when two syncs overlap and one re-imports transactions the other already saved.
- Fixed
A quote whose lines carry no cost centre can now be corrected instead of becoming a dead end. Where a company requires a cost centre on every profit & loss posting, such a quote could never be turned into an invoice and there was no way to add one after it had been sent.
- New
Quotes now carry a cost centre. The new quote form has a picker for it, and any quote that has not yet been converted can be recoded from the quotes worklist under "Edit coding".
- Improved
A quote that cannot be converted now says why. Refusals such as a missing cost centre come back in plain words rather than a generic failure, including to other systems raising quotes over the API.
- New
Registered office and Virtual Business Address income now posts to its own revenue account rather than being grouped with one-off fees.
- New
Year-end and audit adjustments can now be posted into a closed accounting period without reopening it. The entry is dated in the year it adjusts, requires a written reason, and is only available to owners, admins and accountants. (PR #1178)
- New
Year-end and audit adjustments have their own journal type, so they are identifiable at a glance in the journals list and can be filtered on their own tab. (PR #1178)
- Improved
Year-end and audit adjustments cannot be edited or voided from the journals list. Correct one by posting a further adjustment, which keeps the closed year's history intact. (PR #1178)
- Fixed
Revenue recognition details entered when raising an invoice — delivery date, service period, recognition method and the deposit marker — are now saved. They were shown on the create form but silently discarded, so they only stuck if you saved the invoice and then edited it.
- Fixed
Invoice line sub-descriptions now appear on the invoice emailed to the customer. They were shown on the invoice in the app but were missing from the copy the customer received.
- Improved
Line items on the emailed invoice are now listed in the same order as on the invoice in the app.
- New
Invoice line sub-descriptions, line type and VAT rate are now sent to the mobile app, along with the revenue account list it needs to code lines the way the web app does.
- Fixed
GoCardless screen checks now remain reliable during the full local verification run instead of failing because the test machine is under load.
- Fixed
Document libraries now filter by the verified lifecycle on web and mobile, camera captures can combine multiple pages, and unverified legacy records fail safely into review. (PR #N)
- Fixed
Emailed and uploaded documents now fail visibly, retry without duplicate reads, keep stronger evidence, route special VAT safely, and organise new files consistently on web and mobile. (PR #N)
- Fixed
Web document uploads now retain interrupted files safely in the browser for seven days, resume them after refresh or reconnection, and keep recovery data isolated to the exact signed-in user and company. (PR #N)
- New
The document library can now filter and save views by supplier, customer, document type, date range and total amount as well as its existing folder, tag and full-text options. (PR #N)
- Fixed
Mobile document review now preserves camera orientation, handles partial-VAT sales lines, supports bulk archive and restore, exposes audited mailbox rotation, and stops retrying files that are too large to accept. (PR #N)
- Fixed
Timed-out document reads now preserve late evidence, keep confirmed provider costs inside the monthly cap, and safely retry transient failures without applying quarantined results. (PR #N)
- Fixed
Document accounting checks now recognise valid manual-journal and multi-box VAT evidence without posting or changing financial records. (PR #N)
- Fixed
Receipt email addresses are now created, rotated, enabled and disabled only through audited workspace-editor actions, without returning secret token hashes to web or mobile. (PR #N)
- Fixed
Documents now show the same plain-English lifecycle, next action, recovery guidance, filing state, and verified accounting outcome on web and mobile. (PR #N)
- Fixed
Expense claims now post only after the required approval, with safe VAT handling, duplicate-posting protection, optional company receipt checks, and recoverable failure records. (PR #N)
- Fixed
Document-reading monitoring now shows deliberately paused uploads as safely held and separately exposes failed documents that can be reviewed and retried. (PR #1163)
- Fixed
Web document uploads now commit their document and reading-queue ownership together, so closing the page or losing a response cannot leave a stored file permanently unprocessed. (PR #N)
- Fixed
Document monitoring now distinguishes retained legacy OCR evidence and intentional historical imports from current queue failures, so operators see the work that genuinely needs recovery. (PR #N)
- Fixed
Document-to-accounting reconciliation monitoring now handles record identifiers consistently and reports issues without an ambiguous-field failure. (PR #N)
- New
Flagged transactions now include a secondary view for posted P&L outgoings that still need receipt evidence. (PR #795)
- Fixed
VAT review packs now keep the draft's frozen figures unchanged, and display-only evidence labels are no longer sent as unsupported VAT transaction columns. (PR #N)
- Fixed
Document status now distinguishes a prepared accounting draft from a posted record, identifies duplicates only from exact same-company file evidence, and gives stalled or retry-exhausted reading jobs a safe recovery path. (PR #N)
- New
Document-to-accounting reconciliation now detects missing storage, broken links, missing journals and incomplete VAT evidence without changing financial records, while document-reading workers report durable heartbeats and stalled-work alerts. (PR #N)
- Improved
Claude categorisation now has conservative per-run and daily usage ceilings with durable, redacted usage metrics, while Claude Haiku document reading continues to use the database-controlled monthly spend ceiling. (PR #N)
- New
Platform administrators can now see automatic document-reading queue health, stalled work, retry-exhausted documents, worker liveness, fallback use, processing speed and actual provider cost without starting or replaying work. (PR #N)
- Fixed
Automatic filing rules now behave consistently across web and mobile, emailed documents use the same safe queue path as other uploads, sales evidence shows customers rather than suppliers, and VAT facts are preserved when a user decides not to reclaim VAT. (PR #N)
- New
Sales invoices can now be duplicated into a new invoice with a chosen date, copied line items and copied payment terms.
- Fixed
Trusted OCR evidence can now validate a single-account purchase bill without failing on an unsupported database UUID calculation. (PR #1131)
- Fixed
The document library now supports managed folders and saved views, links evidence to existing sales or purchase records without posting them, keeps personally paid costs in the reviewed Director’s Loan Account route, and prevents signed-in browsers from changing document evidence or lifecycle states directly. (PR #N)
Older changes are not published here yet. Security fixes are deliberately left out: several of them describe protections that were not in force until they were fixed, and a public list of those helps the wrong people. What we do and do not hold is on the security page.