Skip to main content

A Django app for managing referral programs, promoters, referrals, and tracking referral performance with advanced features like commission setting, invitation management, and Wise payouts.

Project description

django-referral-system

Documentation Status PyPI version License Python Versions Coverage Status

A Django app for managing referral programs, promoters, referrals, and tracking referral performance with features like commission setting, invitation management, and Wise payouts.

Documentation

Full documentation is available at Read the Docs.

Features

  • Promoter Management: Easily create and manage promoters who can invite referrals to join your platform.
  • Referral Tracking: Promoters can track their list of referrals, including invitation details, sign-up status, and more.
  • Earnings Monitoring: Promoters can view their recent earnings, aggregated by day for the last 7 days, including commissions from successful referrals.
  • Commission-Based Rewards: Promoters earn money by receiving commissions from referrals they invite, with configurable commission rates based on the active referral program.
  • Customizable Payout Methods: Promoters can set and update their preferred payout methods (e.g., Wise) and minimum withdrawal balances.
  • Wise Payout Integration: Automatically generate CSV files for Wise payouts and process payouts for promoters whose balance meets the minimum withdrawal amount.
  • Email Invitation: Promoters can send invitation emails to potential referrals with a custom HTML template. Ensure that the BASE_REFERRAL_LINK and BASE_EMAIL environment variables are properly set.
  • Refund Handling: Automatically adjust promoter commissions in case of user refunds, ensuring that promoters only earn commissions for completed transactions.
  • Referral Program Flexibility: Only one referral program can be active at a time, allowing for focused and streamlined referral management.
  • Detailed Payout History: Promoters can view their full payout history, providing transparency and easy tracking of payment status.
  • Click Tracking: Keep track of how many times a referral link has been clicked, helping promoters measure the performance of their referral efforts.

Installation

  1. Install the package via pip:
pip install django-referral-system
  1. Add referrals to your INSTALLED_APPS in settings.py:
INSTALLED_APPS = [
    # other apps
    'referrals',
]
  1. Add to urls.py
from django.urls import path, include

urlpatterns = [
    # Other URL patterns...
    path('referrals/', include("referrals.urls")),
]
  1. Apply Migrations
python manage.py migrate
  1. Create a Referral Program
    After installation, you can create a new referral program using the provided management command: If this program is set to active, any previous active referral programs will be deactivated automatically.
python manage.py create_referral_program --name="My Referral Program" --commission-rate=5.00 --min-withdrawal-balance=10.00

License

This package is licensed under the MIT License. See the LICENSE file for more details.

Contributing

If you find any issues or have suggestions, feel free to open an issue or submit a pull request.

To support this project, please give star it on Github. github star

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-referral-system-0.1.3.tar.gz (21.3 kB view details)

Uploaded Source

File details

Details for the file django-referral-system-0.1.3.tar.gz.

File metadata

  • Download URL: django-referral-system-0.1.3.tar.gz
  • Upload date:
  • Size: 21.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.10.12

File hashes

Hashes for django-referral-system-0.1.3.tar.gz
Algorithm Hash digest
SHA256 cbc29aafda90ad099da0fde02cf3c978ec562dff9c8d657374e4007f08936805
MD5 5320baed0318a8868a9f6e003d634450
BLAKE2b-256 80f26431e13ed34995d6765252490d84bd73c8edfa4c3bef07b1d4b9069499f0

See more details on using hashes here.

Supported by

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