Home / Accounting & Bookkeeping / Tax document checklist from last year's documents, emailed in January and fed into the chase ladder
Accounting & Bookkeeping problem 3: Every January the same 'what do you need from me?' questions
Tax document checklist from last year's documents, emailed in January and fed into the chase ladder
On January 10 the workflow reads the list of documents each individual client sent you last year (a Google Sheet you keep: W-2s, 1099s, 1098s, K-1s and so on, with the payer name) and emails each client a personal 'here's what we expect this year' checklist, plus six yes/no life-change questions. Account numbers are hidden. Each item is added to the document list that the chase ladder recipe works from, and if you use Karbon it opens the client's tax return work item when there isn't one yet. The partner gets one summary.
The problem
A client who forgets a 1099 they had last year means an amended return or a late start. The figure below comes from a vendor survey.
- Financial Cents' 2025 survey of 816 firm owners and admins: getting documents from clients was the biggest workflow issue. Vendor survey. Source: Financial Cents, 2025 State of Accounting Workflow and Automation Report (816 firm owners and admins, mostly North America) (Vendor survey by a practice-management software company)
- TaxDome includes tax organizers and document request lists, and most tax software prints a prior-year organizer. If you already send those, you may not need this recipe; it is for firms that want a short email checklist feeding one reminder ladder. Source: TaxDome pricing (automated reminders, document request lists, tax organizers and the Bookkeeping hub) (Vendor pricing page)
- Using a client's prior-year return information is regulated by section 7216: a preparer 'may not disclose or use' it without written consent unless the regulations allow it. Building your own checklist for preparing the client's next return is a different question from sending it to marketing or AI tools; ask counsel. Source: 26 CFR 301.7216-3 (disclosure or use permitted only with the taxpayer's consent) (US federal regulation)
Background reading: Client document reminder emails: a ladder that stops when files arrive · A WISP for small tax and bookkeeping firms that use automations: what the Safeguards Rule asks of your tools
Who it's for
US solo and small tax practices preparing individual returns who rebuild each client's document list by hand every season.
Tools and monthly cost
| Tool | Official price |
|---|---|
| Resend (sends the emails) | Free: 3,000 emails / month, 100 / day. Pro: $20 / month for 50,000 pricing page |
| Google Sheets (document checklist, pause list and ladder log) | Free with a Google account or your existing Google Workspace plan. Keep Social Security and account numbers out of it pricing page |
| Karbon (optional practice-management tool; its API needs the Business or Enterprise plan) | Team $59 / user / month billed annually ($79 monthly, teams of 4+); Business $89 / user / month billed annually ($99 monthly). Business includes automatic client reminders pricing page |
| n8n | Community Edition: free if you self-host (you pay for the server). n8n Cloud: from EUR 20 / month (Starter) or EUR 50 (Pro) pricing page |
Example month: Illustrative arithmetic. Assume 150 individual clients: one January run sends 150 checklist emails (two days of Resend's 100-a-day free limit, or one month of Resend Pro at $20) and one partner summary. The rest of the year it sends nothing. About $0-$20 a year plus your n8n server.
Setup
- Read the 'Safeguards Rule, WISP, 7216 and Circular 230' section on the accounting hub first, especially the 7216 line.
- Keep a Google Sheet ac-prior-year-docs with one row per document a client gave you last year: client_id, client, first name, email, document type (W-2, 1099-INT, 1098...), payer, preparer email. Never put SSNs or full account numbers in it; the workflow masks them anyway, using the rule under Safety below.
- Use it with the document chase ladder recipe: the checklist rows are written to its ac-doc-requests sheet, and the ladder starts reminding on the next weekday.
- Karbon (optional): in Settings > Connected Apps > API Applications (Business or Enterprise plan), copy the application ID and access key into KARBON_APP_ID and KARBON_ACCESS_KEY. By default the API only sees Public clients; Private or Hidden clients need an admin request to Karbon. Karbon requires both headers on every call; the workflow refuses to send them to any other host. KARBON_REQUEST_INTERVAL_MS paces calls and 429 replies wait for Retry-After. The workflow looks for a '<year> Individual tax return - <client>' work item and creates one (due March 15, deadline April 15) only if none exists.
- Set CPA_FIRM_NAME, CPA_FIRM_SHORT, CPA_PHONE, CPA_ADDRESS, CPA_FROM_EMAIL, CPA_REPLY_TO, CPA_TZ and PARTNER_EMAIL from .env.example. Every client email is signed with your firm name, phone and address. Run n8n behind HTTPS with multi-factor authentication on the n8n login and on every connected account, keep execution logs short (Settings > n8n data pruning), and add n8n and its host to your WISP's list of service providers.
- Run it in December against two or three test clients with your own email. The workflow also has a manual 'run now' webhook used by our tests. Delete it, or put it behind n8n's header authentication, before you go live.
Download
Download tax-organizer-checklist-from-prior-year.zip
Contains the n8n workflow, the mock data, the test runner with its last results, and the mock server we tested against. All keys in .env.example are fake.
Test result
Every workflow was imported into n8n 2.45.4 and run end to end on our test machine. Karbon (API v3), TaxDome (public API v4, read-only), QuickBooks Online (Accounting API with OAuth 2.0), Google Sheets and the email sender (Resend) were replaced by a local mock server built from their official API docs: it checks the same request shapes, authentication headers and query syntax, pages results (Karbon @odata.nextLink, TaxDome cursors, QuickBooks STARTPOSITION), returns HTTP 429 with Retry-After, and expires the QuickBooks access token so n8n's real OAuth2 refresh runs. These recipes use no AI model; every decision is a written rule. Clients, firms and transactions are invented. Verified with mocks; no real client data was used, and nothing was sent to a real person or account.
3/3 scenarios passed (run 2026-10-28)
| PASS | O1 | Jan 10: one 2026 checklist per client from last year's documents (account number hidden), life-change questions, rows added for the chase ladder; Karbon work item opened only where none exists (one 429 retried) |
| PASS | O2 | Run again: nothing duplicated |
| PASS | O3 | Hand-off: the document chase ladder (recipe 1) picks the new rows up the next weekday |
Actual output from the test run
Scenario O1: the January checklist (invented client; account number hidden). Names and numbers are invented.
Subject: Your 2026 tax checklist Hi Ava, It's tax season again. Based on what you sent us last year, here's what we expect to need for your 2026 return: - 2026 W-2 (wages) from Northwind Health - 2026 1099-INT (interest) from First Example Bank acct *7766 Most of these arrive by mid-February. Upload each one to your secure portal as it comes in: https://cedarledger.example/portal Anything new this year? Please reply with yes or no to each: 1. Did you move, marry, divorce, or have or adopt a child? 2. Did you start, change or lose a job, or start a side business? 3. Did you buy or sell a home, stock, crypto or other investments? 4. Did you pay for college, childcare, or make large charitable gifts? 5. Did you receive an IRS or state letter during the year? 6. Did you buy health insurance through the Marketplace (Form 1095-A)? If something on the list no longer applies (an account closed, a job ended), just tell us. For your security, please don't email tax documents or your Social Security number. Thank you, Cedar Ledger CPAs (555) 555-0140 40 Example St, Suite 3, Hartford, CT 06103
Verified with mocks
- January 10: one 2026 checklist per client built from last year's documents (an account number hidden), six life-change questions, one request row per item added for the chase ladder; a Karbon work item opened only where none existed (one 429 retried); one partner summary listing clients with no email.
- Running again sends and adds nothing.
- Hand-off: the next weekday the document chase ladder (recipe 1) picks the new rows up and sends its day-0 email.
- Verified with mocks; no real client data used.
Documented from official API docs only
Built to the vendor's documentation but not run against a live account. Check these on yours.
- Karbon WorkItems list (OData $filter) and create (from Karbon's developer docs; not run against a live Karbon account).
- Resend email API (from Resend's docs). Google Sheets: tested against a mock sheet endpoint; the n8n Google Sheets node is not wired in.
Limitations
- It only expects what the client sent last year. New income (a new job, crypto, a home sale) relies on the client answering the life-change questions.
- Rule-based, no AI: the document type names are matched from a fixed list, so unusual labels show as you typed them.
- Emails ask for documents through your client portal, never as attachments. Before client-supplied text goes into an email, a Karbon note or a work item, this recipe applies the same rule as our chase ladder, uncategorized-transactions, organizer and digest recipes: numbers written like an SSN or ITIN (123-45-6789 or 123 45 6789) or an EIN (12-3456789) are replaced with [removed], and any other unbroken run of 5 or more digits is cut to its last 4 (99887766 becomes *7766; an SSN typed without dashes shows as its last 4). Runs of 4 digits or fewer, such as years and form numbers, are left as they are. That is a safety net, not a guarantee: n8n's own execution log still keeps the unmasked rows it read (14 days by default). Keep those numbers out of the Google Sheet too.
- Not legal or professional-standards advice, and not a compliance guarantee. Tax preparers are covered by the FTC Safeguards Rule (16 CFR 314), which asks for encryption in transit and at rest (314.4(c)(3)), multi-factor authentication for anyone accessing an information system (314.4(c)(5)) and oversight of service providers (314.4(f)); n8n, its server, Resend, Google and Karbon/TaxDome are service providers to list in your written information security plan (IRS Pub 4557 and 5708). Section 7216 limits how you use and disclose tax return information. Check with counsel and your state board before you turn this on.