Skip to main content

Logo

Cacao Accounting Desktop

Python application

This project packages Cacao Accounting as a desktop application for Windows. The current desktop wrapper uses PySide6 instead of TkInter and starts a local WSGI server with waitress in the background while the user interacts with the application from an embedded Qt WebEngine browser.

Please note that if you are a Linux or Mac user you can host Cacao Accounting for your personal use with a few steps, this project is focused in Windows system that do not have a default install of Python.

Current desktop architecture

The desktop application now separates business rules from the UI:

  1. A pure core layer manages configuration, SQLite directories, URI generation, backup and restore operations.
  2. A PySide6 main window lets the user select the SQLite directory, refresh the database list, create new databases, restore backups and open the web app.
  3. A waitress server is started in the background and stopped cleanly when the desktop window closes.

Run locally

Install dependencies and start the desktop wrapper:

python -m pip install -r requirements.txt
python cacaoaccounting.pyw

Useful validation commands:

python -m build
pytest

Native printing

The print button rendered by Cacao Accounting uses window.print(). The desktop shell handles that request with Qt Print Support, opens the operating system print dialog, and sends the rendered WebEngine page directly to the selected printer. It does not create or open an intermediate PDF file.

Windows bundles must include the PySide6 PrintSupport and WebEngine modules. For confined Linux packages, grant access to the system print service:

  • Snap applications must plug the non-administrative cups interface.
  • Flatpak manifests must include --socket=cups in finish-args.

The printer must already be configured in Windows or CUPS. Printer administration is intentionally outside the desktop application's scope.

Cacao Accounting as stand alone executable for Windows.

Please note that this is not a native Windows application. The desktop wrapper ships Python plus the dependencies required to run the Flask-based web app as a local desktop experience, now with a native Qt shell and an embedded browser.

Note than been usable as standalone Windows app is one of the main reason beging the development of the Cacao Accounting project.

Create a Windows executable

Several steps are necessary to create a windows executable:

  1. Download WinPython 3.8.10, this contain a portable version of python suitable to run Cacao Accounting as a desktop app.
Please note that there is no formal requirement on the Python version,
Python 3.8.10 is taken as the base because it is the last stable version
to support Windows 7.

Support for Windows 7 ended on January 14, 2020, however some people may
find it useful to be able to run Cacao Accounting on Windows 7 (it is up
to the user to use a version of their operating system without manufacturer
support, updating the operating system version is highly recommended).

The 32-bit version must be functional but it is recommended to at least
use a Core i3 processor or higher, which are 64-bit processors.

It is possible that future versions of this project will update to a more
recent version of python.
  1. Uncompress WinPython 3.8.10, this will create a directory name WPy64-38100 and inside this directory a copy of Python portable named python-3.8.10.amd64

  2. Copy the content of python-3.8.10.amd64 to the pydist in the same directory that the script cacaoaccounting.pyw, your working directory should be like this:

work-dir:
 |-assets
 |-cacaoaccounting.pyw
 |-LICENSE
 |-pydist
  |-python.exe
  |-[support files to the python portable enviroment]
 |-README.md
 |-requirements.txt
 |-setup.nsi
  1. Install requirements inside the python portable enviroment with:
pydist\python.exe -m pip install -r requirements.txt
  1. Ensure the python portable enviroment can run the scritp with:

pydist\python.exe cacaoaccounting.pyw

  1. Generate a Windows executable with:
python -m pip install gen-exe
gen-exe --hide-console cacaoaccounting.exe "{EXE_DIR}\\pydist\\python.exe cacaoaccounting.pyw" --icon-file assets/icon.ico

Your working directory now will have a Windows executable:

work-dir:
 |-assets
 |-cacaoaccounting.pyw
 |-cacaoaccounting.exe
 |-LICENSE
 |-pydist
  |-python.exe
  |-[support files to the python portable enviroment]
 |-README.md
 |-requirements.txt
 |-setup.nsi

Doble click on the executable to verify it works.

  1. Create a Windows installer with nsis using the setup.nsi, this will create a installer that can be shared to final users.
Please consider that .exe installers, unlike .msi installers, may represent a danger
to your computer by containing malicious software or performing actions not authorized
by the user. For this reason, we recommend only using .exe installers obtained from
reliable sources. Since Cacao Accounting Desktop is distributed free of charge, we
recommend that you always download the application from the official Cacao Accounting
website and do not use installers provided by third parties.

To reduce the risk of damage to your computer, the Cacao Accounting installer does not
require administrator permissions and only makes changes to your user folder without
affecting other users on the computer.

Copyright

Copyright 2024 BMO Soluciones, S.A.

BMO Logo

Metadata

Release files for cacao-accounting-desktop 2026.8.24

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for cacao-accounting-desktop 2026.8.24
File Size Uploaded Provenance
cacao_accounting_desktop-2026.8.24.tar.gz 121.4 kB With provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for cacao-accounting-desktop 2026.8.24
File Interpreter ABI Platform
cacao_accounting_desktop-2026.8.24-py3-none-any.whl Python 3 none any Details

Total release size: 238.4 kB

Release files / cacao_accounting_desktop-2026.8.24.tar.gz

Download URL cacao_accounting_desktop-2026.8.24.tar.gz
Size 121.4 kB
Tags Source
SHA-256 checksum
How to use checksums
ac27001a2bfc3fecfc9a98d1b9459f234c2ae6fd4e96080489a39f200b46467b
BLAKE2b-256 checksum
How to use checksums
2531622b36bd0a2fb99b875a094273cbc37603bde7bc0b1cea0c4ee88cb486f6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 24, 2026.

Transparency log

Release files / cacao_accounting_desktop-2026.8.24-py3-none-any.whl

Download URL cacao_accounting_desktop-2026.8.24-py3-none-any.whl
Size 117.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
3307a49c0b8504af6cd9f7e31fbc94379155a92dba92e094cc5a3cf3304965c8
BLAKE2b-256 checksum
How to use checksums
833bd0f3946fd8816437f5bb42ea7bae91ed2aa137a2041bbdcc345aa22f7de0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 24, 2026.

Transparency log

Security for cacao-accounting-desktop 2026.8.24

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for cacao_accounting_desktop-2026.8.24.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 24, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page