pretix

Release 2.2.0 of pretix

Nov. 9, 2018

Today, we are releasing the next monthly release of pretix. pretix 2.2 includes the ability to split names, a webhook API and much more. Big thanks go out to Arnaud Vergnet, Flavia Bastos, Maarten van den Berg, Matthias de Hollander, Samir C. Costa, Tobias Kunze, and oocf who contributed to this release. ❤️

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

If you host pretix on your own server, please note that pretix 2.2.0 drops support for some versions of MySQL and MariaDB. Starting with this release, you will need MariaDB 10.2.7 or newer, or MySQL 5.7 or newer. Please upgrade your database before upgrading pretix. Of course, PostgreSQL support stays the same. SQLite will still be used for some time for development and testing, but some features will stop working on SQLite and we strongly urge you not to use SQLite in production.

Name schemes

After long discussions, we now implemented a feature that some of you waited for for years. Finally, you are able to split name fields into first and last names. Why it took us so long? Because we never planned on stopping at first and last names. There are many cultures in the world where there is no such thing as first and last names, or where names are the other way around, or have more parts, and so on. There are also events using pretix where it's common to supply a nick name instead of a real name, or where academic titles are more or less important.

We didn't see a way to make everyone happy with just splitting that field, and we would have never been able to really go back on that decision, so we decided that we couldn't make that choice for you. pretix 2.2 is now built for handling names in a flexible way that lets you choose one of a number of pre-defined name schemes.

Of course, you'll be then able to sort most of your exports by the name part you want, depending on what suits your event best. Keep in mind that this works best if you use this feature for a new event, as we won't split existing names in your attendee data automatically.

QR codes for bank payments

Lots of our events, especially in Europe, accept payments via classical bank transfer, since it's cheap, reliable and doesn't require you trust in a third party except the bank you already use. So far, pretix allowed to enter the target bank account as a free text field, which we then rendered to the user.

Starting with this release, you can opt to specifically enter your SEPA bank account details (IBAN and BIC) in a structured way. This way, we understand your input better and can do more powerful things with it. The first thing we do with it is adding in QR codes that allow users to pre-fill the transfer form inside their banking app.

We show both an EPC QR code, which is an official EU standard supported by many banks in Austria, Finland, Germany, and the Netherlands, as well as a BezahlCode, which is a proprietary standard supported by many German banking programs.

Webhooks

With our plugin ecosystem, we already provide lots of integrations for pretix that allow you to connect pretix to marketing tools like MailChimp and automatically perform actions whenever something happens in pretix. However, we will never be able to implement integrations for all the tools out there, not to mention custom-made software you use to run your event or business more efficiently.

This is why we take our existing REST API to a new level with pretix 2.2: We now support outgoing webhooks to allow you to build real-time integrations. If you don't know what a webhook is, it basically means that we will call your website every time a specific event occurs within pretix. For example, you might use it to sign someone up to a newsletter as soon as they placed a ticket order, or you might want to greet your attendees on Twitter as soon as they checked in. We're excited to see what you build, please let us know!

Read documentation

Zapier integration beta

We know, our new webhook feature is only really useful to you if you are able to program, but we've got a solution for that as well: Zapier is a user-friendly platform to build automation pipelines across the online services you use. Zapier already has integrations for more than 1,000 apps and allows you to create easy combinations of a "trigger" and an "action". For example, your trigger could be "a new order was placed in pretix" and your action could be "post a happy message on Twitter". No programming involved!

Right now, our Zapier integration is in beta stage, but you are invited to join. You can click here to enroll for the beta, but if you do, we strongly encourage you to reach out to us at support@pretix.eu. We want to get in touch with you and talk about your use case, so we can make sure we develop this into the right direction. Also, as of now we only support one webhook type on Zapier, but we'll happily add more if you tell us that you need them.

Smaller changes and bugfixes

  • The French and Spanish languages can now be activated.

  • If a cart contains products of an event series, both the add-on product selection screen as well as the questions step will now show which date is selected for which entry in the cart.

  • The waiting list now continues to automatically send emails even if signing up to the list has been disabled.

  • Invoice sender addresses can now be entered in structured format.

  • New icons and meta information have been added to make for a nicer appearance when saving links to pretix to smartphone and desktop home screens.

  • When waiting for a product being added to a cart or a order to be completed, users now receive a more specific message.

  • Stripe plugin: Using Apple Pay with custom organizer domains has been fixed.

  • Bank transfer plugin: When failing to mark an order paid, you could previously end up with a double payment entry.

  • It is no longer possible to restrict payment methods by country if invoice addresses are optional.

  • Question help texts can now contain markdown markup.

  • Deleting products is now possible even if they are currently contained in a cart.

  • Check-in list CSV exports now contain the company field from the invoice address.

  • The quick event switcher in the top bar of the backend now works again on mobile devices and now shows the date of the currently selected event.

  • Remove quota check when creating a voucher that allows bypassing quotas.

  • A bug has been fixed that lead to orders being marked as "pending" after changing the order total even if the order was fully paid.

  • A few missing or misleading log entries have been fixed.

  • The SMTP test has been fixed to follow the protocol specification more closely and report more helpful error messages.

  • System administrators can now change event and organizer slugs.

  • System administrators can now delete empty organizer accounts and anonymize user accounts.

  • It is now possible to filter for a list of vouchers without a tag.

  • Some race conditions have been fixed that occured when modifying an order while the payment reminder cronjob was running.

  • Invoice logos are now automatically scaled down to prevent huge files if they are JPG files as well.

  • The "Check VAT" button has been removed when no VAT ID is present.

  • A crash in validating VAT IDs has been fixed.

  • PayPal plugin: A crash has been fixed that occurred when PayPal returned an internal error.

  • A bug in the transformation of ticket layouts when copying events has been fixed.

  • A bug in the PDF renderer failing on dark-background pretix logos has been fixed.

  • A bug that lead to an email not being sent if the attachment failed to generate has been fixed.

REST API changes

  • The Orders resource includes new sub-fields of invoice addresses and order positions to allow you to access the parts of names.

  • The Orders resource can now be sorted by the date of last modification.

  • The Vouchers resource now allows for batch creation.

  • New endpoints have been created to manage webhooks through the API itself.

  • A new endpoint has been added for OAuth applications to fetch details about the connected user.

  • We changed our approach to rate limiting at pretix.eu and documented it.

Read more blog posts