Skip to content

KhataOS KhataOS

Open source accounting that works offline.

Download KhataOS Visit the website

KhataOS documentation

KhataOS is free, open source accounting software. It works offline, keeps your books on your own computer, is built for the keyboard, and many of its shortcuts work the same way as in TallyPrime. It handles GST in India, VAT and ZATCA e-invoicing in the UAE and Saudi Arabia, and UK Making Tax Digital, and runs on Windows, macOS, Linux and Android. This page lists all the documentation.

KhataOS home screen with the company summary and the keyboard menu

For people using KhataOS

The user guide has short pages, one for each task, with the exact keys:

Testers: start with the tester guide.

Country reference

Detailed notes on each compliance pack: the rules, the sources behind them, what was tested and what is still open.

Country Docs
India GST returns · TDS and TCS · Schedule III · e-Invoice and e-way bill
UAE UAE VAT
Saudi Arabia KSA VAT and ZATCA
Singapore Singapore GST
UK UK VAT and MTD
Germany Germany
France France
Netherlands Netherlands
Spain Spain
US US sales tax
Mexico Mexico CFDI
E-invoicing EN 16931 · Peppol

Features in depth

For developers and contributors

Research

Background studies in docs/research/. They are planning inputs, written at a point in time, and may lag the code. What they say about other products, including prices and user opinions, is as found on the research date and quoted from the sources linked in each study; check the vendor's own site for current details.

Trademarks

"Tally", "TallyPrime" and "Tally.ERP 9" are trademarks of Tally Solutions Pvt. Ltd. KhataOS is an independent project, not affiliated with, endorsed by or sponsored by Tally Solutions. The names are used only to describe compatibility, such as the key map and data import. Other product and authority names belong to their owners.

The docs site

The docs are published with MkDocs and the Material theme, under /docs/ of the KhataOS website. The configuration is mkdocs.yml at the repository root. The website itself (the home page, the download page and the themes gallery) is plain HTML in website/. .github/workflows/docs.yml builds both on every push to main that touches them, and on pull requests: MkDocs goes into docs/ of the Pages artifact, and website/ is copied to its root.

Publishing is off until a maintainer enables it in the repository settings:

  1. Settings → Pages → Build and deployment → Source: GitHub Actions.
  2. Settings → Secrets and variables → Actions → Variables: add DOCS_PAGES with the value true.

The next push to main then deploys the site to GitHub Pages. Until then the workflow only checks that the site builds.

To preview locally:

python3 -m venv .venv
.venv/bin/pip install mkdocs-material==9.5.49
.venv/bin/mkdocs serve

Then open http://127.0.0.1:8000/khataos/docs/. Links to source files outside docs/ work on GitHub but not on the site.

To preview the whole site as GitHub Pages serves it, with the website at the root and the docs under /docs/:

.venv/bin/mkdocs build --strict
cp -R website/. site/
mkdir -p /tmp/pages && rm -rf /tmp/pages/khataos && cp -R site /tmp/pages/khataos
python3 -m http.server -d /tmp/pages 8000

Then open http://127.0.0.1:8000/khataos/.