Payzum for pretix
Accept crypto and stablecoin payments (USDC, USDT and more, multi-chain) for your events. Payzum is non-custodial: funds settle directly to your own wallet.
- Buyers are redirected to a hosted checkout page where they pick the asset and network; the ticket price stays denominated in your event currency. No card fields, no extra PCI surface.
- Orders are marked as paid from the signed payment notification
(HMAC-SHA-512, verified by the official
payzumPython SDK), never from the buyer's browser return. - Redelivered notifications are idempotent, and a late
expiredevent can never downgrade an order that already settled.
Installation
On a pip-based pretix installation (pretix ≥ 2025.2, Python ≥ 3.11):
pip install pretix-payzum
Then restart pretix, enable Payzum under Settings → Plugins for your event, and configure it under Settings → Payment → Payzum:
| Field | Value |
|---|---|
| API key | From Dashboard → Settings → API Keys at merchant.payzum.com |
| Webhook secret | Shown once, at merchant creation or rotation |
| Environment | Production, or the isolated sandbox (staging.payzum.com, separate API keys) |
| Pay currency | all (default) lets the buyer pick on the hosted page; or pin a code like usdcmatic |
No webhook needs to be configured in the Payzum dashboard: every invoice the plugin creates carries its own callback URL pointing back at your pretix instance. The instance must be publicly reachable — Payzum delivers notifications server-to-server.
Statuses
The gateway emits five payment statuses; only finished marks the order paid:
| Payzum status | Effect on the pretix payment |
|---|---|
finished |
confirmed (order paid) |
expired, failed |
failed |
partially_paid |
pending, logged (underpaid — never fulfils) |
waiting |
no change |
Development
pip install -e . pytest-django
pytest
License
MIT
Metadata
Release files for pretix-payzum 0.2.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| pretix_payzum-0.2.0.tar.gz | 12.4 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| pretix_payzum-0.2.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 23.4 kB
Release files / pretix_payzum-0.2.0.tar.gz
| Download URL | pretix_payzum-0.2.0.tar.gz |
|---|---|
| Size | 12.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
506d078eb909f4404abd976fe0e60bbaf6fe87fb884e3ad65e69426654f26bad
|
|
BLAKE2b-256 checksum How to use checksums |
bc24bf93c40a602c7d32240f55639fd5160190223e8bee2aa46fdf6f7f61e634
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.10.12
|
Release files / pretix_payzum-0.2.0-py3-none-any.whl
| Download URL | pretix_payzum-0.2.0-py3-none-any.whl |
|---|---|
| Size | 11.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
283bbfda52a82d83cfa4724afc8992819308c852d7b3d2818fba2ed1c3f1fe1b
|
|
BLAKE2b-256 checksum How to use checksums |
9b5466d4d6e202b9cdc221dcc63a34c35bbd8c6cf36a161ed2c5408956607bc0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.10.12
|