Template

Financial reporting automation template

This template builds a period reporting pack. It pulls the figures, checks them against control totals, drafts the variance commentary and holds the pack for the controller before anyone else sees it.

Last reviewed 7 October 2026

Status

Starting point

The status rests on the workflow postgresql-data-analysis, which reads a database, formats the result and asks a model for an analysis. As shipped it lists table sizes, not ledger figures, so the queries, the checks and the review are yours to build.

The library has a template, chatflow, MCP server or governed template that covers part of the job. You assemble the rest in Studio.

The job

What this template does

A controller or head of finance owns the monthly pack. After close, someone pulls the figures, compares them with last month and the budget, writes what moved and why, and sends the result to people who act on it. The work repeats each period and is mostly assembly.

By hand, versions multiply. A spreadsheet is pasted into a document and drifts from the ledger, the commentary is written late and never checked against the tables, and a recipient sees the pack before the controller has. This flow ties figures to the query that produced them, stops when control totals disagree and sends the pack to the controller first.

Workflow

The workflow, step by step

Steps marked as approval gates pause the run until a named person approves. Nothing after a gate runs before that decision, and the decision is recorded.

  1. 01

    Open the period

    A schedule starts the run after close. The workflow checks a close flag you maintain and stops if it is not set. It records the period, the source systems and the version of the queries in use. The next step receives that header.
  2. 02

    Pull the figures

    The workflow runs your queries against the ledger database, or reads an accounting export, and writes result tables for the period, the prior period and the budget. In the shipped workflow the query lists table sizes, so this is the part you replace with your own.
  3. 03

    Check control totals

    A code step tests what must be true: the trial balance sums to zero, sub-ledgers agree with their control accounts, and this period’s opening balances equal last period’s closing ones. If a test fails the run stops and names it. The next step receives only tables that passed.
  4. 04

    Draft the commentary

    A model compares the period with the prior one and the budget, and drafts commentary for the lines above your review level. It is instructed to name the table row behind every statement and to say when it cannot explain a movement. It does not post to anyone. The controller receives tables and draft together.
  5. 05

    Controller review

    The run pauses for the controller named for the entity. They read the tables and the draft, edit the commentary and approve the pack or send it back with a reason. The approved version is frozen under the period reference, and the next step receives it.Approval gate: a named person approves before the next step runs.
  6. 06

    Distribute and file

    After approval the workflow sends the pack to the named recipients by email or chat, and stores the pack, the queries, the check results and the approval together. A rerun for the same period creates a new version and leaves the old one in place.
Controls

What it can do, cannot do, needs approval for, and records

Can

  • Pull period, prior-period and budget figures with your queries
  • Test control totals and stop when they fail
  • Draft variance commentary that cites its source rows
  • Send the approved pack to named recipients

Cannot

  • Post, adjust or reverse a journal
  • Release the pack before the controller approves it
  • Explain a movement it has no data for
  • Change a figure to make a check pass

Requires approval

  • The pack, by the controller
  • Any rerun that changes a figure already approved
  • Distribution outside the named internal list, by the finance director

Records

  • Period, source systems and query versions
  • Result tables and control-total outcomes
  • The commentary draft and the approved text
  • Approver, decision and time
Honest labels

What the library holds for this job

AssetTypeCoversRole in this flow
Postgresql Data AnalysisWorkflow templatePart of the jobLists the tables of a Postgres database, queries sample data, formats it, asks a model for an analysis and outputs it. It supplies the pull-and-narrate skeleton.
Comparative AnalysisPromptUsed inside the flowA starting prompt for comparing this period with a prior one.
PostgresIntegrationUsed inside the flowConnects the workflow to the database that holds the ledger or a reporting copy of it.
QuickBooksIntegrationUsed inside the flowAn alternative source of period figures if QuickBooks is your ledger.
Read from the template, prompt, MCP and Marketplace data on the site. A Marketplace sample listing is a catalogue preview with no template seeded behind it.
Connections

Integrations this flow uses

  • Postgres: Holds the ledger or a reporting copy that the queries read.
  • QuickBooks: An alternative source of figures if it is your ledger.
  • Slack: Delivers the review request and the approved pack link.

The full list of tools Studio connects to is on the integrations page.

Before you start

What you supply, and what this page does not cover

  • You supply the queries, the control totals, the review level for commentary, the controller and the distribution list.
  • Studio is not a business intelligence tool, a consolidation tool or a ledger. This flow assembles a pack from figures that already exist elsewhere.
  • The commentary is a draft written by a model. Treat it as the first draft of an analyst and let the controller own every word that is sent.
  • Statutory accounts, audit evidence and filings are outside this page.

Common questions

Does the template produce statutory accounts?
No. It builds an internal period pack from figures held elsewhere. Statutory accounts, consolidation and filings need your accounting software and your finance team. The flow is useful for management reporting, where the repeated work is pulling, checking and writing the same commentary each month.
What does the shipped workflow actually do?
It connects to a Postgres database, lists the tables, queries sample data, formats a summary and asks a model for an analysis. As shipped, the sample query is about table sizes. It shows the shape of the narrative step, and you replace the queries with your own ledger queries.
How do I stop the model inventing explanations?
Tell it to cite the table row behind every statement and to say when the data does not explain a movement, then have the controller read the draft against the tables. The approval step makes that review part of the run. It reduces the risk. It does not remove it.
Can it read from my accounting package?
If an integration exists for it, or it can export a file the workflow reads, yes. QuickBooks and Postgres are in the integrations library. Check the hub for others. You provide the credentials, and the workflow only reads what you permit.

Build this in Studio

Describe what you need in plain language. Studio builds the agents and workflows, and you keep every version.