Turn last year's return into a line-by-line document list, add a short questionnaire for this year's changes, log every upload against that list, and send reminders that name each missing document. AI drafts the list and matches uploads, a person approves the list before the client sees it, and the tracker, not memory, decides what is missing.
Most organisers fail at the tracking, not the questions. A generic checklist asks every client for everything, clients send half of it, and the practice chases with "we are still missing some documents". A list built from the client's own prior-year return and tracked per document lets every reminder say which three items are outstanding and where to find them.
Read last year's return as a list of documents
Every amount on a prior-year return implies at least one source document, and every payer implies a separate one. That is the whole idea. Wages mean one year-end pay statement per employer. Interest means a year-end statement from each bank. Investment sales mean the brokerage's consolidated statement. A mortgage means the lender's year-end statement. The return is the best predictor you have of what this client will send.
Work through an imagined practice with 180 individual clients, where a typical one has a salaried job, two bank accounts, a brokerage account, a mortgage, one child in daycare and a small side business. Do not give an assistant the full return. Export a one-page summary of the lines and amounts, with names, identification numbers, addresses and account numbers removed. The tutorial on redacting a return before you paste it covers that step in detail.
You are helping a tax practice build a client document checklist.
Below is a one-page summary of last year's return for one client, with
names, identification numbers, addresses and account numbers removed.
For every line that has an amount, list the documents we need this year.
Output a table with these columns: Category | Payer or source (as on the
summary) | Document needed | Where the client usually finds it |
Usually available (early, mid-season or late) | Question to confirm it
still applies.
Rules:
- One row per payer or source. Never merge two banks into one row.
- Plain English only. No form numbers or jargon.
- If you are unsure what a line implies, list it under UNSURE at the end.
- Do not invent payers that are not on the summary.
SUMMARY:
[paste]
An illustrative extract of what comes back for that typical client:
| Category | Source | Document needed | Usually available |
|---|---|---|---|
| Wages | Employer A | Year-end pay statement | Early |
| Interest | Bank 1 | Year-end interest statement | Early |
| Interest | Bank 2 | Year-end interest statement | Early |
| Investments | Brokerage 1 | Consolidated year-end statement with sales and dividends | Late |
| Home | Lender 1 | Year-end mortgage interest statement | Early |
| Home | Property tax | Property tax bill or proof of payment | Early |
| Childcare | Provider 1 | Provider's name, address, ID number and total paid | Client must request |
| Business | Side business | Income summary and expense records for the year | Client must compile |
| Payments | Estimated payments | Dates and amounts of each payment made | Client must compile |
Review the draft against the return with a pencil. In a first draft of this kind, I would expect three corrections. The assistant lists a separate property tax bill, but where the mortgage lender pays tax from escrow, the lender's year-end statement usually shows it, so the client is asked for one or the other, not both. It also tends to miss estimated payments unless the summary lists them, so check every payment line. And an UNSURE list at the end is a good sign, not a flaw: it is the assistant telling you where a preparer's judgement is needed.
Time it. If building a list by hand takes 25 minutes a client, that is 75 hours across 180 clients. At 8 minutes a client to review the AI draft, it drops to 24 hours, saving 51. Those minutes are assumptions, so time five real clients before you rely on them.
If you already run Canopy or TaxDome, check what is switched on before building anything. Canopy's Smart Intake page says its AI drafts each client's questionnaire or checklist from the prior-year return and client record, and TaxDome's help centre lists AI checklist generation from the prior-year return for returns prepared in Drake, Lacerte, ProSeries or UltraTax. Either can stand in for the prompt above. The review step stays: a preparer still reads each generated list before the client sees it, looking for the same three kinds of error, and the tracker and reminder rules below apply whichever tool drafts the list.

