quints¶
Plain-text accounting for Swiss micro-companies — GmbH, AG, or Einzelfirma — on top of beancount and Fava.
Swiss VAT (MWST) returns under the effective or the Saldosteuersatz method, the registration threshold, Bezugsteuer, QR-bill invoicing, statutory KMU statements, official BAZG FX rates. The things a Swiss micro-company actually has to do, from its first invoice before it is VAT-registered to its last return, on a ledger you own as text.
quints is deterministic and machine-readable by design, so an AI coding
agent (Claude Code, Codex, …) can drive it: the agent proposes bookings,
quints checks and reports. It never calls a model itself. See
Working with AI agents.
Install¶
Python 3.11+ (uv installs it if missing). Typst — for the PDFs — comes bundled. Nothing else to install.
Sixty seconds¶
quints init my-books --samples --yes # drop --yes to answer the questionnaire
cd my-books
quints check
quints vat report -p 2026-Q3
That's a runnable project with a sample quarter booked and a VAT return on screen. Getting started walks through a real setup: the legal form, whether you are VAT-registered, and the VAT method.

By the job¶
| You need to | Run | Guide |
|---|---|---|
| Know whether you must register for VAT | quints vat liability |
Register, switch method, deregister |
| File a VAT return | quints vat report -p 2026-Q3 |
File your VAT return |
| Record a registration, method switch or deregistration | quints.toml → [entity], [[vat.change]] |
Register, switch method, deregister |
| See who owes you | quints receivables |
Invoicing |
| See what you owe | quints payables |
Import statements |
| Send a QR-bill invoice | quints invoice <invoice.yaml> |
Invoicing |
| Check an IBAN and its BIC | quints iban |
Invoicing |
| Pick QRR or SCOR for your QR-bills | issuer.yaml → bank.<CCY> |
Payment references |
| Book bank/PSP activity | quints import ubs <statement.mt940> |
Import statements |
| Year-end statements | quints report statements --year 2026 |
Statutory reports |
| Close the year | quints close check --year 2026 |
Close the year |
| Keep FX rates right | quints prices sync |
FX rates |
Every command in these docs is executed by the test suite against the shipped example project. If a documented command breaks, CI fails before you see it. Every legal rule a page relies on is footnoted to its source — the article in the law, the ESTV publication, the standard — so you can check it applies to you.
quints is not tax or legal advice, and it comes without warranty (GPL-2.0, sections 11–12). You, or your Treuhänder, stay responsible for what you file and sign.
The building blocks¶
quints is assembled from standalone PyPI distributions —
quints,
beangulp-mt940,
beangulp-yapeal,
beangulp-wise,
beangulp-stripe,
beanprice-bazg — each usable on
its own in any beancount setup. Installing quints pulls them all in. Source:
github.com/sealambda/quints.