AI Prompting for Workpapers
Write AI Prompt Columns and Testing Attributes that return clean, citable values and sound audit judgments. Format specs, @ references, grounding, and copy-and-paste prompt recipes.
Inside a workpaper, two column types run on prompts you write: AI Prompt Columns extract a value from each matched document, and Testing Attributes evaluate an audit judgment and write a tickmark. Co-Audit generates most of these for you, but knowing how to write and tune them by hand is what turns a good first draft into a defensible workpaper.
This page applies the universal prompting principles to the Workflow tab's column prompts.
What you'll learn
- How to write an AI Prompt Column that returns one clean, citable value.
- How to write a Testing Attribute that produces a sound, reviewable tickmark.
- How to use
@references to scope a prompt to the row, the engagement, or the memo. - When to reach for a Formula instead of an AI Prompt.
- Copy-and-paste prompt recipes for both column types.
AI Prompt Columns: extract one clean value
An AI Prompt Column runs its prompt against every matched document in the column and writes the extracted value, with a citation pill back to the source. A strong extraction prompt does three things.
Pull in context with @
Type @ to reference the row's selection fields, other columns, or engagement variables. This scopes the prompt and pins it to the right record.
Less effective
Get the invoice info.More effective
Return the total amount due on the invoice for @Invoice Number as a
number with two decimal places. If multiple totals appear, return the
final amount due after taxes and adjustments.Testing Attributes: a sound, reviewable judgment
A Testing Attribute holds an audit judgment (pass / exception) plus the documented procedure that supports it. It carries two fields:
- Audit Procedures — what the auditor did, the documented procedure.
- Prompt — the question the AI evaluates against the document, usually referencing a memo policy or another column with
@.
The output is a tickmark: a green ✓ for pass, or a labeled exception (E1, E2…) with a description of the counter-evidence. A reviewer reads the reasoning and can override the tickmark from the Workpaper tab.
A good Testing Attribute prompt gives the AI the rule to apply and asks for a clear determination.
Less effective
Check if the invoice is okay.More effective
Does the invoice total for @Invoice Number support the amount recorded
in @Recorded Amount, within a rounding tolerance of one dollar? Apply
the matching rule in @Accounting Policies. Conclude "pass" if it
matches; otherwise raise an exception describing the difference.Scope prompts with @ references
Typing @ in any prompt opens a picker of everything you can reference from that position in the workflow. Use it to pin a prompt to the row and to bring in the rules it should apply.
Reference row values
@Invoice Number, @Employee Name pin the prompt to the current selection so the AI extracts from the right record.
Reference the memo
@Accounting Policies, @Procedures give the AI the rule to apply, the plan's contribution rules, the client's revenue-recognition policy, the procedure being performed.
Reference engagement variables
@Period End Date, @Materiality scope the prompt to this engagement and re-anchor automatically on roll-forward.
@ references must be real pills
You cannot copy and paste an @ reference as text. Type @, narrow the list with a few characters, and select the item so it becomes a blue pill. Plain text that looks like @Invoice Number will not resolve at run time. See the @ reference rules.
Use a Formula for math, not an AI Prompt
This is the most important judgment call when building columns. For anything mechanical (a recalculation, a subtotal, a variance, interest, age in years) use a Formula column. Formulas always recompute against the freshly extracted values. AI Prompts sometimes copy a value forward instead of doing the math.
Use an AI Prompt for…
- Pulling a value off a document (a total, a date, a name).
- A judgment that requires reading the document (does this support the entry?).
- Anything that can't be expressed as a calculation.
Use a Formula for…
- Recalculating a payment, a balance, or interest.
- Footing or cross-footing a column.
- A variance or tie-out between two extracted values.
Double-check recalculations
Even when a column should recompute a number, spot-check the first few rows. If you built it as an AI Prompt and the figures look copied rather than calculated, convert it to a Formula.
Tune, validate, and lock
Your first prompt is a draft. Refining it is fast and safe.
Check the citation
Click the citation pill in a cell to jump to where the value was found in the source document. If the AI is reading the wrong spot, the fix is usually a sharper prompt or an @ reference that scopes it to the right record.
Refine the prompt and rerun the column
Edit the prompt on the column header and click the play icon on that column to rerun only it. Compare the new values against the citations.
Validate what's right
Click Validate on a correct cell. Validated cells are locked and are always skipped on a rerun, so you can keep tuning a prompt without overwriting work you've already signed off on.
Prompt recipes
Copy any of these into a column header and adapt the specifics. The first group are AI Prompt Columns (extraction); the second are Testing Attributes (judgments).
Extraction recipes
A number
Lock the decimals and a tie-breaker so every row comes back the same shape.
Return the ending balance shown on the statement as a number with two
decimal places, no currency symbol or thousands separators. If the
statement shows a closing balance and an available balance, return the
closing balance.A name
Name the location to pull from, and what to leave out.
Return the vendor's legal entity name exactly as it appears in the
invoice header. Return the name only, with no address, account number,
or contact details.A Yes/No flag
Constrain the answer to two values and define the edge case.
Does the document include a signed approval? Answer "Yes" or "No" only.
Treat a typed name in an approval field as a signature; treat a blank
field as not signed.Testing Attribute recipes
Tie-out
Compare two figures and conclude with a tolerance.
Does the invoice total support the journal entry amount recorded in this
selection? Compare the extracted invoice total to @Recorded Amount.Policy compliance
Apply a memo policy to each row and explain any failure.
Using the eligibility rules in @Accounting Policies, determine whether
this employee was eligible to participate as of @Period End Date based
on their hire date and hours worked. Timeliness
Measure the gap between two dates against a required window.
Was the contribution remitted within the timeframe required by the
plan's remittance policy in @Accounting Policies? Compare the @pay date
to the @remittance date. Existence
Ask whether the evidence supports the assertion, and what's missing if not.
Does the uploaded document provide evidence that the asset in this
selection physically exists or was placed in service during the period?Continue your journey
← AI Prompting overview
The universal principles behind every prompt in Punchcard.
AI Prompting with Co-Audit
Have the agent build these columns for you from one instruction.
How is this guide?
AI Prompting with Co-Audit
How to write instructions for the Co-Audit agent so it builds the right workflow on the first pass. State the goal, name the documents, list the columns, then iterate, with copy-and-paste recipes.
Clients & Engagements
How clients, engagements, and your firm fit together in Punchcard, and how to create a new client and engagement from scratch.