This builds upon the subscription and recurrent billing from django-flexible-subscriptions with supported payment vendors, such as Venmo.
- Integrates out-of-the-box payment processing for django-flexible-subscriptions.
- NOTE: Currently, only Venmo is supported.
- Automatically update Google Contact Group based on subscription status (new or expired)
- Add
payablesubs
(andsubscriptions
) to yourINSTALLED_APPS
setting like this:
INSTALLED_APPS = [
...
'subscriptions',
'payablesubs',
]
- Inject
payablesubs
custom manager class by adding this in settings file:
DFS_MANAGER_CLASS = "payablesubs.management.commands._payable_manager.PayableManager"
- Include the polls URLconf in your project
urls.py
like this:
path('subscriptions/', include('subscriptions.urls')),
-
Run
python manage.py migrate
to create the models. -
Start the development server and visit http://127.0.0.1:8000/subscriptions/dfs/subscriptions to view the subscriptions dashboard. NOTE: You need to create and login with a superuser account.
See django-flexible-subscription documentation for more details.
-
Create your Venmo access token following these instructions. Save the token to a file:
.credentials/venmo.token
-
Automate sending and processing payments by calling
$> python manage.py process_subscriptions
The following can be set either directly in your settings file, or via environment properties
PAYABLESUBS_BILLING_ENABLED
: if disabled, payment requests will not be sent. Helpful for testing.PAYABLESUBS_DRY_RUN
: processes subscriptions, but doesn't persistBill
s or send payment requests. Helpful for testing.PAYABLESUBS_GOOGLE_CONTACT_LABEL
: The Google contact group label associated with active subscriptions. If not set, Google integration is disabled.- if enabled, ensure
.credentials/credentials.json
exists. See Google People Python Quickstart
- if enabled, ensure