Metadata-Version: 2.3
Name: django-enhanced-subscriptions
Version: 1.0.0
Summary: This Django library provides a comprehensive solution for managing subscriptions, feature access and wallet functionality
Project-URL: Homepage, https://github.com/joemash/django_enhanced_subscriptions
Author-email: Josephat Macharia <josemash4@gmail.com>
License: MIT
License-File: AUTHORS.rst
License-File: LICENCE
Classifier: Environment :: Web Environment
Classifier: Framework :: Django
Classifier: Framework :: Django :: 5.0
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Topic :: Internet :: WWW/HTTP
Requires-Python: >=3.8
Requires-Dist: django>=5.0.6
Provides-Extra: test
Requires-Dist: black; extra == 'test'
Requires-Dist: coverage; extra == 'test'
Requires-Dist: flake8; extra == 'test'
Requires-Dist: isort; extra == 'test'
Requires-Dist: model-bakery>=1.18.1; extra == 'test'
Requires-Dist: pytest-cov; extra == 'test'
Requires-Dist: pytest-django>=4.8.0; extra == 'test'
Requires-Dist: pytest>=8.2.1; extra == 'test'
Requires-Dist: tox; extra == 'test'
Description-Content-Type: text/x-rst

About
-----
This Django library provides a comprehensive solution for managing 
subscriptions, feature access and wallet functionality

Features
--------
+ Associates features with subscription plans and define limits
+ Manage a user wallet for managing subscription payments, refunds and credits
+ Records all wallet transactions including subscription payments, cancellation and refunds
+ Capture details for a subscription plan
+ Define cost and frequency of billing for a plan
+ Associates user's to specific subscriptions
+ Define feature that can be included in subscription plans
+ Define pricing tiers for features with tiered pricing
+ Tracks usage of features by subscribed users

Installation
------------

1. Install package

.. code-block:: python

   pip install django-enhanced-subcriptions


2. Add "django-enhanced-subcriptions" to your ``INSTALLED_APPS`` setting:

   .. code-block:: python

      INSTALLED_APPS = [
          ...
          'django-enhanced-subcriptions',
      ]

3. Run migrations:

   .. code-block:: python

      python manage.py migrate

4. Override the below config in ``settings.py`` 

   .. code-block:: python

      SUBSCRIPTION = {
        "CACHE_TIMEOUT_SECONDS":  60,
        "BASE_RETRY_DELAY_SECONDS": 300,
        "FIXED_INTERVAL_DELAY": 3600,
        "MAX_RETRY_ATTEMPTS": 3,
        "CACHE_TIMEOUT_MINUTES": 5,
        "GRACE_PERIOD_DAYS": 1,
        "ENABLE_ADMIN": True, 
      }

Documentation
-------------

`https://django-enhanced-subscriptions.readthedocs.io/en/latest/index.html`
