Reusable django app to receive & track donations on charitable sites
Install Django Donations:
pip install django-donations
Add it to your INSTALLED_APPS:
INSTALLED_APPS = (
Add Django Donations’s URL patterns:
from donations import urls as donations_urls
urlpatterns = [
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']
- 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
Tools used in rendering this package:
- Add on_delete=models.CASCADE on foreign keys for Django 2.0
- Python 3: fix app name as bytes in migrations
- Django 1.11 compatibility
- 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.
- Migrate to Django’s DurationField (#8). You need to upgrade your
DONATION_FREQUENCIES setting. Values should now be python timedelta.
- 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
- Drop support for Django 1.6 and 1.7
- Support Django 1.9
- Prepare Django 1.10
- Add the app config for Django 1.7+
- Some Python 3 compatibilty fixes
- Prepare for Django 1.9 compatibility
- Django 1.8 compatibility
- Fix a few issues with Python 3
- Doc improvements
- Django 1.7 compatibility
- Fix a crash with anonymous donor
- Mostly tests improvements
- 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
- Fix a Unicode crash in models and providers
- Revert erroneous change in setup.py
- Admin improvements
- Installation fixes
- Fix packaging on PyPI
- Docs improvements
- Squash South migrations
- Autoconfig enhancements
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.