Simple setup guide

Build your first Weekly CFO Pack.

Start with made-up data. Then add copies of the finance files your business already uses. Your original files will not be changed.

01

Before you start

You need Python 3.11 or newer. You do not need Docker or another SFP product.

Keep private information private.

Do not paste passwords, API keys, bank files, or payroll files into a chat. Keep them in your local toolkit folder.

02

Install the toolkit

On a Mac

  1. Unzip the downloaded folder.
  2. Open Terminal in that folder.
  3. Run make setup.

On Windows

  1. Unzip the downloaded folder.
  2. Open PowerShell in that folder.
  3. Run Set-ExecutionPolicy -Scope Process Bypass.
  4. Run .\cfo.ps1 setup.
03

Run the safe demo

The demo has made-up names and numbers. It proves the reports work before you add a business file.

make demo

On Windows, run .\cfo.ps1 demo.

Open reports, then open the dated folder and weekly-cfo-pack.html.

04

Add copies of your finance files

FileFolder
QuickBooks exportsdata/inbox/quickbooks
Stripe exportsdata/inbox/stripe
Shopify exportsdata/inbox/shopify
Bank statementsdata/inbox/bank
Card statementsdata/inbox/card
Payroll filesdata/inbox/payroll
Budgetsdata/inbox/budget

Run cfoctl source list. It tells you what it found.

05

Build the Weekly CFO Pack

cfoctl ingest
cfoctl cfo-pack

The dated report folder includes:

  • A web report and Excel report
  • A 13-week cash forecast
  • Revenue and margin movement
  • Collections and bill priorities
  • Budget differences
  • Close and control concerns
  • A decision list and evidence index
06

Review the pack with a person

  1. Read the limitations first.
  2. Check that the source dates are fresh enough.
  3. Follow important amounts to the evidence index.
  4. Check each assumption.
  5. Give each decision a person and next step.
The toolkit cannot act on your money.

It cannot post a journal, pay a bill, send an invoice, move money, file a tax return, close a period, or approve spending.

07

Connect an API only if you want to

File exports are enough for the full core workflow. If you selected an API, run cfoctl credential configure stripe (or the source name). Your values stay hidden in your computer's password store. If that is not available, setup creates a private.env.local fallback.

  • Stripe uses a restricted read key.
  • Shopify uses a merchant-owned app with read scopes.
  • QuickBooks is advanced and needs your own Intuit app and HTTPS callback.

Run cfoctl source test stripe (or the source name) before a sync.