Skip to main content
Help us improve Python packaging – donate today!

Fig's accountancy tool

Project Description

Management of accountancy in command line.
- Double entry accounting
- Allows you to register entries in CSV format (via spreadsheet)
- Manages repetitive patterns
- Reads HSBC statements and transforms them into bookkeeping entries
- Generates Journal, General Ledger, Balance sheet and Income statements
- Closes the year and retrieves the entries to open the new year
- Understands French corporate taxes and social contributions
- Reads calendar delivery entries for consulting company in order to:
- generate PDF bill from latex template
- enter billing in accounts
- Localized in French and English (to be improved)

- Initialize system for a new entity (company, personal accounts...):
python facct/init_year.py -o company_name_or_alias -c
#Note that the accountancy will initialize for the current year.

- Initialize the accounts for a new year:
python facct/init_year.py -o company_name_or_alias -y 2014

- Generate a bill for February 2013:
python facct/bill/gen_tex.py 022013.csv -o titu
#If the file does not exists, it will generate 022013.csv in
${bills}/022013.csv with all the work days filled in to 1.
If you want to change values replace 1 by 0 to indicate off days or
to change by something other than an integer 0.75, you will to
relaunch the command to generate the PDF bill.

- Configuration file:
The facct configuration file is located in ~/.facct.rc, it's a simple
INI file, feel free to change some locations if you want.
You should also change values for the following files located in $data:
- contracts.csv : some basic info about contracts
- bank_accounts.csv: bank account details
- clients.csv : client details
- company.csv : company (or personal) details, the minimum needed.

- To regenerate accountancy after some modifications (new bill, new expense):
python facct/generate_all.py -o titu -d $accounts/<year>

- To modify some entries, you can change the input file:
./accounts/<year>/journal.ori.csv
# You can use some templates such as those you can find for example in
the file <path_to_app>/facct/bench/accounts/<one_year>/journal.ori.csv.

- Developer feature:
You can launch some benchmarks with:
./scripts/bench.sh

- Workflow:
journal.ori.csv
|
|-------<---- [bills/<year>/except.txt]
|
V
journal_tmpl.csv
|
|
V
(unroll templates)
V
|
|-------<---- [hsbc/*.csv]
|
V
<year>.csv <-- journal
|
|
V
<year>.gl.csv <-- General Ledger
/ \
/ \
| |
V V
Balance Income statements



Example:

>>> import bench
>>> bench.main('corp_ref', False)
[OK] corp_ref 2014 init_year.
[OK] corp_ref 2014 already exists.
[OK] corp_ref 2016 init_year.
[OK] corp_ref 2016 already exists.
[OK] corp_ref 2010 account: no differences with benchmark
[OK] corp_ref 2011 account: no differences with benchmark
[OK] corp_ref 2012 account: no differences with benchmark
[OK] corp_ref 2013 account: no differences with benchmark
[OK] corp_ref 022013 bill.
[OK] corp_ref db.

You can also launch doctest with:
python facct/__init__.py -v

And distribution packaging with:
python setup.py sdist

More information on the distributable:
python setup.py --help
python setup.py --author
python setup.py --long-description
... and so forth

Release history Release notifications

This version
History Node

0.1.6

History Node

0.1.5

History Node

0.1.4

History Node

0.1.3

History Node

0.1.2

History Node

0.1.1

Download files

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

Filename, size & hash SHA256 hash help File type Python version Upload date
facct-0.1.6.tar.gz (330.9 kB) Copy SHA256 hash SHA256 Source None Jan 8, 2018

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging CloudAMQP CloudAMQP RabbitMQ AWS AWS Cloud computing Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page