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
swingtix-bookkeeper-0.0.6.tar.gz
(26.0 kB
view details)
File details
Details for the file swingtix-bookkeeper-0.0.6.tar.gz.
File metadata
- Download URL: swingtix-bookkeeper-0.0.6.tar.gz
- Upload date:
- Size: 26.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d875f3ae4a5e2bcb4c9ec16ea052106d0dc6eaf55781b04252b5df8777f58c48
|
|
| MD5 |
9b70e3dba0e2a3fc135dc4bafd19e1f1
|
|
| BLAKE2b-256 |
a3c243fb0c50c7acc28e9ebc51b2bab057ac3def24a8ef6f88236a1e54b262bb
|