A double-entry bookkeeping module for django
Project description
A double-entry bookkeeping system originally developed for SwingTix.
Hello, World
You’ll need a django project. If you don’t have one handy, you can make an empty one following the first steps of the django tutorial. Afterwards, edit <yourproject>/settings.py to add “swingtix.bookkeeper” to INSTALLED_APPS and run:
$ python manage.py syncdb
Then you’re ready to start exploring using the shell:
$ python manage.py shell
First, let’s create a couple of accounts:
>>> from swingtix.bookkeeper.models import BookSet, Account >>> book = BookSet(description="my book") >>> book.save() >>> revenue = Account(bookset=book, name="revenue", positive_credit=True) >>> revenue.save() >>> bank = Account(bookset=book, name="bank", positive_credit=False) >>> bank.save() >>> expense = Account(bookset=book, name="expense", positive_credit=False) >>> expense.save()
Then you can use them:
>>> book = BookSet.objects.get(description="my book")
>>> revenue = book.get_account("revenue")
>>> bank = book.get_account("bank")
>>> expense = book.get_account("expense")
#Someone pays you can advance. Yay!
>>> bank.debit(120.00, revenue, "our first sale")
(<AccountEntry: 120 >, <AccountEntry: -120 >)
#but now you have to do some work. The local coffee shop has free wifi..
>>> bank.credit(2.20, expense, "coffee")
(<AccountEntry: -2 >, <AccountEntry: 2 >)
>>> bank.balance()
Decimal('117.80')
>>> expense.balance()
Decimal('2.20')
>>> revenue.balance()
Decimal('120.00')
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
File details
Details for the file swingtix-bookkeeper-0.0.1.1.tar.gz.
File metadata
- Download URL: swingtix-bookkeeper-0.0.1.1.tar.gz
- Upload date:
- Size: 26.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4968faee0711ceffcddc7be6ae6f71c60b29454b720aef656035078e1e70d68d
|
|
| MD5 |
6d042ec0cc5717c93d3d85ac6e816810
|
|
| BLAKE2b-256 |
0a6b580d87a3857930c024b2bde847eaadc65fb1c6013a4133512e794a2c6640
|