pretix-thepay 9.0.3__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- pretix-thepay-9.0.3/LICENSE +18 -0
- pretix-thepay-9.0.3/MANIFEST.in +4 -0
- pretix-thepay-9.0.3/PKG-INFO +129 -0
- pretix-thepay-9.0.3/README.rst +105 -0
- pretix-thepay-9.0.3/pretix_thepay/__init__.py +15 -0
- pretix-thepay-9.0.3/pretix_thepay/apps.py +40 -0
- pretix-thepay-9.0.3/pretix_thepay/locale/en/LC_MESSAGES/django.po +5 -0
- pretix-thepay-9.0.3/pretix_thepay/payment.py +526 -0
- pretix-thepay-9.0.3/pretix_thepay/pretix_plugin_urls.py +10 -0
- pretix-thepay-9.0.3/pretix_thepay/signals.py +18 -0
- pretix-thepay-9.0.3/pretix_thepay/urls.py +15 -0
- pretix-thepay-9.0.3/pretix_thepay/views.py +246 -0
- pretix-thepay-9.0.3/pretix_thepay.egg-info/PKG-INFO +129 -0
- pretix-thepay-9.0.3/pretix_thepay.egg-info/SOURCES.txt +20 -0
- pretix-thepay-9.0.3/pretix_thepay.egg-info/dependency_links.txt +1 -0
- pretix-thepay-9.0.3/pretix_thepay.egg-info/entry_points.txt +2 -0
- pretix-thepay-9.0.3/pretix_thepay.egg-info/requires.txt +2 -0
- pretix-thepay-9.0.3/pretix_thepay.egg-info/top_level.txt +1 -0
- pretix-thepay-9.0.3/pyproject.toml +61 -0
- pretix-thepay-9.0.3/setup.cfg +22 -0
- pretix-thepay-9.0.3/setup.py +4 -0
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
Apache License
|
|
2
|
+
Version 2.0, January 2004
|
|
3
|
+
http://www.apache.org/licenses/
|
|
4
|
+
|
|
5
|
+
Copyright [yyyy] [name of copyright owner]
|
|
6
|
+
|
|
7
|
+
Licensed under the Apache License, Version 2.0 (the "License");
|
|
8
|
+
you may not use this file except in compliance with the License.
|
|
9
|
+
You may obtain a copy of the License at
|
|
10
|
+
|
|
11
|
+
http://www.apache.org/licenses/LICENSE-2.0
|
|
12
|
+
|
|
13
|
+
Unless required by applicable law or agreed to in writing, software
|
|
14
|
+
distributed under the License is distributed on an "AS IS" BASIS,
|
|
15
|
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
16
|
+
See the License for the specific language governing permissions and
|
|
17
|
+
limitations under the License.
|
|
18
|
+
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
Metadata-Version: 2.1
|
|
2
|
+
Name: pretix-thepay
|
|
3
|
+
Version: 9.0.3
|
|
4
|
+
Summary: The Pay payment provider for Pretix
|
|
5
|
+
Author-email: KrisIsNew <thepay.pretix@krisisnew.xyz>
|
|
6
|
+
Maintainer-email: KrisIsNew <thepay.pretix@krisisnew.xyz>
|
|
7
|
+
License: Apache-2.0
|
|
8
|
+
Project-URL: homepage, https://github.com/krisisnewxyz/pretix-thepay
|
|
9
|
+
Project-URL: repository, https://github.com/krisisnewxyz/pretix-thepay
|
|
10
|
+
Project-URL: documentation, https://github.com/krisisnewxyz/pretix-thepay
|
|
11
|
+
Project-URL: issues, https://github.com/krisisnewxyz/pretix-thepay/issues
|
|
12
|
+
Keywords: pretix,payment,thepay
|
|
13
|
+
Classifier: License :: OSI Approved :: Apache Software License
|
|
14
|
+
Classifier: Development Status :: 4 - Beta
|
|
15
|
+
Classifier: Intended Audience :: Developers
|
|
16
|
+
Classifier: Programming Language :: Python :: 3
|
|
17
|
+
Classifier: Programming Language :: Python :: 3.8
|
|
18
|
+
Classifier: Programming Language :: Python :: 3.9
|
|
19
|
+
Classifier: Programming Language :: Python :: 3.10
|
|
20
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
21
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
22
|
+
Requires-Python: >=3.8
|
|
23
|
+
Description-Content-Type: text/x-rst
|
|
24
|
+
|
|
25
|
+
pretix-thepay
|
|
26
|
+
=============
|
|
27
|
+
|
|
28
|
+
The Pay payment provider plugin for Pretix. It creates payments via The Pay API,
|
|
29
|
+
redirects customers to The Pay, and confirms status by querying The Pay from the
|
|
30
|
+
return and notification callbacks.
|
|
31
|
+
|
|
32
|
+
Features
|
|
33
|
+
--------
|
|
34
|
+
|
|
35
|
+
- The Pay REST API integration (payment creation, status lookup)
|
|
36
|
+
- Redirect-based checkout flow
|
|
37
|
+
- Server-to-server notifications
|
|
38
|
+
- ISO 4217 currency support with correct minor units
|
|
39
|
+
- Demo mode via Test Mode setting
|
|
40
|
+
- Multi-language gateway support (Czech, Slovak, English)
|
|
41
|
+
|
|
42
|
+
Requirements
|
|
43
|
+
------------
|
|
44
|
+
|
|
45
|
+
- Pretix >= 2.7.0
|
|
46
|
+
- Python >= 3.8
|
|
47
|
+
- requests >= 2.25.0
|
|
48
|
+
|
|
49
|
+
Installation
|
|
50
|
+
------------
|
|
51
|
+
|
|
52
|
+
Install from PyPI::
|
|
53
|
+
|
|
54
|
+
pip install pretix-thepay
|
|
55
|
+
|
|
56
|
+
Or install from source::
|
|
57
|
+
|
|
58
|
+
pip install -e /path/to/pretix-thepay
|
|
59
|
+
|
|
60
|
+
Enable the plugin in ``pretix.cfg``::
|
|
61
|
+
|
|
62
|
+
[pretix]
|
|
63
|
+
plugins = pretix_thepay
|
|
64
|
+
|
|
65
|
+
Restart Pretix after enabling the plugin.
|
|
66
|
+
|
|
67
|
+
Configuration
|
|
68
|
+
-------------
|
|
69
|
+
|
|
70
|
+
In the Pretix control panel, enable The Pay and configure:
|
|
71
|
+
|
|
72
|
+
- **Merchant ID**: Your The Pay merchant ID
|
|
73
|
+
- **Project ID**: Your The Pay project ID
|
|
74
|
+
- **API Password**: Your The Pay API password
|
|
75
|
+
- **Language**: Default language for the payment gateway
|
|
76
|
+
- **Test Mode**: Enable to use the demo environment
|
|
77
|
+
|
|
78
|
+
Behavior
|
|
79
|
+
--------
|
|
80
|
+
|
|
81
|
+
1. The customer selects The Pay.
|
|
82
|
+
2. Pretix creates a payment at The Pay and redirects the customer.
|
|
83
|
+
3. The customer completes payment on The Pay.
|
|
84
|
+
4. Pretix confirms the payment by querying The Pay from the return URL and from notifications.
|
|
85
|
+
|
|
86
|
+
Notes
|
|
87
|
+
-----
|
|
88
|
+
|
|
89
|
+
- Test Mode switches the API base URL to the demo environment.
|
|
90
|
+
- The Pay requires a customer name plus email or phone; Pretix order data is used.
|
|
91
|
+
|
|
92
|
+
Troubleshooting
|
|
93
|
+
---------------
|
|
94
|
+
|
|
95
|
+
Payment not created
|
|
96
|
+
^^^^^^^^^^^^^^^^^^^
|
|
97
|
+
|
|
98
|
+
- Verify Merchant ID, Project ID, and API Password
|
|
99
|
+
- Check Pretix logs for The Pay API response details
|
|
100
|
+
- Ensure the customer has a name and email or phone
|
|
101
|
+
|
|
102
|
+
Notification issues
|
|
103
|
+
^^^^^^^^^^^^^^^^^^^
|
|
104
|
+
|
|
105
|
+
- Make sure Pretix is reachable from The Pay (public URL)
|
|
106
|
+
- Confirm the notification URL is accessible and responds quickly
|
|
107
|
+
|
|
108
|
+
Docker
|
|
109
|
+
------
|
|
110
|
+
|
|
111
|
+
For Pretix in Docker::
|
|
112
|
+
|
|
113
|
+
FROM pretix/standalone:stable
|
|
114
|
+
USER root
|
|
115
|
+
RUN pip3 install pretix-thepay
|
|
116
|
+
USER pretixuser
|
|
117
|
+
RUN cd /pretix/src && make production
|
|
118
|
+
|
|
119
|
+
License
|
|
120
|
+
-------
|
|
121
|
+
|
|
122
|
+
Apache Software License 2.0
|
|
123
|
+
|
|
124
|
+
References
|
|
125
|
+
----------
|
|
126
|
+
|
|
127
|
+
- `Pretix Plugin Development Guide <https://docs.pretix.eu/dev/development/api/index.html>`_
|
|
128
|
+
- `The Pay API Documentation <https://docs.thepay.eu/>`_
|
|
129
|
+
- `The Pay OpenAPI Spec <https://gate.thepay.cz/openapi.yaml>`_
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
pretix-thepay
|
|
2
|
+
=============
|
|
3
|
+
|
|
4
|
+
The Pay payment provider plugin for Pretix. It creates payments via The Pay API,
|
|
5
|
+
redirects customers to The Pay, and confirms status by querying The Pay from the
|
|
6
|
+
return and notification callbacks.
|
|
7
|
+
|
|
8
|
+
Features
|
|
9
|
+
--------
|
|
10
|
+
|
|
11
|
+
- The Pay REST API integration (payment creation, status lookup)
|
|
12
|
+
- Redirect-based checkout flow
|
|
13
|
+
- Server-to-server notifications
|
|
14
|
+
- ISO 4217 currency support with correct minor units
|
|
15
|
+
- Demo mode via Test Mode setting
|
|
16
|
+
- Multi-language gateway support (Czech, Slovak, English)
|
|
17
|
+
|
|
18
|
+
Requirements
|
|
19
|
+
------------
|
|
20
|
+
|
|
21
|
+
- Pretix >= 2.7.0
|
|
22
|
+
- Python >= 3.8
|
|
23
|
+
- requests >= 2.25.0
|
|
24
|
+
|
|
25
|
+
Installation
|
|
26
|
+
------------
|
|
27
|
+
|
|
28
|
+
Install from PyPI::
|
|
29
|
+
|
|
30
|
+
pip install pretix-thepay
|
|
31
|
+
|
|
32
|
+
Or install from source::
|
|
33
|
+
|
|
34
|
+
pip install -e /path/to/pretix-thepay
|
|
35
|
+
|
|
36
|
+
Enable the plugin in ``pretix.cfg``::
|
|
37
|
+
|
|
38
|
+
[pretix]
|
|
39
|
+
plugins = pretix_thepay
|
|
40
|
+
|
|
41
|
+
Restart Pretix after enabling the plugin.
|
|
42
|
+
|
|
43
|
+
Configuration
|
|
44
|
+
-------------
|
|
45
|
+
|
|
46
|
+
In the Pretix control panel, enable The Pay and configure:
|
|
47
|
+
|
|
48
|
+
- **Merchant ID**: Your The Pay merchant ID
|
|
49
|
+
- **Project ID**: Your The Pay project ID
|
|
50
|
+
- **API Password**: Your The Pay API password
|
|
51
|
+
- **Language**: Default language for the payment gateway
|
|
52
|
+
- **Test Mode**: Enable to use the demo environment
|
|
53
|
+
|
|
54
|
+
Behavior
|
|
55
|
+
--------
|
|
56
|
+
|
|
57
|
+
1. The customer selects The Pay.
|
|
58
|
+
2. Pretix creates a payment at The Pay and redirects the customer.
|
|
59
|
+
3. The customer completes payment on The Pay.
|
|
60
|
+
4. Pretix confirms the payment by querying The Pay from the return URL and from notifications.
|
|
61
|
+
|
|
62
|
+
Notes
|
|
63
|
+
-----
|
|
64
|
+
|
|
65
|
+
- Test Mode switches the API base URL to the demo environment.
|
|
66
|
+
- The Pay requires a customer name plus email or phone; Pretix order data is used.
|
|
67
|
+
|
|
68
|
+
Troubleshooting
|
|
69
|
+
---------------
|
|
70
|
+
|
|
71
|
+
Payment not created
|
|
72
|
+
^^^^^^^^^^^^^^^^^^^
|
|
73
|
+
|
|
74
|
+
- Verify Merchant ID, Project ID, and API Password
|
|
75
|
+
- Check Pretix logs for The Pay API response details
|
|
76
|
+
- Ensure the customer has a name and email or phone
|
|
77
|
+
|
|
78
|
+
Notification issues
|
|
79
|
+
^^^^^^^^^^^^^^^^^^^
|
|
80
|
+
|
|
81
|
+
- Make sure Pretix is reachable from The Pay (public URL)
|
|
82
|
+
- Confirm the notification URL is accessible and responds quickly
|
|
83
|
+
|
|
84
|
+
Docker
|
|
85
|
+
------
|
|
86
|
+
|
|
87
|
+
For Pretix in Docker::
|
|
88
|
+
|
|
89
|
+
FROM pretix/standalone:stable
|
|
90
|
+
USER root
|
|
91
|
+
RUN pip3 install pretix-thepay
|
|
92
|
+
USER pretixuser
|
|
93
|
+
RUN cd /pretix/src && make production
|
|
94
|
+
|
|
95
|
+
License
|
|
96
|
+
-------
|
|
97
|
+
|
|
98
|
+
Apache Software License 2.0
|
|
99
|
+
|
|
100
|
+
References
|
|
101
|
+
----------
|
|
102
|
+
|
|
103
|
+
- `Pretix Plugin Development Guide <https://docs.pretix.eu/dev/development/api/index.html>`_
|
|
104
|
+
- `The Pay API Documentation <https://docs.thepay.eu/>`_
|
|
105
|
+
- `The Pay OpenAPI Spec <https://gate.thepay.cz/openapi.yaml>`_
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"""
|
|
2
|
+
The Pay payment provider plugin for Pretix.
|
|
3
|
+
|
|
4
|
+
This package provides integration with The Pay payment gateway for Pretix
|
|
5
|
+
event ticketing system.
|
|
6
|
+
"""
|
|
7
|
+
__version__ = '9.0.3'
|
|
8
|
+
|
|
9
|
+
# Import PretixPluginMeta from apps for entry point registration
|
|
10
|
+
from .apps import PluginApp
|
|
11
|
+
|
|
12
|
+
PretixPluginMeta = PluginApp.PretixPluginMeta
|
|
13
|
+
|
|
14
|
+
# Backward compatibility for older Pretix/Django that rely on default_app_config
|
|
15
|
+
default_app_config = 'pretix_thepay.apps.PluginApp'
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
"""
|
|
2
|
+
The Pay payment provider plugin configuration.
|
|
3
|
+
"""
|
|
4
|
+
from django.utils.translation import gettext_lazy as _
|
|
5
|
+
|
|
6
|
+
from . import __version__
|
|
7
|
+
|
|
8
|
+
try:
|
|
9
|
+
from pretix.base.plugins import PluginConfig, PLUGIN_LEVEL_EVENT
|
|
10
|
+
except ImportError:
|
|
11
|
+
raise RuntimeError("Please use pretix 2.7.0 or above to run this plugin!")
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
class PluginApp(PluginConfig):
|
|
15
|
+
"""
|
|
16
|
+
Plugin configuration for The Pay payment provider.
|
|
17
|
+
|
|
18
|
+
This class registers the The Pay payment provider with Pretix and
|
|
19
|
+
handles plugin initialization.
|
|
20
|
+
"""
|
|
21
|
+
default = True
|
|
22
|
+
name = 'pretix_thepay'
|
|
23
|
+
verbose_name = _("The Pay")
|
|
24
|
+
|
|
25
|
+
class PretixPluginMeta:
|
|
26
|
+
name = _("The Pay")
|
|
27
|
+
author = "KrisIsNew"
|
|
28
|
+
version = __version__
|
|
29
|
+
category = 'PAYMENT'
|
|
30
|
+
level = PLUGIN_LEVEL_EVENT
|
|
31
|
+
visible = True
|
|
32
|
+
featured = False
|
|
33
|
+
restricted = False
|
|
34
|
+
description = _("This plugin allows you to receive payments via The Pay payment gateway")
|
|
35
|
+
compatibility = "pretix>=2.7.0"
|
|
36
|
+
settings_links = []
|
|
37
|
+
navigation_links = []
|
|
38
|
+
|
|
39
|
+
def ready(self):
|
|
40
|
+
from . import signals # NOQA
|