Release 3.11.0 of pretix

Sept. 14, 2020

It's been a stressful summer for all parts of the event industry. After we skipped our August release, we're now back to our monthly release cycle. Today, we are releasing pretix 3.11.0. This release brings multi-use add-ons, multiple confirm texts, self-service order changes, authenticated digital content, and a lot more.

Big thanks go to Abdullah, Andreas Teuber, Maarten van den Berg, pajowu, TimPrd, Svyatoslav, and Yaling who contributed to this release. ❤️

pretix 3.11.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.

Multiple use of add-ons

pretix' add-on product have long been a special feature enabling lots of very different individual use cases. With the new release, they're even more useful, since you now can allow customers to select the same add-on product multiple times. This makes them a great option to build group tickets with variable size or to sell merchandise in addition to tickets.

Multiple confirm texts

The confirmation step at the end of the ticket purchase now allows you to add multiple checkboxes that need to be selected by your customers to make sure you comply with all relevant legislation.

Self-service order changes

As an exprimental feature, we've added an option to allow customers to change between different variations of a product for an existing order through a self-service interface. In the long run, we're planning on extending this to allow changing products as well.

Authenticated digital content

To make it easier to integrate pretix with other platforms to provide digital content, pretix now includes a generic way to build links to external platforms. These links can include personalized parameters such as an attendee's name, and they can also do so as an authenticated JSON Web Token. This way, pretix can be used as a paywall to virtually any kind of content. Let us know if you need help integrating this with your application!

Read documentation

Payment terms in minutes

As pretix is seeing more and more usage as a time slot reservation system for bookings in the very near future or on the same day, we've now introduced the option define a payment deadline in minutes instead of days to make sure failed payments lead to less unused capacity at your venue.

Smaller changes and bugfixes

Ticket shop and widget

  • Improvements to the mobile shopping experience have been made, e.g. around positions and sizes in the cart display and buttons with long texts.

  • If a ticket shop shows "RESERVED", it will now have a small explanation next to it instead of behind a tooltip.

  • The widget now includes special handling of a Firefox for Android bug.

  • A price calculation error has been fixed that occurred when duplicating a bundle product in a cart.

  • Required number questions now allow 0 as a valid answer.

  • Kosovo is now a supported country for address fields in pretix.

  • Issues around Stripe's iDEAL payment support have been fixed.

  • If a beneficiary is entered as part of an invoice address, it is now shown again on the order confirmation page.

  • Invoices no longer show an event date if the ticket shop also does not show it.

  • In a seated event, the seats are now shown in the question step of the checkout process.

  • After purchase of multiple gift cards, all gift card codes are reliably shown.

  • The "copy from above" button during checkout now works for add-on products.

  • If the invoice address is optional, the country field is now also always optional.

  • The widget no longer shows a waiting list link if the waiting list is disabled for a specific product.

  • The default email styling has been changed to avoid unwanted line breaks.

  • Check-in lists can now be filtered for absent or present persons.

Ticketing backend and configuration

  • In a seated event, it is now possible to configure that users can no longer choose their own seats but seats are instead chosen by the event organizer.

  • It is now possible to filter the event log by connected device, or inspect all log entries of a specific device.

  • The order data export now contains the time of an order.

  • The so-called pseudonymization ID, used e.g. for lead scanning systems, can now be used as a search input to the order search.

  • Relative date times, e.g. end of sale of a ticket, can now be specified in the form of X minutes before event start.

  • A specific e-mail template for approved orders without required payment has been added.

  • Invoicing can now be configured in a way that invoices are created after payment by default but before payment for some specific payment methods.

  • A new export has been added to support downloading the raw list of check-ins.

  • A bug in the widget has been fixed if a product requires a voucher and a voucher was passed to the widget.

  • It is now possible to check-in someone through the backend who has previously been checked out.

  • The {name} placeholder in mass emails now tries harder to find a matching name.

  • Deleting an event is now possible if vouchers exist for the event.

  • After saving a check-in list, you are now redirected back to the same check-in list.

  • It is now possible to clone check-in lists.

  • MT940 bank files can now be imported with the .swi file extension.

  • Some emails (order and payment confirmation) can now be disabled for specific sales channels.

  • It is now possible to remove a product from all sales channels.

  • Performance of order search and navigation search has been improved.

  • Exporting large lists now shows a progress bar.

  • A bug has been fixed that caused the waiting list not to be notified properly if an event was canceled.

  • Performance of Excel and CSV exports for large data sets has been improved.

  • Cancellation of invoices now use up-to-date issuer information.

  • The check-in list export now includes seat numbers.

  • The length of invoice numbers can now be configured.

  • The list of connected devices now shows installation serial numbers.

Other features

  • When using our pretixSCAN apps in online scanning mode, invalid scans are now also logged in the backend.

  • When using our pretixSCAN apps in online scanning mode, scanning an invalid product now shows a more precise error message.

  • pretix' prometheus metrics endpoint now returns approximate counts for most database tables.

  • Some of pretix' cron jobs are now running in a reduced interval, and some have seen a few performance improvements.

  • Lifetime of the ticket file cache is now adjustable through system configuration.

  • The command-line exporter interface now allows cross-event exports.

  • pretix' cronjob command now supports verbose output for debugging. Various cron jobs have been tuned to work better with large data sets.

Updates to official plugins and tools

  • pretixSCAN Android received a few major updates in the past weeks, optimizing performance when dealing with large events, further clarifying between entry and exit mode, and allowing to lock settings with a PIN.

  • pretixPOS received a few major updates in the past weeks to integrate iZettle for card payments, enforce usage of TSEs in Germany, fix issues related to seating plans, and more.

  • pretix-passbook has been release in version 1.7.0 to optimize arrangement of pass content.

  • pretix-posbackend has been release in version 1.7.2 to allow sale of POS-only products on seating plans.

  • pretix-reports has been release in version 1.8.0 to allow reports of check-ins.

  • pretix-resellers has been release in version 1.7.0 to improve reporting features.

  • pretix-seating has been release in version 1.5.0 to add an export of all seats.

  • pretix-shipping has been release in version 1.10.1 to ensure compatibility with pretix 3.11.0.

  • pretix-tracking has been release in version 1.7.0 to allow integration of Google Tag Manager.

Plugin API changes

REST API changes

  • The check-in list positions resource now contains attributes that were previously missing.

  • A new exclude parameter has been introduced to remove fields from the response for the check-in list and orders resources.

  • The orders list now supports a new subevent_after query parameter.

  • The check-in list list now supports a new subevent_match query parameter.

  • A bug has been fixed that could lead to deletion of subevent-specific prices when running a PATCH request on a subevent.

Raphael Michel

Raphael is the founder and main developer of pretix. He is passionate about user-friendly, elegant software, and when he's not busy building software for conference organizers, he enjoys co-organizing con­fer­en­ces himself.

Read more blog posts