pretix

Release 2.3.0 of pretix

Dec. 6, 2018

Today, we are releasing the next monthly release of pretix. pretix 2.3 includes a new navigation pattern for the backend, as well as new options for sales channels and our widget. Big thanks go out to Alexander Schwartz, Alvaro Enrique Ruano, arabestia, Felix Rindt, Maarten van den Berg, Martin Gross, Matheus Nunes, Mikkel Ricky, Tobias Kunze, and oocf who contributed to this release. ❤️

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

New navigation structure

We've changed the structure behind our main navigation on the left side of the backend. Previously, the navigation showed either menu items on a global level or specific to an event. For new users, it was hard to understand the difference at times and it took a long time to navigate to some places like organizer-level settings.

We're now making this more explicit and easier to switch. At any time, the navigation is now in one of three modes: Either it shows global menu items concerning pretix in general, or it shows menu items for a specific organizer, or for a specific event. The first row will always show the current context of the navigation and by clicking it, you can very quickly switch to another context.

At the same time, we're allowing plugins to add their menu links as a sub-item of other navigation links, so the list gets shorter in total and easier to find your way around.

Sales channels

For quite a while, pretix has supported selling tickets over very different sales channels. Next to the web shop, we support selling tickets via local resellers, as well as our new pretixPOS box office application. So far, we only supported selling the same set of products at all of them, but sometimes, you might want to restrict this or apply different pricing for one of the channels.

With pretix 2.3, you can now restrict products to only one or more of these sales channels. Additionally, you can also specify different ticket layouts, depending on the sales channel in use. This is especially useful if you need special paper sizes for tickets sold through resellers or pretixPOS:

Passing data to the widget

For a long time, our pretix Widget has provided a great way to embed the ticket shop right into your web page. We now extended the widget with a small client-side API that allows you to pass data through to the ticket shop. For example, if a user is already logged in on your website, you might pass their name and email address through to the widget so they don't have to enter it twice:

<pretix-widget event="https://pretix.eu/demo/democon/"
    data-attendee-name-given-name="John"
    data-attendee-name-family-name="Doe"
    data-invoice-address-name-given-name="John"
    data-invoice-address-name-family-name="Doe"
    data-email="test@example.org"
    data-question-L9G8NG9M="Foobar">
</pretix-widget>

However, the same feature also allows improving your web analytics, as you can pass a campaign ID, or even use this to implement cross-domain Google Analytics tracking with our tracking module.

Read documentation

Excel exports

All of our list exports, previously available as CSV fiels, are now optionally available as .xlsx files, to make working with Excel frictionless.

LinkedIn tracking

Our pretix-tracking module now allows you to specify a LinkedIn partner ID which will then include a LinkedIn tracking snipped in the ticket shop. If you run advertisement campaigns for your event on LinkedIn, this will make it easier for you to take them to a new level.

Smaller changes and bugfixes

  • Newly created events now show up on the organizer's public event list by default.

  • The PayPal plugin now allows for a "Log in with PayPal" workflow to make onboarding new users easier.

  • A new notification category was added that allows you to be notified when a new order is created only when it requires your approval.

  • Accent colors of the ticket shop can now be configured.

  • A custom text can now be shown next to the voucher input field.

  • The check-in list export now contains the vouchers in use.

  • When manually creating a payment, it is now possible to only create a partial payment.

  • A warning message has been added to products in the backend if they are unavailable due to their timeframe settings.

  • The PDF editors now allow to use the date of the event without a time.

  • E-mail previews now render markdown.

  • Products with variations now show a price range when collapsed (instead of "from" with the minimal price)

  • A bug was fixed that allowed orders to be completed when a product in the cart was available at cart creation time but unavailable at order time.

  • When an expired order is manually re-instantiated through the "extend payment deadline" operation, a new invoice is created.

  • In cases of orders which wrongfully have a canceled invoice, a new invoice can now be created manually.

  • The order detail view in the backend has been improved to work better on narrow screens.

  • The date format for Dutch events has been fixed.

  • The algorithm generating new invoice numbers is now tolerant against gaps in the database.

  • No payment or download reminders are sent out to orders that have been placed just now.

  • Race conditions related to ticket downlodas have been resolved.

  • PDF generation can now optionally use pdftk for performance reasons.

  • An user interface bug when accepting a team invite has been fixed.

  • Organizer or event URLs with a correct slug but incorrect letter case is now automatically redirected.

  • Cart positions are now sorted by the order of their products.

  • Pending payments are now canceled if the price of a pending order is changed.

  • Order search now works with full order codes even if the event slug contains a dash.

  • The log entry for a split order now contains a link to the new order.

  • A separate background task queue can now be used for notifications.

  • When configuring an organizer domain, additional validation is now used.

  • A bug was fixed that prevented using question answers in badge and certificat layouts when tickets were disabled.

  • A bug was fixed that prevented saving event series dates with a German locale in some cases.

Updates to official plugins and tools

  • The pretix Enterprise plugin pretix-campaigns has been released in version 1.2.0 to support passing campaign IDs through widget data.

  • The pretix Enterprise plugin pretix-certificates has been released in version 1.1.0 to improve exports.

  • The plugin pretix-fontpack-free has been released in version 1.1.0 to include the font Montserrat.

  • The plugin pretix-mollie has been released in version 1.0.1 to fix a bug in account handling.

  • The plugin pretix-pages has been released in version 1.2.5 to fix a bug related to permission handling.

  • The plugin pretix-servicefees has been released in version 1.1.0 to allow setting a different fee for transactions made through resellers.

  • The pretix Enterprise plugin pretix-posbackend has been released in version 1.1.0 to adjust to the new navigation structure as well as sales channels.

  • The pretix Enterprise plugin pretix-reports has been released in version 1.2.0 to support the new sales channels.

  • The pretix Enterprise plugin pretix-resellers has been released in version 1.1.0 to support the new sales channels.

  • The pretix Enterprise plugin pretix-shipping has been released in version 1.2.0 to fix various bugs.

  • The pretix Enterprise plugin pretix-slack has been released in version 1.1.2 to fix various bugs.

  • The pretix Enterprise plugin pretix-tracking has been released in version 1.2.0 to add LinkedIn tracking and support for passing data through the widget.

Plugin API changes

REST API changes

No changes.

Read more blog posts