Skip to main content

The Pay payment provider for Pretix

Project description

The Pay payment provider plugin for Pretix. It creates payments via The Pay API, redirects customers to The Pay, and confirms payment status using the return and notification callbacks.

Features

  • The Pay REST API integration (payment creation, status lookup)

  • Redirect-based checkout flow

  • Server-to-server notifications

  • Refunds (full and partial)

  • ISO 4217 currency support with correct minor units

  • Demo mode via Test Mode setting

  • Multi-language gateway support (Czech, Slovak, English)

Requirements

  • Pretix >= 2.7.0

  • Python >= 3.8

  • requests >= 2.25.0

Installation

Install from PyPI:

pip install pretix-thepay

Or install from source:

pip install -e /path/to/pretix-thepay

Enable the plugin in pretix.cfg:

[pretix]
plugins = pretix_thepay

Restart Pretix after enabling the plugin.

Configuration

In the Pretix control panel, enable The Pay and configure:

  • Merchant ID: Your The Pay merchant ID

  • Project ID: Your The Pay project ID

  • API Password: Your The Pay API password

  • Language: Default language for the payment gateway

  • Test Mode: Enable to use the demo environment

Behavior

  1. The customer selects The Pay.

  2. Pretix creates a payment at The Pay and redirects the customer.

  3. The customer completes payment on The Pay.

  4. Pretix confirms the payment by querying The Pay from the return URL and from notifications.

Notes

  • Test Mode switches the API base URL to the demo environment.

  • The Pay requires a customer name plus email or phone; Pretix order data is used.

Refunds

Refunds are initiated from Pretix and sent to The Pay. The plugin supports full and partial refunds for payments that support automatic refunds in The Pay.

Troubleshooting

Payment not created

  • Verify Merchant ID, Project ID, and API Password

  • Check Pretix logs for The Pay API response details

  • Ensure the customer has a name and email or phone

Notifications not arriving

  • Make sure Pretix is reachable from The Pay (public URL)

  • Confirm your server IP is allowed in The Pay administration

Docker

For Pretix in Docker:

FROM pretix/standalone:stable
USER root
RUN pip3 install pretix-thepay
USER pretixuser
RUN cd /pretix/src && make production

License

Apache Software License 2.0

References

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

pretix_thepay-9.0.23.tar.gz (15.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pretix_thepay-9.0.23-py3-none-any.whl (14.9 kB view details)

Uploaded Python 3

File details

Details for the file pretix_thepay-9.0.23.tar.gz.

File metadata

  • Download URL: pretix_thepay-9.0.23.tar.gz
  • Upload date:
  • Size: 15.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for pretix_thepay-9.0.23.tar.gz
Algorithm Hash digest
SHA256 03ca1a5c00e02d629bbf709e4f76d2fa6deadee442d821cb8709f67d89c79b97
MD5 46c547121322b5d36ad1ffd2b6531e5f
BLAKE2b-256 25da9d1a4b4ebb334ccf3979318b55afee8c5ff76598b257d1aa16980da3945e

See more details on using hashes here.

File details

Details for the file pretix_thepay-9.0.23-py3-none-any.whl.

File metadata

  • Download URL: pretix_thepay-9.0.23-py3-none-any.whl
  • Upload date:
  • Size: 14.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for pretix_thepay-9.0.23-py3-none-any.whl
Algorithm Hash digest
SHA256 ff32f3380beac6b93dee9c031c01f4a972ccc774a9cd250fd9fd3bf0b9fce4d1
MD5 0394344c24d27f4cbffd88bb274a8c30
BLAKE2b-256 83e3b5362bcec499c2c2ceac26dfc71415cebb52a29073fa40b3d9e979c0d5e9

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