From 4920026ba70f079b8552b29f433a223c7937f8b7 Mon Sep 17 00:00:00 2001 From: Dominik George <dominik.george@teckids.org> Date: Wed, 9 Mar 2022 21:41:10 +0100 Subject: [PATCH] Add SEPA payment methods --- aleksis/apps/tezor/apps.py | 11 +++++++++++ aleksis/apps/tezor/preferences.py | 33 +++++++++++++++++++++++++++++++ pyproject.toml | 1 + 3 files changed, 45 insertions(+) diff --git a/aleksis/apps/tezor/apps.py b/aleksis/apps/tezor/apps.py index a5af98e..e2418d2 100644 --- a/aleksis/apps/tezor/apps.py +++ b/aleksis/apps/tezor/apps.py @@ -49,4 +49,15 @@ class DefaultConfig(AppConfig): "endpoint": "https://api.paypal.com", }) + if prefs["payments__pledge_enabled"]: + variants["paypal"] = ("djp_sepa.PaymentPledgeProvider", { + }) + + + if prefs["payments__sdd_creditor_identifier"]: + variants["paypal"] = ("djp_sepa.DirectDebitProvider", { + "creditor": prefs["payments__sdd_creditor"], + "creditor_identifier": prefs["payments__sdd_creditor_identifier"], + }) + return variants diff --git a/aleksis/apps/tezor/preferences.py b/aleksis/apps/tezor/preferences.py index adf2b29..9cf7797 100644 --- a/aleksis/apps/tezor/preferences.py +++ b/aleksis/apps/tezor/preferences.py @@ -72,3 +72,36 @@ class PaypalCapture(BooleanPreference): verbose_name = _("PayPal - Use Authorize & Capture") default = False required = False + + +@site_preferences_registry.register +class EnablePledge(BooleanPreference): + """Payment pledge payment backend - enable or not.""" + + section = payments + name = "pledge_enabled" + verbose_name = _("Enabledp ledged payments") + default = False + required = False + + +@site_preferences_registry.register +class SDDCreditor(StringPreference): + """SEPA direct debit backend - creditor name.""" + + section = payments + name = "sdd_creditor" + verbose_name = _("SEPA Direct Debit - Creditor name") + default = "" + required = False + + +@site_preferences_registry.register +class SDDCreditorIdentifier(StringPreference): + """SEPA direct debit backend - creditor identifier.""" + + section = payments + name = "sdd_creditor_identifier" + verbose_name = _("SEPA Direct Debit - Creditor identifier") + default = "" + required = False diff --git a/pyproject.toml b/pyproject.toml index b57f3a3..9010b7c 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -33,6 +33,7 @@ python = "^3.9" aleksis-core = "^2.7" django-payments = "^0.15.0" pycountry = "22.1.10" +django-payments-sepa = "^1.0.dev0" [tool.poetry.dev-dependencies] aleksis-builddeps = "*" -- GitLab