Module 15The six AI workflows4 min read
The year-end review pass: a second set of eyes that is not yours
A review pass that runs the same checklist on every file at the same standard. Control totals, the three kinds of break worth looking at, and the section that keeps a review note from becoming a liability.
The year-end review pass runs your review checklist over a client file and lists what could not be tied, what looks unusual and what is missing. It finds fewer things than a senior would. It finds them on every file, at the same standard, which a senior does not. Build this one last, because it needs your review checklist to exist in writing first.
Key takeaways
"Not checked" is a required section. A note listing only what was checked implies everything else was, which is how a review becomes a liability.
Tied means compared. Never mark something tied because it was inferred.
A possible duplicate is a suspicion. Two identical subscription charges in one day happen.
It does not rank severity. A reviewer decides what matters.
The first real check happens outside the script
Export the full year, then ask what the trial balance total should be. The script computes what the export says. Comparing the two is the check that catches a partial export, and it has to be done by a human who knows which number is authoritative.
An export missing one bank account produces a perfectly clean, internally consistent, wrong set of totals.
The three breaks the pass flags
| Break | Why it matters at year end |
|---|---|
| Unclassified account | Ask My Accountant, suspense and blanks left sitting at year end |
| No description | Cannot be reviewed, and cannot be explained to an auditor |
| Possible duplicate | Same date, same amount, same description as an earlier line |
Each is presented as something to look at rather than an error found. The difference in wording matters when the note goes to a partner.
Install it: skills/year-end-review-pass
Produces account totals with row counts, a grand total, and a breaks list covering unclassified accounts, missing descriptions and possible duplicates, each with its line number in the source file.
Get the six workflows on GitHubWorks in Claude, Claude Code, Codex and Cursor. Copy the folder into .claude/skills/ and ask in plain language.
What the script cannot see
It reads one export. It does not know the business. These go on the checklist by hand, and the answer gets recorded even when the answer is "not checked":
- Does the export total agree to the trial balance?
- Are there transactions after year end that belong in the year, or the reverse?
- Are accruals and prepayments present, and do they resemble last year's?
- Is every bank account in the export?
- Are there related party transactions, and are they disclosed?
- Did the chart of accounts change during the year?
The note that protects you
A review note from this workflow has four parts: what tied, the breaks with line numbers, what was not checked and why, and the items needing a partner decision before sign-off.
The third part is the one firms leave out and the one that matters most. Writing "cut-off: no post year-end data in the export, not tested" takes eight seconds and is the difference between a review note and a claim.
What it cannot do
It does not sign off. A qualified human does, and carries the liability.
It does not test cut-off, completeness or valuation. Those need more than one export.
It is not an audit. It is a pass that makes a human's review faster.
It does not fix anything. It lists. A person decides and posts. That division runs through every workflow here, and the reasoning is in AI for accountants.
Common questions
Why build this one last?
Because it encodes your firm's review checklist, and most firms discover during this build that the checklist lives in one person's head. Writing it down is the work. The workflow is what runs it afterwards.
Can it replace a manager review?
No. It does the mechanical part at a consistent standard so the manager spends their time on judgment rather than on tie-outs.
What about the queries it turns up?
Anything needing a client answer goes through the same route as the monthly query chase, grouped into one email rather than sent piecemeal.
More in The six AI workflows
The monthly query chase: one email instead of six
Find every transaction you cannot code and turn it into one client email instead of six.
The client email desk: first drafts of the replies that eat an afternoon
First drafts of the technical replies, with every position marked for a human to verify.
Management pack commentary: three reports to a one-page pack
Three reports to a one-page commentary, with every variance computed by a script.
Client onboarding: one intake, three documents that agree
One intake producing an engagement letter, information request and AML checklist that agree.
Fee scoping: price a client from their data, not from a guess
Price a client from measured volume and measured messiness instead of from a guess.