Skip to main content

A reusable Django app that allows you to enter salary data of your employees so that authorized persons can view, print and export (PDF) their payslips.

Project description

A reusable Django app that allows you to enter salary data of your employees so that authorized persons can view, print and export (PDF) their payslips.


You need to install the following prerequisites in order to use this app:

pip install Django
pip install django-libs
pip install python-dateutil
pip install WeasyPrint

If you want to install the latest stable release from PyPi:

$ pip install django-payslip

If you feel adventurous and want to install the latest commit from GitHub:

$ pip install -e git://

Add payslip to your INSTALLED_APPS:


Hook this app into your

urlpatterns = patterns('',
    url(r'^payslip/', include('payslip.urls')),

Features & Usage

You can:

  • Define companies
  • Assign employees (a user model is created automatically)
  • Define payment types
  • Create payments
  • Create custom extra fields for COMPANIES, EMPLOYEES and PAYMENTS
  • Create global attributes for those custom fields (dropdown fields)
  • Generate custom payslips
  • Print those payslips or export them as styled PDF documents

There’s already a print-ready template for your payslips, which should cover mainly used payslips. If you want to you can override the template with your own styles. Find it here payslip/templates/payslip/payslip.html.

You can also create your own CSS, but be sure to cover print styles. Find it here static/payslip/css/payslip.css.

After you have added the basic company information needed in your template, you can add payments and employees and start paysliping. :) Have fun with it.



Default: ‘EUR’

Your preferred currency acronym.


If you want to contribute to this project, please perform the following steps:

# Fork this repository
# Clone your fork
$ mkvirtualenv -p python2.7 payslip
$ pip install -r requirements.txt
$ ./payslip/tests/
# You should get no failing tests

$ git co -b feature_branch master
# Implement your feature and tests
# Describe your change in the CHANGELOG.txt
$ git add . && git commit
$ git push origin feature_branch
# Send us a pull request for your feature branch

Whenever you run the tests a coverage output will be generated in tests/coverage/index.html. When adding new features, please make sure that you keep the coverage at 100%.

If you are making changes that need to be tested in a browser (i.e. to the CSS or JS files), you might want to setup a Django project, follow the installation instructions above, then run python develop. This will just place an egg-link to your cloned fork in your project’s virtualenv.


  • Add employee and manager dashboards

Check the issue tracker on github for further milestones and features to come.

Project details

Download files

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

Files for django-payslip, version 0.3.2
Filename, size File type Python version Upload date Hashes
Filename, size django-payslip-0.3.2.tar.gz (25.1 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page