Release 2025.9.0 of pretix
Today, we are releasing pretix 2025.9.0. This release includes changes to our invoicing and gift card features as well as many small changes.
Big thanks go out to CVZ-es, Edd28, fd, Hijiri Umemoto, Jan Van Haver, jasle, Linnea Thelander, Maximilian Wintergerst, Núria Masclans, Peter Schlaile, Petr Čermák, Sebastian Bożek, Sven Muhlen, Svyatoslav, Tim Maurizio Dullaart, Vasco Baleia, and Yasunobu YesNo Kawaguchi who contributed to this release. ❤️
pretix 2025.9.0 is now available for installation via pip. The new Docker images will appear on Docker Hub over the
next few hours. All customers of pretix Hosted are already using the new version and do not need to take any action.
Invoice service dates
The invoicing settings now allow you to explicitly specify how pretix should determine the date of service for the invoice from a tax point of view. This is especially important for electronic invoices like ZUGFeRD or (upcoming) Peppol invoices. PDF invoices will also show the date of service if it is not already contained as part of the invoice (for example as the event date).
When upgrading to pretix 2025.9.0, the system will automatically configure this setting based on other existing settings, such as your current ZUGFeRD plugin settings and the "this shop represents an event" setting, in a way that is as backwards-compatible as possible. We still encourage you to review the setting to make sure it is adequate for your tax situation.
Gift cards and customer accounts
Gift cards can now be connected to customer accounts. This connection can be created manually when creating a gift card and will be created automatically when a refund is made through a gift card and the order is connected to a customer account. For the customer, these gift cards will be automatically suggested during the purchase process, relieving customers of the hassle to search through their email inbox for the gift card they received a while ago.
Discounts in pretixPOS
Automated discount rules are now finally supported by pretixPOS 5.1.0 or newer and thereby now available on all of our primary sales channels.
Smaller changes and bugfixes
Ticket shop and widget
-
Dates are now formated as "October 29, 2025" instead of "October 29th, 2025" for English locales.
-
The wording of the information block at the end of order-related emails has been updated to fit non-event ticket shops better.
-
The limit for ticket files to be attached to an email is now correctly enforced as 4MB as documented instead of 5MB.
-
Various minor bugs related to the auto-filling and saving of invoice addresses have been resolved.
Ticketing backend and configuration
-
When cancelling events, a preview of the refund amount is now shown. If refunds are to be performed automatically, a confirmation code is sent to the user via email to prevent accidental misuse of the feature.
-
When editing dates in an event series, price and availability fields are no longer shown for products that are not part of any quota.
-
When editing dates in an event series, the submit button is now sticky at the bottom of the screen to avoid long scrolling.
-
When bulk-creating dates in an event series, the preview of dates generated by the repetition rule now works properly again.
-
Bank transfer: The additional bank account details can now contain Markdown formatting.
-
Links to Fediverse profiles in Markdown texts are now recognized and not treated as misleading links where the link text is discarded for security reasons.
-
Order import: A bug has been fixed that allowed assigning variations of the wrong product to orders.
-
When editing advanced check-in rules, the names of products and variations are now updated to their current value.
-
When combining the "mobile PDF tickets" and "shipping" plugins, layouts are now handled correctly.
-
When manually triggering a synchronization to an external system through our recently introduced data sync mechanism, the synchronization runs as soon as possible.
-
Most exporters are now executed with an elevated database isolation level to avoid inconsistent reports caused by changes to the data while the report is being generated.
-
Invoices sent to the organizer via email are now sent with a plain-text email to avoid confusion with automated invoice ingestion systems.
-
Badges: The print layout for DURABLE article 8834-02 has been fixed to include correct dimensions.
-
When refunding to a gift card, the refund comment now becomes part of the gift card transaction text.
-
Emails for failed payments are no longer send for payments that are no longer relevant.
Updates to official plugins and tools
-
The Digital Content plugin has been released in version 1.6.1 to fix check-ins wrongfully not being created for unpaid orders.
-
The Dunning plugin has been released in version 1.0.1 to fix email contents not being translated.
-
The HubSpot plugin has been released in version 2.0.1 to fix deletion of mappings.
-
The Mollie plugin has been released in version 2.5.0 to switch from the Orders API back to the Payments API for all payment methods.
-
The OPPWA plugin has been released in version 1.4.0 to add "Pay by Bank".
-
The pretixPOS backend plugin has been released in version 3.20.0 to add support for discounts.
-
The Resellers plugin has been released in version 3.0.2 to fix minor bugs.
-
The ZUGFeRD invoices plugin has been released in version 2.6.0 to integrate with pretix's new service date and plugin data mechnisms.
Runtime and server environment
- This release updates a remaining field on the database table
pretixbase_logentryfrominttobigint. If you have a large database, the migration might run for a while. If you want to avoid this, you can prepare by converting the field yourself as described in this PR.
Plugin API changes
-
The
pretix.base.signals.order_placedsignal now has abulkargument. -
The signal
pretix.base.signals.build_invoice_datahas been added. -
OutboundSyncProvider.enqueue_ordernow has animmediateparameter.
REST API changes
-
The order creation endpoint allows the
discountfield to be set if discount computation happens client-side. -
When refunding a payment, a
commentcan now be declared.

