Skip to main content
A practice runs many company files, so you can register them by name and then say which one you mean. Registration is optional. With nothing registered, every tool works against whichever file QuickBooks has open, and a bookkeeper with one client never needs more than that.

Setting up a new install

Open the Setup Center from Start Menu → Zeno → Zeno for QuickBooks Desktop, or ask your chat client to set up your company files. Follow the company setup walkthrough to authorize, mirror, and test each file. Nobody types paths. qb_discover_companies reads QuickBooks’ own record of files it has opened, plus the standard company-file folders, and comes back with what’s on the machine. It opens no company file and doesn’t need QuickBooks running. The names it suggests are guesses from filenames. Confirm them before registering.

Registering from the open file

Discovery’s names and paths are guesses. The reliable route is to let QuickBooks supply them:
  1. Open a client in QuickBooks.
  2. Ask the agent to register the open company. It calls qb_register_open_company, which takes the company name and path as QuickBooks reports them.
  3. Repeat for each client.
The name stored this way is the one QuickBooks will report later, and that name is what rules, notes, and journal entries are keyed to. qb_list_companies shows what the workstation knows about. qb_forget_company removes a name and touches nothing else — not the file, not the rules, not the journal.

Know when QuickBooks must be visible

Registering a company names a file. Permission decides how it can be reached.
With always allow permission, Zeno can open a registered file invisibly for reads, QuickBooks reports, and qb_sync_mirror. That is what lets mirrors refresh without walking through every company window. Writes follow a stricter boundary. The target company must be visibly open in QuickBooks, and it must match the registered file. Zeno never uses closed-file access to post, modify, void, delete, pay, or receive anything. Naming a company that isn’t the open one fails before anything happens, and says which file to switch to:
Switch the file in QuickBooks and run the write again. Leave the company unnamed to work on whatever is visibly open.

Asking across every client at once

The local copy has no such limit. Once a company has been synced, it can be queried with QuickBooks closed, with a different client open, or alongside every other synced company. A question spanning the whole practice — which clients are behind on vendor payments, what every file spent with the same insurer — is one query against the mirrors, not an afternoon of opening files. Your first questions walks it, including the eleven-client ceiling on a single query.

Several bookkeepers, one set of books

Everything above is per workstation: the registered companies, the rules, the notes, the history. If your team works the same company files from several desks, point them all at one folder on the server and they share all of it — including duplicate detection, so a bill one bookkeeper posted comes back as already posted for the next. See one journal for a whole team.

What registering adds

  • A stable key for coding rules, knowledge, and playbooks, so they attach to a client rather than to whatever was open.
  • A local copy per company, and the cross-client questions above.
  • Run journal entries scoped to the right client.

Where the list lives

The registry is stored with the run journal in %LOCALAPPDATA%\Zeno\qb-mcp\, not in appsettings.json. That file sits next to the program and is replaced when you upgrade, which would silently lose the client list. A firm that deploys configuration centrally can still set QuickBooks:Companies in appsettings.json, and those entries win.

Reviewing them

The console’s Company files page lists what this workstation knows about, and the company picker in its sidebar scopes every other page to one client.