Skip to main content

Reusable django app to receive & track donations on charitable sites

Project description

Build Coverage Code Health Updates Python 3 PyPI package

Reusable django app to receive & track donations on charitable sites

Documentation

The full documentation is at https://django-donations.readthedocs.io.

Quickstart

Install Django Donations:

pip install django-donations

Add it to your INSTALLED_APPS:

INSTALLED_APPS = (
    ...
    'donations.apps.DonationsConfig',
    ...
)

Add Django Donations’s URL patterns:

from donations import urls as donations_urls


urlpatterns = [
    ...
    url(r'^', include(donations_urls)),
    ...
]

Just Giving Configuration

The app needs to be configured with your JustGiving API settings:

# Ability to point to Production or Sandbox URLs
JUST_GIVING_WEB_URL = 'http://v3-sandbox.justgiving.com'
JUST_GIVING_API_URL = 'http://api-sandbox.justgiving.com'
# Replace below with your personal details
JUST_GIVING_CHARITY_ID = '123456'
JUST_GIVING_APP_ID = 'changeme'
# Add a list of all the currencies you need to support
CURRENCIES = ['GBP']

TODO

  • Update the documentation and readme

  • integrate with readthedocs or pythonhosted or both!

  • tests - unit/integration

  • task to periodically verify pending donations

(* dashboard - track/view donations from the business side - kpis etc * views/urls? - provide an api hook into the system (/donations - dashboard))

v2 and beyond

  • (other providers (paypal etc))

  • tasks.py - recurring donation handling - this is not possible right now as SDI is not an API to be automated

Supported Providers

  • Just Giving SDI

Credits

Tools used in rendering this package:

History

0.7.0 (2017-09-26)

  • Add on_delete=models.CASCADE on foreign keys in migrations

  • Migrate URL confs to Django 2.0 syntax

  • Use django-compat for importing reverse

0.6.2 (2017-06-09)

  • Add on_delete=models.CASCADE on foreign keys for Django 2.0

0.6.1 (2017-06-08)

  • Python 3: fix app name as bytes in migrations

  • Django 1.11 compatibility

0.6.0 (2017-01-30)

  • Clean-up references to django-timedeltafield (#9). This required to squash the existing migrations. Make sure that you migrated to 0.5.0 first and applied all migrations everywhere.

  • Fix test setup. Now Django 1.10 is officially supported.

0.5.0 (2017-01-27)

  • Migrate to Django’s DurationField (#8). You need to upgrade your DONATION_FREQUENCIES setting. Values should now be python timedelta.

0.4.0 (2017-01-27)

  • Fix bug with urllib import on Python 3 #4

  • Remove dependency on django-autoconfig

  • Regenerate with cookie cutter for Django standalone app, resulting in: * Cleanup a few unused files * Remove the example project which isn’t kept up to date * Add a changelog * Switch testing to use tox * Switch from coveralls to codecov.io

  • Test views

0.3.0 (2016-10-20)

  • Drop support for Django 1.6 and 1.7

  • Support Django 1.9

  • Prepare Django 1.10

0.2.7 (2015-12-17)

  • Add the app config for Django 1.7+

0.2.6 (2015-12-07)

  • Some Python 3 compatibilty fixes

  • Prepare for Django 1.9 compatibility

0.2.5 (2015-11-23)

  • Django 1.8 compatibility

  • Fix a few issues with Python 3

0.2.4 (2015-11-12)

  • Doc improvements

  • Django 1.7 compatibility

0.2.3 (2015-10-23)

  • Fix a crash with anonymous donor

0.2.2 (2015-10-22)

  • Mostly tests improvements

0.2.0 (2015-10-19)

  • Fix various unicode crashes

  • Fix that prevented the server from starting when config was being loaded before the tables were created.

  • Capture Donor name from JustGiving

0.1.3 (2016-10-16)

  • Fix a Unicode crash in models and providers

  • Revert erroneous change in setup.py

0.1.2 (2015-10-16)

  • Admin improvements

  • Installation fixes

0.1.1 (2015-10-13)

  • Fix packaging on PyPI

  • Docs improvements

0.0.2 (2015-10-12)

  • Squash South migrations

  • Autoconfig enhancements

0.0.1 (2015-10-12)

  • First release on PyPI.

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-donations-0.7.0.tar.gz (17.8 kB view details)

Uploaded Source

Built Distribution

django_donations-0.7.0-py2.py3-none-any.whl (21.6 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file django-donations-0.7.0.tar.gz.

File metadata

File hashes

Hashes for django-donations-0.7.0.tar.gz
Algorithm Hash digest
SHA256 25cc6bf73a0996918f81fdb1e89dac5ceca5f2d644864ca6744eee7cddb05d18
MD5 b9e73285b5613bf2b840c655d9917104
BLAKE2b-256 f5ea1b461414c9d5a9cec1b2c8dee8bc1508096a4be151eb5118a1e611853f3c

See more details on using hashes here.

File details

Details for the file django_donations-0.7.0-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for django_donations-0.7.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 f1cc3cc56f2d46bba06a955104b63e4850002fc98d48280d933ceacc9d39b428
MD5 ab71b988bcbc09dfd58358414f1ec5a1
BLAKE2b-256 d8937cc04d093d31db1a2c11e4e9e8ffa0bc9c9d736d6a31447e740db3f93708

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page