Letting AI Draft the Journal Entry — Within Reason
GenAI can code journal entries straight from source documents and lift the share of touchless postings, as long as the controls around it stay tight.
A surprising amount of month-end is people reading a document and deciding where it books. Read the invoice, the contract, the bank memo — figure out the account, the cost center, the entity, the amount — and type the journal. It's judgment-heavy for the tricky ones and pure repetition for the rest. AI is genuinely useful on the repetition.
The play here is drafting, not deciding. GenAI reads the source document, proposes the coding — GL account, cost center, entity, tax treatment — and drafts the entry with a plain-language rationale for why it coded it that way. A human reviews and posts. On the high-volume, well-understood transaction types, that draft is right often enough that touchless JE percentages climb meaningfully.
Why the rationale matters
I want to dwell on that "plain-language rationale" for a second, because it's the part that makes this safe. A black-box model that just spits out an account number is hard to trust and harder to audit. A model that says "coded to 6420 Marketing because this is a Q3 trade-show sponsorship invoice from an events vendor" gives the reviewer something to agree or disagree with in seconds. That's what turns review from re-doing the work into genuinely just checking it.
Miscoding is the metric I'd track hardest — the rate of entries that had to be corrected after the fact. A good implementation should reduce it, not just speed things up, because the model applies your coding logic consistently where tired humans at 9pm on close day don't. Consistency is underrated. Half the reclasses I've seen exist because two people coded the same kind of transaction two different ways.
Where I'd be careful
Not every entry belongs here. Complex accruals, judgmental provisions, anything requiring real accounting interpretation — those need a qualified person driving, with AI at most fetching the supporting numbers. Trying to automate the hard judgment calls is how you end up with a confidently-wrong entry that nobody caught until the auditors did.
Segregation of duties doesn't go away because a model drafted the entry. Someone independent still reviews and approves. The AI is a preparer, not an approver, and your controls documentation should say exactly that.
Watch for drift, too. If your chart of accounts changes or a new transaction type appears, the model's coding logic needs updating — otherwise it'll keep confidently applying yesterday's rules. Build a feedback loop where a rejected suggestion teaches the system.
And ground it in the actual document. A GenAI model asked to code an entry without the source in front of it will invent a plausible amount, and plausible-but-wrong is the worst kind of wrong in the ledger. Extract, validate against the document, reconcile the total, then draft.
Done with discipline, this doesn't replace your R2R team — it hands them back the hours they were spending on entries that never needed a human brain in the first place.
