DEV Community

Tali Adler
Tali Adler

Posted on

A Better Month-End Starts With Evidence, Not More Checklists

A Better Month-End Starts With Evidence, Not More Checklists

Month-end close rarely breaks because a team forgot that reconciliation exists. It breaks because the team cannot answer a smaller, more important question quickly:

What evidence supports this number, and what decision did we make about it?

That question is where accounting practice, workflow design, and product engineering meet. A close process can have a hundred checklist items and still leave reviewers hunting through email, spreadsheets, exports, and chat threads. The problem is not a lack of tasks. It is a lack of context attached to each task.

This article walks through a practical pattern for building an evidence-first close workflow. The example is a recurring bank reconciliation, but the same design works for accruals, prepaid expenses, revenue cutoffs, and intercompany balances.

The checklist is not the unit of work

A typical close checklist might say:

  • Reconcile operating account
  • Review outstanding items
  • Post adjusting entries
  • Obtain approval

Those are useful milestones, but they are poor data structures. They do not tell the next person which statement was used, which period was covered, why an item was left open, or whether the proposed journal entry is still valid.

A more useful unit is an accounting decision with four parts:

  1. Scope: account, entity, and period.
  2. Evidence: the source document, transaction set, or report.
  3. Decision: cleared, accrued, reclassified, deferred, or left open.
  4. Reason: a short explanation that another reviewer can understand.

Once those fields exist, the checklist becomes a view over structured work instead of the place where all context goes to disappear.

A concrete workflow for one reconciliation

Suppose the bank statement shows a $12,400 difference from the general ledger. An evidence-first workflow should not jump directly to “investigate variance.” It should create a review item containing:

{
  "account": "1010 Operating Cash",
  "period": "2026-08",
  "difference": 12400,
  "source": ["bank_statement_2026_08.pdf", "gl_detail_2026_08.csv"],
  "proposed_action": "review",
  "status": "open"
}
Enter fullscreen mode Exit fullscreen mode

The system can then group likely causes: deposits in transit, outstanding checks, bank fees, timing differences, or coding errors. Automation is helpful here, but it should produce a proposal, not pretend that a pattern match is an accounting conclusion.

A reviewer might accept a $9,800 deposit in transit, identify a $2,400 bank fee, and reject a suggested reclassification for the remaining $200. Each outcome should remain attached to the same evidence bundle. That gives the close a durable trail: what was observed, what was proposed, what changed, and who accepted the decision.

Design the exception path first

The happy path is easy to demo. The exception path is what determines whether a finance workflow earns trust.

For every automated suggestion, define at least three outcomes:

  • Accept: the evidence is sufficient and the proposed treatment is correct.
  • Edit: the suggestion is useful, but an amount, account, or explanation needs changing.
  • Reject and explain: the suggestion is not appropriate, with a reason that improves future review.

This is more useful than a binary approved/rejected flag. It also makes metrics meaningful. You can measure how often proposals are accepted unchanged, how often they need edits, and which source types create the most review work. Those measurements tell you where to improve mappings and controls.

In a tool such as portali.tech, the valuable feature is not simply that a document can be uploaded or a task can be assigned. It is the connection between source evidence, proposed treatment, and explicit human review. That connection reduces the time spent reconstructing history when a controller asks, “Why did we book this?”

Keep automation idempotent

Close workflows are often rerun. A bank feed may refresh, a file may be uploaded twice, or a reviewer may reopen a period after a correction. If each run creates a new journal proposal, the system quickly becomes noisy and unsafe.

Use a stable key for each proposed item, such as:

company + account + period + source_transaction_id + rule_version
Enter fullscreen mode Exit fullscreen mode

On rerun:

  • update an existing open proposal when the source is unchanged;
  • create a new revision when the source or rule version changes;
  • never silently overwrite an accepted decision;
  • preserve the previous explanation when a new reviewer takes over.

This is ordinary application engineering, but it has an accounting consequence: reproducibility. A reviewer should be able to see why the system showed a different proposal yesterday without guessing which process ran in the background.

Make the review queue useful

A queue sorted only by creation time is not a close workflow. Prioritize by risk and aging. A simple score can combine materiality, days outstanding, account sensitivity, and confidence in the proposed match:

priority = materiality_weight
         + aging_weight
         + sensitivity_weight
         - confidence_weight
Enter fullscreen mode Exit fullscreen mode

The exact formula is less important than making it visible and adjustable. A $200 item in a high-risk revenue account may deserve attention before a $5,000 routine timing difference in cash.

The queue should also show the reviewer what they need without another search: the evidence links, the proposed entry, the matching transactions, prior decisions for similar items, and the next action. Good workflow design removes navigation, not judgment.

A close that can explain itself

The strongest month-end process is not the one with the most automation. It is the one that can explain each material number with less manual archaeology.

Start small: choose one account, capture the evidence and decision fields, add accept/edit/reject outcomes, and make reruns safe. Then measure review time and recurring exception types before expanding to another account.

Checklists still matter. They tell the team what should happen. Evidence-linked decisions tell the team what actually happened. That distinction is the difference between a close that merely reaches a deadline and a close that remains understandable after the people who performed it have moved on.

Top comments (0)