The Complete Excel Course with AI Integration
From formulas and pivot tables to Power Query, DAX, VBA and AI with Copilot, ChatGPT and Claude — hands-on from the first lesson.
By Sagnik Bhattacharya and Virginia Thorn, Primetime Emmy Award winner
Buy nowAsk what changed this year with a ten-question form
The prior-year return cannot know about this year. Add a short form, ideally ten yes or no questions, that asks about life events. A yes adds documents to the list. The mapping is built once, reviewed once by a preparer and then reused for every client.
| If the client answers yes to | Add to the list |
|---|---|
| Changed jobs, or had a second job | A year-end pay statement from each new employer |
| Sold shares, funds or digital assets | Year-end statements from each broker or exchange, plus purchase records for older holdings |
| Started, closed or changed a business | Income and expense summary, start or end dates, asset purchases |
| Bought, sold or refinanced a home | Closing statement and lender statements for each loan |
| Had a child, or a dependant joined or left | Details for each dependant, childcare payments, school or care statements |
| Got married, separated or divorced | Dates, and any court order that covers payments or dependants |
| Took money out of a retirement account | The payer's year-end statement for each withdrawal |
| Received a large gift or inheritance | Date, source and a summary letter |
An assistant drafts that mapping in one go if you give it the question list and ask for the documents each yes implies. Ask it to write the question in plain English at about a twelve-year-old reading level and to add a "not sure" option, because a client who is not sure usually skips the question. The organiser template and its delivery by portal are the subject of the tutorial on building a client tax organiser with AI. Here the form only decides what goes on the document list.
Clients with no prior-year return
New clients arrive without a return in your system. Ask for a copy of last year's from the client or their previous preparer and run the same process. If none exists, build the list from the ten-question form plus a 20-minute interview, and label the checklist "first year" so the preparer knows it is less reliable. Clients with partnership, trust or estate interests deserve a manual note on the list, since those statements often arrive later than the rest. Put the month they usually arrive on the row so the system stays quiet until then.
Track every document with one row and one status
This is the part most practices skip, and it is what makes reminders specific. Keep one sheet, shared across the team, with one row per expected document: client code, document, payer, status, date requested, date received, file name, checked by. Use a small set of statuses so everyone reads them the same way.
| Status | Meaning | Reminders? |
|---|---|---|
| Requested | Sent to the client, nothing back | Yes, on the schedule |
| Waiting on third party | Not issued yet, or the client says it has not arrived; note the date it normally appears | No, until that date |
| Received, unchecked | A file is in, nobody has opened it | No |
| Received, wrong | Wrong payer, wrong year, partial or unreadable | Yes, naming the problem |
| Received, complete | Checked against the row | No |
| Not applicable | The client confirmed it no longer applies | No |
Two statuses do most of the work. "Waiting on third party" stops you from chasing a client for a statement that does not exist yet, which is the quickest way to annoy people in the first fortnight. Investment statements are often issued late and sometimes reissued as corrected versions, so keep the brokerage row open until your cut-off date. "Not applicable" is never set by the practice. It is set only after the client confirms, so a document that really is needed does not get dropped because the AI thought it looked old.
Here is the tracker for the typical client at day 12, again illustrative. The 11 complete rows are condensed to keep the table short, and the three open rows are the ones the day-12 reminder names:
| Document | Source | Status | Requested | Received |
|---|---|---|---|---|
| Year-end pay statement | Employer A | Complete | Day 0 | Day 3 |
| Year-end interest statements (2) | Bank 1, Bank 2 | Complete | Day 0 | Day 3 and day 8 |
| Property tax bill | Property tax | Complete | Day 0 | Day 6 |
| Business income and expenses (2) | Side business | Complete | Day 0 | Day 10 |
| Estimated payments, charity receipts, health cover, dependant details, refund account (5) | Client | Complete | Day 0 | Days 3 to 11 |
| Consolidated year-end statement | Brokerage 1 | Requested (usually late) | Day 0 | Open |
| Year-end mortgage interest statement | Lender 1 | Requested | Day 0 | Open |
| Provider's name, address, ID number and total paid | Childcare provider | Requested | Day 0 | Open |
Build it as a spreadsheet first. A dropdown for status, a filter on "Requested", and a count by client gives you everything a small practice needs: a client with 9 of 14 documents complete is one filter away. The tutorial on chasing missing client documents in tax season adds the wider routine around a tracker like this.
Matching uploads without letting the AI tick the box
The next job is to decide which uploaded file satisfies which row. Clients upload scans with names such as "scan0042" and phone photos with default names, so someone has to open each one. There are three ways to do it, and the right one depends on your tools.
- Use the portal's own matching. Canopy's Smart Intake page says uploads are matched to request-list items and can be renamed and classified under your firm's naming rules, and that its checklists can be built from past returns or CRM data and update as the client answers questions. TaxDome's help centre says TaxDome AI matches each upload to the right checklist section, so progress shows in real time, and renames and tags files by document type. It also says some of these features come with the subscription and others need an AI add-on, that availability depends on where the firm is based, and that a firm owner or admin has to switch them on. Neither vendor's page states prices, so check current plans and supported documents with each.
- Do it by hand with a naming rule, for instance client code, year, payer and document type. A person opens each file, which is slower but costs nothing and teaches the team what arrives.
- Use an assistant on redacted first-page text, on a business plan, with client consent. It reads the text and proposes a row, and a person confirms.
Whichever you pick, the AI proposes and a person ticks. A sample of the third route shows why:
| File | AI proposes | Human check |
|---|---|---|
| scan0042.pdf | Year-end interest statement, Bank 2, current year | Matches row "Interest, Bank 2". Mark complete |
| IMG_5530.jpg | Mortgage statement, dated the previous December | Wrong year. Mark "received, wrong" and ask for the current one |
| statement.pdf | Monthly bank statement, Bank 1 | Not the year-end summary. Mark "received, wrong" |
| brokerage.pdf | Consolidated statement, marked "corrected" | Replaces an earlier copy. Keep both, supersede the old one |
Those four cases, a wrong year, a monthly statement sent instead of the annual one, a corrected statement and a clean match, are the ones that cause the most rework. A tracker with "received, wrong" and a human tick catches them. A tool that marks a row complete the moment any file arrives does not.
Reminders that name the missing documents, on a schedule
A reminder that lists three specific items gets answered far more readily than one saying documents are missing, because the client knows exactly what to hunt for. The tracker makes that possible, since the message is built from the rows still marked "Requested" or "Received, wrong". Here is a schedule to start with, counted in days from the invitation:
| Day | Who gets it | Content |
|---|---|---|
| 0 | Every client | Invitation: the checklist link, how to upload, the date you want it by |
| 5 | Clients with no uploads | Short nudge, a reminder of how long it takes |
| 12 | Anyone with items outstanding | Itemised list of up to five missing documents, where to find each |
| 19 | Clients under half complete | A personal call or text from a named person |
| 26 | Everyone still incomplete | Final notice: the date your queue closes and what happens after |
Rules for the schedule: stop automatic messages the moment a client replies, skip any client whose only open rows are "Waiting on third party", and send the day-19 contact from a person, not a system. With 180 clients and five touches that is a few hundred messages a season, which an assistant can draft and your tool or a mail merge can send. People should spend their time on the phone calls.
Here is how a premature reminder happens, in an invented case. A client uploads a brokerage statement at 9pm. Nobody has matched it yet, so the row still says "Requested", and at 8am the next day an automatic reminder asks for it again. The client replies, irritated, "I sent that last night." The fix is the "Received, unchecked" status: any upload against a row pauses its reminders at once, even before a person has opened the file. A quick scan of replies like "I already sent that" is the cheapest way to find leaks of this kind in your first season.
The day-12 message is the one that matters, so write it once, well:
Subject: 3 documents left for your tax return
Hi [first name],
Thank you for sending 11 of your 14 documents. These three are still
missing:
1. Year-end statement from [brokerage name]. It is usually in your online
account under statements or tax documents, and often arrives later than
the others. If it has not appeared yet, tell us and we will check back
on [date].
2. Your childcare provider's name, address, ID number and the total you
paid. Ask the provider for a year-end statement.
3. Your mortgage lender's year-end interest statement.
Upload them here: [link]. If you are not sure what something is, reply
"not sure" and we will help.
[your name]
Each missing item carries its own "where to find it" line. An assistant drafts those lines from the document type, and a preparer reads them once, because a wrong hint ("check your tax software") creates a call. The prompt is simple: give it the list of missing rows and ask for a friendly itemised message with where each item is usually found, no jargon, under 150 words.
What the client sees: the missing-document list
The same tracker feeds a single client-facing view, in the portal or as a plain page. Group it into three headings so it reads at a glance: done, still needed and waiting on someone else. For the typical client at day 12:
Your documents: 11 of 14 received
Still needed (3)
- Year-end statement from [brokerage name]
- Childcare provider details and total paid
- Mortgage lender's year-end interest statement
Waiting on someone else (0)
Done (11)
- Pay statement, Employer A
- Interest statements, Bank 1 and Bank 2
- Property tax bill
- ...
Not sure about something? Reply "not sure" and we will call you.
Two design choices keep it honest. The count in the heading comes from the tracker, not from a person's guess, so it cannot drift. And every item is a document the client can recognise by name, not a category such as "investment income", which is a preparer's word. If you want the AI to translate the preparer's row into the client's language, do it once when the list is drafted and review it then.
Checks that stop the list from lying
A document list can look complete and still be wrong. Five checks keep it honest:
- Preparer approval. A preparer reads each AI-drafted list for two minutes before the client sees it, removing items that clearly no longer apply and adding anything the practice knows about.
- The silent-drop check. If last year's return had interest from Bank 1 and nothing from Bank 1 arrives, ask, because the statement may be missing even though the client said nothing changed.
- Client-confirmed "not applicable". No row leaves the list unless the client has said so, in writing or in the portal.
- The unmatched queue. Any upload that fits no row goes to a person, not into a folder, since it may be the document for something the questionnaire missed.
- The start-of-prep gate. A return does not enter preparation until every required row is complete or not applicable, or the preparer has recorded why they are proceeding.
Measure the first season. Count how many clients were complete by day 14, how many chasing touches each needed on average, and how many returns reached preparation with a required document still missing. Those three numbers tell you whether the schedule or the list needs changing, and they are the figures to show a partner who asks whether it worked. Once documents are in and checked, the next stage is extracting figures, tying out and signing off the return.
Client data in the build: what to redact and what to log
The prior-year return is some of the most sensitive paper a practice holds. The safest design never lets an identifier into the assistant: the summary has no names, identification numbers, addresses or account numbers, and the output refers to "Bank 1" and "Employer A", with the real names filled in from your own records afterwards. The assistant needs the shape of the return, not who it belongs to.
Use a business plan or the AI inside your practice software. ChatGPT Business is $25 per user per month on monthly billing, or $20 on annual billing with a two-seat minimum, and Claude Team is $20 on annual billing and $25 monthly. Neither trains on business content by default. Professional and data-protection rules in many places require the client's informed consent before return information is disclosed to or used by an outside service, sometimes in writing, so check the rules that apply to your practice and ask your professional body or an adviser. Say in the engagement letter that AI tools assist with the checklist, and keep a short log of which tool touched which client file.
A sentence for the engagement letter, to be reviewed by your adviser because some rules require written consent: "We use AI tools to help prepare your document checklist from last year's return. Names, identification numbers, addresses and account numbers are removed first, a preparer reviews every checklist, and you can ask us not to use these tools for your file."
At the end of the season, delete the summaries and any assistant conversations that held them, record the date, and keep only the tracker. The sheet holds document names, not figures, so it is far safer to keep.
Questions about AI tax organisers
Can AI read last year's return to build the checklist?
Yes, from a one-page summary with names, identification numbers, addresses and account numbers removed. Ask for one row per payer, review the draft yourself, and only then let the client see it. Use a business plan or your practice software, and follow the consent rules that apply to your practice before any return information leaves your own systems.
How often should clients be reminded about missing documents?
A schedule of about five touches over four weeks is a workable start: an invitation, a nudge for clients with no uploads, an itemised reminder, a personal call or text for the stragglers and a final cut-off notice. Stop automatic messages when the client replies, and adjust the gaps after your first season's numbers.
What if a document does not exist yet?
Mark the row as waiting on a third party with the date it is normally issued, and keep the reminders quiet until then. Investment statements often arrive late or get reissued as corrected versions, so chasing the client for them early only frustrates them. Tell the client what they will receive and roughly when.
Do I need practice-management software to do this?
No. A spreadsheet, a shared upload folder and an assistant on a business plan will run this for a few hundred clients. Software adds automatic reminders, upload matching and a client portal, which save admin time but do not change the method. Build the list and tracker by hand first so you know what you are buying.
Further reads
- Tax Services AI for a Small Practice: Intake, Chasing and Review Notes — Intake, chasing and review notes in one small-practice routine.
- TaxDome Automations: What to Automate First in a Small Practice — What to automate first if you already use TaxDome.
- Canopy vs TaxDome for Tax-Heavy Practices: Which Fits the Season? — Two practice platforms compared for a busy season.
- How to Chase Missing Client Records With AI Before Deadlines — Chasing missing records beyond tax, before deadlines.
- ChatGPT Prompts for Tax Preparers: Client Emails and Checklists — Prompt wording for client emails and checklists.
- WISP for Tax Preparers: Add Your AI Tools Without Gaps — Adding AI tools to your written security plan.
- AI in Bookkeeping and Tax: The Year-End Handoff to Your Preparer — How bookkeepers hand year-end records to the preparer.
- AI Software for Tax Professionals: Run a Pilot and Measure Cost per Return — A four-week pilot plan for a small tax practice: one task, pass or fail rules, a consent and WISP check, and a cost-per-return formula.
- AI Tax Prep Software for CPAs: What to Test Before You Switch — A pre-switch test for CPA firms: ten filed returns, a scoring sheet, planted errors and the checks that separate Canopy Smart Prep partners, Juno and others.
- Accounting Software for CPA Firms: Automation Features Compared — TaxDome, Karbon and Canopy compared on real automation, with list prices, plan gating and what is still beta, plus a five-seat cost sum.
- AI Loan Processing: Catch Missing Documents Before Underwriting — A small-brokerage routine: classify each file's documents, test them against a loan-type checklist, run stale-date formulas and have a processor sign off.
- Tax Preparation Automation: Source Documents to Software With AI — Map W-2, 1099 and K-1 fields, set accuracy checks and handle scans, so AI extraction feeds your tax software without re-keying errors.
- n8n for Accountants: Client Document Flows, Cost and Hosting Choice — Choose between n8n Cloud and self-hosting for client document workflows, with plan costs, execution counts and where your data ends up.
- Can AI Draft an IRS Notice Response? What to Check Before Sending — A practitioner's routine for AI-drafted IRS notice responses: triage by type and deadline, redact first, verify every code, amount and date, then sign.
- AI Tools and AI Development: The Complete 2026 Guide — the AI hub, including every tutorial in the AI-for-business series.
Sources: Canopy AI and Smart Intake pages, TaxDome help centre article on TaxDome AI, ChatGPT Business and Claude plan pages (checked October to November 2026).