Skip to main content

Django application providing a solid foundation for double-entry bookkeeping systems

Project description

Django-coasc

Double entry bookkeeping in Django. Inspired by Django-hordak and gnucash

Django-coasc provides a model layer for a double-entry accounting system, primarily aimed at cooperative organizations but suitable for various accounting needs.

The goal

A simple and well tested core to build double entry system accounting apps upon.

Interface built upon Django-coasc:

COASV Accounting app for Cooperatives

Using Django-coasc in your project

Install with uv

uv add django-coasc

Install Django-coasc using pip:

pip install django-coasc

Add coasc to your INSTALLED_APPS in Django settings:

INSTALLED_APPS = [
    # ...
    'coasc',
    # ...
]

Run migrations:

# If using standard Python
python manage.py migrate coasc

# If using uv
uv run ./manage.py migrate coasc

Features

  • Double-entry bookkeeping - Each transaction must have balanced debits and credits
  • Hierarchical accounts - Support for parent and child account relationships
  • Multiple account types - Assets, Liabilities, Income, and Expenses
  • Transaction validation - Ensures accounting integrity
  • Balance calculation - Methods to calculate account balances with optional date filters
  • Revertible transactions - Built-in support for reverting transactions

Core Components

  • Member: Represents individuals or entities associated with accounts
  • Ac (Account): The core entity representing different types of accounts
    • Parent accounts - Group related accounts
    • Child accounts - Belong to a parent account
    • Standalone accounts - Independent accounts
  • Transaction: Represents financial transactions
  • Split: Represents individual debit or credit entries within a transaction

Terminology

COASC: Cooperative Accounting System Core COASV: Cooperative Accounting System View

TODOs

  1. add comments where appropriate
  2. write tests for date filtered bal and total_bal()
  3. modify tests for transaction(renamed date_created to created_at and add tx_date field)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

django_coasc-0.1.2.tar.gz (12.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

django_coasc-0.1.2-py3-none-any.whl (18.9 kB view details)

Uploaded Python 3

File details

Details for the file django_coasc-0.1.2.tar.gz.

File metadata

  • Download URL: django_coasc-0.1.2.tar.gz
  • Upload date:
  • Size: 12.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.6.6

File hashes

Hashes for django_coasc-0.1.2.tar.gz
Algorithm Hash digest
SHA256 8898a5c9512be280652b3ac1bc323adb80072365462fba171577fc8dbef86694
MD5 5e1f16e2b56bd63d7befbf0b236c55c7
BLAKE2b-256 28b898c68c346801ec38422d368e9b8cb3c50b1a69a968cda407a9711e26c763

See more details on using hashes here.

File details

Details for the file django_coasc-0.1.2-py3-none-any.whl.

File metadata

File hashes

Hashes for django_coasc-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 984e7642b90ed76011e437142709d2a7d0be472a1eded6952a15621ff2fc7c8e
MD5 d0039d8a5ce43fff05c1acd104c8b58b
BLAKE2b-256 1d5dd250d654079cf533516bca9f091f1d35a5ae9dc414f2b62303b47a2b62eb

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page