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.1.tar.gz (8.4 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.1-py3-none-any.whl (8.5 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for django_coasc-0.1.1.tar.gz
Algorithm Hash digest
SHA256 3a94a036831b818999a6ae3dbb2be1d1c0a49a968a76aea584e6633acd010f13
MD5 ad813edf1d180fbc20dfbf8a6cdd1007
BLAKE2b-256 2faf3fc22114173e227286c7cbc6346bc7056ddb362cdb68b843bd3a511797d6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for django_coasc-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 9e600467e00d3f49f2d615f9588fa77f8c0bdbbbfa717dd59709a857c2564c36
MD5 8b9c873eba2ab3f02d71b30f553a71b5
BLAKE2b-256 672caf732a9decaaf201f03f1c7155756d4c768f6292fdf547d526bb91c74e2b

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